huiontablet
Triggered rules
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:10
source=("https://driverdl.huion.com/driver/Linux/HuionTablet_LinuxDriver_v$pkgver.$arch.tar.xz")
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The package downloads a prebuilt binary driver tarball from driverdl.huion.com, which is Huion's official driver distribution domain (the same domain referenced from huion.com/download/). The sha256sum is pinned, which mitigates substitution risk at download time. However, the tarball contains prebuilt binary blobs (a Linux driver) that are then installed by executing install.sh (itself extracted from the tarball and modified via sed). Executing a binary blob and a shell script from a vendor CDN — even an official one — is a genuine supply-chain concern: if the domain or CDN were compromised, arbitrary code would execute during the build. This is the standard pattern for proprietary hardware driver AUR packages (e.g. nvidia-installer style), which are conventionally rated medium. The PKGBUILD itself is not malicious, the host appears to be the legitimate vendor domain, and the checksum is pinned, but the executed binary nature of the payload keeps this at medium rather than clean/low.
PKGBUILD
1 offending line(s) highlighted
# Maintainer: Wai <waicool20@gmail.com>
pkgname=huiontablet
pkgver=15.0.0.162
pkgrel=1
pkgdesc="Official Huion tablet drivers"
arch=('x86_64')
url="https://www.huion.com/download/"
license=('unknown')
source=("https://driverdl.huion.com/driver/Linux/HuionTablet_LinuxDriver_v$pkgver.$arch.tar.xz")
sha256sums=("7066b75c613aabbf8cf1a57ea54910a4f62245ddb8986aa01aef300e0b2de87d")
prepare() {
cd "${srcdir}"
# Modify install script with our dirs
sed -E -i "s|(sysRuleDir=).*|\1$pkgdir/usr/lib/udev/rules.d|" install.sh
sed -E -i "s|(sysAppDir=).*|\1$pkgdir/usr/lib/|" install.sh
sed -E -i "s|(sysDesktopDir=).*|\1$pkgdir/usr/share/applications|" install.sh
sed -E -i "s|(sysAppIconDir=).*|\1$pkgdir/usr/share/icons|" install.sh
sed -E -i "s|(sysAutoStartDir=).*|\1$pkgdir/etc/xdg/autostart|" install.sh
# Remove problematic commands
sed -E -i "s|killall.*||" install.sh
sed -E -i "s|sudo ||g" install.sh
sed -E -i "/^.*uninstall.*$/d" install.sh
sed -E -i "/^.*close.*$/d" install.sh
sed -E -i "/^echo.*$/d" install.sh
sed -E -i "s|/usr/lib/huiontablet/res|$pkgdir\0|" install.sh
# Remove stuff after this line
sed -E -i "/#Copy config files/Q" install.sh
# Remove files with problematic UTF-8 characters
find . -name "*按键*" -delete 2>/dev/null || true
}
package() {
cd "${srcdir}"
# Make directories
grep "sys.*Dir=" install.sh | sed -E 's/.*=(.*)/\1/' | tr -d '"' | xargs mkdir -p
# Set proper locale for UTF-8 handling
export LC_ALL=C.UTF-8
# Invoke install script
sh install.sh
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 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 |