phpbar.de logo

Mailinglisten-Archive

[php] safe-mode ... uploaddir in htaccess setzen

[php] safe-mode ... uploaddir in htaccess setzen

Hartwin Rohde hartwin.rohde_(at)_gmx.net
Mon, 26 Feb 2001 10:04:12 +0100 (MEZ)


On Sun, 25 Feb 2001 23:31:46 +0100, Norbert Pfeiffer wrote:

>Hi Hartwin,
Huhu,

>> Und nun mein Senf zu dieser Antwort:
><ich mag Senf - wenn bei anderen im 'Berliner' steckt>

LOL :-) Ich bin Berliner .... aber ich glaub Du meinst auch Pfannkuchen
... naja, aber Senf ess ich auch gern.

>> Hast Du es auch schon mal getestet ohne auf ner
>> *IX - Maschine root zu sein?
>ja!
>Loesungen, die root-Rechte verlangen sind definitiv Unfug!

Ich weis, deshalb empfand / empfinde ich es ja auch so als Unfug.

>Mir ist uebrigens noch kein System untergekommen, wo ich in
>/tmp/ nicht schreiben und lesen durfte, denn /tmp/ ist IMHO
>fuer alle da, auch auf Hochsicherheits-Servern...

Ich weiss, das Problem liegt (bei mir jedenfalls) ja auch in PHP
begründet, daß Dateien nicht mehr anfassen will, wenn sie einem anderen
gehören, und aus irgend einem kühlen Grunde gehören alle Dateien, die PHP
im /tmp/ erzeugt plötzlich dem Besitzer von /tmp. Ich hab auch mal
ausprobiert /tmp/ ne andere UID zu geben. Das gleiche Problem. Die
Fehlermeldung ändert sich nur unwesendlich:

Safe Mode in effkt, blah.php who's UID ist 65764 can't read
/tmp/phpirgendwas, whos's UID is 0 [oderwessimmerUIDdem/tmp/gehört].

>Sollte dies auf Deinem System nicht so sein, mach dem Admin
>Beine, aber so richtig kann ich es mir nicht vorstellen...

Ich sagte ja, in /tmp/ kann *ich lesen und schreiben, nur PHP will das
nicht mehr seit der safe_mode eingeschaltet ist.

>Du bist ja nicht alleine da, und all die anderen Prozesse,
>die meistens unter irgendeiner UID laufen, muessen auch
>irgendwo ihren Muell abladen, und das ist /tmp/ ...

Jo, aber wenn die Programmierung von PHP verlangt, daß eine Datei, die man
liest/kopiert/verschiebt auch demjenigen gehört, dem das PHP-Script
gehört, dann nutzen mir die Systemvoraussetzungen nix.

>> Und nun rate mal, wem meine PHP-Scripte gehören.
>Versuch:
>auf einem System mit save_mode werden sie unter der UID
>des FTP-Users laufen, also unter Deiner...

Genau, ... siehe oben, die Dateien, welche von dem Script in /tmp/
angelegt werden, sind UID 0 (wenn /tmp/ root gehört, ansonsten ewben UID
dessen, dem das gehört).

Ich hatte das mit ner kleinen Whileschleife mal getestet, die mir den
Inhalt von /tmp/ dauernd in eine Datei ls'ed hat.

>> doch das ist nicht mein Problem. Ich kann schon vorher
>> als Unwürdiger (nicht root) nicht auf die Datei zugreifen.
>komisch,
>PHP kann sie loeschen und das laeuft mit Sicherheit nicht
>unter der UID von 'root'.

Jajajaja, die Grundfunktion des Sauberhaltens von /tmp/ geht ja auch noch,
das macht ja auch der PHP-Parser als solcher (Systemfunktion), und nicht
ein Userscript.

Um dieses Verhalten zu evaluieren kannst Du ja mal spaßenshalber
phpMyAdmin installieren und zwar als User, nicht als Root. Dann versuch in
einer Datenbank eine Datei mit SQL-Befehlen (DUMP) zwecks Ausführung in
hochzuladen. Du wirst an der Fehlermeldung scheitern, daß der safe_mode in
effekt sein möchte und keine Datei in /tmp/ lesen kann, die Dir nicht
gehört.

>Uebrigens, nicht 'root' zu sein, ist keine Schande,

ich weiß, selbst auf meiner eigenen Kiste bin ich fast nie root, man kann
zu viel Mist bauen.

>die wenigsten sind 'root' - es kann nur einen geben... :-))

:-)) LOL, ... Spruch auf nem T-Shirt: "Ich bin root - ich darf das!"

>m.f.G. N. Pfeiffer

CU/2 sagt Hartwin

-- 
 _______________________________________________________________
|        mailto:hartwin.rohde_(at)_gmx.net (Hartwin Rohde)           |
|        klickto:http://www.in-berlin.de/User/harko/            |
|                                 foneto:030 - 44 34 11 55      |
|--------------------------o      funkto:0177 - 24 06 413       |
| 2048 Bit / ID: 307CFA39   \___________________________________|
| Fingerprint: B5 A1 F1 28 A4 D3 C2 B9  60 5A 8F 04 C8 9E AB 96 |
\_______________________________________________________________/




php::bar PHP Wiki   -   Listenarchive