2.1. Gegenmaßnahmen – Verschiedene Ansätze2.2. Ursachenbekämpfung2.3. Gegenmaßnahme – Sichere Programmierung2.3.1. Unsichere Bibliotheksfunktionen2.4. Gegenmaßnahme – Source Code Audit2.5. Gegenmaßnahme – Automatisierte Software-Tests2.5.1. Statische Analysen – Source Code Analyzer2.5.2. Dynamische Analysen – Tracer2.6. Gegenmaßnahme – Binary Audit2.6.1. Fault Injection2.6.2. Reverse Engineering2.7. Bekämpfung der Auswirkungen2.8. Gegenmaßnahme – Compiler-Erweiterungen2.8.1. Bounds Checking2.8.2. StackGuard2.8.3. /GS-Option von Microsoft2.8.4. StackShield2.8.5. Zusammenfassung: Möglichkeiten und Grenzen von StackGuard, /GS-Option und StackShield2.8.6. Weitere Compiler-Erweiterungen2.9. Gegenmaßnahme – Wrapper für »unsichere« Bibliotheksfunktionen2.9.1. Libsafe2.10. Gegenmaßnahme – Modifikation der Prozessumgebung2.10.1. Non-executable Stack2.10.2. PaX2.10.3. Weitere Implementationen