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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-60137 — wpsqli estrattore SQLi completo + dump per CVE-2026-60137 | Kitploit
Strumenti/GitHubGitHub/adarshthakur14777-cyber/cve-2026-60137
Attacchi alle PasswordAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebRaccolta InformazioniSicurezza WebPenetration TestingSicurezza dei Database

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
GitHubadarshthakur14777-cyber/cve-2026-60137

CVE-2026-60137

wpsqli estrattore SQLi completo + dump per CVE-2026-60137

Vedi Repository
191 mese faNon ancora revisionato

wpsqli - Estrattore SQLi per WordPress (CVE-2026-60137)

Uno strumento veloce e guidato da menu per l'estrazione di database che sfrutta la vulnerabilità di SQL injection author__not_in nel core di WordPress. Questo strumento si concentra esclusivamente sull'enumerazione e sul dump del database, sfruttando la confusione delle route batch REST (CVE-2026-63030) per raggiungere il sink SQLi senza autenticazione.


Sommario

  • Panoramica
  • Catena di vulnerabilità
  • Versioni interessate
  • Funzionalità
  • Installazione
  • Utilizzo
  • Opzioni del menu
  • Modalità di estrazione
  • Prestazioni
  • Disclaimer legale

Panoramica

wpsqli è uno strumento in puro Python progettato per sfruttare una vulnerabilità concatenata nel core di WordPress che consente un'iniezione SQL non autenticata nel database. Aggira la validazione della REST API di WordPress tramite un bug di confusione delle route batch, portando un payload stringa grezzo direttamente al sink SQL di WP_Query.

Questo strumento è pensato per velocità e flessibilità: tenta automaticamente l'estrazione in-band basata su UNION (istantanea), ripiega sull'estrazione boolean-blind parallela a 8 thread e infine sull'estrazione time-based sequenziale, se necessario.


Catena di vulnerabilità

Questo strumento combina due vulnerabilità indipendenti per ottenere un'estrazione del database senza autenticazione:

Bug A — Iniezione SQL author__not_in (CVE-2026-60137)

Posizione: wp-includes/class-wp-query.php, WP_Query::get_posts()

Il parametro author__not_in applica la sanitizzazione absint() solo se l'input è un array. Se viene passata una stringa, il controllo is_array() viene saltato, la stringa attraversa implode() senza modifiche e viene concatenata grezza nella clausola SQL $where.

// Line 2404: guard only fires for ARRAYS
if ( is_array( $query_vars['author__not_in'] ) ) {
    $query_vars['author__not_in'] = array_unique( array_map( 'absint', $query_vars['author__not_in'] ) );
    sort( $query_vars['author__not_in'] );
}
// Line 2408: string passes straight through
$author__not_in = implode( ',', (array) $query_vars['author__not_in'] );
// Line 2409: raw interpolation
$where .= " AND {$wpdb->posts}.post_author NOT IN ($author__not_in) ";

Bug B — Confusione delle route batch REST (CVE-2026-63030)

L'endpoint posts della REST API mappa author_exclude su author__not_in ma lo dichiara come type => 'array' di interi, quindi il core converte/rifiuta una stringa. Il Bug B fa passare la stringa oltre la validazione abusando di un bug di desincronizzazione nell'endpoint batch REST (/wp-json/batch/v1). Iniettando un primer di percorso malformato che wp_parse_url() rifiuta, un WP_Error viene inserito nella lista delle richieste batch, desincronizzando $matches da $validation. Questo consente a una sotto-richiesta successiva di essere smistata verso l'handler sbagliato senza validazione dei parametri.


Versioni interessate

Intervallo di versioniStato
6.8.0 – 6.8.5Bug SQLi presente, ma catena NON raggiungibile (confusione batch introdotta in 6.9.0)
6.9.0 – 6.9.4VULNERABILE — catena completa senza autenticazione
7.0.0 – 7.0.1VULNERABILE — catena completa senza autenticazione
6.8.6Corretto (SQLi)
6.9.5Corretto
7.0.2Corretto
7.1-beta2+Corretto

Avvertenza: Il sink SQLi viene raggiunto solo quando non è in uso una cache degli oggetti persistente (Redis/Memcached).


