v0.15.24
InnerWarden 0.15.24
Security
- spec-081 managed-agent coexistence now works when InnerWarden runs non-root and the agent runs as another user (live FP fix, found 2026-06-21). A co-located AI agent (OpenClaw) doing a routine task — read its own
/home/lab/.env, then call its own Azure-OpenAI endpoint — was flagged CRITICAL data-exfiltration and the endpoint was auto-blocked, breaking the agent. Root cause: the managed-agent verifier (evaluate_managed_agent_downgrade→decide) fail-closed on two facts a non-root IW agent (innerwardenuid) cannot obtain about a process owned by a different user (lab): (1)readlink /proc/<pid>/exeis EACCES cross-uid →exe_pathNone → the interpreter-root gate blocked; (2)ProtectHome=yeson the agent unit hid/home, so the own-configstatfor the file-owner uid returned None → the own-config gate blocked. Both made spec-081 silently never downgrade for a cross-user agent, even one correctly registered with a matching cmdline fingerprint. Fixes: (a) code — when/proc/exeis unreadable the interpreter-root check falls back toargv[0], safe because the exact registered cmdline-fingerprint match already pins identity (an untrustedargv[0]like/tmp/nodestill blocks); (b) ops — the example agent unit setsProtectHome=read-only(so the verifier can read /home to confirm the agent's own config) with an optionalCAP_SYS_PTRACEfor strict/proc/exeverification. No blind spot: a foreign-secret read (/etc/shadow, another user's~/.ssh), an unregistered/fingerprint-mismatched process, or a known-bad destination still forces the block. New regression tests pin the cross-uid downgrade + the untrusted-argv0 block.
Install / upgrade (Linux, toolchain-free, signed binaries)
curl -fsSL https://innerwarden.com/install | sudo bash
# already installed: sudo innerwarden upgrade --yesEvery binary below is signed (Ed25519 + Sigstore bundle). Docs: https://github.com/InnerWarden/innerwarden/wiki · Site: https://www.innerwarden.com
What's Changed
- security(agent): fix spec-081 managed-agent coexistence for cross-uid / non-root IW by @maiconburn in #1094
- release: 0.15.24 by @maiconburn in #1095
Full Changelog: v0.15.23...v0.15.24