letztes Update dieser Seite am: 20. Mär 2025 13:33 Uhr

Das Joomla-CMS ist quasi ein Dinosaurier unter den gängingen Content-Management-Systemen. Selbst habe ich seit der Version 1.0 mit Joomla (und vorher bereits mit Mambo) gearbeitet und Tonnen von Code programmiert.

In dieser Zeit, das ist nun 20 Jahre her, gab es bei den meisten Hostern, für Kunden, keine Möglichkeit das Document_Root anzupassen.

Warum das Document_Root anpassen wollen?

Um sämtliche PHP-Dateien ausserhalb des Document_Roots aufzubewahren und damit den Zugriff auf die PHP-Dateien zu verhindern.
Merke: Alle Dateien, die im Document_Root liegt sind ohne Schutzmaßnahmen ersteinmal aufrufbar und wenn es schlecht läuft, ausführbar.

An dieser Stelle ganz tief ins Coding und Absichern und und und einzusteigen, möchte ich an dieser Stelle eine solide Möglichkeit mit htaccess anbieten.

Warum muss der Aufruf von PHP-Dateien in Joomla unterbunden werden?

Das Joomla-Cms ist umfangreich vom Quellcode her. Plugins,Components und Modules in Joomla sind gängige Praxis um die Webseite zu gestalten. Alle Tage wieder wird irgendwo bekannt, dass es diese oder jene Sicherheitslücke gab. Eine Sorte Hacking gegen Joomla ist das einschleusen einer PHP-Datei in die Webseite. Diverse male gesehen.

Konkret, nach einem erfolgreichen Hacking-Angriff gegen die Joomla-Installation befindet sich unter /images dann eine irgendeine PHP-Datei /images/ich-räume-dir-die-bude-aus.php
Soweit wäre das dann zwar großer Mist aber noch kein Weltuntergang(in der Regel).

Heikel wird es, wenn der Angreifer, der dieses Hackingscript in deiner Joomla-Installation abgelegt hat, später von seinem Hack noch richtig profitiert.

Dafür wird der Hacker die Webseite besuchen und direkt "seine" Url verwenden.

https://deine-domain.de/images/ich-räume-dir-die-bude-aus.php

Vielleicht erwähne ich noch, dass in dieser Hacking-File alles mögliche, was viel Schaden anrichten kann, enthalten ist.

Also verbieten wir sämtliche PHP-Dateien in Joomla, die wir nicht kennen und die nicht aufgerufen werden sollen.

htaccess Schutz in Joomla überprüfen

Prüfe mit der folgenden Anleitung einmal, ob nicht-Joomla PHP-Dateien in deiner Webseite aufrufbar sind.

Wie kannst du ausprobieren ob deine Joomla-Installation abgesichert ist?

Erstelle im Hauptverzeichnis von Joomla eine PHP-Datei evil.php mit folgendem Inhalt

Rufe im Browser deine Domain auf
https://deine-domain.de/evil.php

Solltest du im Browserfenster 'Diese Zeile sollte nicht angezeigt werden!', ist das folgende .htaccess Snippet genau das richtige für dich!

Wie sichere ich die PHP-Dateien mit .htaccess in Joomla ab?

Öffne deine .htaccess und kopiere den folgenden Inhalt in die Joomla .htaccess.
(irgendwo unterhalb des Ausdrucks Options -Indexes)

Rufe im Browser erneut deine Domain wie folgt auf:
https://deine-domain.de/evil.php

Das Ergebnis im Browser sollte eine 403 Forbidden Nachricht sein.

Bitte entferne die evil.php vom Server. Diese Datei hat dort nichts mehr verloren :)

Zum Schluss testest du deine Webseite im
Joomla Frontend:

https://deine-domain.de

und im Joomla Backend:

https://deine-domain.de/administrator

Hat dir dieses Tutorial geholfen? Hast du Fragen?