Description

A new attack known as 'TIKTAG' targets Google Chrome and Linux systems by exploiting ARM's Memory Tagging Extension (MTE). MTE improves memory safety by tagging 16-byte memory blocks with 4-bit tags and operates in synchronous, asynchronous, and asymmetric modes to balance security with performance. Researchers identified that TIKTAG-v1 and TIKTAG-v2 gadgets can effectively use speculative execution to leak these memory tags. Although memory tags do not directly expose sensitive data, their leakage undermines MTE's protection, enabling stealthy memory corruption attacks. These attacks are particularly effective against the Linux kernel, especially in functions involving speculative memory accesses. Attackers manipulate kernel pointers and use system calls to trigger speculative execution paths, then measure cache states to infer memory tags. TIKTAG-v2 leverages store-to-load forwarding behavior in speculative execution to deduce memory tags by altering cache states. ? Researchers showcased TIKTAG-v2's effectiveness against Google Chrome's V8 JavaScript engine, indicating potential exploits for memory corruption vulnerabilities in the browser's renderer process. Despite the severity, reported between November and December 2023, no immediate fixes have been applied. Proposed mitigations include modifying hardware to prevent speculative execution from affecting cache states, inserting speculation barriers, adding padding instructions, and enhancing sandboxing mechanisms. ARM acknowledged the issue but did not consider it a compromise. Chrome's security team opted against fixing the vulnerabilities, citing that MTE-based defenses are not enabled by default in Chrome. The Pixel 8's MTE flaws were later reported and acknowledged as hardware issues qualifying for a bounty reward.