Computer Forensics.DK Sidste opdatering: 4.februar 2006
hjem | computer forensics | incident response | electronic discovery | programmer | knowledge base | links | rootkits | mig | sitemap | kontakt

                                           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.

 
Copyright © 2004-2008 Computerforensics.DK