ich höre immer wieder , man könne den php Quellcode "auslesen".
Ich habe ledider nirgendwo irgendetwas dazu gefunden.
Daher würde ich mich freuen, wenn jemand etwas dazu sagen könnte.
Denn in meinem Code sind ja Datenbank-Passwörter abgespeichert, jetzt hab ich ein mulmiges Gefühl.
Der PHP-Quelltext lässt sich nicht von jedem lesen. Das liegt einfach daran, daß dieser Text schon auf dem Server verarbeitet wird und nur das Ergebnis davon zum Browser gelangt - ohne jegliche PHP-Anteile.
Nun gibt's natürlich auch Ausnahmen:
-
Manche Leute haben die Angewohnheit, Ihre Programme in mehrere Dateien aufzuteilen, so daß zum Beispiel in einer Datei häufig benutzte Funktionen gesammelt sind, die dann nur noch in allen anderen einmal per include() einbunden werden müssen.
Verpasst man dieser Datei die Endung .inc (für include), wird sie von jederman lesbar (sofern die Adresse bekannt ist), weil so gut wie kein Webserver eine .inc-Datei als PHP-Datei erkennt und sie somit "roh" direkt an den Browser ausliefert anstatt sie durch den PHP-Interpreter zu jagen.
Also immer darauf achten, daß PHP-Dateien auf .php enden. -
Der PHP-Interpreter läuft in den meisten Fällen als Teil des Webservers, und somit nicht unter der Nutzerkennung des Eigentümers der PHP-Dateien.
Da der Webserver Zugriff auf alle auszuliefernden Dateien haben muß, kann man mit eigenem PHP-Code unter Umständen PHP-Dateien anderer Benutzer auslesen. Sowas kommt häufiger vor, als man denkt, weil viele Webhoster einfach irgendeine Kiste von ihrem Lieferanten mieten und außer über die vorinstallierten Konfigurationssoftware nicht sonderlich viel Ahnung von Unix haben.
Um das auszunutzen, muß man aber selbst Kunde bei dem Webhoster sein, dessen Kunden man ausspionieren will.
- Es gibt eine Lücke in der gern verwendeten Datenbank MySQL, mit der sich ebenfalls lustig Dateien lesen lassen und die sich AFAIK nicht ohne weiteres schließen lässt.
Aber auch hier: man muß selber Kunde beim Hoster sein.
Also: Die Gefahr ist eher gering, Du solltest aber immer Sicherungskopien Deiner Webseiten haben und keine allerhöchst vertraulichen Sachen auf dem Webserver speichern.
Gruß,
soenk.e