Hoi, <-- Begruessung
Nur wenn Apache root ist, kann er sich unter Linux mit dem
privilegierten Port 80 (unter 1024 dürfen AFAIK nur root-Programme ran)
binden, und er wechselt zur Laufzeit ja auch den User (vermutlich
"insgesamt"), nachdem er sich verbunden hat.
Stimmt.
Und wenn ich Apache so sehe, dann denke ich, daß er keinen einzigen
Request als root ausführt, sondern erstmal den port bindet, dann die
UID und GID changet, und dann erst childs forkt, um requests zu
handlen. ;)
Auch das stimmt. Aber die Problematik ist eine andere: Programme, die als
root gestartet wurden und den root-status wieder abgeben, koennen ihn
theoretisch auch wiederholen. Wenn also der Apache irgendwann mal einen
Buffer-Overrun-Exploit bekommt, dann kann es durchaus sein, dass der
Angreifer darueber eine root-Shell bekommt.
Letztenendes koennen wir uns also nur auf die Programmierer verlassen, dass
sie keinen Mist bauen.
Gruesse,
CK