
CVE Reproduction: cve-2026-21509-office_security_bypass_reproduction
CVE-2026-21509 is a security feature bypass vulnerability in Microsoft Office that allows an attacker to circumvent Protected View and OLE (Object Linking and Embedding) mitigations. The flaw is rooted in how Office validates the kill bit — a registry mechanism designed to block dangerous CLSIDs. By supplying a crafted OLE object with an altered CLSID or by manipulating the activation context, an attacker can trick Office into trusting an embedded control that should have been blocked.
Root Cause: CWE-807 — Reliance on Untrusted Inputs in a Security Decision. The kill-bit check on COM/OLE objects uses data that an attacker can influence through document-level overrides. Specifically, the IDataObject or IOleObject implementation in certain Office documents can redirect the kill-bit lookup to an attacker-controlled registry path, or supply a GUID that bypasses the blocklist entirely.
Attack Vector:
| Product | Version / Build |
|---|---|
| Office 2016 | All versions prior to KB5002711 |
| Office 2019 | All versions prior to KB5002712 |
exploit.py:
python exploit.py --output malicious.doc --payload "calc.exe"
The exploit.py script in this repository generates a crafted RTF/DOC file that:
{0002DF01-0000-0000-C000-000000000046} (DHTML Edit Control — a commonly weaponised control).\objdata and \object groups in the RTF to bypass
the kill-bit lookup during activation.⚠ WARNING: This PoC is provided exclusively for authorised security testing. Do not deploy against systems you do not own or have explicit permission to test.
Security Settings > Disable OLE Activation`.
| Office 2021 | All versions prior to KB5002713 |
| Office 2024 | All versions prior to KB5002714 |
| Microsoft 365 Apps | Build prior to 2501 (January 2026) |