Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2021-43408 — Technische Analyse und Proof-of-Concept-Exploit für CVE-2021-43408, eine SQL-Injection-Schwachstelle im WordPress Duplicate Post Plugin Version 1.1.9, mit Schritt-für-Schritt-Exploitationsanleitung und Abhilfeempfehlungen. | Kitploit
Tools/GitHubGitHub/tuannq2299/cve-2021-43408
SchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitPenetrationstests
GitHubtuannq2299/cve-2021-43408

CVE-2021-43408

Technische Analyse und Proof-of-Concept-Exploit für CVE-2021-43408, eine SQL-Injection-Schwachstelle im WordPress Duplicate Post Plugin Version 1.1.9, mit Schritt-für-Schritt-Exploitationsanleitung und Abhilfeempfehlungen.

Repository anzeigen
vor 4 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2021-43408: WordPress Plugin Duplicate Post Version 1.1.9 - SQL Injection

I. Überblick

1. Was ist WordPress?

WordPress ist ein Open-Source-CMS (Content Management System), ein System zur Verwaltung von Inhalten. Anstatt HTML-Code zu verwenden, wird WP in der Programmiersprache PHP geschrieben und nutzt die MySQL-Datenbankplattform. WordPress wurde von den Entwicklern Matt Mullenweg und Mike Little gegründet. Derzeit gehört WordPress dem Unternehmen Automattic mit Sitz in San Francisco, Kalifornien, USA.

2. CVE-2021-43408

Das WordPress-Plugin Duplicate Post in den Versionen 1.1.9 und darunter weist eine SQL-Injection-Schwachstelle auf. Diese Art der Ausnutzung ermöglicht es einem Angreifer, SQL-Abfragen einzuschleusen, um Ressourcen in der Datenbank zu lesen, zu ändern oder sogar zu löschen. Diese Schwachstelle kann von jedem authentifizierten Benutzer ausgenutzt werden, der die Funktion des Plugins Duplicate Post verwenden darf. Standardmäßig hat nur der Administrator diese Berechtigung, jedoch können die Berechtigungen so angepasst werden, dass auch Redakteure, Autoren, Mitwirkende und sogar Abonnenten dieses Plugin verwenden können. CVE-2021-43408 wurde am 19.11.2021 entdeckt und nach dem CVSS-Bewertungsschema als (hoch) eingestuft.

HIGH

II. Detaillierte Analyse

Die Hauptursache dieser Schwachstelle ist, dass die vom Benutzer übermittelten Daten aus der Anfrage nicht bereinigt werden, bevor sie in die SQL-Ausführung einfließen. Genauer gesagt, in der Datei post/handler.php in der Funktion cdn_insert_post()

root@kitploit:~
 function cdp_insert_post($id, $data, $times, $areWePro, $isChild = false, $p_ids = null, $site) {

        // Get Wordpress database
        global $wpdb;

        // Create empty array for new id(s) and error(s)
        $results = array('ids' => array(), 'error' => 0, 'counter' => 0);

        // Get Counter value
        $prefix = (($site != -1) ? $wpdb->get_blog_prefix($site) : $wpdb->get_blog_prefix());
        $newestId = $wpdb->get_results("SELECT post_id FROM {$prefix}postmeta WHERE meta_key = '_cdp_origin' AND meta_value = {$id} ORDER BY post_id DESC LIMIT 1", ARRAY_A);

$id wird vom Angreifer kontrolliert

Die Variable $id wird in die Funktion übergeben, die eine SQL-Abfrage enthält, ohne dass eine Bereinigung stattfindet. Diese Funktion wird über den WordPress-Ajax wp_ajax_cdp_action_handling aufgerufen. Man sieht, dass der Parameter id durch die Funktion cdn_sanitize_array geht, wo die Datenfelder des Beitrags durch die Funktion sanitize_text_field geleitet werden, die alle Anführungszeichen ' in der Zeichenkette escapt.

Die Datenfelder werden mit sanitize_text_field bereinigt

Allerdings weist der Code eine Schwachstelle auf, wenn die Daten des Integer-Feldes (Feld id) in die SQL-Abfrage eingefügt werden. Ein Angreifer kann dies ausnutzen und zusätzliche SQL-Anweisungen in den Wert dieses Feldes einfügen. Um die SQL-Abfrage kontrollieren zu können, muss der Angreifer lediglich die Verwendung des Zeichens ' vermeiden.

III. Demo

1. Umgebung

  • Betriebssystem: Windows
  • XAMPP: 7.1.33
  • WordPress: 5.0
  • Plugin Duplicate Post: 1.1.9

2. PoC

Schritt 1: Melden Sie sich als Administrator an und installieren Sie das Plugin Duplicate Post in Version 1.1.9. Dieses Plugin unterstützt Benutzer beim Kopieren vorhandener Beiträge.

Schritt 2: Gehen Sie zum Bereich Beiträge, wählen Sie einen Beitrag aus, wählen Sie die Aktion Kopieren und klicken Sie auf Anwenden.

Schritt 3: Wählen Sie Einstellung: Standard und klicken Sie auf Kopieren.

Schritt 4: Fangen Sie die HTTP-Anfrage ab. Das zu beachtende Datenfeld ist id; man sieht, dass die Daten dieses Feldes eine Integer-Zahl sind.

Schritt 5: Fügen Sie ein SQL-Injection-Payload ein, senden Sie die Anfrage und stellen Sie fest, dass der Server erst 9 Sekunden später eine Antwort sendet – SQL Injection erfolgreich. Payload: 1 and (select*from(select(sleep(9)))a)--

3. Exploit-Code

IV. Abhilfemaßnahmen

  • Aktualisieren Sie das Plugin auf Version 1.2.0 oder höher

V. Referenzen

  • https://appcheck-ng.com/security-advisory-duplicate-post-wordpress-plugin-sql-injection-vulnerability
Tool herunterladen