Address Space Layout Randomization

Aus Foxwiki

Address Space Layout Randomization (ASLR) - Speicherverwürfelung

Beschreibung

Address Space Layout Randomization (ASLR)
  • Zufallsgestaltung des Adressraum-Aufbaus
  • Speicherverwürfelung
  • Adressverwürfelung
Technik, die die Ausnutzung von Sicherheitslücken in Computersystemen erschwert
  • Durch ASLR werden Adressbereiche den Programmen auf zufälliger Basis zugewiesen, wodurch die Zuweisung der Adressbereiche eines Programms praktisch nicht mehr vorhersagbar ist
  • Dies soll Angriffe durch Pufferüberlauf erschweren
  • Mit Heap-Spraying existiert eine Angriffstechnik, die die Erfolgswahrscheinlichkeit des Angriffs trotz der Nutzung von ASLR erhöhen kann

ASLR bezieht sich auf den EBP und Libraries sowie das Heap-, das Text-, das Data- und das BSS-Segment, wobei letztere nicht bei allen ASLR-Lösungen randomisiert werden

Desktop-Betriebssysteme

Die ASLR-Technik fand erstmals in dem Betriebssystem OpenBSD Verwendung und wurde mit Erscheinen von Windows Vista auch von Microsoft eingeführt, außerdem wurde sie von Apple in Mac OS X Leopard eingeführt

  • Allerdings unterscheidet sich die Implementierung in Vista und Mac OS X Leopard voneinander
  • Während in Vista ASLR im gesamten System implementiert ist, wird bei Mac OS X Leopard nur die Bibliothek geschützt. Mit der Einführung von Mac OS X Lion wurde ASLR komplett implementiert

Der offizielle Linux-Kernel bietet ab der Version 2.6.12 (Juni 2005) eine unvollständige ASLR-Implementierung

  • Mit PaX konnte jedoch schon seit 2001 eine weiterreichende Unterstützung verwendet werden

Seit Kernelversion 3.14 gibt es eine vollständige Implementierung von ASLR Ab Version 4.8 kollidiert die Vorlage:Lang (KASLR) nicht mehr mit der Hibernate-Funktion

Mobile Betriebssysteme

Mit iOS 4.3 fand die ASLR-Technik erstmals auch auf einem Betriebssystem für Mobilgeräte Anwendung

  • Die Implementierung in dem mobilen Webbrowser Apple Safari sollte Anwendern Sicherheitsvorteile bringen, führte aber zunächst zu einer Sicherheitslücke
  • Dem Hacker Charlie Miller gelang es nur drei Tage nach Erscheinen der Firmware, diese über das ASLR-Einfallstor zu hacken

Android führte in der Version 4.0 (Ice Cream Sandwich) ebenfalls eine unvollständige ASLR-Implementierung ein Ab Version 4.1 (Jelly Bean) verfügt Android über eine vollständige Implementierung

Umgehung via Spraying

ASLR lässt sich durch sogenanntes Vorlage:Lang für 32-Bit-Prozessor umgehen

  • Dabei wird der Schadcode über hunderte Megabyte im Speicher dupliziert (großflächiges „Sprayen“)
  • Dadurch steigt die Wahrscheinlichkeit, dass trotzdem (irgendwann) Schadcode im Speicher getroffen und ausgeführt wird


Anhang

Siehe auch

Links

Weblinks
  1. https://de.wikipedia.org/wiki/Address_Space_Layout_Randomization