NetworkThreatHunting
Find SQL Injection T1190
Look for
',---,#,UNION,WAITFOR DELAY, andSLEEP()statements in web traffic.
Find Cross Site Scripting T1189
Look for
<script>,onmouseover,onclick, andonerrorstatements in traffic.
Find Path Traversal
Look for traffic with
/etc/shadowand/etc/passwdin the traffic.Look for traffic with
%2E%2E%2F%2E%2E%2Furl encoded data.
Detect Self Signed Certificates T1587.003
Identify Server or Client traffic in Wireshark with "Certificate, Server Key Exchange, Server Hello Done" and identify the issuer and subject. If same, then self signed.
Detect Zone Transfer T1590.002
Use WireShark to find DNS zone transfers with
dns.qry.type == 252.
Detect Port Scanning T1595.001
Filter traffic in WireShark for source and destination IP with SYN ACK (
tcp.flags == 0x0012) to show ports that responded to SYN from the adversary.Filter traffic in WireShark for source and destination IP with reset flag set by the target using
tcp.flags.reset == 1.
Identify Web Scanning T1595.003
Filter traffic in WireShark to display the various URIs and GET requests from HTTP traffic. A large number means adversary is web scanning.
Look for all subdomains during web scanning in WireShark with
_ws.col.info == "HTTP/1.1 200 OK (text/html)".
Identify LLMNR Poisoning T1557.001
Filter for "LLMNR" traffic within wireshark pcap and identify numerous resquests and response failures from a machine. There will be NTLMSSP_NEGOTIATE, NTLMSSP_CHALLENGE, and NTLMSSP_AUTH messages.
Identify Credential Stuffing T1110.004
Use
wiresharkwith http traffic to identify username and password combinations to the same destination IP address, repeatedly using POST REQUESTS, and in quick succession. The HTTP status of 404 is a common response from the target.Use
tsharkto filter and identify repeated POST requests with username and password combinations.Command line:
$ tshark -Y "http.request.method==POST and ip.src ==156.146.62.213 and http.request.uri contains loginservice" -r meerkat.pcap -T fields -e text | cut -d " " -f 7,11 | sort | uniq
View Network Connections to Workstation [No TTP]
Use
tcpviewwithin Sysinternalstcpview -accepteula
Use the native to windows,
resmonvia command lineresmon
Use
procmonwithin SysInternalsprocmon -accepteula
Use
zeekwith conn.log from a pcapzeek-cutcan be beneficial on the command line to pick specific fields
Use
Get-NetTCPConnection -State Listen | Select-Objecct -Property LocalAddress,LocalPort,OwingProcesswithin PowershellUse
tcpdumpon the command line.Command to use is
tcpdump -r file -n
Use volatility with a forensic image.
Version 3 uses windows.netscan.NetScan
Use Rita to find beaconing activity.
Use SRUM Dump to examine system usages related to processes.
View old network connections at
SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\UnmanagedorSOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\ManagedorSOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Nla\Cache.Use
eventvwr.mscwith Windows Security Event logs 5156 for Windows Filtering Platform permitted connections.
View Network Flow to/from Workstations [No TTP]
Use
zeekwith conn.log from a pcapzeek-cutcan be beneficial on the command line to pick specific fields
Use Rita to find beaconing activity.
View DHCP Leases [No TTP]
Use
zeekwith dhcp.log from pcapzeek-cutcan be beneficial on the command line to pick specific fields
Use Wireshark and filter on DHCP traffic.
View DNS Activity [No TTP]
Use
zeekwith dns.log from pcapzeek-cutcan be beneficial on the command line to pick specific fields
Use Wireshark and filter on DNS traffic.
Use Rita to find beaconing activity.
Use WireShark to find DNS zone transfers with
dns.qry.type == 252.
View SNMP Activity [No TTP]
Use
zeekwith snmp.log from pcapzeek-cutcan be beneficial on the command line to pick specific fields
Use Wireshark and filter on SNMP traffic.
View Syslog Activity [No TTP]
Use
zeekwith syslog.log from pcapzeek-cutcan be beneficial on the command line to pick specific fields
View File Hashes In Transit T1020
Use
zeekwith the/opt/zeek/share/zeek/policy/frameworks/files/hash-all-files.zeekframeworkzeek-cutcan be beneficial on the command line to pick specific fieldsexamine the
files.logfile
Use
zeekwith the/opt/zeek/share/zeek/policy/frameworks/files/extract-all-files.zeekframeworkzeek-cutcan be beneficial on the command line to pick specific fieldsexamine the
extract-filesfolder
Use Wireshark and extract objects.
Use
zeekwith thezeek-sniffpasspackagezeek-cutcan be beneficial on the command line to pick specific fields
Use Wireshark and examine packets.
View GEO IP Information in Traffic [No TTP]
Use
zeekwith thegeoip-connpackage.zeek-cutcan be beneficial on the command line to pick specific fields
Detect Log4J Exploitation T1059.007
Use
zeekwith the/opt/zeek/share/zeek/site/cve-2021-44228script/packagezeek-cutcan be beneficial on the command line to pick specific fieldsexamine the
log4j.logfile
Determine Number of Network Connections [No TTP]
Use
Get-WinEventwith Sysmon Event Logs.Command to use is
Get-WinEvent -Path <Path to Log> -FilterXPath '*/System/EventID=3 | Measure-Object
Use Wireshark statistics.
Use
tsharkwithin the command line.Command to use is
"C:\Program Files\Wireshark\tshark.exe" -r pcap_file.pcap -Y "icmp" -T fields -e data
Use Rita to find beaconing activity.
Use Rita to find beaconing activity.
Find VPN Connections T1333
Use Event ID 6272 within windows security logs for external IP of user.
Look for port 3389 connections within network traffic
View WMI Traffic T1047
Identify traffic on port 135 or 137 with
dce_rpcservice.
View Non Standard Port Traffic T1509.
Use PSReadline to view scriptblock activity.
Identify Web Shells T1505.003
Look for out of date browser agents with HTTP traffic on port 80.
Look for connections to webpages like
.php, .aspx, .jsp, or .asp.
Identify Ping Sweeps
Use tcpdump with
-nto resolve.Command to use:
tcpdump -r pcap 'host 92.242.140.21' -n
Look for increase in traffic with destination port 445 and destination process
ntoskrnl.exeto each workstation within a domain.
Last updated