Malware Discovery og Utvinning fra en Linux System
Ansette en metodisk tilnærming til undersøke områder av kompromitterte systemet som er mest sannsynlig å inneholde spor av malware installasjon og bruk øker sjansene for at alle spor av et kompromiss vil bli avdekket, spesielt når utført med tilbakemeldinger fra statisk og dynamisk analyse dekket i kapittel 5 og 6.
Søk etter kjent Malware
< i> Bruk karakteristikkene fra kjent malware å skure filsystemet for de samme eller lignende elementer på den kompromitterte maskinen.
Mange inntrengere vil bruke lett gjenkjennelige programmer som kjente rootkits, tastetrykkovervåkingsprogrammer, sniffere, og anti-rettsmedisinske verktøy (f.eks Touch2, shsniff, sshgrab). Det er flere måter å finne kjent malware på en rettsmedisinsk duplikat av en usikret datamaskin
Hashe og Filkarakteristika Bilde:. Søke en rettsmedisinsk duplikat av en kompromittert system for hash verdier matchende kjent malware kan identifisere andre filer med de samme data, men forskjellige navn. I tillegg til å bruke en hash database som NSRL, er en annen fremgangsmåte for å identifisere skadelig kode for å lete etter avvik fra kjente gode konfigurasjoner av systemet. Noen Linux-systemer har en funksjon for å bekrefte integriteten for mange installerte komponenter, noe som gir en effektiv måte å identifisere uvanlig eller malplassert filer. For eksempel er rpm -Va på Linux designet for å verifisere alle pakker som ble installert ved hjelp RedHat Package Manager. For eksempel er resultatene av denne bekreftelsesprosessen i T0rnkit scenariet vist i figur 3.3 for å vise binærfiler som har forskjellig filstørrelse (S), modus (M), og MD5 (5) enn forventet. Noen av disse binærfiler har også avvik i bruker (U), en gruppe (G), og modifisert tid (T). Med rpm er det også mulig å spesifisere en kjent god database med --dbpath alternativ, når det er bekymring for at databasen om emnet systemet ikke er troverdig.
# rpm -Va --root = /mntpath /bevis | grep SM5
SM5..UG. /sbin /syslogd
SM5..UG. /usr /bin /finne SM5 .... T c /etc/conf.linuxconf SM5..UG. /usr /sbin /lsof SM5..UG. /bin /netstat SM5..UG. /sbin /ifconfig SM5..UGT /usr /bin /ssh SM5..UG. /usr /bin /slocate SM5..UG. /bin /ls SM5..UG. /usr /bin /dir SM5..UG. /usr /bin /md5sum SM5..UG. /bin /ps SM5..UG. /usr /bin /top SM5..UG. /usr /bin /pstree SM5 .... T c /etc /ssh /sshd_config
FIGUR 3.3 - T0rnkit rootkit filer funnet ved hjelp av RPM verifisere
rootkit detektorer Bilde: Verktøy som Rootkit Hunter og chkrootkit har blitt utviklet for å lete etter kjente ondsinnet kode på Linux-systemer. Disse programmene inneholder en jevnlig oppdatert database over kjente malware, og kan brukes til å skanne en rettsmedisinsk duplikat. Mange av rootkit kontroller kan kjøres mot et montert bilde som vist i figur 3.4, men noen kontroller kan bare utføres på et kjørende system, som skanning kjørende prosesser for malware. Vær klar over at disse rootkit skanning verktøy kan bare oppdage rootkit-filer som er i en bestemt, standardplasseringen. Derfor kan en bestemt rootkit ikke bli oppdaget av disse skanneverktøy hvis filene er ikke i den forventede plassering (falske negative). Disse skanneverktøy har også ofte falske positive treff, flagging lovlige filer som mulige rootkit komponenter
# rkhunter --check -r /media /_root -l /evidence/rkhunter.log product: [Rootkit Hunter versjon 1.3.8] Kontroll system kommandoer ... Utføre 'strenger' kommandoen sjekker Sjekker 'strenger' kommando [OK]
Performing filegenskaper sjekker Sjekker for forutsetninger [Warning] /media /_root /sbin /chkconfig [Advarsel] < hentet for korthets >
Ser etter rootkits ... Utføre kontroll av kjente rootkit filer og kataloger 55808 Trojan - Variant A [Ikke funnet] ADM Worm [Ikke funnet] AjaKit Rootkit [Ikke funnet] Adore Rootkit [Warning]
utøvende ekstra rootkit sjekker Suckit Rookit flere kontroller [OK] Ser etter mulige rootkit-filer [Advarsel] kontrollere evt rootkit strings [Advarsel] ===================== rootkit sjekker ... Rootkits sjekket: 227 Mulige rootkits: 3 rootkit navn: Adore, Tuxtendo, Rootkit komponent En eller flere advarsler har blitt funnet mens du sjekker systemet. Vennligst sjekk loggfilen (/evidence/rkhunter.log)
FIGUR 3.4 - Skanne et målstasjonen bilde med rkhunter
AntiVirus Bilde: Bruke oppdatert antivirusprogram for å skanne filer i en rettsmedisinsk duplikat av en kompromittert system kan identifisere kjent malware. For å øke sjansene for å oppdage malware, kan flere antivirusprogrammer brukes med noen heuristiske evner aktivert. Slik skanning vanligvis utføres ved å montere en retts duplikat på eksamen systemet og konfigurere antivirus programvare for å skanne montert volum som vist i figur 3.5 ved hjelp av Clam AntiVirus. Et annet antivirusprogram for Linux er F-Prot
# clamscan -d /undersøkelse /clamdb -r -i -l
clamscan.log Twitter /mnt /bevis. - ---------- SCAN SAMMENDRAG ----------- Kjente virus: 1256684 Engine versjon: 0.97.3 Skannet kataloger: 20 Skannede filer: 46 infiserte filer: 1 data skannede: 0.29 MB Data lese: 3340.26 MB (ratio 0,00: 1) Tid: 6,046 sek (0 m 6 s)
FIGUR 3.5 - Clam AntiVirus programvare skanner en montert retts duplikat
Stykkevis Sammenligning Bilde: Når kjente malware filer er tilgjengelige for sammenligningsformål, kan et verktøy som frag_find brukes til å søke etter deler av referansen datasettet på den kompromitterte systemet. I tillegg kan en stykkevis sammenligning verktøy som ssdeep avsløre malware filer som er i stor grad lik med små variasjoner. Bruke den matchende modus, med en liste over fuzzy hashes av kjent malware, kan finne eksemplarer som ikke oppdages med en eksakt hash kamp eller av nåværende anti-virusdefinisjoner (f.eks når innebygd IP-adresser endres).
Analyse Tips: Eksisterende sikkerhetsprogramvare logger
Gitt forekomsten av sikkerhet overvåking programvare, er det tilrådelig å vurdere eventuelle loggene som ble opprettet av AntiVirus programvare eller andre programmer som kjørte på den kompromitterte systemet for merking av malware. Mange antivirusprogrammer har logging og karantene funksjoner som kan gi informasjon om malware oppdages. Når et system kjører Tripwire eller andre systemintegritet sjekker verktøy som overvåker systemet for endringer, kanskje daglige rapporter eksistere som viser hvilke filer ble lagt til, endres og slettes i løpet av en malware hendelsen.
: Searching for IRC kommandoer og andre egenskaper ofte sett i malware, og noen egenskaper som har blitt avdekket i løpet av digital etterforskning (f.eks IP-adresser observert i nett-nivå logger) kan avdekke skadelige filer på systemet. Strings innenfor kjernesystemkomponenter kan avsløre at de har blitt trojanized av inntrengeren. For eksempel figur 3.6 viser et delt bibliotek fra en kompromittert system med uvanlige funksjoner oppkalt proc_hackinit og proc_istrojaned, fp_hack, hack_list og proc_childofhidden, noe som viser at "trojan", "hacke" og "skjult" kan være nyttige søkeord når undersøker noen malware hendelser.
from_gid•getgrgid•bad_user_access_length•openproc•opendir•closeproc•closedir•freeproc•status2proc•sscanf•stat2proc•strrchr•statm2proc•nulls2sep•file2str•file2strvec•readproc•readdir•strcat•proc_istrojaned
•ps_readproc•look_up_our_self•getpid•LookupPID•readproctree•readproctab•freeproctab•list_signals•stdout•_IO_putc•get_signal•get_signal2•status•uptime•_exit•lseek•Hertz•four_cpu_numbers•loadavg•meminfo•read_total_main•procps_version•display_version•sprint_uptime•time•localtime•setutent•getutent•endutent•av•print_uptime•pname•hname•proc_addpid•pidsinuse•pids•pid•proc_hackinit
•xor_buf•h_tmp•fp_hack•tmp_str•fgets•hack_list•strp•strtok•proc_childofhidden•libc.so.6•___brk_addr•__curbrk•__environ•atexit•_etext•_edata•__bss_start•_end•libproc.so.2.0.6•GLIBC_2.1•GLIBC_2.0
FIGUR 3.6 - Utdrag fra en trojanized delt bibliotek (/lib/libproc.so.2.0.6) med uvanlig funksjon navn
Investigative Betraktninger
Noen malware gir en installasjon muligheten til å slette den kjør fra disk etter å ha lastet inn i minnet. Derfor, i tillegg til å skanne logiske filer, kan det være verdt å skjære alle kjør ut av swap-partisjonen og ledig plass for å skanne dem Bruke antivirusprogramvare også, spesielt når malware har blitt slettet av inntrengeren (eller ved AntiVirus programvare som ble kjørt på den kompromitterte systemet)
Malware Forensics Field Guide for Linux Systems
Forfattere:. Cameron H. Malin, Eoghan Casey, James M. Aquilina
Lær mer om Malware Forensics Field Guide for Linux Systems
fra utgiver Syngress.
I kassa, bruk rabattkode PBTY14 for 25% av
Noen malware er spesielt utviklet for å unngå å bli oppdaget av hash verdier, AntiVirus signaturer, rootkit deteksjon programvare eller andre likhet egenskaper. Derfor bør det ikke foreligger bevis i en antivirus scan eller hash analyse ikke tolkes som bevis på at ingen malware er på systemet. For eksempel Phalanx2 rootkit periodisk endrer navnet på sine kjørbare og nå lagrer komponenter og TTY sniffer logger i et tilfeldig navn. For eksempel, i en hendelse /etc /khubd.p2 katalogen inneholdt filer knyttet til Phalanx2 rootkit vist i figur 3.7. Men alle deler av rootkit og skjult katalog kan endres i senere versjoner av Phalanx2, inkludert plassering og navn på filer
-rw-r -. R-- 1 root root 1 356 24 juli 19 : 58 .p2rc -rwxr-xr-x 1 root root 561032 24 juli 19:58 .phalanx2 * -rwxr-xr-x 1 root root 7637 28 juli 15:04 .sniff * -rw-r - r-- 1 root 53746 1063 24 juli 20:56 sshgrab.py
FIGUR 3.7 - Phalanx2 rootkit og TTY sniffer komponentene som er plassert i et skjult Katalog
Gitt at inntrengere kan gjøre en trojanized program ser veldig lik den legitime som opprinnelig ble installert på den kompromitterte systemet, er det tilrådelig å sammenligne kritiske applikasjoner som SSH med den opprinnelige pakken hentet fra en pålitelig kilde. Eventuelle avvik mellom MD5 hash verdier av SSH binærfiler på en kompromittert system og de fra en pålitelig distribusjon av samme versjon garanterer videre etterforskning.
Hvis backup av den kompromitterte systemet eksisterer, kan de brukes til å lage et tilpasset HashSet av systemet på ulike tidspunkter. En slik tilpasset HashSet kan brukes til å bestemme hvilke filer som ble lagt til eller endret siden sikkerhetskopien ble opprettet. I ett tilfelle, inntrengere har gjort en trojanized SSH pakke skilles fra originalen, legitim pakken, noe som gjør det nødvendig å utføre HashSet sammenligninger med filer fra sikkerhetskopier. Denne sammenligningen hjalp også begrense tidsrammen av intrusjonen, fordi trojanized filene var på en backup fra februar, men ikke en tidligere sikkerhetskopi fra januar.
Søkeord søker etter fellestrekk i malware kan også utløse på AntiVirus definisjonsfiler, noe som resulterer i falske positiver.
Survey installerte programmer og Potensielt Mistenkekjør
Gjennomgå programmene som er installert på den kompromitterte systemet for potensielt skadelige programmer.
Kartlegging navn og installasjons datoene for programmer og kjørbare filer som ble installert på den kompromitterte maskinen kan avsløre de som er mistenkelig, samt legitime programmer som kan brukes til å få ekstern tilgang eller for å lette datatyveri.
Denne prosessen krever ikke dyptgående analyse av hvert program. I stedet se etter elementer som er uventet, tvilsom, eller ble installert i tiden rundt hendelsen.
Mange applikasjoner for Linux-systemer er fordelt som "pakker" som automatiserer installasjonen sin. På Debian-baserte systemer, inneholder /var /lib /dpkg /status fil detaljer om installerte pakker og /var/log/dpkg.log fil poster informasjon når en pakke er installert. For eksempel er oppføringer i dpkg.log filen på en Ubuntu system avsløre at nmap ble installert vist i figur 3.8. På RedHat og relaterte Linux-distribusjoner rpm qa --root = /mntpath /var /lib /rpm kommandoen vil vise innholdet i en RPM database på et emne systemer.
# hale -15 /mntpath /var /log /dpkg.log
2012-06-12 14:48:20 oppstarts arkiver pakke 2012-06-12 14:48:22 installere nmap < none > 05.21 til 01.01 2012-06-12 14:48:22 status halv installert nmap 05.21 til 01.01 2012-06-12 14:48:23 status utløser søkt mann-db 2.6.0.2-2 2012-06-12 14: 48:23 status halv installert nmap 05.21 til 01.01 2012-06-12 14:48:23 status pakket nmap 05.21 til 01.01 2012-06-12 14:48:23 status pakket nmap 05.21 til 01.01 2012-06-12 14: 48:23 trigproc mann-db 2.6.0.2-2 2.6.0.2-2 2012-06-12 14:48:23 status halv konfigurert mann-db 2.6.0.2-2 2012-06-12 14:48:27 status installert mann-db 2.6.0.2-2 2012-06-12 14:48:28 oppstart pakker konfigurere 2012-06-12 14:48:28 konfigurere nmap 05.21 til 01.01 < none > 2012-06-12 14:48:28 status pakket nmap 05.21 til 01.01 2012-06-12 14:48:28 status halv konfigurert nmap 05.21 til 01.01 2012-06-12 14:48:28 status installert nmap 05.21 til 01.01
FIGUR 3.8 - Logg oppføringer (/var/log/dpkg.log) viser installasjon av potensielt skadelig program (nmap) på en Debian-basert Linux-system (Ubuntu)
< li> Ikke alle installerte programmer vil bli oppført av de ovennevnte kommandoene fordi noen programmer er ikke tilgjengelig som pakker for visse systemer og må installeres fra kilden. Derfor kan en gjennomgang av steder som /usr /local og /opt avsløre andre programmer som har blitt utarbeidet og installerte fra kildekoden. På RedHat og relaterte Linux-distribusjoner kommandoen find /mntpath /sbin exec rpm-QF {} \\; | grep " ikke " kommandoen vil liste alle kjørbare i /sbin katalog på en montert rettsmedisinske duplikat som ikke er forbundet med en pakke.
Et skadelig program kan fremgå av en fil i filsystemet (f.eks sniffer logger, RAR filer eller konfigurasjonsskript). For eksempel figur 3.9 viser sniffer logger på en kompromittert system som nettverkstrafikk blir registrert av malware på systemet.
FIGUR 3.9-Sniffer logger seg på en kompromittert system vises ved hjelp av Sleuth Kit Anmeldelser
Legitime programmer installert på en datamaskin kan også spille en rolle i malware hendelser. For eksempel PGP eller eksterne skrivebordsprogrammer (for eksempel X) installert på et system kan være normalt i visse miljøer, men tilgjengeligheten kan ha aktivert inntrengere å bruke det for skadelige formål som for eksempel kryptere sensitiv informasjon før stjele den over nettverket. Samordning med offeret organisasjonen kan bidra til å avgjøre om disse er legitime typiske forretningsanvendelser. Likevel, husk at de kan bli misbrukt /benyttes av inntrengeren og undersøkelse av forbundet loggene kan være fruktbart
Analyse. Tips: Se etter nylig installert eller out-of-place kjør
Ikke alle installerte programmer vil bli oppført av de ovennevnte kommandoene fordi inntrengere kan sette kjør på uventede steder. Derfor kan det være nødvendig å se etter nylig installerte programmer som sammenfaller med tidspunktet for malware hendelsen, eller bruke ledetråder fra andre deler av etterforskningen å sette fokus på potensielt mistenkelige programmer. I tillegg ser for kjørbare filer i brukerhjemmekataloger og andre steder som vanligvis nås av brukere, men som vanligvis ikke inneholder kjørbare.
Investigative Betraktninger
Gjennomgå hver potensialet kjørbar på en datamaskin er en tidkrevende prosess og en viktig fil kan være savnet i massen av informasjon. Digitale etterforskere kan vanligvis begrense fokus til en bestemt tidsperiode eller område av filsystemet for å redusere antall filer som må gjennomgås for mistenkelige egenskaper. I tillegg ser for kjørbare filer på steder som vanligvis nås av brukere, men som vanligvis ikke inneholder kjør eksempel en IRC bot kjører fra en kompromittert brukerkonto.
Malware på Linux-systemer er ofte bare en modifisert versjon av en legitim system binære, noe som gjør det vanskeligere å skille. Imidlertid kan digitale etterforskere finne malware som har blitt Base64 kodet eller pakket ved hjelp av vanlige metoder som UPX eller Burneye.
Økningen i "spearphishing angrep", som benytter social engineering for å lure brukere til å klikke på e-postvedlegg, kombinert med malware innebygd i Adobe PDF-filer som omtalt i kapittel 5 betyr at digitale etterforskere trenger å utvide søker etter malware å inkludere objekter innebygd i dokumenter og e-postvedlegg.
Inspiser Services, moduler, Auto-Start Locations og planlagte jobber
Se etter referanser til malware i de ulike oppstarts steder på kompromitterte systemer for å finne ut hvordan malware greid å forbli kjører på en Linux-systemet etter omstart.
For å forbli kjører etter omstart, er malware vanligvis relansert bruker litt utholdenhet mekanisme tilgjengelig i ulike oppstarts metoder på et Linux-system, inkludert tjenester, drivere, planlagte oppgaver, og andre oppstarts steder
Planlagte oppgaver
:. Noen malware bruker Linux cronjob planleggeren til periodisk gjennomføre og opprettholde utholdenhet på systemet . Derfor er det viktig å se etter ondsinnet kode som er planlagt å gjennomføre i /var /spool /cron /crontabs og /var /spool /cron /atjobs konfigurasjonsfiler.
Tjenester Bilde: Det er svært vanlig for malware å forskanse seg som en ny, uautorisert service. Linux har en rekke skript som brukes til å starte tjenester som maskinen starter. Initialisering oppstartsskript /etc /inittab kaller andre scripts som rc.sysinit og ulike oppstartsskript under /etc/rc.d/katalogen, eller /etc/rc.boot/i noen eldre versjoner. På andre versjoner av Linux, slik som Debian, er oppstartsskript lagret i /etc/init.d/katalogen. I tillegg er noen vanlige tjenester aktivert i /etc/inetd.conf eller /etc /xinetd /avhengig av hvilken versjon av Linux. Digitale etterforskere skal undersøke hver av disse oppstartsskript for avvik oppføringer. For eksempel, i en inntrenging, ble bakdør opptas når den kompromitterte systemet startes på nytt ved å plassere oppføringene i figur 3.10 på slutten av /etc/rc.d/rc.sysinit system oppstart filen. Den Phalanx2 rootkit er lansert fra en egen oppstartsskript under /etc/rc.d/katalogen med samme tilfeldig generert navn som den skjulte katalogen der rootkit komponentene er lagret. Bli advart om at Phalanx2 skjuler også oppstartsskriptet fra brukere på systemet, slik at rettsmedisinsk undersøkelse av filsystemet en viktig del av slike malware undersøkelser. Product: # Xntps (NTPv3 daemon) oppstart .. /usr /sbin /xntps -q # Xntps (NTPv3 deamon) sjekk .. /usr /sbin /xntpsc 1 > /dev /null 2 > /dev /null
FIGUR 3.10 - Skadelige oppføringer i /etc /rc. d /rc.sysinit fil for å starte bakdør på omstart
Kernel Modules Bilde: På Linux-systemer, er kjernemoduler ofte brukt som rootkit komponenter til malware pakker. Kjernemoduler er lastet når systemet starter opp basert på informasjonen konfigurasjon i /lib /modules /'uname -r "og /etc/modprobe.d kataloger, og /etc /modprobe eller /etc/modprobe.con fil. Disse områdene bør inspiseres for elementer som er relatert til malware.
Autostart Steder Bilde: Det er flere konfigurasjonsfiler som Linux bruker til å automatisk starte en kjørbar når en bruker logger inn i systemet som kan inneholde spor av malware. Elementer i /etc/profile.d katalogen og /etc /profile og /etc/bash.bashrc filer blir utført når en brukerkonto logger inn og kan være av interesse for malware hendelsen. I tillegg har hver brukerkonto enkelte konfigurasjonsfiler (~ /.bashrc, ~ /.bash_profile og ~ /.config /autostart) som kan inneholde oppføringer å utføre malware når en bestemt brukerkonto logger inn i systemet.
Investigative Betraktninger
Se alle programmer som er spesifisert i oppstartsskript for å kontrollere at de er riktige, og har ikke blitt erstattet av trojanized programmer.
Intruders noen ganger aktivere tjenester som tidligere ble deaktivert, så det er også viktig å se etter legitime tjenester som bør deaktiveres.
Undersøke Logger
Se i alle tilgjengelige loggfiler på kompromittert system for spor av kjøring av skadelig og tilhørende aktiviteter som etablering av en ny tjeneste.
Linux-systemer opprettholde en rekke logger som registrerer systemhendelser og brukerkontoen aktiviteter. Hoved loggen på et Linux-system er vanligvis kalles meldinger eller syslog, og sikkerhetsloggen registrerer sikkerhetsspesifikke hendelser. Noen Linux-systemer har også revisjons delsystemer (f.eks SELinux) konfigurert til å ta opp bestemte hendelser som for eksempel endringer i konfigurasjonsfiler. Graden av detaljer i disse loggene varierer, avhengig av hvordan logging er konfigurert på en gitt maskin
System Logger Bilde:. Logon hendelser registrert i systemet og sikkerhetslogger, inkludert pålogginger via nettverket kan avsløre at malware eller en inntrenger fått tilgang til en kompromittert system via en gitt konto på et bestemt tidspunkt. Andre arrangementer i tiden rundt en malware infeksjon kan fanges i systemlogger, inkludert etablering av en ny tjeneste eller nye kontoer i tiden rundt en hendelse. De fleste Linux-loggene er i ren tekst og kan søkes ved hjelp av en rekke verktøy, inkludert grep og Splunk med mulighet til å filtrere på bestemte typer arrangementer.
Enkelte angrep skape særegne mønstre i loggene som kan avsløre vektoren for angrep. For eksempel kan buffer overflow angrep føre til mange oppføringer som skal genereres med lange inngangs strenger som vist i figur 3.11 fra meldingene logge
8 april 07:47:26 localhost SERVER [5151]:. Dispatch_input: bad forespørsel linje 'BBàóÿ¿áóÿ¿âóÿ¿ãóÿ¿XXXXXXXXXXXXXXXXXX000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004800000001073835088security0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061Û1É1À°FÍ€‰å1Ò²f‰Ð1ɉËC‰]øC‰]ôK‰MüMôÍ€1ȉEôCf‰]ìfÇEî^O'‰Mð▯Eì‰EØÆEü^P‰Ð▯MôÍ€‰ÐCCÍ€‰ÐCÍ€‰Ã1ɲ?‰ÐÍ€‰ÐAÍ€ë^X^‰u^H1À^F^G‰E^L°^K‰ó▯M^H▯U^LÍ€èãÿÿÿ/bin/sh'
FIGUR 3.11 - Logg entry viser buffer overflow angrep mot en server for å lansere et kommandoskall
Denne loggen viser vellykket buffer overflow hadde "/bin /sh" på slutten, slik at system for å lansere et kommandoskall som inntrengeren brukes til å få uautorisert tilgang til systemet med rotnivå privilegier
nettleser History Bilde:. Protokollen for nettsurfing aktivitet på en kompromittert datamaskin kan avsløre tilgang til ondsinnede nettsteder og påfølgende nedlasting av malware. I tillegg etterlater noen malware spor i nettleserens historikk når det sprer seg til andre maskiner på nettverket. Firefox er en vanlig nettleser på Linux-systemer og historiske registreringer av leser hendelser blir lagret i en brukerprofil under ~ /.mozilla /firefox katalog for hver brukerkonto.
Command History Bilde: Som beskrevet i kapittel 1, er mange Linux-systemer som er konfigurert til å opprettholde en kommando historie for hver brukerkonto (f.eks .bash_history, .history, .sh_history). Figur 3.12 viser en kommando historie fra en Linux-system som hadde sin hele harddisken kopiert over nettverket ved hjelp netcat. Selv om oppføringer i en kommando historie fil er ikke tid stemplet (med mindre tilgjengelig i minnedumper som omtalt i kapittel 2), kan det være mulig å korrelere noen oppføringer med de siste aksessert datoene for de tilhørende kjør, i et forsøk på å avgjøre når hendelser innspilt i kommandohistorikkloggen skjedde. Noen Linux-systemer opprettholde prosessen regnskap (pacct) logger, som kan vises ved hjelp av lastcomm kommandoen. Disse loggene posten hver kommando som ble henrettet på systemet sammen med tid og brukerkontoen
FIGUR 3.12 -. Kommandoen historie innholdet vises ved hjelp av Sleuth Kit og Autopsy GUI
Desktop Firewall Logger
: Linux vertsbaserte brannmurer som IPtables og andre sikkerhetsprogrammer (f.eks tcp_wrappers) funksjon på pakkenivå, fanger hver pakke før den er behandlet av høyere nivå applikasjoner, og derfor kan konfigureres til lage svært detaljerte logger av ondsinnede aktiviteter på en kompromittert system.
AntiVirus Logger Bilde: Når et Linux-system er kompromittert, kan AntiVirus programvare oppdage og med blokkere noen ondsinnede aktiviteter. Slike hendelser vil bli registrert i en loggfil med tilhørende dato og tidsstempler (f.eks under /var /log /clamav /for ClamAV), og eventuelle karantene elementer kan fortsatt oppbevares av antivirusprogrammet i et holdingselskap.
Crash Dump Bilde: Når konfigurert, kan abrt tjenesten fange opp informasjon om programmer som krasjet og produsert debug informasjon. Når abrtd feller en krasj program, skaper det en fil som heter coredump (under /var /spool /abrt som standard) som inneholder innholdet i minnet fra ulykken, som kan gi nyttig informasjon som angriper IP-adresser.
Investigative Betraktninger
Loggfiler kan avsløre tilkoblinger fra andre datamaskiner som gir lenker til andre systemer på nettverket som kan være kompromittert.
Ikke alle programmer lage en oppføring i Linux-logger i alle tilfeller, og malware installert av inntrengere generelt omgå standard logging mekanismer.
Linux systemlogger og revisjons delsystemer kan være deaktivert eller slettet i et innbrudd eller malware hendelsen. Faktisk, fordi logger seg på Linux-systemer inneholder vanligvis noen av de mest nyttig informasjon om ondsinnede aktiviteter, inntrengere rutinemessig slette dem. Derfor, når behandlingen tilgjengelig loggfiler, er det viktig å se etter hull eller ut av ordre oppføringer som kan være en indikasjon på sletting eller manipulering. Fordi Linux genererer logger seg på en jevnlig basis under normal drift, et system som ikke er stengt ned ofte, for eksempel en server, burde ikke ha forlenget hull i loggene. For eksempel, når loggene er lastet inn Splunk, er et histogram av hendelser etter dag genereres automatisk og kan vise et gap som tyder log sletting. I tillegg er det generelt lurt å søke ledig plass for slettede oppføringer som diskuteres i Undersøke Linux File System senere i dette kapittelet.
Les hele utdraget
Last ned PDF av kapittel tre for å lære mer .
Husk at logger oppføringer av buffer overflow viser bare at et buffer overflow angrepet skjedde, og ikke at angrepet var vellykket. Å avgjøre om angrepet var vellykket, er det nødvendig å undersøke aktiviteter på systemet følgende angrepet.
Rootkits og trojanized tjenester har en tendens til å være ustabil og krasjer med jevne mellomrom. Selv om en tjeneste som ABRT pakken ikke er installert, kernel aktivitetslogger (f.eks dmesg, kern.log, KLog) kan vise at en bestemt tjeneste krasjet flere ganger, potensielt noe som indikerer at en ustabil trojanized versjonen ble installert.
Analyse Tips: Sentralisert Sysloggserverens
I enkelte bedriftsmiljøer, er syslog servere avhengig av å fange opp logging og så lokale sikkerhetshendelseslogging er sparsom på enkelte Linux-maskiner. Gitt volumet av tømmer på en syslog server, kan det være en periode utover bare et par dager og digitale etterforskere må bevare disse loggene raskt eller risikere å miste denne informasjonen.
Anmeldelse Brukerkontoer og Logon aktiviteter
Kontroller at alle kontoer som brukes til å få tilgang til systemet er legitime kontoer og bestemme når disse kontoene ble brukt til å logge inn på den kompromitterte systemet.
Se etter uautorisert opprettelse av nye kontoer på den kompromitterte systemet, står uten passord, eller eksisterende kontoer lagt til Administrator grupper
Uautorisert Account Creation
. Undersøke /etc /passwd, /etc /shadow og sikkerhetslogger for uvanlige navn eller kontoer opprettet og /eller brukes i umiddelbar nærhet til kjente uautoriserte hendelser.
Administrator Grupper Bilde: Det er lurt å sjekke /etc /sudoers filer for uventede kontoer blir gitt administrativ tilgang og sjekke /etc /grupper for uvanlige grupper og for brukerkontoer som ikke er ment å være i lokale eller domene-nivå administratorgrupper. I tillegg, ta kontakt med systemansvarlige til å avgjøre om en sentralisert autorisasjon mekanismen brukes (f.eks NIS, Kerberos).
Svake /Blank Passord Bilde: I noen situasjoner kan det være nødvendig å se etter kontoer uten passord eller lett å gjette passord. En rekke verktøy er laget for dette formålet, inkludert John the Ripper og Cain & Abel. Regnbuen er skapt av precomputing hash representasjon av passord og skape en oppslagstabell for å akselerere prosessen med å sjekke for svake passord.
Investigative Betraktninger
Kunne autentiseringsforsøk, inkludert sudo forsøk, kan være viktig når gjentatte forsøk ble gjort for å gjette passord. I en undersøkelse, etter å ha fått tilgang til en Linux-server via en vanlig brukerkonto, inntrengerne brukt sudo gjentatte ganger til de gjettet passordet til en konto med root privilegier. De mange mislykkede sudo forsøk ble fanget i systemlogger, men inntrengerne slettet disse loggene etter å skaffe root. De slettede oppføringer ble berget ved å utføre et nøkkelordsøk av ledig plass.
Malware eller inntrengere kan overskrive logge oppføringer å eliminere spor bevis for uautoriserte aktiviteter. Derfor må du huske på at aktiviteter kan ha oppstått som ikke fremgår av tilgjengelige og berget logger, og det kan være nødvendig å betale mer oppmerksomhet til detaljer og korrelasjon av informasjon fra flere kilder for å få en mer fullstendig forståelse av et malware hendelsen. I slike situasjoner kan en sentralisert syslog server eller nettverksnivå logger som NetFlow være uvurderlig for å fylle hullene av aktiviteter på en kompromittert vert
Analyse. Tips: Sammenheng med pålogginger
Kombiner en gjennomgang av brukerkontoer med en gjennomgang av Linux sikkerhetslogger på systemet for å bestemme påloggingstider, dato for opprettelse av konto, og andre aktiviteter knyttet til brukerkontoen aktivitet på kompromitterte systemet. Dette kan avsløre uautorisert tilgang, herunder pålogginger via SSH eller andre fjernaksessmetoder største nettstedene Undersøke Linux File System
Se filsystemet for spor etter malware.
File system datastrukturer kan gi betydelige mengder informasjon relatert til en malware hendelsen, inkludert tidspunktet for hendelser og det faktiske innholdet av malware. Ulike programmer for å utføre rettsmedisinsk undersøkelse er tilgjengelig, men noen har betydelige begrensninger når den brukes til Linux filsystemer. Derfor er det nødvendig å bli kjent med verktøy som er spesielt utviklet for Linux rettsmedisinsk undersøkelse, og for å dobbeltsjekke viktige funn ved hjelp av flere verktøy. I tillegg er skadelig i økende grad blir utviklet for å hindre filsystemet analyse. Noen malware alter dato og tidsstempler på ondsinnede filer for å gjøre det vanskeligere å finne dem med tidslinje analyse. Annen skadelig kode er utformet til bare å lagre informasjon i minnet, for å minimalisere mengden av data som er lagret i filsystemet.