Cross-Site Request Forgery (CSRF)
Erlaubt Angreifern, Aktionen im Namen authentifizierter Benutzer auszuführen.
Was ist diese Schwachstelle?
Cross-Site Request Forgery (CSRF) ist ein Angriff, der einen authentifizierten Benutzer dazu bringt, unwissentlich Aktionen auf einer Website auszuführen, bei der er eingeloggt ist. Der Angriff nutzt die Tatsache aus, dass Browser automatisch Cookies (einschließlich Session-Cookies) mit jeder Anfrage an eine Domain mitsenden. Wenn ein Admin bei WordPress eingeloggt ist und eine bösartige Seite besucht, kann diese Seite Anfragen an WordPress mit der Admin-Session senden.
Wie nutzt ein Angreifer dies aus?
Ein Angreifer erstellt eine bösartige Webseite oder E-Mail mit einem versteckten Formular oder Image-Tag, das automatisch eine Anfrage an die Zielseite sendet. Zum Beispiel ein unsichtbares Formular, das eine POST-Anfrage zum Ändern der WordPress-Admin-E-Mail sendet. Wenn ein authentifizierter Admin die Seite des Angreifers besucht (oder die E-Mail öffnet), sendet der Browser automatisch das WordPress-Session-Cookie mit, und die Aktion wird ausgeführt, als hätte der Admin sie absichtlich durchgeführt.
Mögliche Konsequenzen
- Änderung der Admin-E-Mail-Adresse zur Kontoübernahme
- Änderung von Website-Einstellungen, Plugin-Konfigurationen oder Benutzerrollen
- Erstellen neuer Admin-Konten unter Kontrolle des Angreifers
- Löschen von Inhalten, Seiten oder ganzen Datenbanken
- Installation bösartiger Plugins oder Themes
- Änderung von Zahlungseinstellungen bei E-Commerce-Seiten
Wie schützen Sie sich
- Anti-CSRF-Tokens verwenden: Einzigartige, unvorhersehbare Tokens in jedes Formular einbinden, das zustandsändernde Aktionen ausführt (WordPress Nonces)
- HTTP Referer/Origin-Header überprüfen: Anfragen von unerwarteten Quellen ablehnen
- SameSite-Cookie-Attribut verwenden: Cookies auf SameSite=Strict oder SameSite=Lax setzen, um das Cross-Origin-Senden zu verhindern
- Re-Authentifizierung für kritische Aktionen erfordern: Vor dem Ändern von E-Mail oder Passwort erneut nach dem Passwort fragen
- Benutzerdefinierte Request-Header verwenden: AJAX-Anfragen können benutzerdefinierte Header enthalten, die Cross-Origin-Formulare nicht setzen können
Wie finden Angreifer diese Schwachstelle?
Angreifer finden CSRF-Schwachstellen, indem sie Formulare und AJAX-Anfragen auf fehlende oder schwache Anti-CSRF-Tokens untersuchen. Sie prüfen, ob zustandsändernde Aktionen (POST, PUT, DELETE) ohne gültigen Nonce ausgelöst werden können. Das Testen umfasst das Erstellen einer einfachen HTML-Seite mit einem Formular, das an den Zielendpunkt sendet, und die Prüfung, ob die Aktion von einem anderen Ursprung aus erfolgreich ist.
Beispiel-CVEs aus unserer Datenbank
The W3 Total Cache plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including, 0.9.4. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page via forged request granted they can trick a site administrator into performing an action such as clicking on a link.
The WP-Optimize plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including, 3.2.11. This is due to missing or incorrect nonce validation on the 'is_valid_request' function. This makes it possible for unauthenticated attackers to manage and modify cache and minification settings and dismiss notifications via a forged request granted they can trick a site administrator into performing an action such as clicking on a link.
The Google Language Translator plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including, 4.0.9 via 'the googlelanguagetranslator_flags_order' parameter due to insufficient input sanitization and output escaping. This makes it possible for attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
The All In One WP Security & Firewall plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including, 5.1.0. This is due to missing or incorrect nonce validation on the process_bulk_action function. This makes it possible for unauthenticated attackers to modify the plugin's block list table, via forged request granted they can trick a site administrator into performing an action such as clicking on a link.
The Popup Maker plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including, 1.18.0. This is due to missing or incorrect nonce validation on the 'init' function. This makes it possible for unauthenticated attackers to flush the popup cache via forged request granted they can trick a site administrator into performing an action such as clicking on a link.
... und 2,881 weitere in unserer Datenbank
Typische Auswirkung
Unbefugte Einstellungsänderungen, Inhaltsmanipulation, Rechteausweitung.
Empfohlene Maßnahme
the affected plugin auf die neueste Version aktualisieren. CSRF-Token-Implementierung überprüfen.
Ist Ihre WordPress-Seite von dieser Art von Schwachstelle betroffen?
Jetzt Ihre Seite scannen