Funzionalità

  • Nessuna dipendenza: Solo libreria standard di Python. Nessun pip install richiesto.
  • Estrazione a tre livelli:
    • Basata su UNION: Crea una riga wp_posts fittizia per estrarre intere stringhe in una singola richiesta HTTP (istantanea).
    • Boolean-blind (parallela): Se UNION è bloccata dalla cache degli oggetti, usa 8 thread paralleli con ricerca binaria per estrarre ~7 richieste per carattere.
    • Time-based (sequenziale): Fallback se l'oracolo booleano non restituisce righe.
  • Enumerazione completa: Elenca database, tabelle e colonne.
  • Dump di tabelle: Dump di singole tabelle, di tutte le tabelle in un DB o dump nucleare completo su file di testo con timestamp.
  • Interruzione pulita: Ctrl+C durante l'estrazione ferma la query corrente e restituisce risultati parziali senza far crashare la sessione.
  • Persistenza della sessione: Connettiti una volta ed esegui più query tramite il menu interattivo.
  • Sanitizzazione URL: Rimuove automaticamente percorsi/query dall'input host per prevenire la duplicazione degli endpoint.
  • Output pronto per il cracking: I dump utente includono il formato ID|user_login|user_pass con hash bcrypt pronti per hashcat -m 35500.

Installazione

Nessuna installazione richiesta. Basta scaricare ed eseguire:

# Clone the repository
git clone https://github.com/AdarshThakur14777-cyber/CVE-2026-60137.git
# Navigate to directory
cd CVE-2026-60137

# Run
python main.py

Requisiti:

  • Python 3.8+
  • Nessun pacchetto esterno necessario (solo stdlib)

Utilizzo

Avvia il menu interattivo:

python main.py

Sessione di esempio

============================================================
  WP SQLi Extractor v3 (CVE-2026-60137)
============================================================
------------------------------------------------------------
  CONNECTION
   0. Connect / Change target
   1. Check target (version + vuln confirm)
------------------------------------------------------------
  FINGERPRINTING
   2. MySQL version (@@version)
   3. Current database name
   4. Current DB user
   5. WordPress table prefix
   6. Dump wp_users (ID, login, pass hash)
   7. Custom SQL query
   8. Extract all fingerprints (2+3+4+5)
------------------------------------------------------------
  ENUMERATION
   9. List all databases
  10. List all tables (current DB)
  11. List columns of a table
------------------------------------------------------------
  DUMPING
  12. Dump a specific table
  13. Dump all tables (current DB)
  14. Full dump to file (all tables + all rows)
------------------------------------------------------------
  15. Exit
============================================================

Choice: 0
Target (https://example.com): https://target.com
Skip TLS verify? (y/N):
Sleep delay for time-based (default 3):

[*] Connecting to https://target.com ...
[+] Batch endpoint: https://target.com/wp-json/batch/v1
[*] WordPress version: 6.9.4 VULNERABLE
[*] Testing UNION-based extraction ...
[!] UNION not available — trying boolean blind (8 parallel threads) ...
[+] Boolean-blind mode active (8 threads, ~7 reqs/char)
[+] Time-based also works (0.69s vs 3.78s)

Opzioni del menu

Connessione

OpzioneDescrizione
0Connettiti a un target (sanitizza gli URL automaticamente)
1Verifica la vulnerabilità e la modalità di estrazione attiva

Fingerprinting

OpzioneDescrizione
2Estrai la versione di MySQL (SELECT @@version)
3Estrai il nome del database corrente (SELECT DATABASE())
4Estrai l'utente DB corrente (SELECT CURRENT_USER())
5Estrai il prefisso delle tabelle di WordPress
6Dump della tabella wp_users (ID, login, hash della password)
7Esegui una query SQL personalizzata
8Esegui tutti i fingerprint (opzioni 2-5) in sequenza

Enumerazione

OpzioneDescrizione
9Elenca tutti i database sul server MySQL
10Elenca tutte le tabelle nel database corrente o specificato
11Elenca tutti i nomi di colonna per una tabella specifica

Dump

Scarica lo strumento