CVE-2026-72018: como o agente de IA da XBOW obteve root no Linux escrevendo 16 bytes zero
Técnicas e Métodos de Ataque2026-10-15, 13:00
Pesquisadores da XBOW descobriram CVE-2026-72018 no kernel do Linux e desenvolveram um exploit funcional de escalada de privilégios local (LPE). O agente de IA realizou a maior parte da pesquisa e do desenvolvimento do exploit, mas a intervenção humana foi necessária em três pontos críticos.
A vulnerabilidade afeta o driver
dibs_loopback, que permite ao SMC-D (Shared Memory Communications – Direct), uma tecnologia de comunicação por memória compartilhada originalmente associada aos mainframes IBM Z, operar sobre loopback em sistemas Linux x86 comuns.Durante o estabelecimento da conexão,
smcd_conn_save_peer_info() lê dmbe_idx e dmbe_size de uma mensagem CLC controlada pelo par e calcula o deslocamento de transmissão:
tx_off = bufsize peer_rmbe_idx
O deslocamento passa por smcd_tx_ism_write() e smc_ism_write() até dibs_lo_move_data(), onde memcpy() escreve em cpu_addr + offset sem verificar os limites do buffer de destino.Como o loopback do SMC-D normalmente envia
dmbe_idx = 0, a XBOW usou nftables NFQUEUE e libnetfilter_queue para interceptar e modificar mensagens CLC Accept/Confirm, incluindo os checksums de pacote necessários.
Isso acionou uma escrita fora dos limites de um cabeçalho CDC de 32 bytes (struct smcd_cdc_msg). Em uma conexão somente de envio, seus 16 bytes finais são confiavelmente zero, dando ao atacante uma primitiva restrita de escrita de zeros em deslocamentos alinhados a 16 KiB.
Por meio de heap grooming, a XBOW posicionou estruturas cred do kernel no caminho de sobrescrita. A escrita de 16 bytes zerou suid, sgid, euid e egid, fazendo o kernel tratar o processo afetado como root. O exploit então usou setresuid(0, 0, 0) para obter um shell root.
Nenhuma divulgação de memória adicional ou vulnerabilidade de suporte foi necessária.O ataque local demonstrado requer
CAP_NET_ADMIN para registrar o UEID necessário para SMC-D e instalar a regra nftables NFQUEUE. Um usuário comum sem privilégios e sem essa capacidade não pode reproduzir o exploit demonstrado conforme descrito.
O exploit teve sucesso em 22 de 100 inicializações separadas do sistema no Ubuntu 24.04 com Linux 7.1.0-rc6 (x86-64). O experimento foi conduzido com todas as mitigações do kernel desabilitadas, portanto essa taxa de sucesso não foi estabelecida para sistemas padrão endurecidos.Qual foi o papel do agente de IA?
A XBOW descobriu e validou independentemente a vulnerabilidade e realizou a maior parte do desenvolvimento do exploit, mas os pesquisadores intervieram três vezes.
Primeiro, o agente abandonou prematuramente a interceptação de pacotes por considerá-la cara demais e concluiu que a exploração local era impossível. Um pesquisador humano o direcionou de volta à abordagem MITM.
Segundo, a XBOW confundiu repetidamente a primitiva restrita de escrita de zeros de 16 bytes do exploit local com uma primitiva de escrita arbitrária mais poderosa de um modelo de ameaça VM-para-VM anterior. O pesquisador insistiu em verificar experimentalmente a primitiva real.
Terceiro, o agente focou em criar uma primitiva mais forte por meio de corrupção de contagem de referências e um possível use-after-free. O pesquisador instruiu-o a buscar LPE usando apenas a escrita de zeros existente; a XBOW então identificou independentemente
cred como alvo e completou o exploit funcional.A vulnerabilidade foi relatada aos desenvolvedores do kernel em 19 de junho de 2026, o patch foi aprovado em 7 de julho e o CVE foi publicado em 17 de agosto.
Vulnerabilidades
Fornecedor
Produto
Mais