Wireshark tips Basis for al undersøgelse er at "filter out" alle strem som man kender til og herefter bygge en knap der automatisk laver et filter der fjerne al normal trafik. ------------------------------------------------------------------------------------------------- Tilføje wireshark to system path Controlpanel - System - Advanced system settings - Advanced - System variabels (edit) Tilføj til path ;c:\Program Files\Wireshark ------------------------------------------------------------------------------------------------- Editcap kan splitte store pcap filer og er et indbygget tool i whireshark Al hjælp er her - http://www.wireshark.org/docs/wsug_html/ Placering: c:\program files\whireshark\Editcap.exe Eksempel: editcap -c 2000000 -F libpcap D:\PCAP-DUMP\input.pcap D:\PCAP-DUMP\out.pcap .................................................................................................. Splitcab.exe - http://splitcap.sourceforge.net/ Splitter til hostpairs splitcap.exe -r D:\PCAP-DUMP\input.pcap -s hostpair -o D:\PCAP-DUMP\hostpair Splitter en enkelt ip ud splitcap.exe -r D:\PCAP-DUMP\input.pcap -ip 10.10.10.1 -o D:\PCAP-DUMP\ip .................................................................................................. Tools til at gennemgå store pcap filer uden problemer er CASE Pilot - http://www.cacetech.com/products/cace_pilot.html Network Packet Analyzer CAPSA 7.1 - http://www.javvin.com/LANsurveyor.html ................................................................................................. Wireshark Remote Capture: 1: Install winpcap Start C:\Program Files\WinPcap\rpcapd.exe in commandpromt. Kør dette eksempel - Dette vil starte remote capture og lave en rpcapd.ini som kan bruges til at loade med fremover rpcapd -b 192.168.10.8 -p 2002 -4 -l 192.168.10.20 -n -d -s rpcapd.ini Herefter kan rpcapd.exe -f rpcapd.ini bruges i en command promt hvis ikke der bliver startet første gang med Der skal logges ind med den konto som blev brugt til at installerer som service med. Mere info her -> http://www.winpcap.org/docs/docs_40_2/html/group__remote.html eksempel på rpcapd.ini: # Configuration file help. # Hosts which are allowed to connect to this server (passive mode) # Format: PassiveClient = PassiveClient = 192.168.10.20 # Hosts to which this server is trying to connect to (active mode) # Format: ActiveClient = , # Permit NULL authentication: YES or NOT NullAuthPermit = YES ................................................................................................ Batch fil der starter dumpcap hvis det er nødvendigt at lave dumps over længere tid. Eksempler der kan benyttes: dumpcap -i 3 -P -f "net 192.168" -w D:\dumpcap.pcap dumpcap -i 3 -P -f "ether host 00:0c:29:bb:bb:bb" -w D:\PCAP-DUMP\mail-04.pcap CLS @echo off ECHO. TITLE Start Dumpcap ECHO ********************************************************************* ECHO * Dumpcap * ECHO * Starter Dumpcap med 1 fil pr 24 timer i 90 dage * ECHO * * ECHO ********************************************************************* ECHO. Echo Starter dumpcap ECHO. "c:\Program Files\Wireshark\dumpcap" -b duration:86400 -b files:90 -i 4 -P -f "ether host 08:00:27:ce:43:bb" -w D:\pcaps\dump.pcap ECHO. ECHO Dump igang............... ECHO. ECHO Pause Exit ................................................................................................ Gode tips til display Filter Et ords filter: dns, ip, tcp, utp, http, irc, pop, smtp, ftp, browser Vis kun FTP og DNS trafik: ftp || dns vis al trafik undtagen ARP og ICMP: !arp && !icmp vis kun HTTP til eller fra 192.168.11.11: ip.addr == 192.168.11.11 && http Søg efter zip eller exe filer: tcp matches "zip" eller tcp matches "exe" søg efter en ASCII streng der indeholder "PASS": tcp contains "PASS" Søg efter en bestemt ip adresse: ip.addr == 192.168.0.1 IP adresse må ikke være: not ip.addr == 192.168.0.1 IP-range (ip.src >= 192.168.10.1 && ip.src <= 192.168.10.255) || (ip.dst >= 192.168.10.1 && ip.dst <= 192.168.10.255) Vil man se alt til et net der begynder med 74.254.254.254 ip.addr==74.0.0.0/8 ip.addr==74.74.0.0/16 ip.addr==74.74.74.0/24 Søg efter MAC adresse: eth.addr == 00:11:11:35:11:14 Søg efter vendor mac adresse: eth.src[0:3] == 00:00:83 - sort out a vendors mac Søg efter port: tcp.port == 139 Søg efter DNS port: udp.dstport == 53 Søg efter HTTP POST request: Expression filter. http.request.method == "POST" Filter POP3: POP3 USER request: pop.request.command == "USER" pop.request.command == "PASS" FTP USER request: ftp.request.command == "USER" ftp.request.command == "PASS" FTND FTP Data Channal ftp.response.code == 227 || ftp.request.command == "PORT" SMTP Søg efter e-mail modtager smtp.req.parameter == "TO:" Søg efter Afsender smtp.req.parameter == "FROM:" Søg efter EHLO smtp.req.parameter == "Computername" SMTP Find alle e-mail modtagerer smtp.req.command == "RCPT" Find windows klient navne browser.server Browser Host Annoucement browser.command == 0x1 Filter MSN: msnms Find MSN useres msnms contains "CAL" Hacking søgestreng på http http.request.method == "GET" && frame contains "hacking" Søgning efter bestemte URI http.request.uri == "http://netcowboy.dk/main.htm" søg efter alle hvor en forbindelse er skabt SYN+ACK (TCP connection was Successful) tcp.flags == 0x12 SSL/TLS handshake - Viser alle SSL/TLS handshakes ssl.record.content_type == 22 Søg efter HTTPS Server Helo - Se om der bliver benyttet DH eller DHE til at krypterer forbindelser med. ssl.handshake.certificate Søg efter HTTP GET som indeholder index.php http.request.method == "GET" && http.request.full_uri matches "index\.php\?.*=" http.request.method == "GET" && http.request.full_uri contains "index.php?" Se efter . CN eller .RU i HTTP http.host matches "(?i)[.](ru|cn)$" DNS dns.qry.name matches "(?i)[.](cn|ru)$" Frame Time Søg imellem time frames - frames arriving between 16:00 and 17:00 oktober 15 2012 (virker ikke i Tshark) (frame.time >= "Oct 15, 2012 16:00:00") && (frame.time <= "Oct 15, 2012 17:00:00") Frame Time Søg efter time frames imellem - frames arriving between 19:00:00 and 20:00:00 Dec 29 2014 og med IP adresse 192.168.1.1 (virker ikke i Tshark) (frame.time >= "Dec 29, 2014 19:00:00") && (frame.time <= "Dec 29, 2014 20:00:00") && ip.addr == 192.168.1.1 kig etfer LOOIC fame contains "probando" kigger efter Upper eller lower case frame matches "(?i)probando" kigger efter Upper eller lower case Ser efter typisk malware og exploit fyld. frame contains "AAAAAAA" mocbot genkendelse - Kigger på DNS count answers S=DNS-HIgh response count - ser på domæner og C&C antal af servers også selvom der er tale om krypteret trafik. dns.count_answers==12 dns.count_answers > 5 Macof traffic genkendelse tcp.flags==1 && tcp.window_size==512 Grupping probondocat or probondodog hvor der søges med incasesensativ (?i) frame matches "(?i)prob[ae]ndo(cat|dog)" \. filter på et punktum . Betyder alt []Charecter class ^ begyndelsen af line eller field $ end of line or field Bemærk er case sensativ - Brug matches og (?i) for incasesensativ. frame contains "exe" (hele pakken) http contains "exe" (kun i http delen) data contains "exe" (Kun i data delen på alle pakker) Filter out (port 80 trafik og DNS trafik) !tcp.port==80 and !udp.port==53 ................................................................................................. Capture filters: Tips: Brug ikke capure filters til analyse af HTTP trafik. Skal der brudes noget skal der bruges MAC filters: Brug MAC filter for at analyserer applikationer: Dette filter fil fange alt trafik til og fra en maskine med denne MAC adresse. ether host 00:25:64:8c:9f:75 Net filter: Dette filter fanger al trafik til 192.168 nettet. dst net 192.168 Dette filter fanger al trafik fra 192.168 nettet. src net 192.168 Dette filter fanger al trafik til eller fra 192.168 nettet net 192.168 Dette filter fanger al trafik til eller fra følgende wlan (Wireless) wlan host 00:25:64:8c:9f:75 Dette filter fanger kun trafik til og fra 192.168.10.1 host 192.168.10.1 Dette filter fanger trafik al trafik til eller fra følgende net med net mask. net 192.168.10 mask 255.255.255.0 Filter på porte: Dette filter fanger kun trafik på port 80 og på 3128 tcp dst port 80 or tcp dst port 3128 Dette filter fanger eks DNS trafik (TCP OG UDP) TCP bruges eks til Zone transfer port 53 Ønskes der eks kun at der bliver fange Zone transfer tcp port 53 Ønsker man eks kun DNS responce src port 53 Dette filter kigger kun på trafik på følgen port range 6881 til 6999 (BitTorrent) portrange 6881-6999 ................................................................................................ Capture filter til ARP Antag af Default Gateway er 192.168.10.1 Antag at MAC adressen er c8:6c:87:01:90:0c Convert fra ASCI to HEX 192.168.10.1 to HEX = 0xC0A80A01 MAC adresse første 2 Bytes == 000c MAC adresse sidste 4 Bytes == 39303062 Filter arp and ether[28:4]=0xC0A80A01 and not (ether[22:2]=0x000c and ether[24:4]=0x339303062) ................................................................................................ Color filters: Se efter mange DNS forespørgelser i wireshark som kunne tyde på en BOT inficeret host. Dette filter kigger efter DNS Response hvor der er mere end 5 forespørgelser i hvert opslag (dns.flags.response == 1) && (dns.count.answers > 5) Kig efter trafik fra Dark IP ranges: Dette ekan spotte ip adresser der kigger efter ikke tildelte adresser. dette ska spotte eks malware som kigger efter klilenter på disse ip ranges. 192.168.0.1-4 -> Routers network 192.168.100-112 -> Server range 192.168.140-211 -> Client range (ip.dst > 192.168.0.4 && ip.dst < 192.168.0.100) || (ip.dst > 192.168.0.112 && ip.dst < 192.168.0.140) || (ip.dst > 192.168.0.211 && ip.dst < 192.168.0.254) ................................................................................................. Operatores: Negation - (! or not) concatenation (AND) Alternation (or) Dette filter vil tage al trafik til og fra 192.168.10.1 og som er sendt til port 53 TCP. AND sørger for at begge sider af en operator skal matche før end at trafik bliver fanget. host 192.168.10.1 and tcp dst 53 Dette filter vil fange al trafik endten til 192.168.10.1 eller som matcher tcp port 53 192.168.10.1 or tcp dst 53 Dette flter fanger al trafik som er til eller fra ip adresser som ikke begynder med 10.2 nettet. not src net 10.2.0.0/16 Dette filter fanger al trafik til netcowboy.dk som ikke er port 80 eller port 25. host netcowboy.dk and not port 80 and not port 25 ................................................................................................. Comparison Operatores: Beskrivelse Symbol Text equal to == eq or || or and && and greater than > gt less than < lt greater than or equal to >= ge less than or equal to <= le not ! not not equal to != ne contains contains matches matches .................................................................................................. Name Resolving: Name resolving slået til i wireshark kan have en stor indflydelse på hastigheden i wireshark. Pakketab er muligt. manuf - indeholder alle MAC adresser som wireshark slår op i Lav din egen MAC liste til MAC name resolving: ethers - læg denne i profiles folder. EKS: Syntax 00:11:22:33:44:55 Spoofed Cain & Abel MAC Adress Lav din egen DNS liste til DNS name resolving: hosts - læg denne i profiles folder.GeoIPASNum.dat EKS: Syntax 192.168.10.1 SERV1 192.168.10.2 SERV2 Reload Wireshark før disse virker. .................................................................................................. Time Values: Der findes 6 forskellige time settings: PCAP kan IKKE vise Nanosekunder - PCAP-NG kan. Time setting er en af de vigtigste settings at benytte rigtigt. Deling af filer over tidszoner: Man kan ikke ændre på den faktisk tid en PCAP er lavet i. En fil lavet i en tidszone vil have forskellig tid når den ses i en anden tidszone. EPOCH time: (UNIX time) Dette er tiden fra 1 Jan 1970 Wire Latency og Processor Latency: Kig på SYN - SYN ACK og tiden imellem disse to (Round trip time) Brug time setting -> Seconds Since Previous Displayed. Slow Server Response: Se tidsforskellen mellem Serverens ACK packet og den første DATA packet fra serveren. Spot overloaded clients: Kig på tinden mellem den første ACK packet og den første GET Request til en service. ................................................................................................... Moster filer - tshark Hiver DNS informationer ud tshark -r monsterfile.pcapng -R dns -w dns.pcap tshark -r monstaerfile.pcapng -R http.host -T fields -e ip.src -e ip.dst -e http.host > httphost.txt Direkte i wireshark Statistic - Show address resolution - Dette viser alle ip adresser og deres domæne navne - virker på små filer GET og POST tshark -r monsterfile.pcpapng -R "http.request.method contains "GET" or http.request.method contains "POST" -w httpGETPOST.pcpapng GET Responses tshark -r monsterfile.pcapng -R "http.request.method contains "GET" or http.request.method contains "POST" or http.response.code -w httpGETPOSTResponse.pcapng Extract Connections tshark -r monsterfile.pcapng -R "tcp.flags.syn=1" -w tcpsyns.pcapng Extract .exe tshark -r monsterfile.pcapng -R"frame matches "[.]exe"" -w exe.pcapng Extract based on contry codes tshark -r monsterfile.pcapng -R "http.host matches ""(?i)[.](ru|cn)$""" -w httphostsrucn.pcapng Extract keywords (on windows) tshark -r monsterfile.pcapng -R"frame matches ""(?i)(join|admin|password)""" -w keyword.pcapng viser src og dst IP'er tshark -T fields -e ip.src -e ip.dst -r test.pcap Viser alle image filer via tshark tshark -R "http.response and http.content_type contains image" -z "proto,colinfo,http.content_length,http.content_length" -z "proto,colinfo,http.content_type,http.content_type" -r D:\PCAP-DUMP\test.pcap Samme men piper til txt fil tshark -R "http.response and http.content_type contains image" -z "proto,colinfo,http.content_length,http.content_length" -z "proto,colinfo,http.content_type,http.content_type" -r D:\PCAP-DUMP\test.pcap > c:\out.txt tshark -i 3 -Y "ip.addr == 192.168.10.1" -e http -w D:\PCAP-DUMP\test2.pcap Extract en ip adresse fra en stor pcap file tshark -r test.pcap -Y ip.addr==192.168.10.10 -w out.pcap ................................................................................................... Tools: Cookies editor - Firefox add on https://addons.mozilla.org/en-US/firefox/addon/573/ Test sites Cookie set page http://www.httprecipes.com/1/2/cookies.php Form sniffing page http://www.httprecipes.com/1/2/forms.php GeoIP database: geeolite.maxmind.com/download/geoip/database Hent - GeoLiteCity.dat - GeoIPASNum.dat - GeoIP.dat ................................................................................................... Edit tools Convert ERF to PCAP: editcap -F libpcap -T ether capture_1.erf 1.pcap Filter til at sortere IP'er af pcap ip.addr == 96.44.189.100 or ip.addr == 95.130.11.183 Dette splitter pcap filer til ca 870 mb i størrelser: editcap -v -c 1000000 capture_1.pcap 1.pcap Dette samler nedstående filer til final1.pcap: mergecap -w final1.pcap 00000.pcap 00001.pcap 00002.pcap 00003.pcap Convert ERF to PCAP: editcap -F libpcap -T ether capture_10-122226.erf DDOS.pcap Dette splitter store (eks. 10GB ) pcap filer til ca 870 mb til 970 mb i størrelser editcap -v -c 1000000 DDOS.pcap DDOS-SPLIT.pcap ................................................................................................... En del af networkminer SplitCap.exe -r capture_06-194223.pcap -ip 156.17.118.244 -s nosplit SplitCap.exe -r huge.pcap -ip 128.183.104.74 -ip 80.67.66.6 -s nosplit