
Uno scanner proof-of-concept per verificare la presenza di vulnerabilità in un server RDG Gateway per CVE-2020-0609 e CVE-2020-0610.
Un scanner proof-of-concept per verificare la presenza delle vulnerabilità CVE-2020-0609 e CVE-2020-0610 su un server gateway RDP.
La scansione per vulnerabilità di corruzione della memoria è pericolosa e potrebbe potenzialmente causare il crash dei sistemi. Sebbene questo strumento sia stato progettato per evitare di causare un crash, la stabilità non può essere garantita al 100%. Utilizzare a proprio rischio e scansionare solo sistemi per i quali si ha il permesso di test.
python3 RDGScanner.py <ip> <port>
Per comprendere le vulnerabilità, puoi leggere il mio articolo qui: https://www.kryptoslogic.com/blog/2020/01/rdp-to-rce-when-fragmentation-goes-wrong/
Il messaggio CONNECT_PKT_FRAGMENT consente di frammentare un messaggio di connessione in più pacchetti. Ogni pacchetto ha un campo che specifica la posizione del pacchetto nella sequenza () e il numero totale di pacchetti nella sequenza ().
fragment_idnum_fragmentsCVE-2020-0610 è una vulnerabilità di scrittura OOB che si verifica quando fragment_id è maggiore di 64. Per mitigare la vulnerabilità, sono stati aggiunti controlli per fallire se fragment_id o num_packets è maggiore di 64.
Impostando num_fragments (ma non fragment_id) a un valore maggiore di 64, il controllo di sicurezza fallisce senza rischiare di sfruttare il bug. Su un sistema patchato verremo disconnessi con un codice di errore 0x8000ffff, mentre su un sistema non patchato non accadrà nulla.