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/honeyvig/cve-2020-1971
Scanner di VulnerabilitàAnalisi delle VulnerabilitàExploitCrittografia
GitHubhoneyvig/cve-2020-1971

CVE-2020-1971

Script di scansione automatica e exploit remoto per CVE-2020-1971 (dereferenziazione di puntatore NULL in OpenSSL). Include il sorgente di OpenSSL 1.1.1i patchato e script di installazione/aggiornamento per Linux e Windows.

Vedi Repository
27 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-2020-1971

CVE-2020-1971 Script di auto-scan ed exploit remoto. Script di auto-scan locale e patch.

Attualmente in sviluppo

  • Codice sorgente patchato di OpenSSL 1.1.1i
  • Script di installazione dal sorgente/aggiornamento .deb Attualmente in sviluppo 5:38pm Completato 5:50pm
  • Installazione dal sorgente/aggiornamento (Windows) Attualmente in sviluppo 6:06pm Completato 6:40pm
  • EXE auto-estraenti Scarica qui: 32-bit/64-bit
  • Auto-scan per vulnerabilità/script di exploit remoto (Locale)
  • Auto-scan per vulnerabilità/script di exploit remoto (Remoto)

9 dicembre 2020

5:03pm

Sto attualmente sviluppando gli script e spero di pubblicare tutto entro stasera. Per ora questo repository contiene solo il sorgente patchato di OpenSLL 1.1.1i. Attualmente sto lavorando a uno script di patch per l'installazione/aggiornamento.


5:50pm

Script di installazione per Debian/Ubuntu Linux caricato. Per le istruzioni di installazione vedere "Installazione Linux"


6:40pm

  1. Istruzioni per l'installazione di Windows dal sorgente in Installazione di Windows dal Codice Sorgente
  2. Installer autonomo 32/64 bit caricato Scarica qui: 32-bit/64-bit

Descrizione della Vulnerabilità

Il tipo X.509 GeneralName è un tipo generico per rappresentare diversi tipi di nomi. Uno di questi tipi di nome è noto come EDIPartyName. OpenSSL fornisce una funzione GENERAL_NAME_cmp che confronta diverse istanze di un GENERAL_NAME per verificare se sono uguali o meno. Questa funzione si comporta in modo errato quando entrambi i GENERAL_NAME contengono un EDIPARTYNAME. Può verificarsi una dereferenziazione di un puntatore NULL e un crash, portando a un possibile attacco di denial of service.

OpenSSL stesso usa la funzione GENERAL_NAME_cmp per due scopi

  1. Confrontare i nomi dei punti di distribuzione CRL tra una CRL disponibile e un punto di distribuzione CRL incorporato in un certificato X509

  2. Quando si verifica che il firmatario di un token di risposta timestamp corrisponda al nome dell'autorità di timestamp (esposto tramite le funzioni API TS_RESP_verify_response e TS_RESP_verify_token)

Se un attaccante può controllare entrambi gli elementi confrontati, può innescare un crash. Ad esempio, se l'attaccante riesce a indurre un client o un server a controllare un certificato dannoso contro una CRL dannosa, potrebbe verificarsi.

Nota che alcune applicazioni scaricano automaticamente le CRL basate su un URL incorporato in un certificato. Questo controllo avviene prima che le firme sul certificato e sulla CRL vengano verificate. Gli strumenti s_server, s_client e verify di OpenSSL supportano l'opzione "-crl_download" che implementa il download automatico delle CRL ed è stato dimostrato che questo attacco funziona contro tali strumenti.

Nota che un bug non correlato fa sì che le versioni interessate di OpenSSL non possano analizzare o costruire codifiche corrette di EDIPARTYNAME. Tuttavia, è possibile costruire un EDIPARTYNAME malformato che il parser di OpenSSL accetta e quindi innescare questo attacco.

Tutte le versioni di OpenSSL 1.1.1 e 1.0.2 sono interessate da questo problema. Altre release di OpenSSL non sono più supportate e non sono state controllate. Corretto in OpenSSL 1.1.1i (Interessate 1.1.1-1.1.1h). Corretto in OpenSSL 1.0.2x (Interessate 1.0.2-1.0.2w).


Installazione Linux

root@kitploit:~
sudo chmod +x Linux_Patched_Install_From_Source_Script

Esegui:

root@kitploit:~
sudo ./Linux_Patched_Install_From_Source_Script

Installazione di Windows dal Codice Sorgente

"Native" OpenSSL utilizza direttamente le API di Windows in fase di esecuzione. Per compilare un OpenSSL nativo puoi usare:

Microsoft Visual C++ (MSVC) compilatore C dalla riga di comando

oppure

compilatore incrociato MinGW eseguito nell'ambiente di sviluppo simile a GNU MSYS2 oppure eseguito su Linux o Cygwin

