suPHP + externe binaries wie z.B. ImageMagick
-
Anonymous
suPHP + externe binaries wie z.B. ImageMagick
Hallo,
was wäre die praktikabelste Lösung um seinen Kunden z.B. ImageMagick zur Verfügung zu stellen, trotz suPHP?
Ich denke es gibt mehrere Möglichkeiten, mit denen ich mich persönlich aber nicht anfreunden kann:
a) man gibt den Usern Zugriff per OpenBasedir für die direkten globalen Pfad
b) man gibt dem User in seinem jeweiligen DocRoot einen extra bin/ Pfad wo die binaries drin liegen (jeweils mit chmod/chown für ihn angepasst)
c) man extrahiert die binaries und macht sie in einem übergeordneten Ordner, über dem jeweiligen DocRoot global verfügbar
mir erscheint da c) immernoch am besten. Wie seht ihr das? :)
was wäre die praktikabelste Lösung um seinen Kunden z.B. ImageMagick zur Verfügung zu stellen, trotz suPHP?
Ich denke es gibt mehrere Möglichkeiten, mit denen ich mich persönlich aber nicht anfreunden kann:
a) man gibt den Usern Zugriff per OpenBasedir für die direkten globalen Pfad
b) man gibt dem User in seinem jeweiligen DocRoot einen extra bin/ Pfad wo die binaries drin liegen (jeweils mit chmod/chown für ihn angepasst)
c) man extrahiert die binaries und macht sie in einem übergeordneten Ordner, über dem jeweiligen DocRoot global verfügbar
mir erscheint da c) immernoch am besten. Wie seht ihr das? :)
Re: suPHP + externe binaries wie z.B. ImageMagick
hmmm also ich finde deine Frage irgendwie komisch
zuersteinmal lese ich da dass du suPHP laufen hast, also hast du doch gar keine OpenBasedir beschränkungen, das hast du nur wenn es als MOD_PHP läuft.
und da mit suPHP ImageMagick unter den user-rechten läuft stellt das doch auch kein Problem dar (ausser es kommt ein root-exploit raus, aber das Problem haste eh immer).
Ich verstehe die Problematik noch nicht die du hast....
zuersteinmal lese ich da dass du suPHP laufen hast, also hast du doch gar keine OpenBasedir beschränkungen, das hast du nur wenn es als MOD_PHP läuft.
und da mit suPHP ImageMagick unter den user-rechten läuft stellt das doch auch kein Problem dar (ausser es kommt ein root-exploit raus, aber das Problem haste eh immer).
Ich verstehe die Problematik noch nicht die du hast....
-
Anonymous
Re: suPHP + externe binaries wie z.B. ImageMagick
Natürlich hab ich die nach wie vor (als zusätzliche Sicherheit .. ich habe für jeden User einen einzelnen suPHP_ConfigPath gesetzt und so eine eigene php.ini mit einer basedir Beschränkung .. außerdem mache ich das so, damit ich spezifische upload_tmp's sowie auch session directories festlegen kann)r00ty wrote:hmmm also ich finde deine Frage irgendwie komisch
zuersteinmal lese ich da dass du suPHP laufen hast, also hast du doch gar keine OpenBasedir beschränkungen, das hast du nur wenn es als MOD_PHP läuft.
Und da ich wie oben bereits gesagt eine open_basedir beschränkung habe (die ich auch so nicht lösen möchte) habe ich eben das Zugriffsproblem auf global liegende binaries.r00ty wrote: und da mit suPHP ImageMagick unter den user-rechten läuft stellt das doch auch kein Problem dar (ausser es kommt ein root-exploit raus, aber das Problem haste eh immer).
Ich verstehe die Problematik noch nicht die du hast....
Re: suPHP + externe binaries wie z.B. ImageMagick
na dann wist du nicht um Variante c rumkommen
ich hatte irgendwann auch mal was mit Hardlinks gelesen, die du dafür einsetzen könntest, aber die tun ja nicht auf jedem FileSystem
ich hatte irgendwann auch mal was mit Hardlinks gelesen, die du dafür einsetzen könntest, aber die tun ja nicht auf jedem FileSystem
Re: suPHP + externe binaries wie z.B. ImageMagick
Open_basedir braucht man bei php als cgi eigentlich nicht. Vorausgesetzt man hat seine Datei- und Verzeichnisrechte richtig vergeben. Wenn du CGI per SuExec erlaubst hast du so ein Feature ja normalerweise auch nicht und da stört sich auch keiner dran. Warum also php unnötig einschränken? Mach das open_basedir raus (oder erweitere es auf /bin und /usr/bin, oder ein eigenes php-bin mit den gewünschten Binaries) und fertig. Das eigene Session und Tempdir kannst du ja trotzdem lassen.
-
Anonymous
Re: suPHP + externe binaries wie z.B. ImageMagick
Was verstehst du unter CGI? Ein PHP Script ist genauso CGI und was sonst sollte man noch ausführen können? Zumal ich suPHP und kein suEXEC einsetze.Sascha wrote:Open_basedir braucht man bei php als cgi eigentlich nicht. Vorausgesetzt man hat seine Datei- und Verzeichnisrechte richtig vergeben. Wenn du CGI per SuExec erlaubst hast du so ein Feature ja normalerweise auch nicht und da stört sich auch keiner dran.
Nein .. user sollen eben nicht einfach was ausführen können so z.B. 'wget' was ja auch global read/executeable ist.Sascha wrote: Warum also php unnötig einschränken? Mach das open_basedir raus
Ja ich kenne meine Möglichkeiten .. mir ging es nur um primäre Vorzüge der User dieses Forums und etwaige Vor/Nachteile von den verschiedenen gelisteten Varianten.Sascha wrote: (oder erweitere es auf /bin und /usr/bin, oder ein eigenes php-bin mit den gewünschten Binaries) und fertig. Das eigene Session und Tempdir kannst du ja trotzdem lassen.
Re: suPHP + externe binaries wie z.B. ImageMagick
PHP kann natürlich auch ein CGI sein. Ich meinte hier vorallem Perl und Shellscripte. Sowas lässt man für gewöhnlich über SuExec laufen. Benutzt du denn auf deinem Server keine Perl Scripte? Wie sicherst du diese ggf.?smashie wrote:Was verstehst du unter CGI? Ein PHP Script ist genauso CGI und was sonst sollte man noch ausführen können? Zumal ich suPHP und kein suEXEC einsetze.
wget ist ja auch ein sehr gefährliches Programm... Führen deine User denn nur PHP Scripte aus? Kein Perl, Python, Shell, whatever? Wenn du nicht willst dass man bestimmte Programme nutzen kann, dann ändere die Rechte dafür. So mache ich das übrigens bei mir.Sascha wrote:Nein .. user sollen eben nicht einfach was ausführen können so z.B. 'wget' was ja auch global read/executeable ist.
Meine Vorzüge kennst du ja jetzt ;).smashie wrote:Ja ich kenne meine Möglichkeiten .. mir ging es nur um primäre Vorzüge der User dieses Forums und etwaige Vor/Nachteile von den verschiedenen gelisteten Varianten.
Re: suPHP + externe binaries wie z.B. ImageMagick
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
-
Anonymous
Re: suPHP + externe binaries wie z.B. ImageMagick
Nein die User sollen nur PHP Scripte ausführen dürfen sprich kein Perl, Shellscripte etc. und in diesen auch keinerlei Programme wie z.B. wget (ich frage mich eh gerade wie man es unterbinden kann, z.b. einen sshd lokal vorkompiliert laufen zu lassen, um dann z.B. so etwaige Scripts / Dateien zu manipulieren, außer man begrenzt die maximale Prozesszeit des Users auf z.B. 30 Sekunden)Sascha wrote: PHP kann natürlich auch ein CGI sein. Ich meinte hier vorallem Perl und Shellscripte. Sowas lässt man für gewöhnlich über SuExec laufen. Benutzt du denn auf deinem Server keine Perl Scripte? Wie sicherst du diese ggf.?
wget ist ja auch ein sehr gefährliches Programm... Führen deine User denn nur PHP Scripte aus? Kein Perl, Python, Shell, whatever? Wenn du nicht willst dass man bestimmte Programme nutzen kann, dann ändere die Rechte dafür. So mache ich das übrigens bei mir.
Re: suPHP + externe binaries wie z.B. ImageMagick
Prozesslaufzeit usw. sollte man eh limitieren. Vor dem sshd schützt dich GRSecurity (Socket restrictions).
-
Anonymous
Re: suPHP + externe binaries wie z.B. ImageMagick
Nun wie restriktiere ich das am besten? Die einzige Gemeinsamkeit was Gruppenzugehörigkeit der einzelnen User angehst ist, dass alle in 'ftpuser' sind, ergo kann ich die Gruppe ftpuser in soweit über socket restrictions restriktieren, dass diese keine server sockets mehr haben dürfen bzw. was ist ratsam? Sicherlich wäre es auch möglich einen server_socket als client_socket zu tarnen aber jegliche sockets möchte ich dann doch nicht restriktierenSascha wrote:Vor dem sshd schützt dich GRSecurity (Socket restrictions).
Re: suPHP + externe binaries wie z.B. ImageMagick
Du kannst die User ja nach Bedarf zusätzlich in eine der 3 möglichen Gruppen stecken.
-
Anonymous
Re: suPHP + externe binaries wie z.B. ImageMagick
hm mir ist aufgefallen, dass trotz open_basedir Beschränkung der User immernoch *nach unten* sprich z.B. in /usr/bin/ kann .. i
d.h. man erreicht nur eine halbwegs anständige Absicherung im Bereich für shared Webhosting, wnen man safe_mode, open_basedir und suexec/suphp im Einsatz hat?
d.h. man erreicht nur eine halbwegs anständige Absicherung im Bereich für shared Webhosting, wnen man safe_mode, open_basedir und suexec/suphp im Einsatz hat?
-
superuser1
- Posts: 291
- Joined: 2003-11-26 18:43
- Location: earth
Re: suPHP + externe binaries wie z.B. ImageMagick
Hi...
auch ich würde dir zu PHP als CGI und suPHP bzw. suEXEC für Perl/CGI raten - alles andere wäre dann über die Rechteverwaltung abzusichern. (entsprechendes Setzen der Restriktionen in den Konfigurationsdateien vorausgesetzt)
Zudem würde ich dir erstmal zum Testen im 'Trockendock' raten, damit du die entsprechenden Konfigurationen überprüfen und entsprechend anpassen kannst.
Letztendlich könntest du dann versuchen, deine eigenen Sicherheitsvorkehrungen zu durchbrechen, z.B. durch geschickt programmierte Skripte oder Ã?hnlichem - das sollte dir bei der Fehlersuche und Systemoptimierung ein ganzes Stück weiterhelfen.
:roll:
PS: SafeMode ist meiner Meinung nach bei durchdachter Rechtestruktur/PHP-Konfiguration nicht mehr zwingend notwendig.
auch ich würde dir zu PHP als CGI und suPHP bzw. suEXEC für Perl/CGI raten - alles andere wäre dann über die Rechteverwaltung abzusichern. (entsprechendes Setzen der Restriktionen in den Konfigurationsdateien vorausgesetzt)
Zudem würde ich dir erstmal zum Testen im 'Trockendock' raten, damit du die entsprechenden Konfigurationen überprüfen und entsprechend anpassen kannst.
Letztendlich könntest du dann versuchen, deine eigenen Sicherheitsvorkehrungen zu durchbrechen, z.B. durch geschickt programmierte Skripte oder Ã?hnlichem - das sollte dir bei der Fehlersuche und Systemoptimierung ein ganzes Stück weiterhelfen.
:roll:
PS: SafeMode ist meiner Meinung nach bei durchdachter Rechtestruktur/PHP-Konfiguration nicht mehr zwingend notwendig.
-
Anonymous
Re: suPHP + externe binaries wie z.B. ImageMagick
Halte ich für totalen Schwachsinn denn, alleine suphp beschraenkt ja nur die Ausfuehrbarkeit dessuperuser1 wrote:Hi...
auch ich würde dir zu PHP als CGI und suPHP bzw. suEXEC für Perl/CGI raten - alles andere wäre dann über die Rechteverwaltung abzusichern. (entsprechendes Setzen der Restriktionen in den Konfigurationsdateien vorausgesetzt)
PS: SafeMode ist meiner Meinung nach bei durchdachter Rechtestruktur/PHP-Konfiguration nicht mehr zwingend notwendig.
scriptes, und nicht die resourcen auf die das script
zugreift. also könnte man doch locker nen dateibrowser per
php basteln oder sich z.b. die /etc/passwd anzeigen lassen.
Natuerlich könnte man mit chmod dagegenwirken .. aber was ist praktikabler .. ALLE files die zum vermeintlichen missbrauch führen könnten die globalen Rechte entziehen (was dann wiederum Probleme für einen User auf der shell gibt) oder das jeweilige CGI zu "jailen" mittels PHP Direktiven Settings ... natürlich dann das 2.
durch verschiedene Tests und Abwägung bin ich eindeutig zu dem Schluss gekommen, dass man nur eine halbwegs vernünftige Lösung erreicht, indem man Safe_mode + suphp/suexec + openbasedir/upload_tmp_dir/upload_session_dir direktiven verwendet
Re: suPHP + externe binaries wie z.B. ImageMagick
man acl
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
-
superuser1
- Posts: 291
- Joined: 2003-11-26 18:43
- Location: earth
Re: suPHP + externe binaries wie z.B. ImageMagick
Hi...
:roll:
Das halte ich für, um deinen lockeren Ton zu vermeiden (ich glaube nicht dass das hier ein Forum für Schwachsinnige ist), für eine zumindest sehr fragwürdige Aussage. Ã?berleg dir nochmal, was suPHP eigentlich tut...Halte ich für totalen Schwachsinn denn, alleine suphp beschraenkt ja nur die Ausfuehrbarkeit des scriptes, und nicht die resourcen auf die das script zugreift.
Und wenn du jetzt noch deine Rechte richtig gesetzt hast und dann evtl. noch zu Fuß ein paar gefährliche Funktionen 'disablest', dann kannst du auf Safe_Mode verzichten....indem man Safe_mode + suphp/suexec + openbasedir/upload_tmp_dir/upload_session_dir direktiven verwendet
:roll:
-
Anonymous
Re: suPHP + externe binaries wie z.B. ImageMagick
Fragwürdig? Ein Fakt ist nicht fragwürdig...superuser1 wrote:Hi...Das halte ich für, um deinen lockeren Ton zu vermeiden (ich glaube nicht dass das hier ein Forum für Schwachsinnige ist), für eine zumindest sehr fragwürdige Aussage. Ã?berleg dir nochmal, was suPHP eigentlich tut...Halte ich für totalen Schwachsinn denn, alleine suphp beschraenkt ja nur die Ausfuehrbarkeit des scriptes, und nicht die resourcen auf die das script zugreift.Und wenn du jetzt noch deine Rechte richtig gesetzt hast und dann evtl. noch zu Fuß ein paar gefährliche Funktionen 'disablest', dann kannst du auf Safe_Mode verzichten....indem man Safe_mode + suphp/suexec + openbasedir/upload_tmp_dir/upload_session_dir direktiven verwendet
:roll:
.. Und es gibt kein *Rechte richtig gesetzt* .. man müsste praktisch allen potentiellen Gefahren die binaries im allgemeinen darstellen die globalen/world Rechte entziehen .. was wiederum Schwachsinn ist, da dnan lokale Shell user auf diese nichtmehr zugreifen können.suPHP is a tool for executing PHP scripts with the permissions of their owners.
Ergo ist deine obige Aussage à la "suPHP ohne safe_mode in Verbindung mit *Rechte setzen* = sicher genug" einfach falsch
Re: suPHP + externe binaries wie z.B. ImageMagick
Dann gibts du den Shell User halt Gruppenrechte auf die entsprechenden Binarys. Außerdem, wenn du sowieso Shell User hast, warum machst du dir dann Gedanken über PHP?smashie wrote: .. Und es gibt kein *Rechte richtig gesetzt* .. man müsste praktisch allen potentiellen Gefahren die binaries im allgemeinen darstellen die globalen/world Rechte entziehen .. was wiederum Schwachsinn ist, da dnan lokale Shell user auf diese nichtmehr zugreifen können.
Ergo ist deine obige Aussage à la "suPHP ohne safe_mode in Verbindung mit *Rechte setzen* = sicher genug" einfach falsch
-
Anonymous
Re: suPHP + externe binaries wie z.B. ImageMagick
hm nein ich habe keine Lust alle möglichen potentiellen Gefahren die von binaries ausgehen könnten neu zu chmoden .. das ist unpraktikabel!øxygen wrote:Dann gibts du den Shell User halt Gruppenrechte auf die entsprechenden Binarys. Außerdem, wenn du sowieso Shell User hast, warum machst du dir dann Gedanken über PHP?smashie wrote: .. Und es gibt kein *Rechte richtig gesetzt* .. man müsste praktisch allen potentiellen Gefahren die binaries im allgemeinen darstellen die globalen/world Rechte entziehen .. was wiederum Schwachsinn ist, da dnan lokale Shell user auf diese nichtmehr zugreifen können.
Ergo ist deine obige Aussage à la "suPHP ohne safe_mode in Verbindung mit *Rechte setzen* = sicher genug" einfach falsch
Ich benutze einfach safe_mode .. alles andere wäre mir imho von den obig genannten Gründen her zu unsicher..
