Peter Steinberger
e9d052d728
test: merge shell payload plan checks
2026-04-17 20:01:58 +01:00
Peter Steinberger
38923d13a6
test: trim boundary and fixture hotspots
2026-04-17 19:22:38 +01:00
Peter Steinberger
8507935d3a
test: reuse system run plan fixtures
2026-04-17 00:20:06 +01:00
Ayaan Zaidi
75c551e89e
fix: harden node-host shell payload mutability checks
2026-04-16 20:34:17 +05:30
tmimmanuel
29919bb6e4
fix: land node-host approval binding for native binaries ( #66731 ) (thanks @tmimmanuel)
...
* fix(node-host): allow absolute-path native binaries through approval binder
* test(node-host): cover binary binder edge cases
* test(node-host): use stable native binary fixture
* fix(ci): restore fail-closed race handling
* refactor(node-host): distill approval binding regressions
* fix(node-host): fail closed on unknown shell payload headers
* fix: land node-host approval binding for native binaries (#66731 ) (thanks @tmimmanuel)
* fix: keep relative shell binary payloads fail-closed (#66731 ) (thanks @tmimmanuel)
* fix: keep shell binary bypass on stable paths only (#66731 ) (thanks @tmimmanuel)
* fix: fail closed on symlinked shell binary targets (#66731 ) (thanks @tmimmanuel)
---------
Co-authored-by: Ayaan Zaidi <hi@obviy.us >
2026-04-16 20:30:09 +05:30
Pavan Kumar Gondhi
666f48d9b8
fix(security): remove busybox/toybox from interpreter-like safe bins [AI-assisted] ( #65713 )
...
* fix: address issue
* fix: address review feedback
* fix: address PR review feedback
* fix: address review-pr skill feedback
* fix: address PR review feedback
* docs: add changelog entry for PR merge
2026-04-13 12:03:15 +05:30
Jacob Tomlinson
176c059b05
node-host: bind pnpm dlx approval scripts ( #58374 )
...
* node-host: bind pnpm dlx approval scripts
* node-host: cover pnpm dlx package alias
* node-host: cover pnpm dlx flag forms
* node-host: fail closed on unsafe pnpm dlx flags
* node-host: narrow pnpm dlx fail-closed guard
* node-host: scan pnpm dlx past global --
* node-host: allow pnpm dlx file args
* node-host: allow pnpm dlx data args
* node-host: fail closed on unknown pnpm dlx flags
* node-host: support pnpm workspace-root flag
* node-host: restrict pnpm dlx tail scan
* node-host: support pnpm parallel flag
* changelog: node-host pnpm dlx approval binding (#58374 )
2026-04-02 09:41:28 -07:00
Peter Steinberger
b4fe0faf1b
test: dedupe config and utility suites
2026-03-28 00:46:53 +00:00
Josh Avant
f4fef64fc1
Gateway: treat scope-limited probe RPC as degraded reachability ( #45622 )
...
* Gateway: treat scope-limited probe RPC as degraded
* Docs: clarify gateway probe degraded scope output
* test: fix CI type regressions in gateway and outbound suites
* Tests: fix Node24 diffs theme loading and Windows assertions
* Tests: fix extension typing after main rebase
* Tests: fix Windows CI regressions after rebase
* Tests: normalize executable path assertions on Windows
* Tests: remove duplicate gateway daemon result alias
* Tests: stabilize Windows approval path assertions
* Tests: fix Discord rate-limit startup fixture typing
* Tests: use Windows-friendly relative exec fixtures
---------
Co-authored-by: Mainframe <mainframe@MainfraacStudio.localdomain >
2026-03-13 23:13:33 -05:00
Peter Steinberger
eec1b3a512
refactor: share system run deny cases
2026-03-13 20:37:53 +00:00
Peter Steinberger
07e5fc19bd
refactor: share system run plan test fixtures
2026-03-13 20:19:38 +00:00
Peter Steinberger
be8d51c301
fix(node-host): harden perl approval binding
2026-03-13 13:09:36 +00:00
Peter Steinberger
2f03de029c
fix(node-host): harden pnpm approval binding
2026-03-13 12:59:55 +00:00
Peter Steinberger
ddcaec89e9
fix(node-host): fail closed on ruby approval preload flags
2026-03-12 23:23:54 +00:00
Vincent Koc
33ba3ce951
fix(node-host): harden ambiguous approval operand binding ( #44247 )
...
* fix(node-host): harden approval operand binding
* test(node-host): cover approval parser hardening
* docs(changelog): note approval hardening GHSA cluster
* Update CHANGELOG.md
* fix(node-host): remove dead approval parser entries
* test(node-host): cover bunx approval wrapper
* fix(node-host): unwrap pnpm shim exec forms
* test(node-host): cover pnpm shim wrappers
2026-03-12 13:28:35 -04:00
Robin Waslander
b7a37c2023
fix(node-host): extend script-runner set and add fail-closed guard for mutable-file approval
...
tsx, jiti, ts-node, ts-node-esm, vite-node, and esno were not recognized
as interpreter-style script runners in invoke-system-run-plan.ts. These
runners produced mutableFileOperand: null, causing invoke-system-run.ts
to skip revalidation entirely. A mutated script payload would execute
without the approval binding check that node ./run.js already enforced.
Two-part fix:
- Add tsx, jiti, and related TypeScript/ESM loaders to the known script
runner set so they produce a valid mutableFileOperand from the planner
- Add a fail-closed runtime guard in invoke-system-run.ts that denies
execution when a script run should have a mutable-file binding but the
approval plan is missing it, preventing unknown future runners from
silently bypassing revalidation
Fixes GHSA-qc36-x95h-7j53
2026-03-12 01:34:35 +01:00
Peter Steinberger
daaf211e20
fix(node-host): fail closed on unbound interpreter approvals
2026-03-11 02:36:38 +00:00
Peter Steinberger
68c674d37c
refactor(security): simplify system.run approval model
2026-03-11 01:43:06 +00:00
Peter Steinberger
7289c19f1a
fix(security): bind system.run approvals to exact argv text
2026-03-11 01:25:31 +00:00
Peter Steinberger
912aa8744a
test: fix Windows fake runtime bin fixtures
2026-03-09 06:50:52 +00:00
Peter Steinberger
cf3a479bd1
fix(node-host): bind bun and deno approval scripts
2026-03-09 05:59:32 +00:00
Josh Avant
25252ab5ab
gateway: harden shared auth resolution across systemd, discord, and node host
2026-03-07 18:28:32 -06:00
Peter Steinberger
c76d29208b
fix(node-host): bind approved script operands
2026-03-07 23:04:00 +00:00
Sid
c8ebd48e0f
fix(node-host): sync rawCommand with hardened argv after executable path pinning ( #33137 )
...
Merged via squash.
Prepared head SHA: a7987905f7
Co-authored-by: Sid-Qin <201593046+Sid-Qin@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-03-04 11:30:33 -05:00
Peter Steinberger
aee27d0e38
refactor(security): table-drive wrapper approval pinning tests
2026-03-02 17:30:48 +00:00
Peter Steinberger
dded569626
fix(security): preserve system.run wrapper approval semantics
2026-03-02 17:20:52 +00:00