Linker, Loader und ausführbare Formate
Welche Aussage zum Zweck von ASLR (Address Space Layout Randomization) ist richtig?
- ADie Adressen von Stack, Heap, Bibliotheken usw. werden bei jeder Ausführung geändert, sodass die Zieladressen von Angreifern schwer vorhersagbar sind
- BSpeicheradressen werden zufällig gewählt, um die Cache-Trefferrate zu erhöhen
- CUngenutzter Speicher wird zufällig freigegeben, um den freien Platz zu vergrößern
Antwort und Erläuterung anzeigen
Antwort: A. Die Adressen von Stack, Heap, Bibliotheken usw. werden bei jeder Ausführung geändert, sodass die Zieladressen von Angreifern schwer vorhersagbar sind
Bei Angriffen, die z. B. Pufferüberläufe ausnutzen, ist es wichtig, die Adressen von Bibliotheksfunktionen und Daten auf dem Stack zu kennen. ASLR verschiebt bei jedem Prozessstart die Adressen, an denen Stack, Heap, Shared Libraries und die ausführbare Datei liegen, sodass Angreifer die Adressen nicht fest vorgeben können. Allein bietet es keinen vollständigen Schutz und wird mit weiteren Maßnahmen wie der Trennung von Schreiben und Ausführen kombiniert.