GoFetch
Cryptographic attacks on Apple Silicon CPUs

GoFetch is a family of cryptographic attacks on some Apple silicon chips that exploits the CPU's on-chip data memory-dependent prefetcher (DMP) to investigate the contents of memory.
01Attacks
Chips affected include the M1, M2, M3 and A14 series systems-on-a-chip.
The DMP looks at cache memory content for possible pointer values and prefetches the data at those locations into cache if it sees memory access patterns suggesting that following those pointers would be useful. The GoFetch attacks use those speculative cache fetches to undermine a number of different cryptographic algorithms by using memory access timings to exfiltrate data from those algorithms using timing attacks.
The authors of GoFetch state that they were unable to make their exploit work on the Intel Raptor Lake processor, which they tested due to its more limited DMP functionality.
Sources and credits
This article is adapted from the Wikipedia article “GoFetch”, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.
Images, from Wikimedia Commons:
- Gofetch.svg by GoFetch team, CC0
Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.