Aula 4 - GIAFD - Identificação
Aula 4 - GIAFD - Identificação
Aula 4 - GIAFD - Identificação
Fase 2 – Identificação
GESTÃO DE INCIDENTES E ANÁLISE FORENSE DIGITAL
J O Ã O FA R I N H A
J FA R I N H A @ G M A I L .C O M
1
Gestão de Incidentes
PICERL
2
Gestão de Incidentes
PICERL
3
Aspetos práticos na fase de Identificação
◦ Acessos privilegiados
◦ Tip: Conta de administrador de domínio específica para resposta a incidentes
4
Kape - Kroll Artifact Parser and Extractor (KAPE)
5
Kape - Kroll Artifact Parser and Extractor (KAPE)
https://github.com/EricZimmerman/KapeFiles
Uma imagem de triagem consegue capturar mais de 90% dos artefactos necessários
◦ RoboCopy / Xcopy
◦ FTK Imager – Custom Content Images
◦ CyLR – Scriptable, no Read Only Container, limited post collection processing
6
Kape - Kroll Artifact Parser and Extractor (KAPE)
7
Kape - Kroll Artifact Parser and Extractor (KAPE)
KAPE divide-se em duas partes:
◦ Targets
◦ Modules
8
Kape - Kroll Artifact Parser and Extractor (KAPE)
Workflow básico:
1. Selecionar um target que recolha a
informação pretendida, por ex.:
- !BasicCollection
- !SANS_Triage
(nota: estes dois targets vão recolher
informação que poderá não ser
necessária para cada investigação em
específico, mas é preferível recolher a
mais do que a menos)
9
Kape - Kroll Artifact Parser and Extractor (KAPE)
Workflow básico:
2. Selecionar um módulo que processe
a informação (por exemplo, event
logs):
- !EZParser
- EvtxECmd
- EvtxECmd_RDP
10
Kape - Kroll Artifact Parser and Extractor (KAPE)
11
Kape - Kroll Artifact Parser and Extractor (KAPE)
12
Kape - Kroll Artifact Parser and Extractor (KAPE)
O pós-processamento poderá ser feito com outras ferramentas
◦ O output é normalmente obtido no formato CSV
◦ Sugestões
◦ Excel
◦ Timeline Explorer (https://ericzimmerman.github.io/#!index.md)
13
14
Velociraptor
https://docs.velociraptor.app/training/
15
Velociraptor
Utilização:
◦ Coletar informação de triagem em multiplos dispositivos em simultâneo
◦ Arquitetura eficiente e escalável
16
Velociraptor + Kape !
17
18
Exercício
EvtxECmd.exe + Timeline Explorer
(https://ericzimmerman.github.io/#!index.md)
19
Dúvidas?
20
Processo de Gestão de Incidentes
Fase 2 – Identificação – Event Logs
GESTÃO DE INCIDENTES E ANÁLISE FORENSE DIGITAL
J O Ã O FA R I N H A
J FA R I N H A @ G M A I L .C O M
21
Gestão de Incidentes
PICERL
22
Análise de Event Logs para Incident Responders
Onde encontrar event logs:
◦ NT / Win2000 / XP / Server 2003
◦ Tipo de ficheiro: .evt
◦ %systemroot%\System32\config
◦ SecEvent.evt, AppEvent.evt, SysEvent.evt
23
Tipos de Event Logs
Security • Controlo de Acessos e configurações de segurança
• Eventos baseados em políticas de audit e group policies
• Exemplos: Failed Logon; acesso a pastas; Login
privilegiado
System • Contém eventos relacionados com serviços Windows,
componentes de sistema, drivers, recursos, etc
• Exemplo: Serviço parado; reboot de sistema
Application • Eventos de software que não estejam relacionados com
o sistema operativo
• Exemplo: Erro num servidor SQL a aceder a uma base de
dados
Custom • Logs customizados de aplicações
• Exemplos: Task Scheduler, Terminal Services, Powershell,
WMI, Firewall, DNS, RDP
24
Tipos de Event Logs
https://www.ultimatewindowssecurity.com/securitylog/encyclopedia/
25
Definições recomendadas para Event Logs
26
Sysmon (ou o subsistema de logging que o Windows deveria ter)
https://learn.microsoft.com/en-us/sysinternals/downloads/Sysmon
https://github.com/SwiftOnSecurity/sysmon-config
https://github.com/trustedsec/SysmonCommunityGuide
Instalação (usar direitos de administrador)
sysmon.exe -accepteula -i sysmonconfig-export.xml
Atualização das configurações (usar direitos de administrador)
sysmon.exe -c sysmonconfig-export.xml
Desinstalação (usar direitos de administrador)
sysmon.exe -u
27
Security Log
◦É o log mais analisado durante resposta a incidentes
◦ Autenticação de utilizadores
◦ Logons
◦ Comportamento de utilizadores
◦ Acesso a ficheiros, pastas, partilhas
◦ Alteração de configurações de segurança
◦Pode auditar-se sucesso e falha (ex. login bem sucedido e login
falhado)
◦Só é atualizado pelo processo LSASS (outras aplicações não podem
inserir eventos neste log file)
28
Security Log - Categorias
Account Logon Os eventos são guardados no sistema que autorizou o logon (ou seja, no
Controlador de Domínio para domínios, ou no sistema local para contas que não
são de domínio)
Account Management Manutenção de contas e modificações (novas contas, alteração de passwords,
bloqueio de contas, alterações de grupos, etc)
Directory Service Acesso a objectos de uma Active Directory
Logon events Cada instância de logon/logoff no sistema local – é diferente de Account Logon,
neste caso é relativa ao sistema que está a registar os eventos
Acesso a objetos Acesso a objetos numa Access Control List (SACL) - ficheiros, pastas, entradas de
registry, impressoras, etc
Alteração de políticas Alteração de privilégios de utilizador, audit policies, relações de confiança
Utilização de privilégios Cada caso de uma conta a exercer um privilégio de utilizador
Tracking de processos Arranque de processo, saída de um processo, handles, etc
Eventos de sistema Arranque e shutdown do sistema; ações que afetem o security log
29
Cenários de Análise
◦Identificar a utilização de contas de utilizador
◦Identificar movimentação lateral
◦Serviços suspeitos
◦Instalação de aplicações
◦Limpeza do Event Log
◦Execução de processos
◦Capturar linha de comandos e scripts
30
Cenários de Análise – Identificar a utilização de contas de utilizador
◦ Cenário
◦ Determinar que contas foram utilizadas para tentativas de logon
◦ Identificar utilização de contas que sabemos ter sido comprometidas
◦ Event IDs relevantes
◦ 4624: Successul Logon
◦ 4625: Failed Logon
◦ 4634/4647: Successful Logoff
◦ 4648: Logon using explicit credentials (RunAs)
◦ 4672: Account logon with superuser rights (Administrator)
◦ 4720 / 4726: An account was created / deleted
◦ Notas
◦ A descrição do evento inclui uma visão mais detalhada da informação de logon
◦ O Windows não regista logoffs de forma fiável (ID 4634), por isso procurar também ID 4647 -> user initiated logoff
para logons interativos
◦ Não são registados eventos de logon quando é utilizado malware para aceder a um Sistema (por exemplo Beacon
Cobalt Strike)
31
Cenários de Análise – Identificar a utilização de contas de utilizador
• Logon Type
• Timestamp
• EventID
• Computer
32
Cenários de Análise – Identificar a utilização de contas de utilizador
• Conta
• Domínio (ou hostname se for
conta local)
• IP de origem (RDP)
33
Cenários de Análise – Identificar a utilização de contas de utilizador
Códigos de Logon:
2 - Log on via console (keyboard, server KVM, or virtual client)
3 - Network logon (SMB)
4 - Batch Logon —Often used by Scheduled Tasks
5 - Windows Service Logon
7 - Credentials used to lock or unlock screen; RDP session reconnect
8 - Network logon sending credentials in cleartext
9 - Different credentials used than logged on user —RunAs/netonly
10 - Remote interactive logon (Remote Desktop Protocol)
11 - Cached credentials used to log on
12 - Cached Remote Interactive (similar to Type 10)
13 - Cached unlock (similar to Type 7)
34
Cenários de Análise – Identificar a utilização de contas de utilizador
O campo Logon ID pode ser utilizado para
correlacionar um logon com um logoff
35
Cenários de Análise – Identificar a utilização de contas de utilizador
Por vezes vemos atividade de contas built in no Windows:
SYSTEM Conta local mais poderosa; Dá acesso ilimitado ao sistema. Até ao Windows 2003, era a conta primária
para todas as ações não geradas pelo utilizador (não obedecia ao princípio do ”Least Privilege”)
LOCAL SERVICE Privilégios limitados, semelhantes aos da conta de utilizador autenticada; só pode aceder a recursos
de rede que permitam “null sessions”
NETWORK Semelhante ao LOCAL SERVICE, mas com privilégios ligeiramente mais elevados, que permitem
SERVICE impersonar contas de computador e autenticar na rede. É atribuído a processos que necessitem
acesso à rede
<Hostname>$ Todas as máquinas Windows têm uma conta de computador. É a forma da máquina se autenticar para
aceder a recursos de rede (Active Directory, por exemplo).
DWM Conta associada ao Windows Manager, ou seja, a utilizadores com login interativo na máquina (acesso
no teclado ou por RDP)
ANONYMOUS Conta utilizada por motivos históricos para aceder a recursos que não necessitam de autenticação (por
LOGON exemplo enumerar shares de rede ou impressoras). Não significa que o sistema esteja sob um ataque)
36
Cenários de Análise – Identificar a utilização de contas de utilizador
Login de contas privilegiadas EventID 4672:
Login bem sucedido com uma conta que tem privilégios de administrador
37
Cenários de Análise – Remote Desktop Protocol
◦ Cenário
◦ Identificar sessões de Remote Desktop
◦ Event IDs relevantes
◦ 4778: Session reconnected
◦ 4779: Session disconnected
◦ Notas
◦ Regista o hostname e IP da máquina remota que está a fazer a ligação (enviada pela aplicação RDP)
◦ Não é um indicador fiável de toda a atividade de RDP – é destinado a registar os ”reconnects”
◦ Os logs auxiliares Remote Desktop Services-RDPCoreTS e TerminalServices-RdpClient
registam mais informação importante
38
Cenários de Análise – Identificar movimentação lateral: Shares de rede
◦ Cenário
◦ Auditar atividade relacionada com shares de rede
◦ Event IDs relevantes
◦ 5140: Network share was accessed
◦ 5145: Shared object accessed (Detailed File Share auditing)
◦ Notas
◦ Identifica o nome da share e o endereço IP da máquina remota que está a fazer a ligação
◦ O account name e Logon ID permitem identificar a conta e as atividades relevantes durante essa sessão
◦ A opção “Audit File Share" tem de ser ativada (Advanced Audit Policy Configuration: Object Access)
◦ Os event IDs 5142-5144 registam a criação, modificação e eliminação de shares
◦ A opção “Audit Detailed File Share” (Event ID 5145) fornece detalhes sobre ficheiros individuais que foram
acedidos, mas pode ser muito ruidoso
39
Cenários de Análise – Identificar movimentação lateral: Shares de rede
https://imphash.medium.com/detecting-lateral-movement-101-tracking-movement-smb-windows-
admin-shares-through-windows-log-6005e3ba6980
40
Cenários de Análise – Identificar movimentação lateral: Scheduled Tasks
◦ Cenário
◦ Auditar tarefas agendadas (scheduled tasks)
◦ Event IDs relevantes
◦ 106 | 4698: Scheduled Task Created (Security Log)
◦ 140 | 4702: Scheduled Task Updated (Security Log)
◦ 141 | 4699: Scheduled Task Deleted (Security Log)
◦ 200 / 201: Scheduled Task executed / completed (Task Scheduler Log)
◦ 4700 / 4701: Scheduled Task enabled / disabled (Security Log)
◦ Notas
◦ As scheduled tasks podem ser executadas localmente e remotamente
◦ As scheduled tasks remotas também geram um evento 4624 Type 3
◦ Os ficheiros de configuração das tarefas (xml) estão localizados em \Windows\System32\Tasks
41
Cenários de Análise – Serviços suspeitos
◦ Cenário
◦ Analisar logs para identificar serviços suspeitos que corram no arranque da máquina
◦ Rever serviços que tenham arrancado ou parado durante o período suspeito do ataque
◦ Event IDs relevantes
◦ 7034: Service crashed unexpectedly
◦ 7035: Service sent a start/stop control
◦ 7036: Service started or stopped
◦ 7040: Start type changed
◦ 7045: A new service was installed on the system (Win2008R2+)
◦ 4697: A new service was installed on the system (Security Log)
◦ Notas
◦ Todos os eventos (excepto o 4697) são guardados no log System
◦ Um grande número de malware e worms utilizam Serviços para correr ou assegurar persistência
◦ Serviços que iniciem no arranque da máquina demonstram persistência
◦ Serviços podem “crashar” devido a ataques do tipo “process injection”
42
Cenários de Análise – Event Log Clearing
◦Cenário
◦ Determinar se os logs foram modificados ou apagados
◦Event IDs relevantes
◦ 1102: Audit log cleared (Security log)
◦ 104: Audit log cleared (System log)
◦Notas
◦ Requer privilégios de administração
◦ É um evento “tudo ou nada” (mas há ataques seletivos, que não são registados por
estes Event IDs - DanderSpritz)
◦ Depois da limpeza do log de segurança, é colocado o evento 1102
◦ Para qualquer outro log que seja limpo, é colocado o evento 104 no System log
43
Cenários de Análise – Execução de Processos
◦Cenário
◦ Identificar a execução de malware e registar a linha de comandos usada para lançar um
processo (inclui cmd.exe e powershell.exe)
◦Event IDs relevantes
◦ 4688: New process created (Security log)
◦ 4689: Process exit (Security log)
◦Notas
◦ Disponível a partir do Windows 7
◦ Regista a conta de utilizador, informação sobre o processo e a linha de comandos
completa
◦ Não está ativado por omissão no Windows (Computer Configuration > Policies >
Windows Settings > Security Settings > Advanced Audit Configuration > Detailed
Tracking e “Include command line in process creation events”)
44
Cenários de Análise – Execução de Processos
• Timestamp
• Utilizador
• Processo
• Parent Process
• Linha de comandos
45
46
Cenários de Análise – Powershell
◦Cenário
◦ Atividade de PowerShell que inclui o output do pipeline, conteúdo de scripts executados
por um utilizador, e PowerShell remoting
◦Event IDs relevantes
◦ 4103: Module logging and pipeline output
◦ 4104: Script block logging
◦ 4105/4106: Script start/stop (não recomendado)
◦Notas
◦ Logs Powershell/Operational, Windows Powershell.evtx e WinRM/Operational
◦ A informação “útil” existe a partir da versão 5 do Powershell
◦ É possível a um atacante contornar logging forçando a utilização de Powershell v2:
◦ “powershell -Version 2 -Command <..>”
◦ https://www.leeholmes.com/detecting-and-preventing-powershell-downgrade-attacks/
47
Dúvidas?
48