<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Sensible Daten in PHP-Dateien - sicher?</title>
    <link>http://forum.geizhals.at/feed.jsp?id=525209</link>
    <description>Geizhals-Forum</description>
    <item>
      <title>Re: Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4389397.html#4389397</link>
      <description>Möglichkeiten gibt es unzählige; du brauchst nur irgend ein Script auf dem Server haben das sich irgendwie dazu überreden läßt die Datei einzulesen und auszugeben. Das kann dir dann auch Dateien ausserhalb des Webroots ziehen (wenn dein Webserver Prozess Leserechte dazu hat).&lt;br&gt;&lt;br&gt;Ich benutze z.B. auf meinem Webhost, der keinen Shell-Zugang bietet, ein einfaches CGI-Script das mein gesamtes Home-Verzeichnis in ein tar packt, um Backups zu machen. Das Script lade ich nur auf den Server wenn ich das Backup auch tatsächlich anfertige, und lösche es direkt nachdem ich es ausführe (also während ich das tar-Archiv herunterlade ist das Script an sich schon gar nicht mehr da).&lt;br&gt;&lt;br&gt;Aber prinzipiell zeigt es doch was theoretisch möglich ist - eine einzige Webapp mit Sicherheitslücke reicht aus um den gesamten Datenbestand meines Servers zu stehlen oder gar zu kompromittieren.&lt;br&gt;&lt;br&gt;Das Problem ist halt, daß alle Daten, auf die der Webserver prinzipiell Zugriff hat, potentiell nicht sicher sind - darunter fallen in meinem Fall auch Mails weil bei meinem Angebot auch ein Webmailinterface dabei ist und die Mails nicht auf einem separaten, sondern direkt auf meinem Webspace gespeichert werden (Billiganbieter halt).&lt;br&gt;&lt;br&gt;Sensible Daten außerhalb des Webroots lagern ist das Minimum was du tun kannst um eine Grundsicherheit zu gewährleisten - du schließt damit aus daß aufgrund eines Konfigurationsfehlers jemand doch auf ganz normalem Weg per URL an die Daten kommen kann. Aber dir sollte bewusst sein, daß auch das keine absolute Sicherheit ist, sondern du sehr vorsichtig sein solltest, welche CGI-Scripte / PHP-Programme / whatever du auf deinem Server installierst und laufen läßt.&lt;br/&gt;</description>
      <pubDate>Sat, 13 Oct 2007 13:35:21 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4389397.html#4389397</guid>
      <dc:creator>juwb</dc:creator>
      <dc:date>2007-10-13T13:35:21Z</dc:date>
    </item>
    <item>
      <title>Re(5): Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4386843.html#4386843</link>
      <description>&lt;blockquote&gt;&lt;em&gt; Wenn man einen Teil(Programmteile, Daten u.ä) mit include in php einbindet und&lt;br&gt;der Parser versagt, gibt er denoch nicht diese Datei dann auch im Browser aus.&lt;br&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;br&gt;Es geht nicht darum, dass der parser versagt, sondern dass der Webserver den Content gar nicht erst zum parser schickt, sondern diesen als statisch betrachtet, und an den Client ausliefert.&lt;br&gt;&lt;br&gt;&lt;blockquote&gt;&lt;em&gt; ../scripte/&lt;br&gt;liegt ausserhalb des Apachen und ich include von eine Datei secure.php&lt;br&gt;würde bei Parser Fehler nicht diese dann einfach an den Browser in plain text&lt;br&gt;ebenfalls gejagt werden?&lt;br&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;br&gt;Der Client würde zwar das "include("../scripte/foobar.php"); sehen, nicht jedoch den Inhalt des Skriptes - das Include wird ja nicht ausgeführt, wenn der parser nicht läuft - User sieht also keine sensiblen daten.&lt;br/&gt;</description>
      <pubDate>Thu, 11 Oct 2007 20:38:53 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4386843.html#4386843</guid>
      <dc:creator>Dr. Watson</dc:creator>
      <dc:date>2007-10-11T20:38:53Z</dc:date>
    </item>
    <item>
      <title>Re(4): Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4386736.html#4386736</link>
      <description>Wenn man einen Teil(Programmteile, Daten u.ä) mit include in php einbindet und der Parser versagt, gibt er denoch nicht diese Datei dann auch im Browser aus.&lt;br&gt;&lt;br&gt;sagen wir.:&lt;br&gt;&lt;br&gt;../scripte/ &lt;br&gt;liegt ausserhalb des Apachen und ich include von eine Datei secure.php&lt;br&gt;würde bei Parser Fehler nicht diese dann einfach an den Browser in plain text ebenfalls gejagt werden?&lt;br&gt;&lt;br&gt;sagen wir die secure enthält sensiblen Code und ein oder andere sensible statische Variable.&lt;br&gt;&lt;br&gt;Ich trau den Scriptzeugs überhaupt nicht. &lt;br/&gt;</description>
      <pubDate>Thu, 11 Oct 2007 19:46:23 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4386736.html#4386736</guid>
      <dc:creator>NotPerfect</dc:creator>
      <dc:date>2007-10-11T19:46:23Z</dc:date>
    </item>
    <item>
      <title>Re: Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4384950.html#4384950</link>
      <description>also, ich persönlich hab in meinem webroot, also &lt;a href="http://domain.xy/" rel="noopener" target="_blank"&gt;http:/&lt;wbr/&gt;/&lt;wbr/&gt;domain.xy/&lt;wbr/&gt;&lt;/a&gt;&amp;nbsp;&amp;nbsp;meistens nur die dateien liegen, auf die der benutzer auch wirklich zugreift. alles, was er nicht sehen soll, also konfigurationsdateien, klassen, was auch immer - auch wenn ers eigentlich nicht sehen kann, wenn ers direkt aufruft, liegen außerhalb des webroots.&lt;br&gt;&lt;br&gt;die konfigurationsdateien, klassen, templates etc. kommen alle in folder die überm webroot liegen. und in die kann der browser nicht, egal was kommt - auch wenn php mal aus irgendeinem grund ausfallen sollte, und der browser den php-quellcode als klartext ausgibt.&lt;br&gt;&lt;br&gt;dateien, die nicht jeder user downloaden darf (also z.b. ein pdf-file, das nur ein bestimmter eingeloggter benutzer bekommt), liegen bei mir ebenfalls außerhalb des webroots. wenn der user dann dieses file haben will, dann wird das direkt rauskopiert. das geht, indem du per header()-funktion den dateityp angibst, und dann die daten an sich einfach direkt (per echo zb. stück für stück rausschreibst). solang du nicht extra performante apps baust, ist das eigentlich kein problem.&lt;br/&gt;</description>
      <pubDate>Wed, 10 Oct 2007 22:44:10 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4384950.html#4384950</guid>
      <dc:creator>stefs</dc:creator>
      <dc:date>2007-10-10T22:44:10Z</dc:date>
    </item>
    <item>
      <title>Re(3): Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4375628.html#4375628</link>
      <description>Eine bessere Möglichkeit wäre noch, die sensiblen Daten in einem Verzeichnis zu lagern, auf das der Browsern gar keinen Zugriff hat (von extern - über den Apachen).&lt;br&gt;&lt;br&gt;Dort wo du es brauchst, machst du einfach einen include mit absolutem Pfad, wo die Datei im Filesystem eben liegt.&lt;br/&gt;</description>
      <pubDate>Fri, 05 Oct 2007 15:14:53 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4375628.html#4375628</guid>
      <dc:creator>Dr. Watson</dc:creator>
      <dc:date>2007-10-05T15:14:53Z</dc:date>
    </item>
    <item>
      <title>Re(3): Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4375627.html#4375627</link>
      <description>Eine bessere Möglichkeit wäre noch, die sensiblen Daten in einem Verzeichnis zu lagern, auf dass der Browsern gar keinen Zugriff hat (von extern - über den Apachen).&lt;br&gt;&lt;br&gt;Dort wo du es brauchst, machst du einfach einen include mit absolutem Pfad, wo die Datei im Filesystem eben liegt.&lt;br/&gt;</description>
      <pubDate>Fri, 05 Oct 2007 15:14:53 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4375627.html#4375627</guid>
      <dc:creator>Dr. Watson</dc:creator>
      <dc:date>2007-10-05T15:14:53Z</dc:date>
    </item>
    <item>
      <title>Re(2): Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4375625.html#4375625</link>
      <description>intelligent.&lt;br/&gt;</description>
      <pubDate>Fri, 05 Oct 2007 15:14:30 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4375625.html#4375625</guid>
      <dc:creator>nico</dc:creator>
      <dc:date>2007-10-05T15:14:30Z</dc:date>
    </item>
    <item>
      <title>Re: Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4375611.html#4375611</link>
      <description>Auch wenn der PHP Sourcecode nicht ausgeliefert wird, weil er vorher geparst wird, würde ich sensible Dateien mit einem .htaccess schützen, und zwar so, dass bei direktem aufruf IMMER ein 404 Fehler ausgeliefert wird, als würde es die Datei nicht geben.&lt;br&gt;&lt;br&gt;Grund: Wenn jemand am Webserver (Apache) herumschraubt, und das PHP Modul kurz ausfällt, wird der Code nicht mehr geparst, und direkt ausgegeben - dann könnte jemand den sensiblen Inhalt sehen. Mit meiner Methode würde er in jedem Fall einen 404er Fehler bekommen.&lt;br/&gt;</description>
      <pubDate>Fri, 05 Oct 2007 15:05:15 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4375611.html#4375611</guid>
      <dc:creator>Dr. Watson</dc:creator>
      <dc:date>2007-10-05T15:05:15Z</dc:date>
    </item>
    <item>
      <title>Re: Sensible Daten in PHP-Dateien - sicher?</title>
      <link>http://forum.geizhals.at/t525209,4375602.html#4375602</link>
      <description>auslesen via browser geht nicht, wenn es php code ist.&lt;br&gt;wenn es normale datein sind wo der text in plaintext steht, kann man es genaus auslesen wie als wäre es .html oder was auch immer.&lt;br&gt;&lt;br&gt;bei php code übersetzt der server den syntax - der enduser bekommt davon nix mit.&lt;br&gt;sensible daten wären aber in einer DB besser aufgehoben&lt;br/&gt;</description>
      <pubDate>Fri, 05 Oct 2007 14:57:54 GMT</pubDate>
      <guid>http://forum.geizhals.at/t525209,4375602.html#4375602</guid>
      <dc:creator>nico</dc:creator>
      <dc:date>2007-10-05T14:57:54Z</dc:date>
    </item>
  </channel>
</rss>
