Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2021-43408 — Analisi tecnica ed exploit proof-of-concept per CVE-2021-43408, una vulnerabilità di SQL injection nel plugin WordPress Duplicate Post versione 1.1.9, con guida allo sfruttamento passo passo e consigli di rimedio. | Kitploit
Strumenti/GitHubGitHub/tuannq2299/cve-2021-43408
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration Testing
GitHubtuannq2299/cve-2021-43408

CVE-2021-43408

Analisi tecnica ed exploit proof-of-concept per CVE-2021-43408, una vulnerabilità di SQL injection nel plugin WordPress Duplicate Post versione 1.1.9, con guida allo sfruttamento passo passo e consigli di rimedio.

Vedi Repository
64 anni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2021-43408: Plugin Wordpress Duplicate Post versione 1.1.9 - SQL Injection

I. Panoramica

1. Cos'è WordPress

WordPress è un software CMS (Content Management System) open source, un sistema di gestione dei contenuti. Invece di utilizzare il linguaggio di markup HTML, WP è scritto nel linguaggio di programmazione PHP e utilizza la piattaforma dati MySQL. WordPress è stato fondato dai programmatori Matt Mullenweg e Mike Little. Attualmente WordPress è di proprietà della società Automattic, con sede a San Francisco, California, Stati Uniti.

2. CVE-2021-43408

Il plugin Duplicate Post di WordPress, nelle versioni 1.1.9 e precedenti, è affetto da una vulnerabilità di SQL Injection. Questo tipo di exploit consente all'attaccante di iniettare query SQL e, di conseguenza, di leggere, modificare o persino eliminare le risorse presenti nel database. Questa vulnerabilità può essere sfruttata da qualsiasi utente autenticato che disponga dei permessi per utilizzare le funzionalità del plugin Duplicate Post. Per impostazione predefinita, solo l'Admin ha questi permessi; tuttavia, essi possono essere modificati, consentendo così anche a Editor, Author, Contributor e persino Subscriber di utilizzare il plugin. CVE-2021-43408 è stata scoperta l'11/19/2021 ed è stata valutata di livello HIGH secondo il punteggio CVSS.

II. Analisi dettagliata

La causa principale di questa vulnerabilità risiede nel fatto che i dati inviati tramite la richiesta dell'utente non vengono sanificati prima di essere utilizzati nell'esecuzione delle query SQL. Più precisamente, nel file post/handler.php, nella funzione cdn_insert_post()

 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 è controllato dall'attaccante

La variabile $id viene passata alla funzione che contiene la query SQL senza alcuna sanificazione. Questa funzione viene richiamata tramite l'Ajax di WordPress wp_ajax_cdp_action_handling. Si può notare che il parametro id viene passato attraverso la funzione cdn_sanitize_array; qui i campi dati del post vengono elaborati dalla funzione sanitize_text_field, che esegue l'escape di qualsiasi carattere di citazione ' nella stringa di dati.

I campi dati vengono elaborati con sanitize_text_field

Tuttavia, il codice presenta una vulnerabilità quando i dati del campo Integer vengono passati alla query SQL in esecuzione (campo id): l'attaccante può sfruttare questo difetto e iniettare ulteriori istruzioni SQL nel valore di tale campo. Pertanto, per controllare la query SQL, all'attaccante è sufficiente evitare l'uso del carattere '.

III. Demo

1. Ambiente

  • OS: Windows
  • Xampp: 7.1.33
  • Wordpress: 5.0
  • Plugin Duplicate Post: 1.1.9

2. PoC

Step 1: Accedere come utente Admin e installare il plugin Duplicate Post versione 1.1.9. Questo plugin aiuta gli utenti a duplicare i post esistenti.

Step 2: Andare alla sezione Post, selezionare un post, scegliere l'azione Copy e fare clic su Apply.

Step 3: Selezionare Setting: Default e fare clic su Copy.

Step 4: Intercettare la richiesta HTTP; il campo dati a cui prestare attenzione qui è id: si può notare che i dati di questo campo sono di tipo numerico Integer.

Step 5: Iniettare il payload di SQL Injection, inviare la richiesta e osservare che il server restituisce la risposta solo dopo 9 secondi -> SQL Injection riuscita. Payload: 1 and (select*from(select(sleep(9)))a)--

3. Codice exploit

IV. Misure correttive

  • Aggiornare il plugin alle versioni 1.2.0 o successive

V. Riferimenti

  • https://appcheck-ng.com/security-advisory-duplicate-post-wordpress-plugin-sql-injection-vulnerability
Scarica lo strumento