wolf-data-steam
The PKGBUILD downloads a prebuilt self-extracting binary installer (wolf-linux-1.41b.x86.run) from a personal Dropbox account and executes it during the build phase (`./wolf-linux-${pkgver}.x86.run --target files --noexec`). While an md5sum is provided, MD5 is cryptographically broken and provides weak integrity assurance. The host (dl.dropboxusercontent.com with a personal share key) is not an official vendor distribution channel — the official Linux installer for RtCW was distributed by id Software/Activision, not via a personal Dropbox. The Dropbox link could be replaced at any time by the account owner or compromised. Executing an arbitrary binary from a personal file-sharing host is a genuine supply-chain concern. The package also interactively prompts for Steam credentials during the build, which is unusual but not inherently malicious (steamcmd handles the login). Overall this is a real medium-severity supply-chain risk due to the executed binary from an unofficial personal host.
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:14
source=("https://dl.dropboxusercontent.com/s/97qyelre9iryv37/wolf-linux-${pkgver}.x86.run")
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The PKGBUILD downloads a prebuilt self-extracting binary installer (wolf-linux-1.41b.x86.run) from a personal Dropbox account and executes it during the build phase (`./wolf-linux-${pkgver}.x86.run --target files --noexec`). While an md5sum is provided, MD5 is cryptographically broken and provides weak integrity assurance. The host (dl.dropboxusercontent.com with a personal share key) is not an official vendor distribution channel — the official Linux installer for RtCW was distributed by id Software/Activision, not via a personal Dropbox. The Dropbox link could be replaced at any time by the account owner or compromised. Executing an arbitrary binary from a personal file-sharing host is a genuine supply-chain concern. The package also interactively prompts for Steam credentials during the build, which is unusual but not inherently malicious (steamcmd handles the login). Overall this is a real medium-severity supply-chain risk due to the executed binary from an unofficial personal host.
PKGBUILD
1 offending line(s) highlighted# Maintainer: Alan Jenkins <alan.james.jenkins [at] gmail.com>
# Original wolf-data package by M0Rf30
pkgname=wolf-data-steam
pkgver=1.41b
pkgrel=3
pkgdesc="Return to Castle Wolfenstein native Linux Single Player data via Steam"
arch=('any')
conflicts=('wolf-data')
provides=('wolf-data')
depends=('steamcmd')
url="ftp://ftp.internat.freebsd.org/pub/FreeBSD/distfiles/"
license=('GPL')
install='wolf-data-steam.install'
source=("https://dl.dropboxusercontent.com/s/97qyelre9iryv37/wolf-linux-${pkgver}.x86.run")
md5sums=('2aa37968aff19d665ed6c001773b2de3')
package() {
# Set Install Files to Executable
cd $srcdir
chmod +x wolf-linux-${pkgver}.x86.run
# Extract Linux Game Files
./wolf-linux-${pkgver}.x86.run --target files --noexec
cd files
# Remove Unneeded Files and Directories
cd main
rm *.so
# Move Data to Package Directory
mkdir -p $pkgdir/opt/wolf-data
cp -r * $pkgdir/opt/wolf-data/
# Use steamcmd to get the rest of the data required.
mkdir -p $srcdir/wolf-data-steam
printf "Enter your Steam username:"
read steam_username
steamcmd +@sSteamCmdForcePlatformType windows +@ShutdownOnFailedCommand 1 +force_install_dir $srcdir/wolf-data-steam +login $steam_username "+app_update 9010 validate" +quit
# Move required files to pkgdir
install -D -m 644 $srcdir/files/main/mp_bin.pk3 $pkgdir/opt/wolf-data/mp_bin.pk3
install -D -m 644 $srcdir/wolf-data-steam/Main/mp_pak0.pk3 $pkgdir/opt/wolf-data/mp_pak0.pk3
install -D -m 644 $srcdir/files/main/mp_pak1.pk3 $pkgdir/opt/wolf-data/mp_pak1.pk3
install -D -m 644 $srcdir/files/main/mp_pak2.pk3 $pkgdir/opt/wolf-data/mp_pak2.pk3
install -D -m 644 $srcdir/files/main/mp_pak3.pk3 $pkgdir/opt/wolf-data/mp_pak3.pk3
install -D -m 644 $srcdir/files/main/mp_pak4.pk3 $pkgdir/opt/wolf-data/mp_pak4.pk3
install -D -m 644 $srcdir/files/main/mp_pak5.pk3 $pkgdir/opt/wolf-data/mp_pak5.pk3
install -D -m 644 $srcdir/files/main/mp_pakmaps0.pk3 $pkgdir/opt/wolf-data/mp_pakmaps0.pk3
install -D -m 644 $srcdir/files/main/mp_pakmaps1.pk3 $pkgdir/opt/wolf-data/mp_pakmaps1.pk3
install -D -m 644 $srcdir/files/main/mp_pakmaps2.pk3 $pkgdir/opt/wolf-data/mp_pakmaps2.pk3
install -D -m 644 $srcdir/files/main/mp_pakmaps3.pk3 $pkgdir/opt/wolf-data/mp_pakmaps3.pk3
install -D -m 644 $srcdir/files/main/mp_pakmaps4.pk3 $pkgdir/opt/wolf-data/mp_pakmaps4.pk3
install -D -m 644 $srcdir/files/main/mp_pakmaps5.pk3 $pkgdir/opt/wolf-data/mp_pakmaps5.pk3
install -D -m 644 $srcdir/files/main/mp_pakmaps6.pk3 $pkgdir/opt/wolf-data/mp_pakmaps6.pk3
install -D -m 644 $srcdir/wolf-data-steam/Main/pak0.pk3 $pkgdir/opt/wolf-data/pak0.pk3
install -D -m 644 $srcdir/wolf-data-steam/Main/sp_pak1.pk3 $pkgdir/opt/wolf-data/sp_pak1.pk3
install -D -m 644 $srcdir/files/main/sp_pak2.pk3 $pkgdir/opt/wolf-data/sp_pak2.pk3
install -D -m 644 $srcdir/files/main/sp_pak3.pk3 $pkgdir/opt/wolf-data/sp_pak3.pk3
install -D -m 644 $srcdir/wolf-data-steam/Main/sp_pak4.pk3 $pkgdir/opt/wolf-data/sp_pak4.pk3
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Medium | 2 |
| 2026-10-31 00:07:41 | Medium | 2 |
| 2026-10-30 00:29:30 | Medium | 2 |
| 2026-10-29 00:13:55 | Medium | 2 |
| 2026-10-28 00:06:54 | Medium | 2 |
| 2026-10-27 00:23:28 | Medium | 2 |
| 2026-10-26 00:12:40 | Medium | 2 |
| 2026-10-25 00:20:48 | Medium | 2 |
| 2026-10-24 00:14:55 | Medium | 2 |
| 2026-10-23 00:02:19 | Medium | 2 |
| 2026-10-22 00:13:10 | Medium | 2 |
| 2026-10-21 00:12:50 | Medium | 2 |
| 2026-10-20 00:10:31 | Medium | 2 |
| 2026-10-19 00:03:55 | Medium | 2 |
| 2026-10-18 00:06:55 | Medium | 2 |
| 2026-10-17 00:21:55 | Medium | 2 |
| 2026-10-16 00:12:47 | Medium | 2 |
| 2026-10-15 00:28:05 | Medium | 2 |
| 2026-10-14 00:06:47 | Medium | 2 |
| 2026-10-13 00:23:45 | Medium | 2 |