fix(security): redact invalid workload identity access tokens - #2425
Conversation
Castiron custom code✅ No new custom-code files detected. 34 mixed files remain; 0 existing customizations changed. Compared 34 existing customizations unchanged
A changed generated baseline means this report cannot reliably identify which handwritten lines changed. Inspect the custom-code diffDownload the exact patch produced by this run (requires repository access): gh run download 32316607637 --repo openai/openai-node \
--name castiron-custom-code-32316607637-1 --dir /tmp/castiron-custom-code-32316607637-1
git apply --stat /tmp/castiron-custom-code-32316607637-1/custom-code.patch
cat /tmp/castiron-custom-code-32316607637-1/custom-code.patchOr reproduce it from an SDK checkout containing the vendored reporter: git fetch --no-tags origin 39afa3ade23436802ab4373d0324b6312740f048 43a529908cee7f593a745caabe5d31c3b90044c3
python3 scripts/castiron/custom_code_report.py report \
--base 39afa3ade23436802ab4373d0324b6312740f048 \
--head 43a529908cee7f593a745caabe5d31c3b90044c3 --fetch --require-head-hash --public \
--out /tmp/castiron-custom-code-43a529908cee
cat /tmp/castiron-custom-code-43a529908cee/custom-code.patchThis is the current full custom patch for mixed files, not an attribution of only the handwritten lines changed by this PR. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e7f6bf3077
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
jbeckwith-oai
left a comment
There was a problem hiding this comment.
Independent two-pass security review confirms the existing workload-identity token finding: values ending in HTTP whitespace pass validation and enter the cache, but standard Headers silently strips that whitespace before dispatch, so the wire credential differs from the validated credential. Reject leading/trailing HTTP whitespace before caching while preserving sanitized, cause-free errors. Severity is Medium: credential mismatch/authentication failure is proven; stronger compromise claims are speculative. Existing inline thread already covers this; no duplicate comment added.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 19186b41c9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7ef9e8225f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7142b6eaae
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
jbeckwith-oai
left a comment
There was a problem hiding this comment.
Re-reviewed workload-identity credential validation, including leading/trailing HTTP whitespace, runtime-specific invalid header bytes, secret-free errors, and Bun compatibility. Previous normalization/privacy findings are fixed; CI is green.
Summary
OpenAIErrorfor malformed credentials and valid horizontal tabs, spaces, printable ASCII, and RFC obs-text bytes.Regression proof
Validation