webcatalog-bin
The PKGBUILD downloads a prebuilt AppImage binary from cdn-2.webcatalog.io, which is WebCatalog's own CDN (a legitimate vendor CDN, not a random personal host). The package has sha256 checksums for both architectures, providing integrity verification. However, the binary is executed during prepare() via --appimage-extract to unpack it, and then installed as an executable. The CDN host is not GitHub releases or another well-known release infrastructure, but it is the vendor's own distribution channel for this commercial application. This is a standard pattern for AppImage-based AUR packages of proprietary software. The risk is real but typical for binary AUR packages: if the CDN were compromised or the maintainer updated checksums to match a malicious binary, users would execute attacker-controlled code. This is the inherent medium-level supply-chain risk of any binary-only AUR package, not an active attack. Rating remains medium due to executed prebuilt binary from a non-GitHub/non-standard CDN with no additional verification (e.g., GPG signature).
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:19
source_x86_64=("$_filename::https://cdn-2.webcatalog.io/$_pkgname/WebCatalog-$pkgver.AppImage")
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 AppImage binary from cdn-2.webcatalog.io, which is WebCatalog's own CDN (a legitimate vendor CDN, not a random personal host). The package has sha256 checksums for both architectures, providing integrity verification. However, the binary is executed during prepare() via --appimage-extract to unpack it, and then installed as an executable. The CDN host is not GitHub releases or another well-known release infrastructure, but it is the vendor's own distribution channel for this commercial application. This is a standard pattern for AppImage-based AUR packages of proprietary software. The risk is real but typical for binary AUR packages: if the CDN were compromised or the maintainer updated checksums to match a malicious binary, users would execute attacker-controlled code. This is the inherent medium-level supply-chain risk of any binary-only AUR package, not an active attack. Rating remains medium due to executed prebuilt binary from a non-GitHub/non-standard CDN with no additional verification (e.g., GPG signature).
PKGBUILD
1 offending line(s) highlighted# Maintainer: Jun-I Wu <michaelcat at aur.archlinux.org> and Jayesh Badwaik <jayesh at aur.archlinux.org>
# Contributer (previous maintainer and original submitter): Alexey Peschany <sandboiii at aur.archlinux.org>
pkgname=webcatalog-bin
_pkgname=webcatalog
pkgver=74.0.2
pkgrel=1
pkgdesc="Turn Any Websites into Real Desktop Apps"
arch=('x86_64' 'aarch64')
url="https://webcatalog.io/webcatalog/"
options=(!strip !debug)
depends=('fuse2')
_filename="WebCatalog-$pkgver.AppImage"
source=("${_pkgname}.patch")
sha256sums=('8e13556f9eab7880fbc586d625147e7602d8d99cf0f23a6a130e0eb821a9a7fd')
source_x86_64=("$_filename::https://cdn-2.webcatalog.io/$_pkgname/WebCatalog-$pkgver.AppImage")
sha256sums_x86_64=('9aa35796507fefbc5a5328208b712b5f422a1a9400f4cb3fb7431888a6e143d4')
source_aarch64=("$_filename::https://cdn-2.webcatalog.io/$_pkgname/WebCatalog-$pkgver-arm64.AppImage")
sha256sums_aarch64=('62ca8d8d59ff669c9d81808b8f5e86eaf5fb53bed766031fadff50ef41909c46')
prepare() {
cd "${srcdir}"
chmod +x ${_filename}
./${_filename} --appimage-extract
}
package() {
install -Dm755 "${srcdir}/${_filename}" "${pkgdir}/opt/appimages/${_filename}.AppImage"
mkdir -p "${pkgdir}/usr/bin/"
ln -s "/opt/appimages/${_filename}.AppImage" "${pkgdir}/usr/bin/${_pkgname}"
install -dm755 "${pkgdir}/usr/share/"
cp -r --no-preserve=mode,ownership "${srcdir}/squashfs-root/usr/share/icons" "${pkgdir}/usr/share/"
mkdir "${pkgdir}/usr/share/applications/"
cp --no-preserve=mode,ownership "${srcdir}/squashfs-root/@webcatalogdesktop.desktop" "${pkgdir}/usr/share/applications/webcatalog.desktop"
patch -d "${pkgdir}" -p1 < "${_pkgname}.patch"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Medium | 2 |
| 2026-09-16 00:03:17 | Medium | 2 |
| 2026-09-15 00:25:31 | Medium | 2 |
| 2026-09-14 00:27:57 | Medium | 2 |
| 2026-09-13 00:19:54 | Medium | 2 |
| 2026-09-12 00:25:17 | Medium | 2 |
| 2026-09-11 00:19:22 | Medium | 2 |
| 2026-09-10 00:22:44 | Medium | 2 |
| 2026-09-09 00:04:09 | Medium | 2 |
| 2026-09-08 00:18:08 | Medium | 2 |
| 2026-09-07 00:30:15 | Medium | 2 |
| 2026-09-06 00:17:06 | Medium | 2 |
| 2026-09-05 00:16:27 | Medium | 2 |
| 2026-09-04 00:03:13 | Medium | 2 |
| 2026-09-03 00:15:47 | Medium | 2 |
| 2026-09-02 00:02:31 | Medium | 2 |
| 2026-09-01 00:11:19 | Medium | 2 |
| 2026-08-31 00:19:57 | Medium | 2 |
| 2026-08-30 00:04:14 | Medium | 2 |
| 2026-08-29 00:29:17 | Medium | 2 |