The new AMD vulnerability discovered by @taviso and his team makes all AMD zen2 processors vulnerable. Also known has Zenbleed.
I compiled the demo code and there we go, I can see lot of information getting leaked from the memory. Not great, it’s the AMD variant of the meltdown/spectre bug basically. It uses however an “optimization” operator (cvtsi2sd
) to trigger the vulnerability in the CPU allowing to read 30kb/core/second of data. No special permissions required. Works on all platforms, all operating systems, VM or docker, it doesn’t matter…
This vulnerability was found using fuzzing, which is an automated way of injecting wrong input values and see when or if something breaks or not.
Currently only EPYC processors have received a fix. All other AMD Zen 2 processors are still fully vulnerable. There are also no BIOS firmware updates yet. I doubt wherever this premature public release from AMD was intentional or not…
More info: https://lock.cmpxchg8b.com/zenbleed.html
The latest microcode-amd packages from your favorite distro should enable the chicken bit for the vulnerable instructions. Of course, it will slow down speculative execution for certain workloads, but it should stop the bug from being exploitable.
Again, running public compute services on consumer hardware is not a use-case that makes that much sense, but appently you’re dead set.
I have this installed
3.20191218.1ubuntu2.1
on my Ubuntu 22.04 server. It stills allows me to execute zenbleed exploit on AMD Ryzen 7 3700X CPU.Changelog: http://changelogs.ubuntu.com/changelogs/pool/main/a/amd64-microcode/amd64-microcode_3.20191218.1ubuntu2.1/changelog. It’s not working…?