Nova Técnica de Ataque 'Fileless' Bypassa Detecções de Segurança com O_TMPFILE
Aprofundamento CEVIU
Aprofundamento
A mais recente técnica de ataque 'fileless' utiliza uma combinação engenhosa de recursos do kernel Linux, a flag O_TMPFILE na chamada open() e a função execveat() com AT_EMPTY_PATH. O O_TMPFILE permite criar um arquivo temporário no sistema de arquivos real (como /tmp), mas sem nunca associar uma entrada de diretório a ele. Isso significa que o arquivo, apesar de existir no disco físico com um inode real, fica invisível para ferramentas que dependem da hierarquia de diretórios, como ls, find e mecanismos de monitoramento como inotify ou fanotify.
Para a execução, o ataque explora o fato de que o kernel recusa a execução de um descritor de arquivo aberto para escrita. A solução é reabrir o inode do payload em modo somente leitura via /proc/self/fd/. Em seguida, a função execveat(AT_EMPTY_PATH) é invocada, recebendo diretamente o descritor de arquivo. Com isso, o kernel carrega e executa o binário ELF sem precisar resolver um caminho de arquivo. O processo em execução aparece em telemetrias como /tmp/#N (deleted), um indicativo comum para arquivos legítimos que foram excluídos após a abertura, o que dificulta ainda mais a detecção baseada em anomalias.
O que mudou
Esta nova técnica representa uma evolução significativa nos métodos de evasão. Pesquisas anteriores, como a do Elastic Security Labs com o FENIX, mapearam até 15 técnicas de execução 'fileless' que abrangiam diversos armazenamentos de dados. Contudo, a combinação específica de O_TMPFILE e execveat(AT_EMPTY_PATH) não estava coberta por essa matriz. Ela burla as detecções atuais focadas em artefatos de memfd_create, que buscam prefixos como memfd: ou identificadores de dispositivo específicos, pois o O_TMPFILE opera através do caminho normal de open() em um sistema de arquivos montado.
Por que isso importa
A capacidade de executar código malicioso sem deixar rastros facilmente detectáveis é um desafio sério para a segurança cibernética. Esta técnica, ao contornar a criação de entradas de diretório e evitar artefatos conhecidos de outras abordagens 'fileless', se torna uma ferramenta potente para atacantes. Sistemas de detecção e resposta (EDRs) que confiam em monitoramento de arquivos, eventos de criação ou padrões de memfd_create serão ineficazes. Isso exige uma reavaliação das estratégias de monitoramento, focando em chamadas de sistema de baixo nível e na correlação de eventos que antes eram considerados normais, como o sufixo (deleted) em processos.
Linha do tempo
Rootkits de Kernel Cegam Ferramentas eBPF e Comprometem a Observabilidade do Sistema
Module Stomping: a técnica que esconde payloads dentro de DLLs legítimas
Nova Técnica SkillCloak Burla Scanners Estáticos em Agentes de IA Maliciosos
Novas Táticas de Evasão de EDR Abusam de Recurso do Windows para Ocultar Ataques
Malware Semântico Desafia Detecção: Novas Abordagens Essenciais
Ataques de Injeção de Dylib no macOS: Uma Ameaça Silenciosa à Segurança
Nova Técnica de Ataque 'Fileless' Bypassa Detecções de Segurança com O_TMPFILE
Perguntas frequentes
O que significa 'fileless' neste contexto de ataque?
No contexto desta técnica, 'fileless' significa que o binário malicioso nunca existe como um arquivo nomeado no disco, ou seja, nunca tem uma entrada de diretório. Embora um inode real seja criado no sistema de arquivos, a ausência de um caminho nomeado impede que ferramentas baseadas em rastreamento de arquivos convencionais o detectem.
Como a flag O_TMPFILE ajuda a ocultar a execução de um ELF?
A flag O_TMPFILE permite criar um inode de arquivo diretamente no superblock de um sistema de arquivos, sem gerar uma entrada de diretório correspondente. Isso torna o arquivo invisível para comandos como ls ou find, e para sistemas de monitoramento como inotify, que dependem da existência de um caminho para o arquivo.
Por que esta técnica de ataque é mais difícil de detectar do que outras execuções 'fileless'?
Esta técnica evita os artefatos específicos que são tipicamente usados para detectar execuções 'fileless' baseadas em memfd_create. Ela opera através do caminho normal de open() em um sistema de arquivos real, e a execução via execveat(AT_EMPTY_PATH) não gera uma string de caminho, confundindo assinaturas de detecção existentes.
Quais são as recomendações para as empresas se protegerem contra este tipo de ataque?
É crucial monitorar chamadas de sistema execveat que utilizam a flag AT_EMPTY_PATH, especialmente em executáveis anônimos que aparecem como /tmp/# (deleted). Além disso, correlacionar esses eventos com renomeações de processo (prctl(PR_SET_NAME)) e carregadores que desvinculam /proc/self/exe pode ajudar a identificar e mitigar a ameaça.
Fontes
- matheuzsecurity.github.iofonte original
- Categoria
- CEVIU Segurança da Informação
- Publicado
- 08 de setembro de 2026
- Editoria
- CEVIU Segurança da Informação

