|
Grundlæggende incident response undersøgelse
Et eksempel på en indledende undersøgelse af et Windows 2000 system:
For at begrænse
risikoen for at undersøgelsens resultater ændres af
eventuelle
rootkits på systemet, bør
programmerne eksekveres fra CD eller
over netværket fra
en anden maskine, aldrig direkte fra den mistænkte computers harddisk. Alle
efterfølgende kommandoer eksekveres således:

En typisk undersøgelse vil ofte starte med at notere tid
og dato på systemet for at sikre man bl.a. kan sammenholde tider i
logfiler, hvornår filer på systemet er oprettet og ændret
osv. med tiden på systemet. Herudover er gennemgang af evt. logfiler,
for eksempel event- og security loggen, og brugerkonti på
systemet typiske steder at
starte en undersøgelse. Herudover er det ofte oplagt at undersøge hvilke processer
der er aktive på systemet.
Programmet PsList fra Sysinternals lister processer på systemet (Se
programmer for mere information
om de enkelte programmer der benyttes til undersøgelsen her på siden):

Uden øvelse kan det dog være meget vanskeligt umiddelbart at
identificere alle processer. Nedenfor går vi direkte videre til en
undersøgelse af åbne porte på serveren: Microsoft kommandoen "netstat -an" viser alle
de lyttende TCP-
og UDP porte på serveren og kan være et godt sted at starte
med at lede efter tegn på uregelmæssigheder (brug "netstat
-anob" under XP og Server 2003 SP1):
 TCP port 21 ovenfor (0.0.0.0:21) er FTP, port 23 er telnet, 25 mail, 80 web, 110
POP3, 135 NetBios, 143 IMAP, 445 NetBios, 1029 ukendt, 1503 ukendt, 1025
ukendt, UDP 445: Netbios, UDP 31337: ukendt, men standard port
for en række forskellige bagdøre inklusive Back Orifice.
Udfra portlisten ovenfor er der således en lang række porte
der kan have være benyttet til angreb på serveren og som potentielt kan
være aktive hacker programmer.
Portdatabasen sammen med
Google
kan muligvis være med til at identificere ukendte åbne
porte. Man skal dog være meget forsigtig når man bruger Google og lign., da programmer let kan skjules på et system ved at omdøbe angrebsfilerne til kendte
"uskadelige navne" der kan findes på Google.
Udover ukendte programmer og porte bør man derfor søge efter
programmer der er startet i usædvanlige biblioteker så som
"C:\Recycler" og forkerte biblioteker som C:\winnt\" i
stedet for "C:\winnt\system32\". Vær særlig opmærksom på
programmer med navne der minder om kendte programmer, f.eks.
"scvhost.exe" i stedet for "svchost.exe" Programmet OpenPorts fra DiamondCS
med "-fport" giver betydeligt mere detaljeret information
end netstat, bl.a.
vises hele
stien til programmer med åbne porte.
 Vi kan derved se ovenfor at port 1025 tilsyneladende
benyttes af Norton antivirus og at port 110, 21, 25, 80, 143,
23 og 31337 alle stammer fra den samme applikation (nfrbof.exe
- et
simpelt intrusion detection program). Portene 445 og 135 er
normalt NetBios porte, så der er sandsynligvis kun 2
ukendte porte på systemet: 1029 og 1503.
OpenPorts siger at
TCP 1029 er en system port (sandsynligvis
Microsoft task manager der binder til det eksterne netkort
for RPC loopbacks) hvorimod port 1503 er åbnet af
"c:\winnt\system32\WinProcess.exe", et program der ikke
umiddelbart kan identificeres.
Allerede på nuværende tidspunkt er der således udvidet grund til
mistanke om at sikkerheden på systemet kan være kompromitteret
på port 1503, men det er muligt
at foretage yderligere undersøgelser.
Handle fra Sysinternals kan ofte give flere
informationer om de processer man vil undersøge nærmere:


Vi ser ovenfor at ejeren af WinProcess.exe processen er "Administrator", dvs.
programmet der åbnede porten, kører med
rettigheder som "Administrator", ikke SYSTEM eller
en almindelig brugerkonto. Handle programmet viser også hvilke
filer en process åbner. Hvis WinProcess.exe f.eks. sender
data til en logfil, vil den åbne fil blive vist af Handle
programmet. Som ovenfor, hvor man kan se programmet skriver til
filen "C:\hacker.log" :
Programmet
Listdlls fra Sysinternals viser flere nyttige ting,
bl.a.
kommandoen der startede en applikation, og de DLL'er
applikationen benytter:

ListDLLs ovenfor viser således at "WinProcess.exe"
blev startet med
kommandoen "- l -p 1503", den port Netstat og
OpenPorts viste var åben på serveren. Undersøgelsen har
således afsløret
at programmet "Winprocess.exe", der ligger i "C:\winnt\system32" folderen,
lytter på port 1503 og sender data til filen C:\sniffer.log.
Det er nu klart at der er et ukendt program på
systemet og det er tid til at tage stilling til hvad der
skal ske herefter. Det er muligt at foretage anti-virus
scanninger og tests med malware scannere som Ad-Aware og
Spybot for at se om det er et kendt hackerprogram/virus. Man
kan også undersøge sniffer.log for at se hvilken
type data WinProcess.exe sender til filen.
MEN
hvis der er den mindste chance for undersøgelsen skal
udvides til computer forensics er det
tid til at få hænderne væk fra keyboardet NU!
De næste handlinger man foretager på systemet har stor risiko for at
ødelægge spor og potentielt bevismateriale. Hvis ens
virksomhed har en incident response politik bør man derfor
straks følge denne, hvad enten den foreskriver man kontakter
helpdesken, en overordnet, virksomhedens SWAT/Cert-team,
politiets it-støtteenhed eller en ekstern samarbejdspartner.
Hvis man ikke er så heldig at arbejde i en virksomhed med en
incident response politik kan ovenstående liste måske give
inspiration til mulige kontaktpersoner.
Yderligere undersøgelser:
Der findes naturligvis en række forskellige programmer der
kan finde den samme information som ovenfor. F.eks. kan
CmdLine fra Diamondcs vise kommandolinien der
har startet de enkelte processer som ListDLLs ovenfor, her er den enkelte
interessant process udvalgt:

Næste opdatering af denne side bliver en videregående
incident response undersøgelse med bl.a. sammenligninger af
output fra forskellige programmer, søgninger i
registreringsdatabasen samt brug af programmerne netcat, strings, macmatch,
sha256deep, pmdump,
winhex, autopsy
og lads. |