
Riproduzione CVE: cve-2024-38077-madlicense_reproduction
RPC over TCP esposto da mstlsap.dll / tlslicense.dll, attivando un buffer overflow basato su heap che porta all'esecuzione di codice arbitrario nel contesto di SYSTEM.Il servizio Remote Desktop Licensing è in ascolto su endpoint RPC dinamici (in genere porte 49664–49681) raggiungibili tramite la porta TCP 135 (RPC Endpoint Mapper). La vulnerabilità risiede nel gestore dell'interfaccia RPC LicensingSendResponse o correlato, all'interno della gestione della memoria heap del servizio di licenza. Inviando una richiesta di protocollo di licenza appositamente modificata con una struttura LicensingBinary troppo grande o malformata, il servizio esegue una memcpy non sicura in un buffer heap di dimensioni insufficienti, corrompendo i metadati heap adiacenti e consentendo l'esecuzione di codice.
Aspetti chiave:
| Prodotto | Impatto |
|---|---|
| Windows Server 2008 R2 (tutte le edizioni) | RCE |
| Windows Server 2012 / 2012 R2 | RCE |
| Windows Server 2016 | RCE |
| Windows Server 2019 | RCE |
| Windows Server 2022 | RCE |
| Windows Server 2025 | RCE |
Le versioni precedenti (Windows 2000 Server, Server 2003, Server 2008) potrebbero essere interessate se il servizio RDL è abilitato.
net start "Remote Desktop Licensing"netstat -an | findstr LISTENINGpython exploit.py --target <TARGET_IP>
tlslicense.dll o un crash di sistema (BSOD a seconda della gravità della corruzione dell'heap).svchost.exe che ospita il servizio RDL prima di attivare l'exploit e osservare l'access violation.Lo script exploit.py incluso in questa directory contiene una riproduzione dell'attacco MadLicense. Si connette al servizio RDL target tramite RPC su TCP, costruisce una richiesta di licenza malformata con un blob binario di dimensioni eccessive e attiva il buffer overflow basato su heap.
sc stop "Remote Desktop Licensing"
sc config "Remote Desktop Licensing" start= disabled