📤 Upload-Schutz Übersicht
Der Reiter Uploads schützt Ihr WordPress vor einem der kritischsten Angriffsvektoren: dem Hochladen bösartiger Dateien. Ein Angreifer, der eine PHP-Datei hochlädt, kann beliebigen Code ausführen, Backdoors installieren, Daten stehlen oder die vollständige Kontrolle über die Site übernehmen.
🎯 Was blockiert wird
- PHP .php-, .phtml-, .php5-, .php7-, .pht-Dateien
- AUSFÜHRBAR .exe, .bat, .cmd, .sh, .bin, .msi
- SKRIPTE .js, .vbs, .jsp, .asp, .aspx, .shtml
- DOPPELT bild.jpg.php, datei.pdf.exe
- NULL-BYTES datei.php%00.jpg
- GRÖSSE Dateien über dem konfigurierten Limit
🔍 Echte Angriffsbeispiele
📋 Blockierte Erweiterungen & MIME-Typen
Die Firewall führt standardmäßig eine Liste von über 30 gefährlichen blockierten Erweiterungen. Es ist ein frei editierbares, kommagetrenntes Textfeld: Sie können Erweiterungen je nach den Anforderungen Ihrer Site hinzufügen oder entfernen. Sie können auch maximale Dateigrößenlimits konfigurieren und die Liste der blockierten MIME-Typen anpassen.
| Kategorie | Standardmäßig blockierte Erweiterungen |
|---|---|
| PHP | .php .php3 .php4 .php5 .php7 .phtml .pht .phps .phar .pgif |
| AUSFÜHRBAR | .exe .bat .cmd .com .pif .scr .msi .app .deb .rpm |
| SKRIPTE | .js .ws .wsh .vbs .ps1 .sh .shtml .cgi .pl .py .jar |
📏 Maximale Dateigröße
Legen Sie das Limit in MB fest (standardmäßig 10 MB). Bei 0 wird stattdessen das allgemeine Upload-Limit Ihres WordPress/Hostings verwendet, geregelt durch upload_max_filesize und post_max_size in php.ini.
🚫 Blockierte MIME-Typen
Bearbeitbare Liste von MIME-Typen, die automatisch abgelehnt werden. Standardmäßig enthalten: application/x-php, application/x-httpd-php, text/php, application/x-executable, text/x-php. Sie können bei Bedarf weitere Typen hinzufügen.
🔬 Erweiterter Schutz
Die drei erweiterten Optionen bieten zusätzliche Analyseebenen, die gängige Umgehungstechniken erkennen, mit denen Angreifer Erweiterungslisten umgehen.
🔍 Dateiinhalt scannen
Überprüft den tatsächlichen Dateiinhalt auf Signaturen von bösartigem Code. Erkennt PHP, das in Bildern versteckt ist (bösartiges GIF), eingebettete Skripte, Verschleierung und andere Tarnungstechniken. Es verlässt sich nicht nur auf die Erweiterung oder den deklarierten MIME-Typ — es untersucht die tatsächlichen Bytes.
🔗 Doppelerweiterung erkennen
Erkennt Dateien mit mehreren Erweiterungen wie bild.jpg.php oder dokument.pdf.exe. Angreifer nutzen diese Technik, weil einige Systeme nur die letzte Erweiterung validieren (grundlegende Prüfungen werden getäuscht), der Server aber die erste gefährliche Erweiterung ausführt. Erkennt auch Varianten wie file.php;.jpg oder file.php..jpg.
💉 Null-Byte-Injektion erkennen
The attacker adds a null byte character (%00) in the filename to truncate the extension at the filesystem level. For example, shell.php%00.jpg — the system sees .jpg and allows it, but the server saves shell.php because the filesystem truncates at the null byte.
Der Angreifer fügt ein Null-Byte-Zeichen (%00) in den Dateinamen ein, um die Erweiterung auf Dateisystemebene abzuschneiden. Zum Beispiel shell.php%00.jpg — das System sieht .jpg und erlaubt es, aber der Server speichert shell.php, weil das Dateisystem am Null-Byte abschneidet.
⭐ Empfehlungen & Best Practices
Befolgen Sie diese Empfehlungen, um den Upload-Schutz zu maximieren, ohne die Funktionalität Ihrer Site zu beeinträchtigen.
📏 Empfohlene Größengrenzen
🖼️ Bilder
10 MB — Ausreichend für hochauflösende Fotos auf Portfolio-Seiten, Galerien oder WooCommerce. Ein legitimes Bild überschreitet diese Größe selten.
🎥 Videos / PDFs
50 MB — Geeignet für kurze Videos, Präsentationen und große PDF-Dokumente. Wenn Sie mehr benötigen, ziehen Sie externes Streaming in Betracht (YouTube, Vimeo).
📦 Komprimierte Dateien
25 MB — Für .zip-, .rar-, .tar.gz-Dateien. Seien Sie vorsichtig bei sehr großen komprimierten Dateien — sie enthalten oft verpackte bösartige Inhalte.
📋 Goldene Regeln
- Lassen Sie alle 3 erweiterten Optionen AKTIVIERT — Inhaltsanalyse, Doppelerweiterung und Null-Byte. Sie sind Ihre letzte Verteidigungslinie gegen Umgehungen.
- Entfernen Sie keine Erweiterungen ohne Grund aus der Liste — Jede blockierte Erweiterung ist ein geschlossener Angriffsvektor. Wenn Sie eine benötigen, bewerten Sie das Risiko und ziehen Sie sicherere Alternativen in Betracht.
- Überprüfen Sie das Aktivitätsprotokoll regelmäßig — Die letzten 20 blockierten Upload-Versuche erscheinen im Protokoll. Die Überprüfung hilft Ihnen, Angriffsmuster zu erkennen und Einstellungen anzupassen.
- Kombinieren Sie es mit Sicherheit auf Serverebene — Der Upload-Schutz arbeitet auf WordPress-Anwendungsebene. Für maximale Sicherheit kombinieren Sie ihn mit Webserver-Regeln (PHP-Ausführung in wp-content/uploads über .htaccess oder Nginx blockieren).
📊 Aktivitätsprotokoll
Das Panel zeigt die letzten 20 blockierten Upload-Versuche, jeder mit den folgenden Spalten:
| Spalte | Beschreibung |
|---|---|
| Uhrzeit | Zeitstempel des Versuchs |
| Datei | Versuchter Dateiname |
| Grund | Badge mit dem Blockierungsgrund |
| Aktion | Ob der Versuch blockiert wurde (Firewall im Modus Schutz/Strict) oder nur protokolliert wurde (Modus Überwachung) |
| IP | Quell-IP-Adresse des Uploads |
| Rolle | WordPress-Rolle des Benutzers, der den Upload versucht hat |
Die Grund-Badges können sein:
🆚 Upload-Schutz vs. Serversicherheit
Es ist wichtig, den Unterschied zwischen beiden Ebenen zu verstehen. Sie schließen sich nicht aus — im Gegenteil, sie ergänzen sich.
| Aspekt | Upload-Schutz (SeenSecure) | Serversicherheit (.htaccess / Nginx) |
|---|---|---|
| Ebene | WordPress-Anwendung (PHP) | Webserver (Apache / Nginx) |
| Was es schützt | Blockiert bösartige Uploads, bevor sie auf dem Server gespeichert werden. Analysiert Erweiterung, MIME, Inhalt, Doppelerweiterung, Null-Byte. | Blockiert die Ausführung von Dateien in bestimmten Verzeichnissen. Verhindert nicht den Upload, aber verhindert die Ausführung als PHP. |
| Vorteil | Intelligente Erkennung: Inhalt, Umgehungen. Vom WordPress-Dashboard aus konfigurierbar. | Funktioniert auch wenn WordPress kompromittiert ist. Hängt nicht von PHP ab. |
| Empfehlung | Beide verwenden. Der Upload-Schutz blockiert 99% der Angriffe. Die Serversicherheit ist das Sicherheitsnetz, das die restlichen 1% auffängt, wenn etwas fehlschlägt. | |
<script> oder onload). Wenn Sie SVGs für Symbole hochladen müssen, können Sie sie aus der Liste entfernen, aber erwägen Sie, sie vorher zu bereinigen oder ein Plugin zu verwenden, das SVGs automatisch bereinigt.