qchdman

maintainer mictjs · 1 votes · scanned 2026-08-03 00:08:14.047287
MEDIUM
View on AUR ↗
Why flagged The PKGBUILD downloads a prebuilt binary .deb from deb-multimedia.org (a third-party Debian repository, not the upstream project's official release host) and installs its contents directly. Both checksums are 'SKIP', meaning there is zero integrity verification. deb-multimedia.org is a known but unofficial third-party repo; it is not the upstream qmc2 project's own release infrastructure. Executing arbitrary prebuilt binaries from a non-official host with no checksum verification is a genuine supply-chain risk — if the file is swapped or compromised, the user gets silent RCE. This matches the medium severity definition exactly: an executed binary from an unofficial/personal host.

Triggered rules

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:16 source=("http://www.deb-multimedia.org/pool/main/q/qmc2-dmo/${pkgname}_${pkgver}-dmo1_${_ARCH_}.deb" "http://svn.code.sf.net/p/qmc2/code/trunk/tools/qchdman/images/qchdman.png")
  • PKGBUILD:16 source=("http://www.deb-multimedia.org/pool/main/q/qmc2-dmo/${pkgname}_${pkgver}-dmo1_${_ARCH_}.deb" "http://svn.code.sf.net/p/qmc2/code/trunk/tools/qchdman/images/qchdman.png")
MEDIUM AI review llm_review

An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 82%): The PKGBUILD downloads a prebuilt binary .deb from deb-multimedia.org (a third-party Debian repository, not the upstream project's official release host) and installs its contents directly. Both checksums are 'SKIP', meaning there is zero integrity verification. deb-multimedia.org is a known but unofficial third-party repo; it is not the upstream qmc2 project's own release infrastructure. Executing arbitrary prebuilt binaries from a non-official host with no checksum verification is a genuine supply-chain risk — if the file is swapped or compromised, the user gets silent RCE. This matches the medium severity definition exactly: an executed binary from an unofficial/personal host.

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Mike Polvere <mic.tjs@gmail.com>
2
3pkgname=qchdman
4pkgver=0.195
5pkgrel=1
6pkgdesc="QMC2's Qt chdman interface. A Qt interface for chdman utility."
7arch=('i686' 'x86_64')
8 if [[ "$CARCH" == "i686" ]]; then
9 _ARCH_="i386"
10 elif [[ "$CARCH" == "x86_64" ]]; then
11 _ARCH_="amd64"
12 fi
13url="http://qmc2.batcom-it.net"
14license=('GPL2')
15depends=('qt4>=4.8.0' 'mame-tools')
16source=("http://www.deb-multimedia.org/pool/main/q/qmc2-dmo/${pkgname}_${pkgver}-dmo1_${_ARCH_}.deb" "http://svn.code.sf.net/p/qmc2/code/trunk/tools/qchdman/images/qchdman.png")
17sha512sums=('SKIP' 'SKIP')
18
19package(){
20
21 tar xf data.tar.xz
22 mkdir -p "usr/share/qmc2/img"
23 cd ..
24 mv "qchdman.png" "${srcdir}/usr/share/qmc2/img/"
25 cd "${srcdir}"
26 cp -r usr "${pkgdir}"
27 rm -rf "${pkgdir}/usr/share/doc/${pkgname}/copyright"
28 rm -rf "qchdman.png"
29 install -D -m644 "${srcdir}/usr/share/doc/${pkgname}/copyright" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
30 msg2 "\e[1;32m 'mame-tools package' provides /usr/bin/chdman to be used as the chdman binary path \e[0m"
31
32}
33

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 MEDIUM 2
2026-08-02 00:16:08 MEDIUM 2
2026-08-01 00:11:18 MEDIUM 2
2026-07-31 00:14:10 MEDIUM 2
2026-07-30 00:17:23 MEDIUM 2
2026-07-29 00:25:53 MEDIUM 2
2026-07-28 00:07:28 MEDIUM 2
2026-07-27 00:24:32 MEDIUM 2
2026-07-26 00:07:32 MEDIUM 2
2026-07-25 00:13:44 MEDIUM 2
2026-07-24 00:02:28 MEDIUM 2
2026-07-23 00:14:47 MEDIUM 2
2026-07-22 00:29:32 MEDIUM 2
2026-07-21 00:24:15 MEDIUM 2
2026-07-20 00:19:49 MEDIUM 2
2026-07-19 00:17:08 MEDIUM 2
2026-07-18 00:14:48 MEDIUM 2
2026-07-17 00:06:16 MEDIUM 2
2026-07-16 00:05:41 MEDIUM 2
2026-07-15 00:09:25 MEDIUM 2

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion