Mailinglisten-Archive |
Es geht um die sogenannten race conditions. Das Problem beschreibt den Wettlauf zweier konkurrierender Prozesse um die Zugriffsrechte auf eine Datei. Das war jahrelang ein Problem bei vielen Betriebssystem, und erscheint nun wieder, weil die Programmierer dieses anscheinend vergessen haben. Damals konnt man als User einen Prozess starten, der alle 100µSekunden auf z.B. die /etc/passwd schreibend zugegriffen hat. In der Prozesszugrifftabelle ist natürlich einem User der Zugriff verboten. In dem Moment, wo ein Prozeß mit Supervisorprivilegien auf die /etc/passwd zugreift, wird in der Tabelle diese Datei freigegeben. Bei einem Multi-User Multitasking Betriebssystem konnte es so passieren, daß der schnelle Userprozeß während eines Taskwechsels dann plötzlich Zugriff auf die Datei passw hatte, und z.B. weitere Paßworte hinzufügen konnte. Dieses Problem ist nur durch Lockmechanismen zu umgehen - Hierzu muß der Prozess der scheiben will, eine lockdatei anlegen. Andere Programme, die dann schreiben möchten, fragen zuerst nach einer Lockdatei, und entscheiden dann, ob geschrieben wird, oder der Task noch warten muß. In MySQL ist dieser Mechanismus nicht so implementiert (siehe Quellcode).... Ich suche aber noch nach einem praktischen Beispiel, wie ich dieses Problem aufzeigen kann....Wenn ich also immer wieder eine Datei exportiere, z.B. eine modifizierte /etc/passwd dann ist es zwar ein Zufallstreffer, ob ich in die Datei in dem Moment schreiben darf, es ist aber mit etwas Fleiß möglich, dieses Problem auszunutzen. Unter BSD UNIX, SOLARIS, OpenBSD, NetBSD und FreeBSD ist das Problem durch aufwendige Kernelmechanismen behoben worden, in LINUX 2.0.36+ ist es noch definitiv vorhanden, in 2.2.x weis ich es nicht ...... Ich setzte 2.2 erst bei wenigen Systemen ein .... (bisher nur 5). Unter NT gib't einfache Möglichkeiten ....also nicht getestet.... Gru/3, Guido Stepken -----Ursprüngliche Nachricht----- Von: Martin Ramsch <m.ramsch_(at)_computer.org> An: Deutsche MySQL-Mailingliste <mysql-de_(at)_lists.4t2.com> Gesendet: Freitag, 3. September 1999 11:14 Betreff: Re: Sicherheitsprobleme bei MySQL !!!! > Guido Stepken schrieb am Mittwoch, den 1. September 1999: > > > > Leider nicht. Es gibt da ein sog. race condition Problem..... je > > > > nach UNIX. Verfolge mal die Problematik in der BUGTRAQ Liste .... > > > > http://www.geek-girl.com BUGTRAQ Liste .... > > Danke für den Link! Das Archiv ist inzwischen allerdings umgezogen > nach <URL: http://www.securityfocus.com/ > --> forums --> bugtraq > bzw. <URL: http://www.securityfocus.com/templates/archive.pike?list=1 >. > > Schneller (wenigstens für mich) ist aber > <URL: http://www2.merton.ox.ac.uk/~security/ >. > > Aber, könntest Du mir bitte noch etwas genauer sagen, um welche > Probleme (es ging um SELECT ... INTO OUTFILE) es sich da handeln soll? > Ich habe in den Bugtraq-Archiven wirklich nichts finden können, > konnte allerdings auch nur im Subject nach "mysql" suchen ... > > Ciao, > Martin > -- > Martin Ramsch <m.ramsch_(at)_computer.org> <URL: http://home.pages.de/~ramsch/ > > PGP KeyID=0xE8EF4F75 FiPr=52 44 5E F3 B0 B1 38 26 E4 EC 80 58 7B 31 3A D7 > > --- > *** Abmelden von dieser Mailingliste funktioniert per E-Mail > *** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe --- *** Abmelden von dieser Mailingliste funktioniert per E-Mail *** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe
php::bar PHP Wiki - Listenarchive