brother-dcp-b7500d
maintainer budnyjj
· 0 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads a driver RPM from a brother.com subdomain used for official downloads;虽非标准主机但属厂商官方发布 infrastructure, 安装的是专有打印机驱动文件无远程代码执行风险.
Triggered rules
LOW
AI review downgraded a static finding
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads a driver RPM from a brother.com subdomain used for official downloads;虽非标准主机但属厂商官方发布 infrastructure, 安装的是专有打印机驱动文件无远程代码执行风险.
1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM
source=() URL on a non-standard host
source_untrusted_domain
One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).
-
PKGBUILD:20
source=("https://download.brother.com/welcome/dlf103650/dcpb7500dpdrv-4.0.0-1.i386.rpm")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Raman Budny <budnyjj@gmail.com>
2
3
pkgname=brother-dcp-b7500d
4
pkgver=1.0.0
5
pkgrel=1
6
pkgdesc="LPR and CUPS driver for Brother DCP-B7500D printer"
7
arch=("i686" "x86_64")
8
url="https://support.brother.com/g/b/producttop.aspx?c=in&lang=en&prod=dcpb7500d_as_cn"
9
license=("EULA")
10
groups=("base-devel")
11
optdepends=("brscan4: scanning support via sane"
12
"brscan-skey: scankey support if connected via usb")
13
14
if [[ "$CARCH" == "x86_64" ]] ; then
15
depends=('cups' 'lib32-glibc')
16
elif [[ "$CARCH" == "i686" ]] ; then
17
depends=('a2ps' 'cups')
18
fi
19
20
source=("https://download.brother.com/welcome/dlf103650/dcpb7500dpdrv-4.0.0-1.i386.rpm")
21
md5sums=("86f952616ef5826ee9942445136c4615")
22
23
package() {
24
# This package is based off of the brother-mfc-l2710dw package due to the identical packaging. All credit should go to enginefeeder101 for the script.
25
_model="DCPB7500D"
26
27
# using /usr/share instead of /opt
28
mkdir -p "$pkgdir/usr/share"
29
cp -R "$srcdir/opt/brother" "$pkgdir/usr/share"
30
sed -i 's|\\\/opt\\\/|\\\/usr\\\/|' "$pkgdir/usr/share/brother/Printers/$_model/cupswrapper/lpdwrapper"
31
sed -i 's|\\\/opt\\\/|\\\/usr\\\/|' "$pkgdir/usr/share/brother/Printers/$_model/lpd/lpdfilter"
32
33
# /etc/printcap is managed by cups
34
find "$pkgdir" -type f -name 'setupPrintcap*' -delete
35
36
# symlink for lpdwrapper so it correctly figures out the printer model from the path
37
install -d "$pkgdir/usr/lib/cups/filter/"
38
ln -s "/usr/share/brother/Printers/$_model/cupswrapper/lpdwrapper" "$pkgdir/usr/lib/cups/filter/brother_lpdwrapper_$_model"
39
40
# symlink for the PPD
41
install -d "$pkgdir/usr/share/cups/model/"
42
ln -s "/usr/share/brother/Printers/$_model/cupswrapper/brother-$_model-cups-en.ppd" "$pkgdir/usr/share/cups/model/"
43
44
# a couple architecture-specific symlinks
45
ln -s "/usr/share/brother/Printers/$_model/lpd/$CARCH/brprintconflsr3" "$pkgdir/usr/share/brother/Printers/$_model/lpd/"
46
ln -s "/usr/share/brother/Printers/$_model/lpd/$CARCH/rawtobr3" "$pkgdir/usr/share/brother/Printers/$_model/lpd/"
47
48
# symlink for inf because it tries to execute it there
49
ln -s "/usr/share/brother/Printers/$_model/inf" "$pkgdir/usr/share/brother/Printers/$_model/lpd/"
50
}
51
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | LOW | 2 |
| 2026-08-02 00:16:08 | LOW | 2 |
| 2026-08-01 00:11:18 | LOW | 2 |
| 2026-07-31 00:14:10 | LOW | 2 |
| 2026-07-30 00:17:23 | LOW | 2 |
| 2026-07-29 00:25:53 | LOW | 2 |
| 2026-07-28 00:07:28 | LOW | 2 |
| 2026-07-27 00:24:32 | LOW | 2 |
| 2026-07-26 00:07:32 | LOW | 2 |
| 2026-07-25 00:13:44 | LOW | 2 |
| 2026-07-24 00:02:28 | LOW | 2 |
| 2026-07-23 00:14:47 | LOW | 2 |
| 2026-07-22 00:29:32 | LOW | 2 |
| 2026-07-21 00:24:15 | LOW | 2 |
| 2026-07-20 00:19:49 | LOW | 2 |
| 2026-07-19 00:17:08 | LOW | 2 |
| 2026-07-18 00:14:48 | LOW | 2 |
| 2026-07-17 00:06:16 | LOW | 2 |
| 2026-07-16 00:05:41 | LOW | 2 |
| 2026-07-15 00:09:25 | LOW | 2 |