A new side-channel attack called "GoFetch" impacts Apple M1, M2, and M3 processors and can be used to steal secret cryptographic keys from data in the CPU's cache. The attack targets constant-time cryptographic implementations using data memory-dependent prefetchers (DMPs) found in modern Apple CPUs. This allows it to recreate the private cryptographic keys for various algorithms, including OpenSSL Diffie-Hellman, Go RSA, CRYSTALS Kyber, and Dilithium from the CPU's cache. GoFetch was developed by a team of seven researchers from various universities in the U.S., who reported their findings to Apple on December 5, 2023. However, as this is a hardware-based vulnerability, there is no way to fix it in impacted CPUs. While it would be possible to mitigate the flaws using software fixes, this would cause a performance hit on these CPUs' cryptographic functions. The GoFetch attack targets data memory-dependent prefetchers, a CPU feature designed to improve computer performance when executing code. A prefetcher is trained by previous accesses to memory when retrieving data, allowing it to predict what data the computer will need next. This data is then fetched in advance from slower parts of memory into faster memory regions, like the CPU cache. If the prediction is accurate, the data is now quickly available, increasing the computer's performance. If the guess was wrong, the CPU simply requests the correct data as usual. The GoFetch attack focuses on a newer prefetcher called a d...
New GoFetch attack on Apple Silicon CPUs can steal crypto keys
BleepingComputer
·Bill Toulas
·Published Mar 22, 2024
·Updated
Affected Software
3 affected components
Apple M1 Processor
Apple M2 Processor
Apple M3 Processor
Frequently Asked Questions
1
What is the main topic of this article?
The article discusses a new side-channel attack named 'GoFetch' that affects Apple Silicon CPUs and can steal cryptographic keys.
2
What security implications are discussed?
The GoFetch attack poses a significant risk by exploiting constant-time cryptographic implementations to leak sensitive information from the CPU's cache.
3
What products or software are affected?
The GoFetch attack impacts Apple M1, M2, and M3 processors.
4
Who is vulnerable to the GoFetch attack?
Users and applications utilizing constant-time cryptographic functions on affected Apple Silicon devices are vulnerable.
5
What measures can be taken against this attack?
Mitigation may involve updating software to incorporate more resilient cryptographic practices and monitoring for unusual CPU behavior.