apache, perl, php (suexec)

Apache, Lighttpd, nginx, Cherokee
Post Reply
mr. i-net
Posts: 29
Joined: 2003-02-02 13:59
Location: Winnen
 

apache, perl, php (suexec)

Post by mr. i-net »

hallo

habe ein riesen problem. und zwar betreibe ich einen webserver mit mehreren vhosts. suexec ist aktiviert.

php läuft als modul nicht als cgi, was zur folge hat, dass durch php erstellte Dateien dem user des des apache-webservers gehören.

wenn jetzt also jemand eine perl (oder andere cgi) -Datei erstellt, gehört diese http://www.www (oder eben apache.www usw.)

Dieses Script kann jetzt mit den rechten des webservers arbeiten - sprich: man kann wichtige systemdateien auslesen (das kann man noch durch entsprechende rechtesetzung verhindern), jedoch kann man auf jeden Fall in andere VHosts, da diese ja die Gruppe des Webservers haben.

kann jemand helfen? Ist echt wichtig...
!!!!!!!!IM VORRAUS VIELEN DANK!!!!!!!!!!!!!!
duergner
Posts: 923
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA
 

Re: apache, perl, php (suexec)

Post by duergner »

Du lässt nicht zu, dass PHP Dateien in Verzeichnissen anlegen kann, die als ScriptAlias definiert sind.
wirsing
Posts: 604
Joined: 2002-11-20 21:32
Location: Vaihingen und Karlsruhe
 

Re: apache, perl, php (suexec)

Post by wirsing »

Setze open_basedir, mache dich über safe_mode schlau oder benutze PHP als CGI unter suPHP oder suExec.
Des weiteren Boardregeln, Artikel 5.5, 5.6.
Und: du hast eigentlich nicht gesagt, wobei man dir helfen soll.
mr. i-net
Posts: 29
Joined: 2003-02-02 13:59
Location: Winnen
 

Re: apache, perl, php (suexec)

Post by mr. i-net »

danke für die schnellen antworten. leider ist es nicht das was ich suche.

@ duergner: klar das würde zunächst helfen, aber die user dürfen normal in ihrem kompletten docroot cgi´s ausführen, was ich auch nicht ohne weiteres ändern kann da sonst alle ihre scripten ändern müssen.

@ wirsing: sorry wenn das problem nicht korrekt rüber kam.
open_basedir und safe_mode ist mir bekannt. meines wissens bringt mir das aber nur was für php selbst oder?! da ich aber ja nun nur eine einfache datei erstelle (ein CGI-Script) und diese ja in meinem basedir liegt bringt mir das nichts.
suexec läuft, aber die datei wird leider vom apache selbst ausgeführt daher greift suexec nicht.

daher denke ich, ich komme nicht um php als cgi herum. das lief schonmal, leider mit enormen performence einbußen.

wenn noch jemand einen ansatz hat... ich wäre dankbar....
duergner
Posts: 923
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA
 

Re: apache, perl, php (suexec)

Post by duergner »

Ich denke entweder PHP als CGI evtl mit suPHP oder die beschränkst CGI auf entsprechenden cgi-bin Verezichnisse die außerhalb des basedir liegen.
mr. i-net
Posts: 29
Joined: 2003-02-02 13:59
Location: Winnen
 

Re: apache, perl, php (suexec)

Post by mr. i-net »

ich habe jetzt noch einen ansatz gefunden.

der webserver liegt in einer anderen gruppe (www) wie die einzelnen user (ftponly - ja es ist confixx installiert). wenn perl nun nur von der gruppe "ftponly" aufgerufen werden darf hätte ich das problem gelöst.

leider wird perl scheinbar von root ausgeführt (kann mir eigentlich nicht erklären warum). wenn ich die datei /usr/bin/perl (owner root, group root) nun die rechte 700 gebe (also nur rechte für den user root) kann ich dennoch perl scripten ausführen. ?!?!
Post Reply