fix(GATE-005): harden helper trusted-input — argv separator + UUID v4 request_id
- apt build_plan: add POSIX '--' before user-derived name=version tokens - dnf build_plan: add POSIX '--' before user-derived name-version token - validate_mint_request: enforce canonical UUID v4 on request_id at intake - RAF components/04: document '--' separator in pipeline step 7 - RAF security/05: document hardened argv contract + UUID v4 validation - RAF flows/03: add stale banner (5 deviations from current code) 14 tests pass. Deferred: artifact_path staging root, name/version charset regex (both need design decisions — see task file).
This commit is contained in:
parent
4e08deef8c
commit
35732a63fd
5 changed files with 94 additions and 17 deletions
|
|
@ -165,8 +165,9 @@ The token extends the existing Ed25519 infrastructure rather than introducing ne
|
|||
- **Executor (`helper/`, privileged, Rust).** Verify validity window → resolve trusted key by
|
||||
`key_id` from a local pinned keyring → reconstruct `signed_message` → Ed25519 verify →
|
||||
verify each artifact's sha256 → replay-guard on `token_id` → exec exactly one operation via
|
||||
argv (no shell, env stripped) → structured result + exit code. Fail-closed on every error
|
||||
path. Auditable in one sitting.
|
||||
argv (no shell, env stripped, POSIX `--` separator before user values) → structured result
|
||||
+ exit code. Fail-closed on every error path. `request_id` validated as canonical UUID v4
|
||||
at intake (GATE-005). Auditable in one sitting.
|
||||
- **Kernel layer (where applicable).** Linux eBPF / Windows WDAC / macOS ESF deny
|
||||
package-manager execution except via the trusted executor. Defense-in-depth.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue