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-32707-PX4-Autopilot-tattu_can-Stack-Buffer-Overflow-DoS- — Prova de conceito de exploração para CVE-2026-32707, um estouro de buffer na pilha no driver tattu_can do PX4-Autopilot, causando negação de serviço por meio de quadros CAN maliciosamente elaborados. | Kitploit
Ferramentas/GitHubGitHub/mbanyamer/cve-2026-32707-px4-autopilot-tattu_can-stack-buffer-overflow-dos-
Segurança de Sistemas EmbarcadosSegurança IoTAnálise de VulnerabilidadesExploraçãoTestes de PenetraçãoSegurança de Hardware e IoTExploração de Binários
GitHubmbanyamer/cve-2026-32707-px4-autopilot-tattu_can-stack-buffer-overflow-dos-

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-32707-PX4-Autopilot-tattu_can-Stack-Buffer-Overflow-DoS-

Prova de conceito de exploração para CVE-2026-32707, um estouro de buffer na pilha no driver tattu_can do PX4-Autopilot, causando negação de serviço por meio de quadros CAN maliciosamente elaborados.

Ver Repositório
6há 4 mesesAinda não revisado

CVE-2026-32707 CVSS CWE Python Platform License Author

CVE-2026-32707 - Estouro de Buffer na Pilha do tattu_can do PX4-Autopilot (DoS)

root@kitploit:~
╔════════════════════════════════════════════════════════════════════════════════════════════╗
║                                                                                            ║
║   ██████╗  █████╗ ███╗   ██╗██╗   ██╗ █████╗ ███╗   ███╗███████╗██████╗                     ║
║   ██╔══██╗██╔══██╗████╗  ██║╚██╗ ██╔╝██╔══██╗████╗ ████║██╔════╝██╔══██╗                    ║
║   ██████╔╝███████║██╔██╗ ██║ ╚████╔╝ ███████║██╔████╔██║█████╗  ██████╔╝                    ║
║   ██╔══██╗██╔══██║██║╚██╗██║  ╚██╔╝  ██╔══██║██║╚██╔╝██║██╔══╝  ██╔══██╗                    ║
║   ██████╔╝██║  ██║██║ ╚████║   ██║   ██║  ██║██║ ╚═╝ ██║███████╗██║  ██║                    ║
║   ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═══╝   ╚═╝   ╚═╝  ╚═╝╚═╝     ╚═╝╚══════╝╚═╝  ╚═╝                    ║
║                                                                                            ║
║                         [ b a n y a m e r _ s e c u r i t y ]                              ║
║                                                                                            ║
║                  ▸ Silent Hunter  |  Shadow Presence  |  Digital Intel ◂                  ║
║                                                                                            ║
║   Operador : Mohammed Idrees Banyamer  •  Jordânia 🇯🇴                                     ║
║   Handle   : @banyamer_security                                                           ║
║                                                                                            ║
╚════════════════════════════════════════════════════════════════════════════════════════════╝

Descrição

Este repositório contém um exploit de prova‑de‑conceito (PoC) para CVE‑2026‑32707, um estouro de buffer baseado na pilha no driver tattu_can do firmware do controlador de voo PX4‑Autopilot (versões ≤ 1.17.0‑rc1). A vulnerabilidade reside na rotina de montagem de mensagens multi‑quadro: ao remontar uma estrutura Tattu12SBatteryMessage na pilha, o driver executa operações memcpy() sem limites, sem verificar o deslocamento acumulado em relação ao tamanho do buffer (48 bytes). Um atacante com capacidade de injetar quadros CAN no mesmo barramento pode acionar o estouro, causando corrupção da pilha e consequente travamento (Negação de Serviço) do processo PX4.

Diagrama do Fluxo de Ataque

root@kitploit:~
sequenceDiagram
    participant Attacker as Atacante (Nó CAN)
    participant CANbus as Barramento CAN
    participant PX4 as PX4 Autopilot (tattu_can)
    
    Attacker->>CANbus: 1. Quadro de início (DLC=8, data[7]=0x80)
    CANbus->>PX4: Início de transferência recebido
    PX4->>PX4: Buffer tattu_message (48 bytes)<br/>Deslocamento de cópia = 5 bytes
    
    loop Quadros de estouro (7x)
        Attacker->>CANbus: Quadro de estouro (DLC=8, payload 7 bytes)
        CANbus->>PX4: memcpy(dest+offset, payload, 7)
        PX4->>PX4: offset += 7
    end
    
    Attacker->>CANbus: Quadro de estouro final (DLC=8)
    CANbus->>PX4: memcpy(dest+offset, payload, 7)
    PX4->>PX4: offset > 48 → ESTOURO DE PILHA
    PX4-->>PX4: Travamento (segfault / hard fault)
    Note over PX4: Negação de Serviço

