Was ist eine Race Condition?

Eine Race-Bedingung tritt auf, wenn mehrere Prozesse und manipulieren die gleichen Daten gleichzeitig, und das Ergebnis der Ausführung hängt von der Reihenfolge, in dem der Zugang erfolgt.

Eine Race-Bedingung ist von Interesse für ein Hacker, wenn die Race-Bedingung verwendet werden kann, um privilegierten Zugang System.

Betrachten Sie die folgende Code-Snippet die zeigt eine Race-Bedingung:

  if (access ( "/ tmp / datafile", R_OK) == 0) ( 
	  fd = open ( "/ tmp / datafile 
          Prozess (fd); 
          close (fd); 

Dieser Code erstellt die temporäre Datei / tmp / datafile und dann klappt es.

Das Potenzial Race Condition zwischen der Forderung, den Zugang () und der Aufruf von open ().

Wenn ein Angreifer ersetzen können den Inhalt der Datei / tmp / datafile zwischen dem Zugang () und open ()-Funktionen, so können die Maßnahmen des Programms, dass die Datei verwendet. Dies ist das Rennen.

Es kann schwierig sein, um eine Race-Bedingung, da müssen Sie möglicherweise "das Rennen" viele Male, bevor Sie "win". Sie müssen möglicherweise das angreifbare Programm und der Anfälligkeit Testwerkzeug Tausende Male, bevor Sie die expolit Code der nach der die Sicherheitslücke öffnet und vor der Schwachstelle schließt. Manchmal ist es möglich, den Angriff einen zusätzlichen Vorteil durch die Benutzung von "Nizza", um die Priorität der legitimen suid Programm.

Missbräuchliche Verwendung der Funktionsaufrufe Zugang (), chown (), chgrp (), chmod (), mktemp (), tempnam (), tmpfile () und tmpnam () sind die üblichen Ursachen für eine Race Condition.

Writing Secure Code Building Secure Software Secure Coding Secure Programming Cookbook
Kauf diese hervorragende Bücher über sicheres Programmieren bei Amazon.com


Top 5 Free Networking Tools

Vulnerability Management für Dummies

Unsere Freunde von Qualys bietet kostenlose Kopien der elektronischen Version der Vulnerability Management für Dummies zu Tech-FAQ Leser.

Vulnerability Management für Dummies:

  • Erklärt, die kritische Notwendigkeit für Schwachstellen-Management
  • Details der grundlegenden Best-Practice-Schritte für eine erfolgreiche Schwachstellen-Management-Programm
  • Gibt einen Überblick über die verschiedenen Schwachstellen-Management-Lösungen - einschließlich der Vor-und Nachteile der einzelnen
  • Highlights der preisgekrönten QualysGuard Schwachstellen-Management-Lösung
  • Bietet eine Zehn-Punkte-Checkliste für die Beseitigung von Schwachstellen aus Ihrer wichtigsten Ressourcen
Bookmark Was ist eine Race Condition?

Neueste Blog-Posts


Englisch Englisch Deutsch Deutsch Spanisch Spanisch Französisch Französisch Italienisch Italienisch Portugiesisch Portugiesisch Russisch Russisch Niederländisch Niederländisch
Griechisch Griechisch Hindi Hindi Japanisch Japanisch Koreanisch Koreanisch Chinesisch Chinesisch Chinesisch (Taiwan) Chinesisch (Taiwan) Arabisch Arabisch

Copyright 2009 Tech-FAQ. Alle Rechte vorbehalten. Datenschutz.