zen-browser-twilight-bin

maintainer logan_reed · 2 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The package installs SUID binaries from the official GitHub release, which is a normal requirement for browser sandboxing, and does not perform any privileged operations outside of standard packaging.

Triggered rules

LOW AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package installs SUID binaries from the official GitHub release, which is a normal requirement for browser sandboxing, and does not perform any privileged operations outside of standard packaging.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM Privileged / out-of-pacman install (sudoers, setuid, or self-update) privileged_install

The package grants elevated privileges or installs an update path outside pacman: a /etc/sudoers.d rule (often passwordless), a setuid/setgid binary, or a self-update script/service that can fetch and run future code with no checksum verification. The initial install may be verified, but the ongoing privilege + update surface is a real supply-chain / privilege-escalation risk.

  • PKGBUILD:58 [[ -f "${pkgdir}${_installdir}/${_bin}" ]] && chmod 4755 "${pkgdir}${_installdir}/${_bin}"

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: logan_reed <liulingzhang.work@icloud.com>
2# Contributor: Filip Papaj <denuvo at tuta dot io>
3
4_pkgname=zen-browser-twilight
5pkgname=${_pkgname}-bin
6pkgver=1.22t
7pkgrel=25
8pkgdesc='Zen Browser (Twilight Build) - Performance oriented Firefox-based web browser'
9arch=('x86_64' 'aarch64')
10url='https://zen-browser.app/'
11license=('MPL-2.0')
12depends=(
13 'dbus-glib'
14 'gtk3'
15 'libxt'
16 'mime-types'
17 'nss'
18 'ttf-font'
19)
20optdepends=(
21 'alsa-lib: ALSA audio backend'
22 'ffmpeg: H264/AAC/MP3 decoding'
23 'pulse-native-provider: PulseAudio/PipeWire audio backend'
24 'libnotify: Desktop notification support'
25 'networkmanager: Location detection via WiFi networks'
26 'speech-dispatcher: Text-to-Speech'
27 'hunspell-en_US: Spell checking, American English'
28 'xdg-desktop-portal: Screen sharing under Wayland'
29)
30provides=("zen-browser=$pkgver")
31conflicts=('zen-browser' 'zen-browser-bin' 'zen-browser-git')
32options=('!strip' '!debug')
33install=${pkgname}.install
34
35_gh='https://github.com/zen-browser/desktop/releases/download/twilight-1'
36_installdir="/opt/${pkgname}"
37
38source=("${_pkgname}.sh"
39 "${_pkgname}.desktop"
40 'policies.json')
41source_x86_64=("zen.linux-x86_64-${pkgver}-${pkgrel}.tar.xz::https://github.com/zen-browser/desktop/releases/download/twilight-1/zen.linux-x86_64.tar.xz")
42source_aarch64=("zen.linux-aarch64-${pkgver}-${pkgrel}.tar.xz::https://github.com/zen-browser/desktop/releases/download/twilight-1/zen.linux-aarch64.tar.xz")
43
44b2sums=('bc733dba0aad89145425cf6e82a22379c1115b736f0938203e80d7e78f3e0f4c6a4c6abab0ceb36d5eecb009163b77d0b8f2145ffcf6b985a8f142f6fabaec6d'
45 'f75e803fa9da53ab9c263cc357f388de87137393fac90e86dfb528029de1434d887c2c25050ea167fbe9959d2eec11f81c85f28010126bd0c46884b59bb6ae41'
46 'f83302f32649f214d97f2cadf41d353d7d76fc3b50b6dabc6e25256dc52b7a98aed024a14a88966d0a4f18ee5546ad8f45b4de626aa6ed38c9f8e7a99ef151c3')
47b2sums_x86_64=('c89efd01dad303a48f239b9072074cfd47ec6ba1f36833d8486016977b55fb4108155da7f9ebb2229fc4c332f2a1d0554354d49bcead8daca236ca41d69deeb1')
48b2sums_aarch64=('4d1bcd5a752e4a3c6709cf64be223218b4b1e3eeffacae62be9613fc1c9dd15b96c1a112f40cc187796d71050c37170192e5c40ad91e1e5d0da54a7b0f733466')
49
50package() {
51 # Browser files
52 install -d "${pkgdir}${_installdir}"
53 cp -a "${srcdir}/zen/." "${pkgdir}${_installdir}/"
54
55 # SUID sandbox helpers
56 local _suid_bins=(glxtest vaapitest)
57 for _bin in "${_suid_bins[@]}"; do
58 [[ -f "${pkgdir}${_installdir}/${_bin}" ]] && chmod 4755 "${pkgdir}${_installdir}/${_bin}"
59 done
60
61 # Launcher
62 install -Dm755 "${srcdir}/${_pkgname}.sh" "${pkgdir}/usr/bin/${_pkgname}"
63
64 # Desktop entry
65 install -Dm644 "${srcdir}/${_pkgname}.desktop" "${pkgdir}/usr/share/applications/${_pkgname}.desktop"
66
67 # Icons — symlink to bundled icons
68 local _i
69 for _i in 16 32 48 64 128; do
70 install -d "${pkgdir}/usr/share/icons/hicolor/${_i}x${_i}/apps"
71 ln -s "${_installdir}/browser/chrome/icons/default/default${_i}.png" \
72 "${pkgdir}/usr/share/icons/hicolor/${_i}x${_i}/apps/${_pkgname}.png"
73 done
74
75 # System dictionaries & hyphenation
76 ln -Ts /usr/share/hunspell "${pkgdir}${_installdir}/dictionaries"
77 ln -Ts /usr/share/hyphen "${pkgdir}${_installdir}/hyphenation"
78
79 # System certificates (use system NSS CKBI instead of bundled)
80 ln -sf /usr/lib/libnssckbi.so "${pkgdir}${_installdir}/libnssckbi.so"
81
82 # Policies — disable auto-update (managed via AUR)
83 install -Dm644 "${srcdir}/policies.json" "${pkgdir}${_installdir}/distribution/policies.json"
84}
85