Versões Vulneráveis e Corrigidas

  • Afetadas: Versões do PX4‑Autopilot ≤ 1.17.0‑rc1 com o driver tattu_can habilitado
  • Corrigidas: PX4‑Autopilot ≥ 1.17.0‑rc2 (commit 3f04b7a)

Requisitos

  • Python 3 com a biblioteca python-can
  • Linux com suporte a SocketCAN (a maioria das distribuições)
  • Privilégios de root (CAP_NET_RAW) para enviar quadros CAN brutos
  • Uma interface CAN (física can0 ou virtual vcan0)

Instalação

root@kitploit:~
# Clonar o repositório
git clone https://github.com/mbanyamer/CVE-2026-32707-PoC.git
cd CVE-2026-32707-PoC

# Instalar python-can
pip3 install python-can

# (Opcional) Criar uma interface CAN virtual para testes
sudo ip link add dev vcan0 type vcan
sudo ip link set up vcan0

Uso

root@kitploit:~
sudo python3 exploit.py <interface_can>

Exemplo

root@kitploit:~
# Explorar via interface CAN virtual (para simulação/testes)
sudo python3 exploit.py vcan0

# Explorar via barramento CAN físico
sudo python3 exploit.py can0

Como o Exploit Funciona

  1. Quadro de início de transferência – O primeiro quadro CAN (DLC=8) tem seu último byte definido como 0x80, o que sinaliza ao driver para começar a montar uma nova Tattu12SBatteryMessage e copia os primeiros 5 bytes para o buffer da pilha.
  2. Quadros de estouro – Sete quadros CAN subsequentes (cada um com DLC=8) são enviados. O driver copia 7 bytes por quadro (DLC‑1) para o buffer a partir do deslocamento 5. Após o 7º quadro, o deslocamento acumulado excede 48 bytes.
  3. Acionamento final – Um quadro extra aciona o último memcpy() que escreve além do limite do buffer, corrompendo o quadro da pilha.
  4. Resultado – O processo PX4 trava (falha de segmentação ou hard fault). Em um controlador de voo real, isso leva a uma negação de serviço (perda de controle).

Saída Esperada

root@kitploit:~
[*] Enviando quadro de início de transferência em vcan0 (can_id=0x00000123)
[*] Enviando 7 quadros de estouro (cada um copia 7 bytes)...
[*] Enviando quadro de estouro final...
[+] Sequência de ataque concluída. O driver tattu_can do PX4 deve travar agora.

Mitigação

  • Atualize o PX4‑Autopilot para a versão 1.17.0‑rc2 ou posterior.
  • Desabilite o driver tattu_can se não for necessário (tattu_can stop ou remova da compilação).
  • Aplique o patch manualmente (verificação de limites adicionada no commit 3f04b7a):
root@kitploit:~
while (receive(&received_frame) > 0) {
+   if (received_frame.payload_size == 0) {
+       break;
+   }
    size_t payload_size = received_frame.payload_size - 1;
-   // TODO: add check ...
+   if (offset + payload_size > sizeof(tattu_message)) {
+       break;
+   }
    memcpy(((char *)&tattu_message) + offset, received_frame.payload, payload_size);
    offset += payload_size;
}

Referências

  • Aviso de Segurança do GitHub GHSA-wxwm-xmx9-hr32
  • Commit de correção 3f04b7a
  • Arquivo fonte vulnerável (antes da correção)
  • Entrada CVE-2026-32707 (NVD)

Créditos

  • Descobridor e Autor do PoC – Mohammed Idrees Banyamer
  • País – Jordânia 🇯🇴
  • Instagram – @banyamer_security
  • GitHub – mbanyamer

Aviso Legal

Esta prova‑de‑conceito é fornecida apenas para fins educacionais e de teste de segurança. Use‑a somente em sistemas que você possui ou para os quais tenha permissão explícita de teste. O autor não é responsável por qualquer uso indevido ou dano causado por este código.

Baixar ferramenta