[PT-BR] T1055 - Process Injection
Plataformas: Linux, macOS, Windows Criado em: 2025-06-04
Descrição
Adversários podem injetar código em processos para evadir defesas baseadas em processo e possivelmente elevar privilégios. Process Injection é um método de execução de código arbitrário no espaço de memória de um processo ativo separado. Executar código no contexto de outro processo pode permitir acesso à memória desse processo, recursos de sistema/rede e, potencialmente, privilégios elevados. A execução via process injection também pode evadir detecção por produtos de segurança, uma vez que a execução fica mascarada sob um processo legítimo.
Existem diversas formas de injetar código em um processo, muitas das quais abusam de funcionalidades legítimas. Essas implementações existem para todos os sistemas operacionais principais, mas são tipicamente específicas para cada plataforma.
Amostras mais sofisticadas podem realizar múltiplas process injections para segmentar módulos e evadir ainda mais a detecção, utilizando named pipes ou outros mecanismos de comunicação entre processos (IPC) como canal de comunicação.
Detalhes
Táticas Relacionadas
defense-evasion, privilege-escalation
Fontes de Dados
Process: Process Access, Process: Process Modification, File: File Modification, Process: Process Metadata, File: File Metadata, Process: OS API Execution, Module: Module Load
Sub-técnicas
T1055.013, T1055.012, T1055.009, T1055.015, T1055.014, T1055.005, T1055.011, T1055.001, T1055.003, T1055.008, T1055.004, T1055.002
Mitigações Recomendadas
M1026 - Privileged Account Management
M1040 - Behavior Prevention on Endpoint
Detecção
Monitorar chamadas de API do Windows indicativas dos diversos tipos de code injection pode gerar uma grande quantidade de dados e pode não ser imediatamente útil para defesa, a menos que coletadas em circunstâncias específicas para sequências conhecidas de chamadas maliciosas, já que o uso benigno dessas APIs é comum e difícil de distinguir de comportamento malicioso. Chamadas de API como CreateRemoteThread
, SuspendThread
/SetThreadContext
/ResumeThread
, QueueUserAPC
/NtQueueApcThread
, e aquelas que modificam memória em outro processo, como VirtualAllocEx
e WriteProcessMemory
, podem ser utilizadas para essa técnica. (Citation: Elastic Process Injection July 2017)
Monitorar eventos de arquivos DLL/PE, especialmente a criação desses arquivos binários e o carregamento de DLLs em processos. Buscar DLLs não reconhecidas ou não normalmente carregadas em processos.
Monitoramento de chamadas específicas no Linux, como a syscall ptrace
, não deve gerar grandes volumes de dados devido à sua natureza especializada e pode ser um método muito eficaz para detectar técnicas comuns de process injection. (Citation: ArtOfMemoryForensics) (Citation: GNU Acct) (Citation: RHEL auditd) (Citation: Chokepoint preload rootkits)
Monitorar a criação e conexão de named pipes (Event IDs 17 e 18) para possíveis indicadores de processos infectados com módulos externos. (Citation: Microsoft Sysmon v6 May 2017)
Analisar o comportamento de processos para identificar se um processo está executando ações que normalmente não executaria, como abrir conexões de rede, ler arquivos ou outras ações suspeitas que possam indicar comportamento pós-comprometimento.
Procedimentos de Resposta
Personalize estes procedimentos para a sua organização:
Detecção:
Adicionar seus métodos de detecção aqui.
Confinamento:
Definir os passos de containment.
Erradicação:
Especificar ações de erradicação.
Recuperação:
Documentar os procedimentos de recuperação.
Referências
GNU Acct - GNU. (2010, February 5). The GNU Accounting Utilities. Acessado em 20 de dezembro de 2017.
Elastic Process Injection July 2017 - Hosseini, A. (2017, July 18). Ten Process Injection Techniques: A Technical Survey Of Common And Trending Process Injection Techniques. Acessado em 7 de dezembro de 2017.
RHEL auditd - Jahoda, M. et al.. (2017, March 14). redhat Security Guide - Chapter 7 - System Auditing. Acessado em 20 de dezembro de 2017.
Microsoft Sysmon v6 May 2017 - Russinovich, M. & Garnier, T. (2017, May 22). Sysmon v6.20. Acessado em 13 de dezembro de 2017.
Chokepoint preload rootkits - stderr. (2014, February 14). Detecting Userland Preload Rootkits. Acessado em 20 de dezembro de 2017.
Isto foi útil?