web: ship the editors and .odm tools behind real routes - #1182
Conversation
|
@codex security review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
Security findingsAdvisory findings (1)
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Pull request was closed
1353c3e to
a2f3917
Compare
There was a problem hiding this comment.
🛡️ Codex Security Review
Here are some automated security review suggestions for this pull request.
Reviewed commit: 1353c3e288
ℹ️ About Codex security reviews in GitHub
This is an experimental Codex feature. Security reviews are triggered when:
- You comment "@codex security review"
- A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review
Once complete, Codex will leave suggestions, or a comment if no findings are found.
| const pdf = odmToPdf(input.master, { | ||
| resolveSubDocument: (href) => byHref.get(href), | ||
| }); |
There was a problem hiding this comment.
🛡️ Codex Security Review
Security: Bound expansion across repeated ODM chapters
When a victim selects an attacker-supplied .odm and a matching chapter, bound cumulative chapter expansion before calling odmToPdf. A master can repeat one href thousands of times; this resolver returns the same bytes each time, and odmToPdf decodes, retains, and lays out the chapter for every section. A 14,671-byte 5,000-section master plus a 1,450-byte ODT holding 1 MiB of text materializes at least 4.88 GiB of text, exhausting the worker/tab. Zod checks only types and no cancellation signal is passed.
SECURITY.md reference: SECURITY.md:L15-L18
Useful? React with 👍 / 👎.
Closes #1096. Package/JSON and .odb had already landed under concurrent sessions (verified, untouched); this ships the two remaining stubs:
Both tools activate in NAV_ITEMS and the PLANNED_ITEMS block is gone. Full vite build (with PWA precache) green; two new rpc round-trip tests.
Closes #1096.