PhantomBuffer: Evasão Eficaz de EDR por Meio de Injeção Furtiva

Uma nova técnica, PhantomBuffer, permite a injeção furtiva de payload em um processo alvo sem depender das APIs bem conhecidas — WriteProcessMemory e VirtualAllocEx. Em vez disso, ela utiliza mecanismos legítimos do Windows para ocultar a atividade de injeção.
Por que funciona
  1. Entrega de payload sem WriteProcessMemory. Em vez de gravar na memória, ela usa SendMessageW com a mensagem WM_SETTEXT. O payload é enviado como texto para um controle de edição (por exemplo, no Notepad no Windows 10 ou no regedit.exe no Windows 11), e o sistema o copia para a memória do processo alvo.
  2. Sequestro do fluxo de execução por meio de um depurador legítimo. Em vez de usar APIs suspeitas como SetThreadContext, ela utiliza o cdb.exe, um depurador incluído nas Windows Debugger Tools. Ele se anexa ao processo e define o registrador do ponteiro de instrução (RIP) para o endereço do payload. Como depuradores são ferramentas legítimas de desenvolvedor, seu uso pode parecer menos suspeito.
O PoC consiste em dois utilitários: • FindTargetWindows.exe — procura processos GUI com controles de entrada adequados. Se nenhum for encontrado, ele pode iniciar um processo adequado. • PhantomBuffer.exe — a ferramenta principal, que entrega o payload, localiza-o na memória e redireciona a execução de uma thread para ele usando cdb.exe.
Limitações: • É necessário um controle de entrada adequado. A técnica não funcionará sem um processo alvo contendo um controle GUI apropriado. • O problema do byte nulo. Payloads contendo dois bytes nulos consecutivos (0x00 0x00) podem não ser gravados corretamente no processo alvo, pois a transmissão baseada em texto pode truncar os dados. • Caminho do depurador. Algumas ferramentas de segurança podem sinalizar cdb.exe se ele for iniciado de um local não padrão. Usar o caminho de instalação padrão das Windows Debugger Tools pode reduzir a suspeita.
Fornecedor
Produto
Mais