Safe mode Probleme

Status
Für weitere Antworten geschlossen.

Tagger

Benutzer
Mitglied seit
08. Feb 2010
Beiträge
140
Punkte für Reaktionen
0
Punkte
22
Hi Leute,

ich habe akute Probleme mit dem PHP Safe Mode. Eigentlich ist er korrekt ausgeschaltet (falls ich nichts übersehen habe), aber offenbar erkennen das einige CMS nicht, genausowenig wie sie installierte Tools (tar, zip, imagemagick etc.) erkennen. Daher vermute ich hier eher Pfadprobleme.

Safe Mode Fehlermeldung des CMS:
Warning: shell_exec() [function.shell-exec]: Cannot execute using backquotes in Safe Mode in /volume1/web/bitweaver_check/index.php on line 216

Nachfolgend meine Safe Mode Einstellungen in PHP Version 5.2.10 (php.ini). Die phpinfo meldet korrekterweise "safe_mode Off Off".
Originaleinstellungen:
safe_mode = Off
open_basedir = /usr/syno/synoman:/etc:/var/run:/tmp:/var/spool/php:/volume1/@tmp/php:/var/services/web:/var/services/photo:/var/services/blog:/var/services/homes:/var/packages/MailStation/target/roundcubemail:/proc:/proc/sys:/proc/scsi:/proc/bus/usb:/proc/net
safe_mode_include_dir =
safe_mode_exec_dir = /usr/syno/bin
allow_url_fopen = On
magic_quotes_gpc = On
Testeinstellungen:
safe_mode = off
safe_mode_exec_dir = ;
safe_mode_include_dir = ;
open_basedir = ;
allow_url_fopen = on
magic_quotes_gpc = off
Allerdings funktioniert keine der beiden oberen Einstellungen. Ich hoffe, irgendwer von euch hat eine Lösung dafür.
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Ersetze in den Skripten shell_exec() gegen exec() und es geht

Itari
 

Tagger

Benutzer
Mitglied seit
08. Feb 2010
Beiträge
140
Punkte für Reaktionen
0
Punkte
22
Hallo Itari, Danke, das ging ja schnell.:D
Willst du damit sagen, daß nur diese Funktion innerhalb aller CMS "inkompatibel" ist?

Edit: Oh, wow, wie es aussieht, findet er nun auf einmal auch die Tools. Ist ja sehr merkwürdig. Jedenfalls vielen Dank für den Tipp, da wäre ich nie darauf gekommen.
 
Zuletzt bearbeitet:

dtamm

Benutzer
Mitglied seit
28. Sep 2009
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Ich hatte ein ähnliches Problem mit der gleichen Fehlermeldung sowie dem eigentümlichen Verhalten, dass glob() nur ein paar wenige Verzeichnisse lieferte.

Die Lösung war, in /usr/syno/etc/php.ini die Direktive zu "open_basedir" auszukommentieren. (Sicherer wäre sicherlich, die Direktive so anzupassen, dass die Verzeichnisse, die man mit glob listen können will, mit erfasst werden.)

Das Ganze hatte mit "Safe mode" also gar nichts zu tun.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
@dtamm
Du weisst aber schon, dass du damit u.U. eine ziemliche Lücke auf deinem Webserver aufgemacht hast? Weniger dass man dir Daten unteschieben könnte, aber der Webserver Prozess kann so auf das ganze Dateisystem zugreifen und hat damit u.U. auch Lesezugriff auf sensitive Files. Hast du auch 3rd Party Apps und damit php Unterstützung am System Apache?
 

dtamm

Benutzer
Mitglied seit
28. Sep 2009
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
@dtamm
Du weisst aber schon, dass du damit u.U. eine ziemliche Lücke auf deinem Webserver aufgemacht hast? Weniger dass man dir Daten unteschieben könnte, aber der Webserver Prozess kann so auf das ganze Dateisystem zugreifen und hat damit u.U. auch Lesezugriff auf sensitive Files. Hast du auch 3rd Party Apps und damit php Unterstützung am System Apache?

Wie schon in meinem letzten Post erwähnt sollte die Direktive eher erweitert als auskommentiert werden, das ist mir schon klar. Das war aber in meinem Fall erstmal zweitrangig, da der Server nur im Intranet einer kleinen Firma steht und das Auskommentieren nur der erste Schritt war, das Problem (Verzeichnisse zu listen) zu beheben.

Ich bin aber offen für bessere Lösungen!
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Das war aber in meinem Fall erstmal zweitrangig, da der Server nur im Intranet einer kleinen Firma steht und das Auskommentieren nur der erste Schritt war, das Problem (Verzeichnisse zu listen) zu beheben.
Die meisten erfolgreichen Angriffe gegen Server von Firmen kommen aber aus dem LAN und nicht aus dem Internet. Wesentlich gefährlicher als ein Script-Kiddy aus dem Internet, ist ein wütender ehemaliger Angestellter mit Wissen um die Topologie des Netzwerks :)
Die beste Lösung hast du ja bereits erwähnt: open_basedir erweitern und nicht einfach auskommentieren
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat