Es ist realistisch gesehen nicht mglich, ein Whlprogramm ohne gesetztes SUID Bit zu schreiben, das sicher und dabei fr unerfahrene Benutzer einfach zu benutzen ist. Kppp geht das Sicherheitsproblem mit folgender Strategie an:
Gleich nach dem Programmstart startet Kppp einen neuen Proze.
Der Masterproze (der die GUI, Benutzerinteraktion u.. verwaltet) legt den SUID-Status danach ab und luft dann mit den normalen Benutzerprivilegien.
Der Slaveproze behlt seine Privilegien bei und kmmert sich um alles, fr das man root-Rechte bentigt. Um diesen Teil sicher zu machen, werden hier keine Funktionen der KDE/QT-Bibliotheken aufgerufen, sondern nur einfache Funktionen der C-Bibliothek. Der Quellcode fr diesen Proze ist kurz (etwa 500 Zeilen) und gut dokumentiert. Dadurch ist es einfach, Sicherheitslcher zu entdecken.
Master- und Slaveproze kommunizieren mit standard UNIX IPC.
Vielen Dank an Harri Porten fr das Schreiben dieses exzellenten Stck Quellcodes. Ich dachte, es sei unmglich - er schrieb es in einer Woche.