Quelltext von PHP-Dateien schützen

Ich glaube das Thema gab es hier in ähnlicher Weise schonmal, aber der Thread hier weicht etwas ab. (hoffe ich)
Es kommt ja manchmal vor, dass man anstatt der normalen seine, den PHP-Quelltext angeboten bekommt. Meist passiert das, wenn der Server gerade stark belastet ist.
Nun die Frage: wie kann man sich davor schützen?
Möglichkeiten wären z.b. Obfocuscater oder halt mit ZEND den Quelltext vorkompilieren. Allerdings ist beides nicht so toll, denn Obfocuscater halten den "Angreifer" höchstens auf und ZENDs Optimierer ist unglaublich teuer. Eine dritte Möglichkeit wäre das Auslagern der Dateien an einen Ort, der nicht aufrufbar ist. Das ist aber auch nicht immer möglich. Was kann man also noch tun?
 
Hallo,
also solche Fälle sind äußerst selten, und bei einem gut konfigurierten Webserver (der PHP unterstützt) sollte das eigentlich nicht passieren.

Ich denke mal eher, die Fälle, die du meinst, stammen von Webservern ohne PHP Unterstützung, denn persönlich ist mir so ein Fall nur 1 mal vorgekommen und ob dies nun an einer falschen Config (Privatserver, aber öffentlich zugänglich) lag kann ich nicht sagen.

Naja wenn du auf dem Server keine root-Rechte hast, wird es schwer, den Code effektiv zu schützen.

Sonst gibts noch eAccelerator, womit man bestimmte Code-Segemte ganz gut schützen kann, aber dafür muss aber auf dem Server ein bestimmtes Modul installiert sein.

Per eaccelerator_encode() kann man PHP Scripts kompilieren, und per eaccelerator_load() kann man dies dann wieder laden.
 
Ich denke auch, daß der sinnvollste Schutz ein anständig konfigurierter Server mit PHP-Unterstützung ist. Mir ist ein solcher Fall mal untergekommen, als ich PHP als DSO in den Webserver eingebunden hatte und dieser unter extrem hoher Last stand. Mit einem statisch gelinkten PHP im Webserver ist es aber ziemlich unmöglich, daß PHP-Dateien mit falschen Typ (und somit als Klartext) ausgegeben werden, was damals bei mir auch des Problems Lösung war. Daher einfach das PHP statisch in den Webserver linken, damit das Modul nicht wegen Überlastung "abschalten" kann.
 
Man kann in der PHP Datei auch
PHP:
include("inc/quellcodefürdiesedatei.php");
schreiben, und in dem Ordner 'inc' eine .htacces Datei erstellen, die den Zugriff von aussen sperrt, das müsste auch helfen, wenn es zu einer solchen Aituation kommen sollte...
 
Zurück
Oben