09-windows
-
Upload
clayton-santos -
Category
Documents
-
view
217 -
download
3
description
Transcript of 09-windows
Análise forense
Sessão de aprendizagem 9
Análise forense avançada em
Windows
Sumário
Análise forense avançada em Windows
Coleta de informações básicas
Processos
Bibliotecas do sistema
Informações sobre arquivos abertos
Serviços em execução
Análise forense avançada em Windows
Windows tem características que tornam mais complexa a coleta de evidências
Mesmo assim, as técnicas vistas até agora continuam valendo:
Informações básicas sobre o sistema
Identificação e coleta de processos em execução
Informações sobre bibliotecas em uso
Serviços
Coleta de informações básicas
Informações sobre o sistema
D:\IR\xp> uptime�
18:38:20 up 3:58, 0 users, load average: 0.00, 0.00, 0.00
D:\IR\xp> hostname�
Computador
D:\IR\xp> whoami�
Usuario
Coleta de informações básicas
Informações sobre o sistema
D:\IR\xp> psgetsid�
SID for \\COMPUTADOR:
S-1-5-21-4042056708-2335835806-3410500470
D:\IR\xp> psgetsid Usuario�
SID for COMPUTADOR\Usuario:
S-1-5-21-4042056708-2335835806-3410500470-1006
Coleta de informações básicas
Informações sobre o sistemaD:\IR\xp> psloggedon�
Users logged on locally:
Error: could not retrieve logon time
NT AUTHORITY\LOCAL SERVICE
Error: could not retrieve logon time
NT AUTHORITY\NETWORK SERVICE
29/1/2008 14:40:10 COMPUTADOR\Usuario
Error: could not retrieve logon time
NT AUTHORITY\SYSTEM
No one is logged on via resource shares.
Coleta de informações básicas
Informações sobre o sistemaD:\IR\xp> logonsessions�
[2] Logon session 00000000:00018df7:
User name: COMPUTADOR\Usuario
Auth package: NTLM
Logon type: Interactive
Session: 0
Sid: S-1-5-21-4042056708-2335835806-
3410500470-1006
Logon time: 29/1/2008 14:40:08
Logon server: COMPUTADOR
DNS Domain:
UPN:
Coleta de informações básicas
Informações sobre o sistema
D:\IR\xp> net users�
User accounts for \\COMPUTADOR
__vmware_user__ Administrator ASPNET
curso Guest HelpAssistant
Usuario SUPPORT_12312331
D:\IR\xp> userdump \\COMPUTADOR usuario�
Querying Controller \\COMPUTADOR
Privs: Admin Privs
OperatorPrivs: No explicit OP Privs
Password age: Tue Jan 29 21:43:33 2008
LastLogon: Fri Jul 20 19:40:29 2007
LastLogoff: Thu Jan 01 00:00:00 1970
Acct Expires: Never
Coleta de informações básicas
Informações sobre o sistema
D:\IR\xp> ntfsinfo c:�
Allocation Size
----------------
Bytes per sector : 512
Bytes per cluster : 4096
Bytes per MFT record : 1024
Clusters per MFT record: 0
MFT Information
---------------
MFT size : 176 MB (0% of drive)
MFT start cluster : 6
MFT zone clusters : 5656576 - 5676928
MFT zone size : 79 MB (0% of drive)
MFT mirror start : 629425
Meta-Data files
---------------
Coleta de informações básicas
Informações sobre o sistema
D:\IR\xp> mem�
655360 bytes total conventional memory
655360 bytes available to MS-DOS
598160 largest executable program size
1048576 bytes total contiguous extended memory
0 bytes available contiguous extended memory
941056 bytes available XMS memory
MS-DOS resident in High Memory Area
Coleta de informações básicas
Informações sobre o sistema
D:\IR\xp> psinfo�
System information for \\COMPUTADOR:
Uptime: 0 days 4 hours 56 minutes 29 seconds
Kernel version: Microsoft Windows XP, Uniprocessor Free
Product type: Professional
Product version: 5.1
Service pack: 2
Kernel build number: 2600
Registered organization:
Registered owner: Usuario
Install date: 18/10/2005, 19:19:17
Activation status: Error reading status
IE version: 7.0000
System root: C:\WINDOWS
Physical memory: 1022 MB
Processos em execução no sistema
D:\IR\xp> ps -a -W�
PID PPID PGID WINPID TTY UID STIME COMMAND
4 0 0 4 ? 0 16:24:48 *** unknown ***
944 0 0 944 ? 0 14:39:48 \SystemRoot\System32\smss.exe
1068 0 0 1068 ? 0 14:39:58 \??\C:\WINDOWS\system32\winlogon.exe
1112 0 0 1112 ? 0 14:39:58 C:\WINDOWS\system32\services.exe
1124 0 0 1124 ? 0 14:39:58 C:\WINDOWS\system32\lsass.exe
1272 0 0 1272 ? 0 14:39:59 C:\WINDOWS\system32\Ati2evxx.exe
1284 0 0 1284 ? 0 14:39:59 C:\WINDOWS\system32\svchost.exe
…
Processos em execução no sistema
Necessidade de descobrir o caminho completo do executável
Programas maliciosos se disfarçam como executáveis válidos
Se você observar os processos msmgs.exe ou scvhost.exe, vai identificá-los como maliciosos?
É importante conhecer os processos mais comuns em sistemas Windows
Processos em execução no sistema
Processo Descrição Pode ser terminado pelo Gerenciador de tarefas?
Alg.exe Application Layer Gateway Service, serviço relacionado com o firewall do Windows.
Sim
csrss.exe client/server run-time subsystem Não
explorer.exe Interface do usuário. Sim
internet.exe Executado na inicialização, permite a troca de configuração do teclado e aparece como ícone no System Tray.
Sim
lsass.exe Local security authentication server Não
mstask.exe Task scheduler service Não
smss.exe Session manager subsystem, responsável por iniciar a sessão do usuário. Não
spoolsv.exe Spooler service, responsável pela fila de impressão. Não
svchost.exe Generic Service Process, atua como host para outros processos executados por dlls; normalmente existe em mais de uma instância. É utilizado também para executar serviços de rede.
Não
services.exe Services Control Manager, responsável por iniciar e terminar serviços do sistema.
Não
system System kernel-mode threads Não
system idle process
Processo que contabiliza o processamento disponível no sistema, normalmente ocupando a maioria do processamento disponível (99%).
Não
taskmgr.exe Gerenciador de tarefas Sim
winlogon.exe Responsável pelo processo de login/logout do usuário. Não
Processos em execução no sistema
Processos em execução no sistema
D:\IR\xp> pslist�
Process information for COMPUTADOR:
Name Pid Pri Thd Hnd Priv CPU Time Elapsed Time
Idle 0 0 1 0 0 5:22:42.671 0:00:00.000
System 4 8 68 645 0 0:01:50.234 0:00:00.000
smss 944 11 3 21 168 0:00:00.015 6:18:01.531
csrss 1040 13 13 747 2004 0:00:53.640 6:17:55.000
winlogon 1068 13 22 448 6388 0:00:00.937 6:17:52.234
services 1112 9 15 337 1996 0:00:10.515 6:17:52.046
lsass 1124 9 21 461 5868 0:00:05.187 6:17:52.031
ati2evxx 1272 8 5 71 796 0:00:00.343 6:17:51.218
svchost 1284 8 18 220 3384 0:00:00.203 6:17:51.203
...
Processos em execução no sistema
D:\IR\xp> ..\diamondcs\cmdline.exe�
DiamondCS Commandline Retrieval Tool for Windows NT4/2K/XP
944 - \SystemRoot\System32\smss.exe <Error> Unable to read memory
from PID 944
1040 - \??\C:\WINDOWS\system32\csrss.exe
C:\WINDOWS\system32\csrss.exe ObjectDirectory=\Windows
SharedSection=1024,3072,512 Windows=On SubSystemType=Windows
ServerDll=basesrv,1
ServerDll=winsrv:UserServerDllInitialization,3
ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off
MaxRequestThreads=16
1068 - \??\C:\WINDOWS\system32\winlogon.exe winlogon.exe
1112 - C:\WINDOWS\system32\services.exe
C:\WINDOWS\system32\services.exe
1124 - C:\WINDOWS\system32\lsass.exe C:\WINDOWS\system32\lsass.exe
1272 - C:\WINDOWS\system32\Ati2evxx.exe
Processos em execução no sistema
Processos em execução no sistema
É necessário comparar diversas ferramentas, pois alguns programas maliciosos escondem informações do Windows
Rootkits usam essa técnica
Inconsistências entre duas ferramentas podem ser a indicação de um rootkit
É sempre útil ter disponível uma ferramenta anti-rootkit
Processos em execução no sistema
Bibliotecas do sistema
Windows utiliza bibliotecas compartilhadas,conhecidas como Dinamic Link Library (DLL)
Normalmente ficam armazenadas no diretório C:\WINDOWS\SYSTEM32
Pode ser um problema quando bibliotecas comprometidas são utilizadas para modificar a forma de funcionamento de um processo, comprometendo o sistema
Um exemplo desse tipo de ataque é a injeção de código no Internet Explorer, através da exploração de alguma falha do programa
Bibliotecas do sistema
D:\IR\xp> listdlls wordpad�
wordpad.exe pid: 676
Command line: "C:\Program Files\Windows NT\Accessories\wordpad.exe"
Base Size Version Path
0x01000000 0x37000 5.01.2600.2180 C:\Program Files\Windows
NT\Accessories\wordpad.exe
0x7c900000 0xb0000 5.01.2600.2180 C:\WINDOWS\system32\ntdll.dll
0x7c800000 0xf5000 5.01.2600.3119 C:\WINDOWS\system32\kernel32.dll
0x5f800000 0xf2000 6.02.8071.0000 C:\WINDOWS\system32\MFC42u.DLL
0x77c10000 0x58000 7.00.2600.2180 C:\WINDOWS\system32\msvcrt.dll
0x77f10000 0x47000 5.01.2600.3159 C:\WINDOWS\system32\GDI32.dll
0x7e410000 0x90000 5.01.2600.3099 C:\WINDOWS\system32\USER32.dll
…
Bibliotecas do sistema
D:\IR\xp> ..\winfingerprint\procinterrogate -pid 676�
ProcInterrogate Version 0.0.1 by Kirby Kuehl [email protected]
wordpad.exe (Process ID: 676)
Entry Point Base Size Module
0x01019B4D 0x01000000 00037000 C:\Program Files\Windows
NT\Accessories\wordpad.exe
0x7C913156 0x7C900000 000B0000 C:\WINDOWS\system32\ntdll.dll
0x7C80B5AE 0x7C800000 000F5000 C:\WINDOWS\system32\kernel32.dll
0x5F806A61 0x5F800000 000F2000 C:\WINDOWS\system32\MFC42u.DLL
0x77C1F2A1 0x77C10000 00058000 C:\WINDOWS\system32\msvcrt.dll
0x77F16597 0x77F10000 00047000 C:\WINDOWS\system32\GDI32.dll
0x7E42E966 0x7E410000 00090000 C:\WINDOWS\system32\USER32.dll
0x77DD70D4 0x77DD0000 0009B000 C:\WINDOWS\system32\ADVAPI32.dll
…
Bibliotecas do sistema
Informações sobre arquivos abertos
Arquivos abertos
D:\IR\xp> handle -a -u wordpad�
csrss.exe pid: 1040 NT AUTHORITY\SYSTEM 730: wordpad.exe(676): 1684
csrss.exe pid: 1040 NT AUTHORITY\SYSTEM 8A0: wordpad.exe(676): 3428
csrss.exe pid: 1040 NT AUTHORITY\SYSTEM AD0: wordpad.exe(676)
lsass.exe pid: 1124 NT AUTHORITY\SYSTEM 69C: wordpad.exe(676)
svchost.exe pid: 1576 NT AUTHORITY\SYSTEM 1390: wordpad.exe(676)
cmdagent.exe pid: 380 NT AUTHORITY\SYSTEM 4DC: wordpad.exe(676)
wordpad.exe pid: 676 COMPUTADOR\Usuario 60:
HKCU\Software\Microsoft\Windows\ CurrentVersion\Applets\Wordpad
wordpad.exe pid: 676 COMPUTADOR\Usuario 84: wordpad.exe(676): 2812
wordpad.exe pid: 676 COMPUTADOR\Usuario 14C: wordpad.exe(676): 1684
wordpad.exe pid: 676 COMPUTADOR\usuario 168: wordpad.exe(676): 3428
Informações sobre arquivos abertos
Serviços em execução
Serviços são programas iniciados pelo sistema operacional
Funções:
Oferecer algum tipo de serviço aos usuários
Controlar algum tipo de acesso aos dispositivos
conectados
Por exemplo, o compartilhamento de arquivos em rede é controlado pelo serviço “Servidor” e as conexões com uma câmera digital ou celular são feitas pelos respectivos serviços instalados pelos drivers de dispositivo
Serviços em execução
D:\IR\xp> net start�
These Windows services are started:
Ad-Aware 2007 Service
Adobe LM Service
Application Layer Gateway Service
Ati HotKey Poller
Automatic Updates
avast! Antivirus
avast! iAVS4 Control Service
Background Intelligent Transfer Service
…
Serviços em execução
D:\IR\xp> servicelist \\COMPUTADOR�
ServiceList v1.0 Copyright 1999 www.NetLatency.com
Service Name Stats
Alerter Display Name: Alerter
State: Stopped
Type: Windows Shared Process
Controls: UNKNOWN #0
ALG Display Name: Application Layer Gateway Service
State: Running
Type: Windows Own Process
Controls: START
STOP
aswUpdSv Display Name: avast! iAVS4 Control Service
State: Running
Type: Windows Own Process
Desktop Interactive Process
Controls: START
STOP
SYSTEM SHUTDOWN
Serviços em execução
D:\IR\xp> psservice /?�
PsService lists or controls services on a local or remote system.
Usage: psservice [\\Computer [-u Username [-p Password]]] <cmd> <optns>
Cmd is one of the following:
query Queries the status of a service
config Queries the configuration
setconfig Sets the configuration
start Starts a service
stop Stops a service
restart Stops and then restarts a service
pause Pauses a service
cont Continues a paused service
depend Enumerates the services that depend on the one specified
find Searches for an instance of a service on the network
security Reports the security permissions assigned to a service
Serviços em execução
Inicialização do sistema
Diversas configurações do Windows permitem iniciar programas junto com o sistema
O registro é um conjunto de configurações do sistema
Alguns programas podem ser iniciados antes de qualquer antivírus ou firewall
Serviços em execução
D:\IR\xp> reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run�
Listing of [Software\Microsoft\Windows\CurrentVersion\\Run]
REG_SZ SynTPLpr C:\Program
Files\Synaptics\SynTP\SynTPLpr.exe
REG_SZ SynTPEnh C:\Program
Files\Synaptics\SynTP\SynTPEnh.exe
REG_SZ eabconfg.cpl C:\Program Files\HPQ\Quick Launch
Buttons\EabServr.exe /Start
REG_SZ DAEMON Tools-1033 "C:\Program Files\D-
Tools\daemon.exe" -lang 1033
REG_SZ Broadcom Wireless Manager UI
C:\WINDOWS\system32\bcmntray
REG_SZ Windows Defender "C:\Program Files\Windows
Defender\MSASCui.exe" -hide
REG_SZ COMODO Firewall Pro "C:\Program
Files\Comodo\Firewall\CPF.exe" /background
REG_SZ avast! C:\PROGRA~1\ALWILS~1\Avast4\ashDisp.exe
Serviços em execução
D:\IR\xp> autorunsc�
Autoruns v8.61 - Autostart program viewer
HKLM\System\CurrentControlSet\Control\Terminal
Server\Wds\rdpwd\StartupPrograms
rdpclip
RDP Clip Monitor
Microsoft Corporation
c:\windows\system32\rdpclip.exe
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit
C:\WINDOWS\system32\userinit.exe
Userinit Logon Application
Microsoft Corporation
c:\windows\system32\userinit.exe
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
SynTPLpr
TouchPad Driver Helper Application
Synaptics, Inc.
c:\program files\synaptics\syntp\syntplpr.exe
Serviços em execução
Serviços em execução
D:\IR\xp> schtasks�
TaskName Next Run Time Status
====================================
AppleSoftwareUpdate 09:42:00, 4/2/2008
MP Scheduled Scan 01:36:00, 30/1/2008
Conclusões
Existem muitas informações que devem ser coletadas em um sistema comprometido
Vimos como coletar informações básicas sobre o sistema, e também como listar e identificar os processos em execução na máquina
As bibliotecas carregadas pelos processos e os arquivos abertos são importantes fontes de informação para auxiliar a investigação
A execução automática de programas é uma informação que também deve ser coletada