www.wikidata.de-de.nina.az
Der Begriff Time of Check to Time of Use Problem abgekurzt auch als TOCTOU TOCTTOU oder TOC TOU ausgesprochen als TOCK tuu beschreibt einen aus einem Programmfehler Software Bug resultierenden und bei der letztendlichen Ausfuhrung von Computerprogrammen gegebenenfalls auftretenden Sachverhalt Allgemein wird damit eine Form der Wettlaufsituation Race Condition bezeichnet bei der der Zeitraum zwischen der Uberprufung eines Systemzustandes Time of check zum Beispiel ob Schreibzugriff auf eine Datei besteht und der Verwendung des Prufergebnisses Time of use also zum Beispiel einer erwunschten Anderung dieser Datei genutzt wird um den gepruften Zustand hier den Schreibzugriff auf eine Datei zu verandern und damit das Prufergebnis fur den weiteren Programmlauf irrelevant zu machen Somit ware zum Beispiel auch ein durchgefuhrter Virencheck eines Antivirenprogrammes eventuell hinfallig sofern zwischen der Uberprufung der Datei auf Virenfreiheit und deren Verwendung im nachfolgenden Programmablauf diese Datei so verandert wird dass sie einen Virus enthalt oder dessen Aktivierung bzw Ausfuhrung erst erlaubt Der Begriff wurde 1996 von Matt Bishop und Michael Dilger in diesem Zusammenhang eingefuhrt Andrey Kolishak beschrieb 2003 das gleiche Problem fur die Verwendung von Windows Hooks Beispiele BearbeitenEine Webanwendung kann es beispielsweise deren Nutzern erlauben bestimmte Seiten zu verandern dem Administrator der Anwendung jedoch zusatzlich die Moglichkeit einraumen Seiten gegen Anderungen zu sperren Wenn der Benutzer seine Anderung durchfuhren mochte wird fur ihn eine Eingabemaske dargestellt in der er seine Daten eingeben oder andern kann Ein mit dem TOCTTOU Problem behaftetes System hat ihm in diesem Augenblick die Anderung erlaubt Time to Check da es seine Berechtigung zur Anderung gepruft hat Wenn jedoch der Administrator anschliessend nachdem der Benutzer die Rechte erhalten und bevor er seine Anderungen gespeichert hat die Seite gegen Anderungen sperrt und damit prinzipiell eine Anderung verbietet wird diese Administratoraktion bei einem fehlerbehafteten System bei einem anschliessenden Abspeichern der Benutzerdaten und damit zum Nutzungszeitpunkt Time of Use der Schreiberlaubnis ignoriert werden In Unix wurde der folgende Abschnitt eines in C geschriebenen Programmes das TOCTTOU Problem aufweisen wenn er fur ein mit setuid Rechten ausgestattetes Programm genutzt wurde if access file R OK 0 exit 1 fd open file O RDONLY do something with fd Dieses Programmstuck soll uberprufen ob der angemeldete Benutzer der dieses Programm benutzt mit den Rechten des eigenen Benutzerkontos Real Userid im Gegensatz zur Effective Userid die andere Rechte beinhalten kann eine bestimmte Datei hier file lesen R OK fur Read dt Lesen darf Diese Wettlaufsituation eroffnet folgende Angriffsmoglichkeit Man legt eine fur den Benutzer lesbare Datei an Man startet dieses Programm Man andert die Datei zu einer symbolischen Verknupfung symlink die auf eine fur den Benutzer nicht lesbare Datei zeigt Fur einen Angreifer ist es durchaus moglich diese Bedingungen fur einen Angriff zu schaffen Das Verfahren erfordert allerdings eine genaue zeitliche Abstimmung der einzelnen Aktionen Daraus ergibt sich in diesem Falle dass der in derzeitigen Unix Systemen verwendete Systemaufruf system call access in der hier benutzten Form nur in speziellen Fallen eingesetzt werden sollte etwa als erster Schritt zur Erlangung exklusiver Zugriffsrechte Mutex Test and Test and set Literatur BearbeitenMatt Bishop Michael Dilger Checking for race conditions in file accesses PDF 182 kB In Computing Systems Vol 9 No 2 1996 S 131 152 englisch Nikita Borisov Rob Johnson Naveen Sastry David Wagner Fixing Races for Fun and Profit How to abuse atime Proceedings of the 14th Conference on USENIX Security Symposium Security 05 Baltimore MD July 31 August 5 2005 Vol 14 2005 S 303 314 englisch Dan Tsafrir Tomer Hertz David Wagner Dilma Da Silva Portably Solving File TOCTTOU Races with Hardness Amplification PDF 632 kB Proceedings of the 6th USENIX Conference on File and Storage Technologies FAST 08 San Jose CA February 26 29 2008 S 189 206 englisch Weblinks Bearbeitenseclab cs ucdavis edu PDF seclists org cwe mitre org Abgerufen von https de wikipedia org w index php title Time of Check to Time of Use Problem amp oldid 237812714