Nätverksforensik med Dshell från US Army
Den amerikanska militärens forskningscenter vid namn U.S. Army Research Laboratory har släppt ett verktyg för att analysera nätverkstrafik (nätverksforensik). Verktyget är skrivet i Python och ligger uppe på Github för vem som helst att ladda ner och testa samt skicka in förbättringsförslag.
Även så är Dshell modulärt och har stöd för att återskapa TCP-strömmar samt IPv4 och IPv6.
Installation Dshell
Följande kommandon exekveras för att installera paketberoenden på exempelvis Ubuntu:
$ sudo apt-get install python-crypto python-dpkt python-ipy python-pypcap python-pip unzip build-essential $ sudo pip install pygeoip $ wget https://github.com/USArmyResearchLab/Dshell/archive/master.zip $ unzip master.zip $ cd Dshell-master $ make
Då var installationen klar och du bör ha en fil vid namn dshell.
Nätverksforensik med dshell
Om du ej sitter på inspelad nätverkstrafik i form av pcap-filer så kan du ladda hem någon av de publika filerna från Netresec:
$ wget http://download.netresec.com/pcap/maccdc-2012/maccdc2012_00016.pcap.gz $ gzip -d maccdc2012_00016.pcap.gz
Dshell stödjer även att köras i realtid mot ett nätverkskort, använd då flaggan -i (för interface).
Finemang. Då startar vi dshell och listar de avkodningsmoduler som följer med som standard med decode -l
För att få hjälp med en specifik avkodningsmodul kan man skriva:
Dshell> decode -d rip-http -h
Vi vill nu testa rip-http som är en modul som extraherar hur nedladdningar över http. Vi ser även att det finns möjlighet att ange filändelse så vi anger att vi vill läsa ut alla .PNG-bilder:
Dshell> mkdir img Dshell> cd img Dshell> decode -q -d rip-http ../maccdc2012_00016.pcap --rip-http_name_filter="\.png"
Vi får då upp ett antal rader på skärmen som bekräftar att det identifierats PNG-bilder i nätverkstrafiken (eller åtminstone vad filändelsen säger).
Men det var ju mindre kul, låt oss istället försöka hitta på någon slags skadlig kod:
Dshell> cd .. Dshell> mkdir files Dshell> sudo apt-get install clamav Dshell> cd files Dshell> decode -q -d rip-http ../maccdc2012_00016.pcap
Sen väntar du ett bra tag på att samtliga nedladdningar ska skrivas ut till disk. Du kan testa att labba med -t och -p som står för trådat respektive parallella körningar.
När det är klart så kan vi testa att söka igenom samtliga filer med clamav:
$ clamscan -i -r
Och får då ut att ett antal suspekta filer identifierades:
/home/vagrant/Dshell-master/files/apache.php_: JS.Agent-144 FOUND /home/vagrant/Dshell-master/files/apache.php: JS.Agent-144 FOUND /home/vagrant/Dshell-master/files/apache.php__: JS.Agent-144 FOUND /home/vagrant/Dshell-master/files/process.php: PHP.ShellExec FOUND
Det var väl ett trevligt verktyg för att utföra nätverksforensik? Intressant är också att det finns en decoder för INNUENDO DNS-kanal som skapats genom att observera en produktvideo från Immunity som är företaget som utvecklar INNUENDO-produkten.