ynab4
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:22
source=(ynab4 "Setup.exe::https://web.archive.org/web/20190112221247/https://classic.youneedabudget.com/CDNOrigin/download/${pkgname}/liveCaptive/Win/YNAB%204_${pkgver}_Setup.exe")
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 Windows executable (Setup.exe) from web.archive.org rather than the original upstream host (classic.youneedabudget.com). While the Wayback Machine URL does encode the original URL and a specific timestamp, web.archive.org is not the canonical distribution channel for this binary. The archived copy could differ from the original, and the integrity check is only MD5 (weak, collision-prone). The binary is installed into /usr/share/ynab4 and executed via a wrapper script through Wine, meaning it runs as user code. This is a genuine supply-chain concern: a prebuilt proprietary Windows installer from a non-canonical mirror with only MD5 verification. However, there is no evidence of active malice — the original upstream URL is embedded in the archive URL, the software is a known commercial product (YNAB 4), and the pattern of archiving a discontinued installer is common for legacy software. The medium rating is appropriate: executed binary from a non-official host with weak integrity verification.
PKGBUILD
1 offending line(s) highlighted# Maintainer: Jan Bader <c.arch@jan.javil.eu>
pkgname="ynab4"
pkgver="4.3.857"
pkgrel=3
epoch=
pkgdesc="You Need A Budget, installs with wine"
arch=("x86_64")
url="http://youneedabudget.com/"
license=('unknown')
groups=()
depends=('wine' 'lib32-mpg123' 'lib32-libpulse')
makedepends=()
checkdepends=()
optdepends=("dropbox: Needed for YNAB's Cloud-Sync")
provides=()
conflicts=()
replaces=()
backup=()
options=()
install=
changelog=
source=(ynab4 "Setup.exe::https://web.archive.org/web/20190112221247/https://classic.youneedabudget.com/CDNOrigin/download/${pkgname}/liveCaptive/Win/YNAB%204_${pkgver}_Setup.exe")
noextract=("Setup.exe")
md5sums=('75854469a4abb1132b93a80c2336d7c6'
'a25c0a73350a99559f1e30c2f86ad0b9')
package() {
install -d -m755 "$pkgdir"/usr/share/ynab4
cp -raL "$srcdir"/Setup.exe "$pkgdir"/usr/share/ynab4
install -d -m755 "$pkgdir"/usr/bin
install -m755 ynab4 "$pkgdir"/usr/bin
}
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 |