PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Apache: CGI oder mod_perl Skripte mit Root-Rechten laufen lassen



sk
10.02.02, 20:02
Hi!

Ich habe 2 Perlskripte, die jedoch, um zu laufen dringend Root-Rechte brauchen, da sie in die Homeverzeichnisse aller User schreiben können müssen.
Die Skripte sind beide mod_perl-fähig, können aber, wenn nötig auch als normale CGI-Skripte laufen.

Wie bringe ich nun einen Apache, der unter dem User "wwwrun" (ist ein SuSE 7.0 System) läuft, dazu diese beiden Skripte so auszuführen, dass diese mit Root-Rechten laufen? Der Apache soll auf keinen Fall als Root laufen (was ja über Neukompilierung mit Flag BIG_SECURITY_HOLE möglich wäre).

Meine Idee war das setuid-Bit, aber das funktionierte nicht. suEXEC funktioniert ebenfalls nicht, da suEXEC keine Skripte ausführt, die root gehören.

Servus,
Stefan

Olli
10.02.02, 21:41
setzte mal das SETUID-Bit für die Datei /usr/bin/suidperl
möglich, dass es dann klappt, setuid-skripte auszuführen....
schreib mal 'ne erfolgsnachricht....

oliver

sk
10.02.02, 22:10
Hi!

War schon mal kein schlechter Tip, aber es funktioniert immer noch nicht.
Jetzt erscheint folgente Meldung in der error_log:



[Sun Feb 10 22:56:51 2002] [error] [client 192.168.1.2] Premature end of script headers: /isp/www2.lan/cgi-bin//myiivs/f
Insecure dependency in require while running setuid at /isp/www2.lan/cgi-bin//myiivs/filemanager.cgi line 15.
BEGIN failed--compilation aborted at /isp/www2.lan/cgi-bin//myiivs/filemanager.cgi line 15.


Bevor ich /usr/bin/suidperl auf 4755 gesetzt habe, stand nur


[Sun Feb 10 23:07:19 2002] [error] [client 192.168.1.2] Premature end of script headers: /isp/www2.lan/cgi-bin//myiivs/f
Can't do setuid

in der error_log

Servus,
Stefan