icingaweb2
The package creates system groups and adjusts file ownership in post_install and post_upgrade, which is a common pattern for web applications needing proper permissions, but does not perform privileged actions beyond standard packaging expectations or self-update mechanisms.
Triggered rules
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 creates system groups and adjusts file ownership in post_install and post_upgrade, which is a common pattern for web applications needing proper permissions, but does not perform privileged actions beyond standard packaging expectations or self-update mechanisms.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:36
chmod 2770 "$pkgdir/etc/icingaweb2" -
PKGBUILD:37
chmod 2770 "$pkgdir/var/log/icingaweb2"
PKGBUILD
2 offending line(s) highlighted# Maintainer: Julian Brost <julian@0x4a42.net>
# Contributor: Malte Rabenseifner <mail@malte-rabenseifner.de>
pkgname=icingaweb2
pkgver=2.14.1
pkgrel=1
pkgdesc="Icinga Web 2 Interface"
license=('GPL-3.0-only')
arch=('any')
depends=('php-interpreter' 'icinga-php-library>=1.0.0' 'icinga-php-thirdparty>=1.0.0')
optdepends=('php-legacy-gd: export data to PDF'
'php-legacy-imagick: graphs in PDF exports'
'php-legacy-intl: support for internationalization'
'php-legacy-pgsql: for PostgreSQL backend')
url="https://icinga.com/"
source=("$pkgname-$pkgver.tar.gz::https://github.com/Icinga/icingaweb2/archive/v$pkgver.tar.gz")
install='icingaweb2.install'
sha256sums=('3cb7f3db206d0545d6b9f8064218d94b86bb6dc4b41a87b032521e39e4edf1b3')
package() {
cd "$srcdir/$pkgname-$pkgver"
#mkdir -p "$pkgdir/etc/webapps/icingaweb2"
mkdir -p "$pkgdir/etc/icingaweb2"
mkdir -p "$pkgdir/usr/bin"
mkdir -p "$pkgdir/usr/share/webapps/icingaweb2"
mkdir -p "$pkgdir/var/log/icingaweb2"
cp -r application bin doc library modules public schema "$pkgdir/usr/share/webapps/icingaweb2"
ln -s /usr/share/webapps/icingaweb2/bin/icingacli "$pkgdir/usr/bin/icingacli"
install -Dm644 LICENSE.md "$pkgdir/usr/share/licenses/icingaweb2/LICENSE.md"
install -Dm644 etc/bash_completion.d/icingacli "$pkgdir/etc/bash_completion.d/icingacli"
#chmod 2770 "$pkgdir/etc/webapps/icingaweb2"
chmod 2770 "$pkgdir/etc/icingaweb2"
chmod 2770 "$pkgdir/var/log/icingaweb2"
}
Changes since previous scan
--- PKGBUILD @ 2026-10-28 00:06+++ PKGBUILD @ 2026-11-01 00:21@@ -2,7 +2,7 @@ # Contributor: Malte Rabenseifner <mail@malte-rabenseifner.de> pkgname=icingaweb2-pkgver=2.14.0+pkgver=2.14.1 pkgrel=1 pkgdesc="Icinga Web 2 Interface" license=('GPL-3.0-only')@@ -15,7 +15,7 @@ url="https://icinga.com/" source=("$pkgname-$pkgver.tar.gz::https://github.com/Icinga/icingaweb2/archive/v$pkgver.tar.gz") install='icingaweb2.install'-sha256sums=('154287f3f6965b2aa0263f19e8826bc610d7c6e0840538e6220b78eb55456205')+sha256sums=('3cb7f3db206d0545d6b9f8064218d94b86bb6dc4b41a87b032521e39e4edf1b3') package() { cd "$srcdir/$pkgname-$pkgver"Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Low | 2 |
| 2026-10-31 00:07:41 | Low | 2 |
| 2026-10-30 00:29:30 | Low | 2 |
| 2026-10-29 00:13:55 | Low | 2 |
| 2026-10-28 19:50:31 | Medium | 1 |
| 2026-10-28 00:06:54 | Low | 2 |
| 2026-10-27 00:23:28 | Low | 2 |
| 2026-10-26 00:12:40 | Low | 2 |
| 2026-10-25 00:20:48 | Low | 2 |
| 2026-10-24 00:14:55 | Low | 2 |
| 2026-10-23 00:02:19 | Low | 2 |
| 2026-10-22 00:13:10 | Low | 2 |
| 2026-10-21 00:12:50 | Low | 2 |
| 2026-10-20 00:10:31 | Low | 2 |
| 2026-10-19 00:03:55 | Low | 2 |
| 2026-10-18 00:06:55 | Low | 2 |
| 2026-10-17 00:21:55 | Low | 2 |
| 2026-10-16 00:12:47 | Low | 2 |
| 2026-10-15 00:28:05 | Low | 2 |
| 2026-10-14 00:06:47 | Low | 2 |