human-mcp-bin

maintainer lightjunction · 0 votes · scanned 2026-08-03 00:08:14.047287
MEDIUM
View on AUR ↗
Why flagged The package installs a self-update script with a sudoers rule (human-mcp-self-update), enabling the binary to update itself outside pacman's control; combined with it being a prebuilt binary from a low-vote personal GitHub project, this creates a meaningful supply-chain risk where a future self-update could silently replace the binary with unreviewed code.

Triggered rules

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:21 install -Dm644 packaging/systemd/human-mcp-self-update.service "$pkgdir/usr/lib/systemd/system/human-mcp-self-update.service"
  • PKGBUILD:22 install -Dm755 packaging/scripts/human-mcp-self-update "$pkgdir/usr/lib/human-mcp/human-mcp-self-update"
  • PKGBUILD:23 install -Dm440 packaging/sudoers/human-mcp-self-update "$pkgdir/etc/sudoers.d/human-mcp-self-update"
MEDIUM AI review llm_review

An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The package installs a self-update script with a sudoers rule (human-mcp-self-update), enabling the binary to update itself outside pacman's control; combined with it being a prebuilt binary from a low-vote personal GitHub project, this creates a meaningful supply-chain risk where a future self-update could silently replace the binary with unreviewed code.

PKGBUILD

3 offending line(s) highlighted
1# Maintainer: LIghtJUNction
2pkgname=human-mcp-bin
3pkgver=0.1.21
4pkgrel=1
5pkgdesc='Human-in-the-loop MCP server'
6arch=('x86_64')
7url='https://github.com/LIghtJUNction/human-mcp'
8license=('MIT')
9depends=('gcc-libs' 'openssl' 'sudo')
10provides=('human-mcp')
11conflicts=('human-mcp' 'human-mcp-git')
12backup=('etc/human-mcp.env')
13install=human-mcp.install
14source=("https://github.com/LIghtJUNction/human-mcp/releases/download/v${pkgver}/human-mcp-${pkgver}-x86_64-unknown-linux-gnu.tar.gz")
15sha256sums=('b62b4340b82618412d96f1dfb973882747fb3c76551ceca77ee3b63f2c7f96ad')
16
17package() {
18 cd "human-mcp-${pkgver}-x86_64-unknown-linux-gnu"
19 install -Dm755 human-mcp "$pkgdir/usr/bin/human-mcp"
20 install -Dm644 packaging/systemd/human-mcp.service "$pkgdir/usr/lib/systemd/system/human-mcp.service"
21 install -Dm644 packaging/systemd/human-mcp-self-update.service "$pkgdir/usr/lib/systemd/system/human-mcp-self-update.service"
22 install -Dm755 packaging/scripts/human-mcp-self-update "$pkgdir/usr/lib/human-mcp/human-mcp-self-update"
23 install -Dm440 packaging/sudoers/human-mcp-self-update "$pkgdir/etc/sudoers.d/human-mcp-self-update"
24 install -Dm644 packaging/sysusers/human-mcp.conf "$pkgdir/usr/lib/sysusers.d/human-mcp.conf"
25 install -Dm644 packaging/tmpfiles/human-mcp.conf "$pkgdir/usr/lib/tmpfiles.d/human-mcp.conf"
26 install -Dm640 env.example "$pkgdir/etc/human-mcp.env"
27 install -dm755 "$pkgdir/usr/share/human-mcp/web"
28 cp -a --no-preserve=ownership web/. "$pkgdir/usr/share/human-mcp/web/"
29}
30

Scan history

Scanned at (UTC)SeverityRules
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

Report a package

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

0 / 4000
Your suggestion