PatchSiren cyber security CVE debrief
CVE-2026-46671 msiemens CVE debrief
The CVE-2026-46671 vulnerability in Rust OneNote File Parser allows for arbitrary file opening on the host filesystem. A maliciously crafted `.onetoc2` table-of-contents file can cause `Parser::parse_notebook` to open arbitrary files on the host filesystem outside the notebook's directory. This issue arises because the parser reads entry names listed inside the `.onetoc2` and joins them against the notebook's base directory without validating that they are relative paths confined to that directory. The vulnerability impacts users who parse `.onetoc2` files from untrusted sources. Users who only parse their own notebooks are not at significant risk. The issue is fixed in onenote_parser 1.1.1, which rejects absolute paths, parent-directory components, and other invalid path characters in entry names, and canonicalises the resolved path to confirm it stays inside the notebook's base directory.
- Vendor
- msiemens
- Product
- onenote.rs
- CVSS
- MEDIUM 4.4
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-07-20
- Original CVE updated
- 2026-07-20
- Advisory published
- 2026-07-20
- Advisory updated
- 2026-07-20
Who should care
Users of Rust OneNote File Parser who parse `.onetoc2` files received from untrusted sources are affected by this vulnerability. This includes developers and users who handle OneNote files from external sources. Users who only ever parse their own notebooks are not at meaningful risk. The vulnerability allows for arbitrary file opening on the host filesystem, which can lead to potential data breaches or system compromise.
Technical summary
Prior to version 1.1.1, a maliciously crafted `.onetoc2` table-of-contents file can cause `Parser::parse_notebook` to open arbitrary files on the host filesystem outside the notebook's directory. The parser reads entry names listed inside the `.onetoc2` and joins them against the notebook's base directory without validating that they are relative paths confined to that directory. The issue is fixed in onenote_parser 1.1.1. The fix involves rejecting absolute paths, parent-directory components, and other invalid path characters in entry names, and additionally canonicalising the resolved path to confirm it stays inside the notebook's base directory. Users who cannot upgrade to 1.1.1 should only call `Parser::parse_notebook` on `.onetoc2` files from trusted sources or use `Parser::parse_section` / `Parser::parse_section_buffer` on individual .one files.
Defensive priority
Medium-High
Recommended defensive actions
- Upgrade to onenote_parser 1.1.1 or later
- Only call `Parser::parse_notebook` on `.onetoc2` files from trusted sources
- Use `Parser::parse_section` / `Parser::parse_section_buffer` on individual .one files
- Review compensating controls for exposed systems while remediation is scheduled and verified
- Check relevant monitoring, detection, and logs for exposed assets that need extra review
- Track exceptions, retest remediated assets, and close the item only after evidence is documented
- Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up
Evidence notes
The issue is fixed in onenote_parser 1.1.1. The fix rejects absolute paths, parent-directory components, and other invalid path characters in entry names, and additionally canonicalises the resolved path to confirm it stays inside the notebook's base directory. Users who cannot upgrade to 1.1.1 should only call `Parser::parse_notebook` on `.onetoc2` files from trusted sources or use `Parser::parse_section` / `Parser::parse_section_buffer` on individual .one files. This ensures that the directory walk is properly confined and reduces the risk of arbitrary file opening.
Official resources
AI-assisted PatchSiren debrief based on the supplied source corpus. The CVE record was published on 2026-07-20T16:17:01.630Z and has not been modified since then.