Changes since previous scan

--- PKGBUILD @ 2026-08-01 00:11
+++ PKGBUILD @ 2026-08-03 00:08
@@ -4,7 +4,7 @@
_pkgname=zen-browser-twilight
pkgname=${_pkgname}-bin
pkgver=1.22t
-pkgrel=24
+pkgrel=25
pkgdesc='Zen Browser (Twilight Build) - Performance oriented Firefox-based web browser'
arch=('x86_64' 'aarch64')
url='https://zen-browser.app/'
@@ -44,8 +44,8 @@
b2sums=('bc733dba0aad89145425cf6e82a22379c1115b736f0938203e80d7e78f3e0f4c6a4c6abab0ceb36d5eecb009163b77d0b8f2145ffcf6b985a8f142f6fabaec6d'
'f75e803fa9da53ab9c263cc357f388de87137393fac90e86dfb528029de1434d887c2c25050ea167fbe9959d2eec11f81c85f28010126bd0c46884b59bb6ae41'
'f83302f32649f214d97f2cadf41d353d7d76fc3b50b6dabc6e25256dc52b7a98aed024a14a88966d0a4f18ee5546ad8f45b4de626aa6ed38c9f8e7a99ef151c3')
-b2sums_x86_64=('b5f8ba99577c19176b21d3cea03c527bd054eb38dc94218fa2861820bc6c426e169bfcc5648235fb58aa5a6add18365b09d85da37b2dc27666da42bc18d4595a')
-b2sums_aarch64=('fc7edf7c4a428d592725a8b20b901e8e3342cf9353a08e5155683ee94782b1a4726ed42c2f98b82b835797b06bdb8a4a9f7eaea3c9378000094c9cc78cf63d7b')
+b2sums_x86_64=('c89efd01dad303a48f239b9072074cfd47ec6ba1f36833d8486016977b55fb4108155da7f9ebb2229fc4c332f2a1d0554354d49bcead8daca236ca41d69deeb1')
+b2sums_aarch64=('4d1bcd5a752e4a3c6709cf64be223218b4b1e3eeffacae62be9613fc1c9dd15b96c1a112f40cc187796d71050c37170192e5c40ad91e1e5d0da54a7b0f733466')
package() {
# Browser files

Scan history

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

Report a package

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

0 / 4000
Your suggestion