WordPress ist das beliebteste und meistgenutzten Content-Management-System der Welt – und gerade deshalb ein bevorzugtes Ziel für Angreifer. Besonders kritisch sind sogenannte SQL-Injection-Angriffe, die oft in versteckter Form auftreten – z. B. durch automatisch generierte Kommentare, wie dieser hier:
pHqghUme’||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||‘
Was auf den ersten Blick wie Kauderwelsch aussieht, ist tatsächlich ein Versuch, über einen Kommentar eine Schwachstelle in deiner Website auszunutzen. Wenn dein System nicht ausreichend geschützt ist, können solche Angriffe nicht nur Daten stehlen, sondern auch deine Seite kompromittieren.
In diesem Beitrag erkläre ich dir, was SQL-Injection ist, wie diese Angriffe funktionieren, warum sie auch auf WordPress-Websites möglich sind – und wie du dich wirksam davor schützen kannst.
Was ist SQL-Injection?
Definition
SQL-Injection (SQLi) ist eine Angriffstechnik, bei der Angreifer versuchen, über manipulierte Eingaben in Formulare (z. B. Kommentarformulare, Suchfelder, Login-Felder) unerlaubte SQL-Befehle auszuführen.
SQL steht für „Structured Query Language“, die Sprache, mit der Anwendungen mit Datenbanken kommunizieren. Wenn eine Anwendung Eingaben von Nutzern nicht richtig bereinigt, kann ein Angreifer Code einschleusen, der:
- Daten ausliest (z. B. Passwörter oder E-Mail-Adressen),
- Tabellen verändert oder löscht,
- eigene Inhalte in die Datenbank schreibt,
- oder die Anwendung vollständig übernimmt.
Beispiel eines SQL-Injection-Kommentars
‘ OR 1=1; --
Dies ist eine klassische SQLi-Zeile, die eine Login-Prüfung umgehen kann, wenn die Eingaben nicht geprüft werden. In deinem Fall sieht der Kommentar so aus:
DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)
Das ist ein „Timing-Based SQL Injection“-Test. Der Angreifer misst die Antwortzeit, um herauszufinden, ob sein Code tatsächlich auf der Datenbankebene ausgeführt wurde – eine Methode zur Umgehung von Schutzmaßnahmen (sog. Blind SQL Injection).
Warum ist WordPress betroffen?
Auch wenn WordPress selbst regelmäßig aktualisiert und sicher gehalten wird, können die Schwachstellen durch:
- unsichere Plugins und Themes,
- schlecht entwickelte benutzerdefinierte Funktionen,
- falsch konfigurierte Datenbankverbindungen,
- fehlende Input-Validierung
entstehen. Kommentare bieten ein ideales Einfallstor für solche Versuche – besonders, wenn sie nicht moderiert oder gefiltert werden.
Schutzmaßnahmen gegen SQL-Injection und Kommentar-Spam
Hier sind umfassende Schritte, die du unternehmen solltest, um deine WordPress-Seite abzusichern:
1. Kommentarbereich absichern
- Aktiviere Moderation: Nur freigegebene Kommentare erscheinen.
- Nur registrierte Benutzer dürfen kommentieren.
- Deaktiviere Kommentare, wenn sie nicht gebraucht werden (z. B. auf statischen Seiten).
- Begrenze Kommentare auf bestimmte Beiträge.
- Aktiviere Kommentar-Blacklist und Keywords-Filter (z. B. in WordPress unter „Diskussion“).
2. Anti-Spam-Plugins verwenden
Empfohlene Plugins:
- Akismet Anti-Spam (von Automattic)
- Antispam Bee (DSGVO-freundlich, keine Cloud-Dienste)
- CleanTalk (leistungsstarker Cloud-basierter Schutz)
- wpDiscuz (ersetzt das Kommentarformular und blockiert viele Spam-Versuche)
3. Web Application Firewall (WAF) einsetzen
Eine WAF filtert bösartigen Datenverkehr, bevor er deine Seite erreicht. Gute Optionen:
- Cloudflare (kostenloses Grundpaket verfügbar)
- Sucuri Security
- Wordfence Firewall (speziell für WordPress)
- Patchstack (früher WebARX – schützt Plugins & Themes)
4. Eingaben validieren und bereinigen
Wenn du selbst Plugins oder benutzerdefinierte Funktionen entwickelst:
- Verwende Prepared Statements bei Datenbankzugriffen:
$wpdb->prepare("SELECT * FROM table WHERE column = %s", $input);
- Sanitize Eingaben mit WordPress-Funktionen wie
sanitize_text_field()
oderesc_sql()
. - Nutze Nonces bei Formularen, um CSRF-Angriffe zu verhindern.
5. Admin- und Datenbankrechte beschränken
- Der Datenbank-User sollte keine DROP-, ALTER- oder GRANT-Rechte haben.
- Nutze für Entwicklungs- oder Testumgebungen separate Datenbanknutzer.
- Schränke den Admin-Zugang über
.htaccess
oder IP-basierte Filter ein.
6. Monitoring & Logging aktivieren
Frühwarnsysteme erkennen verdächtige Anfragen, z. B.:
- WP Activity Log (für Benutzer- und Systemaktivitäten)
- Audit Log oder Stream Plugin
- Server-Logs überwachen (z. B. über
access.log
odererror.log
auf Apache/Nginx)
7. Sicherheits-Plugins nutzen
Zusätzlich zur WAF bieten folgende Plugins umfassenden Schutz:
- Wordfence Security (Brute-Force-Schutz, Scanner, WAF)
- iThemes Security
- All-In-One WP Security & Firewall
8. Updates & Wartung
- Immer WordPress, Plugins & Themes aktuell halten
- Automatische Updates aktivieren, wo möglich
- Entferne veraltete oder ungenutzte Plugins/Themes
9. CAPTCHA gegen Bots
- Verwende ein anwender- und datenschutzfreundliches CAPTCHA-Plugin
- Integriere CAPTCHA direkt in das Kommentarformular
Fazit
SQL-Injection-Angriffe sind ein ernstzunehmendes Risiko – auch und gerade über scheinbar harmlose Kommentarformulare. Selbst wenn WordPress an sich sicher ist, können schlecht gesicherte Plugins, unmoderierte Eingabefelder und veraltete Software deine Website angreifbar machen.
Mit den richtigen Maßnahmen – von Kommentar-Moderation über WAFs bis hin zu sicherem Code – kannst du deine WordPress-Installation gegen diese Angriffe deutlich sicherer machen und „härten“.
Tipp zum Schluss: Führe regelmäßig Sicherheitsscans durch und überprüfe deine Kommentar-Tabelle (
wp_comments
) auf seltsame Inhalte. Früh erkannt, lassen sich größere Schäden vermeiden.
Cyber-News
Abonniere jetzt unsere Cyber-News! Erhalte wertvolle Informationen, Tipps und Ratschläge zur Cybersicherheit, Cyberbedrohungen, den neuesten Betrugsmaschen, Phishing-Methoden und Social-Engineering. Ganz gleich ob du Anfänger oder Fortgeschrittener bist, werde Teil unserer Community und erhalte alle 4 Wochen wertvolle Insights, um deine IT-Sicherheit zu verbessern!