linux-l: Buffer-Overflow
Jan-Benedict Glaw
jbglaw at lug-owl.de
Mo Apr 24 14:15:28 CEST 2000
On Mon, Apr 24, 2000 at 09:16:51AM +0200, Michael Müller wrote:
> Am Son, 23 Apr 2000 schrieb Jens Dreger:
> >
> > Alles was Du jetzt noch machen musst, ist statt 1234567... einen
> > ausfuehrbaren Code zu uebergeben und mit etwas Glueck wird der in
> > einen Bereich geschrieben, der irgendwann zur Ausfuehrung gelangt,
> > weil da eigentlich eine Unterroutine stehen sollte.
> Und wie kommt die Unterroutine an die root-Rechte heran?
Indem das Programm schon vorher ein Server war, der unter root-Rechten
lief (...und davon gibts u.U. nicht ganz wenige...). Deshalb sind gerade
in Servern, die oft eingesetzt werden, Mechanismen implementiert, die das
verhindern (sollen). Server läuft -> Authentifizierung eines Clients ->
Server nimmt UID des users an, der sich authentifiziert hat -> Server
läutf unter verminderten Rechten (als ge-fork()-te Kopie) weiter.
Samba macht das z.B. auf diese Weise (viele andere aber auch;) Dann muß
man als Programmierer "nur" bei dem ersten Programm-Stück höllisch auf-
passen, daß man nichts übersieht, sonst das ganze Programm über.
MfG, JBG
PS: Natürlich sollte man dennoch fehlerfrei zu programieren versuchen, damit
der Client nicht unter den Berechtigungen, die der Server dann im
laufenden Betrieb angenommen hat, Dummfug machen kann...
--
Fehler eingestehen, Größe zeigen: Nehmt die Rechtschreibreform zurück!!!
/* Jan-Benedict Glaw <jbglaw at lug-owl.de> -- +49-177-5601720 */
keyID=0x8399E1BB fingerprint=250D 3BCF 7127 0D8C A444 A961 1DBD 5E75 8399 E1BB
Mehr Informationen über die Mailingliste linux-l