Anweisungen zum Speicherschutz schützen vor Hackern

Update: 9. Dezember 2023

„Die Speichersicherheit ist seit fast 40 Jahren ein Problem und es wurden zahlreiche Lösungen vorgeschlagen, so die Columbia-Informatikerin Simha Sethumadhavan. „Wir glauben, dass die Speichersicherheit weiterhin ein Problem darstellt, da sie die Lasten nicht gerecht zwischen Softwareingenieuren und Endbenutzern verteilt.“

Die Sethumadhavan-Gruppe stellte fest, dass die meisten Sicherheitsprobleme im Speicher eines Computers auftreten – insbesondere Zeiger und absichtlich beschädigte Zeiger können verwendet werden, um ein Programm zu entführen.

Aktuelle Techniken zur Eindämmung von Gedächtnisangriffen verbrauchen laut der Universität viel Energie, beeinträchtigen die Systemleistung und können Software beschädigen.

Das Team hat sich zum Ziel gesetzt, den Speicher zu schützen, ohne die Leistung eines Systems übermäßig zu beeinträchtigen.

Ihre erste Lösung wurde „ZeRØ“ (zero-overhead resilient operation under pointer Integrity Attacks) genannt.

ZeRO bietet eine Reihe von Speicherbefehlen, die dem Befehlssatz hinzugefügt werden, und ein Metadaten-Codierungsschema, das den Code und die Datenzeiger eines Systems schützt.

Es erfordert geringfügige, leicht hinzuzufügende Änderungen an der Architektur eines Systems, so die Universität, verlangsamt den Prozessor wenig oder gar nicht und kann einen Systemabsturz selbst bei Angriffen vermeiden.

Für eine etwas invasivere Abwehr – 8 % Overhead auf die Computerleistung – schlägt das Team ein System zur Erkennung von Speicherfehlern vor.

Dies wurde auch genannt: 'No-FAT, beschrieben als 'architektonische Unterstützung für Sicherheitsüberprüfungen mit geringem Overhead'.

No-FAT beschleunigt Fuzz-Tests und ist laut Columbia „sehr einfach für Entwickler, es beim Aufbau eines Systems hinzuzufügen“.

Es baut auf einem Trend in der Software hin zu Binning-Speicherzuweisungen auf, die Buckets unterschiedlicher Größe verwenden, um Speicher zu speichern, bis er von der Software benötigt wird. Die Forscher fanden heraus, dass es möglich ist, Speichersicherheit mit geringen Auswirkungen auf die Leistung zu erreichen, wenn die Binning-Speicherzuweisung von der Software verwendet wird und mit bestehender Software kompatibel ist.

Beide Projekte wurden beim jüngsten International Symposium on Computer Architecture (ISCA) vorgestellt.

„Wir glauben, mit diesen beiden Papieren den richtigen Lastenausgleich gefunden zu haben“, sagte Sethumadhavan.

Vordrucke der ISCA-Papiere sind verfügbar:

ZeRØ: Robuster Betrieb ohne Overhead bei Pointer-Integrity-Angriffen

No-FAT: Architekturunterstützung für Sicherheitsüberprüfungen mit geringem Overhead