Julian1: Ausführung von PHP in bestimmten Ordnern unterbinden

Einen schönen guten Abend,

ich habe folgendes Problem: ich möchte auch einem Server einen File-Upload (via PHP) anbieten. Jetzt mache ich mir gerade Gedanken um die Sicherheit: kann ich die Ausführung von PHP-Scripten für bestimmte Ordner unterbinden (Leider ein Server bei nem Webhoster -> keine umfassenden Einstellungsmöglichkeiten)

Folgende Lösungsansätze habe ich schon gefunden:

  • .htaccess mit
    "Options +Indexes
    RemoveHandler .php"
    soll angeblich php-Dateien nicht ausführen. Ergebnis: Internal Server Error bei allen Dateien im Verzeichnis

  • .htaccess mit
    "php_flag engine off
    RemoveHandler .cgi"
    selbes Ergebnis wie oben.

  • Die Prüfung auf die Dateiendung (und somit das Verbot von php-Dateien) funktioniert nicht - in test.php.txt enthaltene Anweisungen werden ausgeführt

  • Durchsuchen der Dateien auf PHP-Tags (<?php ?> etc.) Ist das wirklich die Einzige Möglichkeit? Ist damit eine gewisse Sicherheit gegeben? Wie sieht es mit CGI Scripten aus (mit selbigen habe ich mich noch nie beschäftigt)

Liebe Grüße und eine gute Nacht
Julian

ps: eigentlich dachte ich das Problem sei verbreitet - aber irgendwie habe ich nicht viel dazu gefunden. Vielleicht habe ich aber auch einfach nur die falschen Suchbegriffe verwendet.

  1. Hi,

    ich habe folgendes Problem: ich möchte auch einem Server einen File-Upload (via PHP) anbieten. Jetzt mache ich mir gerade Gedanken um die Sicherheit: kann ich die Ausführung von PHP-Scripten für bestimmte Ordner unterbinden

    Im Archiv findest du mehrere Diskussionen, die sich schon ausführlich mit der Thematik beschäftigt haben.

    Folgende Lösungsansätze habe ich schon gefunden:

    • .htaccess mit
      "Options +Indexes
      RemoveHandler .php"
      soll angeblich php-Dateien nicht ausführen. Ergebnis: Internal Server Error bei allen Dateien im Verzeichnis

    Dann hast du wohl für mindestens eine der beiden Anweisungen nicht die erforderlichen Rechte.

    • .htaccess mit
      "php_flag engine off
      RemoveHandler .cgi"
      selbes Ergebnis wie oben.

    Siehe oben, zumindest was die zweite Zeile angeht.

    • Die Prüfung auf die Dateiendung (und somit das Verbot von php-Dateien) funktioniert nicht - in test.php.txt enthaltene Anweisungen werden ausgeführt

    Ja, der Apache behandelt in gewissen Situationen mehrere Dateiendungen nacheinander.
    Umbenennen könnte hier im speziellen Fall zwar helfen, bietet aber u.U. auch keine vollständige Sicherheit.

    • Durchsuchen der Dateien auf PHP-Tags (<?php ?> etc.) Ist das wirklich die Einzige Möglichkeit? Ist damit eine gewisse Sicherheit gegeben?

    Erscheint mir auch nicht sonderlich zuervlässig und elegant.

    ps: eigentlich dachte ich das Problem sei verbreitet - aber irgendwie habe ich nicht viel dazu gefunden. Vielleicht habe ich aber auch einfach nur die falschen Suchbegriffe verwendet.

    Ah, gut - wenigstens die Ahnung hattest du also schon mal :-)

    Bspw. die Suche nach upload php verbieten liefert hier im Archiv schon ein paar brauchbare Treffer.

    MfG ChrisB

    --
    “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]