Race Condition
Eine Race Condition entsteht, wenn mehrere Threads gleichzeitig auf gemeinsam genutzte Ressourcen zugreifen und die verschränkte Ausführung unerwartete Zustände erzeugt, die sich zur Umgehung von Prüfungen ausnutzen lassen.
Zweck
Die Umgehung von Sicherheitsprüfungen durch Nebenläufigkeitsrennen und ihre Abwehr verstehen; ein häufiger Defekt in Multithread-Programmen.
Mechanismus
TOCTOU: Das Fenster zwischen Prüfen und Verwenden kann ein Angreifer ausnutzen (z. B. ersetzt er nach der Existenzprüfung eine Datei durch einen Symlink). Abwehr: atomare Operationen, Locks, Dateideskriptoren.
Anwendungsfälle
- Security-Audit von Nebenläufigkeit
- TOCTOU-Schwachstellen
- Multithread-Defekte