Am 17.06.2002 um 11:20 schrieb Christian Schult:
Ok, nun könnte einen ja der Ehrgeiz packen und man setzt in dem suid-Script die PATH-Variable, auch IFS, benutzt nur absolute Pfadnamen, prüft Eingaben auf unerlaubte Zeichen usw. Auch in anderen Programmiersprachen muss man sein Programm immer schön bullet-proofed halten.
Zu aufwaendig, zu unsicher. In 90% der Faelle geht es anders, wie auch in den Fall, um den es in diesem Thread ging. Fuer den Rest kann man sich gerade etwas in C oder Perl (suidperl) basteln. Oder gleich sudo nehmen.
In http://www.samag.com/documents/s=1149/sam0106a/0106a.htm wird aber darauf hingewiesen, dass das alles bei suid-shell-Scripten nichts nützt, weil eine race-condition möglich ist wenn der Angreifer einen sym. Link auf das Script erzeugt und dann den sym. Link aufruft. [..]
Das Syenario kannte ich noch nicht. Klingt sich plausibel, aber gehoert wohl zu den theoretischeren Angriffsmoeglichkeiten.
Wenn nicht, gibt es weitere Gründe gegen suid-root-Scripten?
Wenn du es richtig machen willst ist es zu viel Aufwand fuer ein viel zu unsicheres Konzept. Es kann zu schnell zu viel schiefgehen. Man sollte sich nicht durch die Moeglichkeit eines suid-Skriptes verfuehren lassen, auch wenn es schoen bequem und einfach ist. -- Dennis Stosberg eMail: dennis@stosberg.net dstosber@techfak.uni-bielefeld.de pgp key: http://stosberg.net/dennis.asc icq: 63537718