Memory corruption lets attackers hijack control flow, execute code, elevate privileges, and leak data.
ARM’s Memory Tagging Extension (MTE) aims to mitigate by tagging memory and checking tags on access.Â
The following researchers found speculative execution attacks can leak MTE tags via new TIKTAG gadgets exploiting branch prediction, prefetchers, and store-to-load forwarding.Â
- Juhee Kim from Seoul National University
- Jinbum Park from Samsung Research
- Sihyeon Roh from Seoul National University
- Jaeyoung Chung from Seoul National University
- Youngjoo Lee from Seoul National University
- Taesoo Kim from Samsung Research and Georgia Institute of Technology
- Byoungyoung Lee from Seoul National University
Cybersecurity analysts developed real-world attacks against Chrome, and Linux kernel leaking tags over 95% success in less than 4 seconds.
The findings show that designing MTE mitigations requires considering speculative execution vulnerabilities.Â
However, it’s been reported to ARM, Google, and Android. As MTE adoption grows, understanding these issues is crucial for secure deployment.
Scan Your Business Email Inbox to Find Advanced Email Threats - Try AI-Powered Free Threat Scan
Technical Analysis
Security researchers explore an attacker model targeting systems with Memory Tagging Extension (MTE), which uses random tags for memory allocations and tag checks on every memory access.Â
The attacker knows memory corruption vulnerabilities and aims to bypass MTE by learning the tag for a memory address, allowing exploitation without crashing the process.Â
Researchers present two speculative execution gadgets that leak MTE tags by leveraging microarchitectural behaviors affected by tag check results, such as data prefetching, speculative execution, and store-to-load forwarding:-
- TIKTAG-v1
- TIKTAG-v2
Mitigations involve hardware changes to separate these behaviors from tag checks or software techniques like speculation barriers.
The researchers present real-world attacks that use the TIKTAG speculative execution gadget to bypass Memory Tagging Extension (MTE) protections in Google Chrome and the Linux kernel.
They created a TIKTAG-v2 gadget in the V8 JavaScript engine for Chrome to enable leaking MTE tags, which leads to over 97% successful linear overflow and use after free vulnerability exploitation.
The Linux kernel’s code includes a TIKTAG-v1 gadget that can leak tags across the user and kernel boundaries.
By doing so, they manage to circumvent kernel MTE protections regarding buffer overflow and use-after-free with 97% effectiveness.
For example, mitigations include strengthening speculative sandboxes, inserting barriers between speculations, and avoiding constructing gadgets using patterns.
These attacks from security experts show that speculative execution must be considered when creating some hardware-enforced security mechanisms.
Free Webinar! 3 Security Trends to Maximize MSP Growth -> Register For Free