Frage Was ist der Rowhammer-DRAM-Fehler und wie sollte ich ihn behandeln?


DRAM-Chips sind sehr dicht gepackt. Die Forschung hat gezeigt, dass benachbarte Bits zufällig umgedreht werden können.

  • Wie groß ist die Wahrscheinlichkeit, dass der Fehler zufällig in einem Server-Grade-DRAM-Chip mit ECC ausgelöst wird (der CMU-Intel-Papier zitiert z.B. die Zahl 9.4x10 ^ -14 für einen unbekannten Chip für einen Ausfall in einem Jahr)?
  • Woher weiß ich, ob der Fehler vor dem Kauf von Speicher behoben wurde?
  • Was soll ich dagegen tun? bösartige Versuche Privilegeskalation durch z.B. Mieter oder nicht privilegierte Benutzer auf z.B. CentOS 7?

Verweise:


20
2018-03-10 05:42


Ursprung


Da die Details des Exploits noch immer nicht blockiert sind, bin ich mir nicht sicher, dass neben den Informationen, die Google Ihnen bereits gegeben hat, noch viele weitere Informationen verfügbar sein werden. - fukawi2
Wie ich es verstanden habe, senkt die Speicheraktualisierungsrate drastisch die Wahrscheinlichkeit eines erfolgreichen Bit-Flip, und neuere BIOS-Versionen haben die Aktualisierungsraten gesenkt, um das Risiko zu mindern. Die Aktualisierung Ihres BIOS könnte also ein guter erster Schritt sein? - Reaces
@ fukawi2, welche Details des Exploits wurden / werden embargoed? Der vollständige Code für die Proof-of-Concept-Exploits wurde mit dem Blogpost veröffentlicht. - Mark Seaborn
@MarkSeaborn Ich erinnere mich nicht einmal jetzt, das war vor 3 Monaten, und ich kann mich kaum an Frühstück erinnern. - fukawi2


Antworten:


Das von Ihnen zitierte CMU-Intel-Papier zeigt (auf Seite 5), dass die Fehlerrate stark von der Teilenummer / Herstellungsdatum des DRAM-Moduls abhängt und um einen Faktor von 10-1000 variiert. Es gibt auch Anzeichen dafür, dass das Problem bei kürzlich (2014) hergestellten Chips viel weniger ausgeprägt ist.

Die von Ihnen genannte Zahl '9.4x10 ^ -14' wurde im Zusammenhang mit einem vorgeschlagenen theoretischen Abschwächungsmechanismus namens "PARA" verwendet (der einem bestehenden Abschwächungsmechanismus pTRR (pseudo Target Row Refresh) ähnlich sein könnte) und für Sie irrelevant ist Frage, weil PARA nichts mit ECC zu tun hat.

Ein zweites CMU-Intel-Papier (Seite 10) erwähnt die Auswirkungen verschiedener ECC-Algorithmen auf die Fehlerreduktion (Faktor 10 ^ 2 bis 10 ^ 5, möglicherweise viel mehr mit ausgeklügelten Speichertests und "Guardbanding").

ECC verwandelt den Row Hammer-Exploit effektiv in einen DOS-Angriff. 1-Bit-Fehler werden von ECC korrigiert, und sobald ein nicht korrigierbarer 2-Bit-Fehler erkannt wird, wird das System angehalten (unter der Annahme von SECDED ECC).

Eine Lösung besteht darin, Hardware zu kaufen, die pTRR oder TRR unterstützt. Sehen aktueller Blogbeitrag von Cisco über Row Hammer. Zumindest einige Hersteller scheinen einen dieser Abschwächungsmechanismen in ihre DRAM-Module eingebaut zu haben, halten ihn jedoch in ihren Spezifikationen verborgen. Um Ihre Frage zu beantworten: Fragen Sie den Verkäufer.

Schnellere Bildwiederholraten (32 ms statt 64 ms) und aggressive Patrouillen-Scrub-Intervalle helfen ebenfalls, hätten aber einen Performance-Effekt. Aber ich kenne keine Serverhardware, die diese Parameter tatsächlich feinabstimmen lässt.

Ich denke, es gibt nicht viel, was Sie auf der Betriebssystemseite tun können, außer das Beenden verdächtiger Prozesse mit konstant hoher CPU-Auslastung und hohen Cache-Fehlern.


19
2018-03-11 00:38





Die Situation scheint immer noch ziemlich unklar zu sein, deshalb glaube ich nicht, dass Ihre Fragen direkt beantwortet werden können, aber hier sind einige relativ neue Informationen als Teilantwort. Für Nachrichten, folgen Sie den rowhammer-discuss Mailingliste.

Ich bin mir nicht sicher, ob es derzeit möglich ist, öffentliche Informationen zu vermeiden, um anfälliges RAM zu kaufen, oder Fehlerraten in existierender Hardware einfach vorherzusagen. Die Hersteller waren nicht offen mit Informationen darüber, wie ihre Produkte betroffen sind. Es ist möglich, Speicher zu testen, der bereits mit Softwaretools erworben wurde. Sie sollten jedoch beachten, dass das Ausführen dieser Tools für erhebliche Zeiträume (Stunden) den RAM dauerhaft beeinträchtigen und zu Fehlern beim Ausführen von Software führen kann.

"Unbenannte Speicherfirmen" haben berichtet versucht, ein Bestechungsgeld zu zahlen im Gegenzug dafür, dass die Passmark Software in ihrem Memtest86-Tool keinen Rowhammer-Test veröffentlicht.

Intel Skylake Hardware wurde berichtet Anfälliger, nicht wenigerwegen der Hinzufügung eines neuen clflushopt Anweisung. Das hat wurde bereits ausgenutzt in rowhammer.js

Daniel Gruss beantwortet hier im Dezember 2015 einige Fragen zur Mitigation (Co-Autor von das rowhammer.js-Papier) in diesem Gespräch:

  1. Während ein ECC-RAM weniger anfällig ist als ein Nicht-ECC-RAM, ist ein anderer ECC-RAM anfälliger als ein Nicht-ECC-RAM (Link zur Frage im Video)
  2. Der Wechsel zu einer schnelleren Bildwiederholrate reicht aus, um den Rowhammer bei den meisten, aber nicht allen Hardware zu verhindern - aber nicht alle BIOS erlauben es, die Bildwiederholfrequenz zu ändern (Link zur Frage im Video).

Als eine Gegenmaßnahme kann es möglich sein, laufende Angriffe von Ruderangriffen zu erkennen, aber ich weiß nicht, dass dies getan wurde.


4
2018-01-17 22:17