"Hosted" OpenSSL si basa su un livello di compatibilità POSIX esterno per la compilazione (usando shell, compilatore e strumenti GNU/Unix) e in fase di esecuzione. Per questa opzione puoi usare Cygwin.

Build native Visual C++, aka VC-*

Dettagli dei requisiti

Oltre ai requisiti e alle istruzioni elencati in INSTALL.md, sono richiesti anche:

  • Perl. Strawberry Perl, disponibile da http://strawberryperl.com/ Leggi NOTES.PERL per maggiori informazioni, incluso l'uso di CPAN. Un'alternativa è ActiveState Perl, https://www.activestate.com/ActivePerl per cui potresti dover compilare esplicitamente il modulo Perl Win32/Console.pm tramite https://platform.activestate.com/ActiveState e poi scaricarlo.

  • Compilatore Microsoft Visual C.

  • Netwide Assembler (NASM), disponibile da https://www.nasm.us Nota che NASM è l'unico assembler supportato.

Avvio rapido

  1. Installa Perl

  2. Installa NASM

  3. Assicurati che sia Perl che NASM siano nel tuo %PATH%

  4. Usa il prompt dei comandi per sviluppatori di Visual Studio con privilegi di amministratore, scegliendo una delle sue varianti in base all'architettura desiderata. Oppure esegui "cmd" e lancia "vcvarsall.bat" con una delle opzioni x86, x86_amd64, x86_arm, x86_arm64, amd64, amd64_x86, amd64_arm o amd64_arm64. Questo imposta le variabili d'ambiente necessarie per nmake.exe, cl.exe, ecc. Vedi anche https://docs.microsoft.com/cpp/build/building-on-the-command-line

  5. Dalla radice della directory del sorgente di OpenSSL inserisci perl Configure VC-WIN32 se vuoi OpenSSL a 32 bit oppure perl Configure VC-WIN64A se vuoi OpenSSL a 64 bit oppure perl Configure per lasciare che Configure determini la piattaforma

  6. nmake

  7. nmake test

  8. nmake install

Per le istruzioni di installazione complete, o se qualcosa va storto in qualsiasi fase, controlla il file INSTALL.md.

Directory di installazione

Le directory di installazione predefinite derivano dalle variabili d'ambiente.

Per VC-WIN32, vengono usati i seguenti valori predefiniti:

root@kitploit:~
 PREFIX:      %ProgramFiles(86)%\OpenSSL
 OPENSSLDIR:  %CommonProgramFiles(86)%\SSL

Per VC-WIN64, vengono usati i seguenti valori predefiniti:

root@kitploit:~
 PREFIX:      %ProgramW6432%\OpenSSL
 OPENSSLDIR:  %CommonProgramW6432%\SSL

Se tali variabili d'ambiente non esistono (ad esempio su un'installazione Win32 pura), vengono usati questi fallback:

root@kitploit:~
 PREFIX:      %ProgramFiles%\OpenSSL
 OPENSSLDIR:  %CommonProgramFiles%\SSL

NOTA ANCHE che queste directory sono solitamente protette da scrittura, anche se il tuo account è nel gruppo Administrators. Per ovviare, avvia il prompt dei comandi facendo clic con il tasto destro e scegliendo "Esegui come amministratore" prima di eseguire 'nmake install'. L'altra soluzione è, ovviamente, scegliere un diverso set di directory usando --prefix e --openssldir durante la configurazione.

Note speciali per le build della Universal Windows Platform, aka VC-*-UWP

  • Le destinazioni UWP supportano solo la compilazione delle librerie statiche e dinamiche.

  • Dovresti definire il tipo di piattaforma come "uwp" e l'architettura di destinazione tramite "vcvarsall.bat" prima di compilare. Ad esempio, se vuoi creare build "arm64", dovresti eseguire "vcvarsall.bat x86_arm64 uwp".


Riferimenti

I riferimenti sono forniti per comodità del lettore per aiutare a distinguere tra le vulnerabilità.

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=2154ab83e14ede338d2ede9bbe5cdfce5d5a6c9eURL

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=2154ab83e14ede338d2ede9bbe5cdfce5d5a6c9eCONFIRM

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f960d81215ebf3f65e03d4d5d857fb9b666d6920URL

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f960d81215ebf3f65e03d4d5d857fb9b666d6920CONFIRM

https://www.openssl.org/news/secadv/20201208.txtURL:https://www.openssl.org/news/secadv/20201208.txtDEBIAN:DSA-4807URL

https://www.debian.org/security/2020/dsa-4807FREEBSD:FreeBSD-SA-20:33URL

https://security.FreeBSD.org/advisories/FreeBSD-SA-20:33.openssl.asc

Scarica lo strumento