Skip to content

Reject Composer trust mount overrides - #702

Merged
rmcdaniel merged 1 commit into
rust-325-trust-pipfrom
security/server673-wrapper-refusal-20261023
Oct 23, 2026
Merged

rmcdaniel merged 1 commit into
rust-325-trust-pipfrom
security/server673-wrapper-refusal-20261023

Conversation

@rmcdaniel

@rmcdaniel rmcdaniel commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

Security found that run-composer.sh appended its checked CA mount after caller options but still admitted Docker options capable of shadowing or inheriting that mount. This focused correction is stacked directly on #673's exact 5669e2e4 head for owner integration; it does not change Rust/native/shared product source or replace #698.

Changes:

  • refuse any Docker option/value naming /checked-ca before Docker starts;
  • refuse both separated and = forms of --volumes-from;
  • cover volume, mount, tmpfs, device, inherited-volume, CA-variable, env-file and entrypoint counterfactuals;
  • retain an explicit allow-path test for unrelated Docker options;
  • resolve the two open Sonar clarity findings with an explicit default case and named function argument.

Local evidence:

  • 14 mount-independent Composer inventory, adversarial refusal, pinned trust-store and Brotli-floor controls pass;
  • Bash/POSIX-shell syntax and git diff --check pass;
  • the full 16-test invocation produced those 14 passes plus two runner-blocked bind-mount cases because the external Docker daemon could not see the local temporary paths. Both failed before exercising changed product logic and remain recorded rather than called passes.

Hosted run 39985098961 supplies the missing real bind-mounted paths on the exact commit. Central policy, Repository contracts, the complete Composer/Cargo trust controls, the fixed-Brotli image control, the PHP feature suite and final Feature source qualification all pass. Both public-boundary scans pass; the prepared-local candidate job is intentionally skipped for this draft.

The owner should integrate this additively with #698, bring the combined head current, and use normal hosted qualification. This draft is not merge, release or publication acceptance.

@rmcdaniel
rmcdaniel marked this pull request as ready for review October 23, 2026 16:27
@rmcdaniel
rmcdaniel merged commit 5b270f7 into rust-325-trust-pip Oct 23, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant