AMD Zen 1 Vulnerability Not Properly Fixed, Second Pass Issued

It seems that AMD’s issued patch for its Zen 1 “Division by zero” bug wasn’t the end-all, be-all the company wanted it to be. While the company was fast in issuing a patch, there’s now the suspicion that they might’ve been just a bit too fast: according to Michael Larabel with Phoronix, AMD Linux Engineer Borislav Petkov published a new patch that fixed an issue with the original solution (also published by him). It’s just another datapoint on the difficulties of hardening against possible attack vectors.

The original bug related to how Zen 1 processed an integer calculation divided by 0 in certain circumstances: according to the findings, there was the possibility that AMD’s CPU kept “stale quotient data” within its registers even after the operation was fully finished, which could give attackers a window to retrieve sensitive information. The original workaround was to perform a final “dummy division 0/1 before returning from the #DE exception handler”. The idea is simple: whatever old data was still stored would be wiped upon the completion of the 0/1 division (whose result is always, well, zero).

Chia sẻ cho bạn bè cùng đọc