Network Fingerprinting for Real-World Defense
This talk explores the practical application of network fingerprinting techniques for both offensive reconnaissance and defensive threat hunting. It details how TCP/IP and TLS handshake characteristics can be used to identify operating systems, proxy servers, and specific threat actor infrastructure. The speaker demonstrates how to combine these fingerprints with IP-based blocking to create effective, low-noise detection and mitigation strategies. The presentation also covers the impact of VPNs and proxies on fingerprint accuracy and how to account for them in security operations.
Stop Relying on IP Addresses: Why Network Fingerprinting is the Future of Recon
TLDR: Network fingerprinting moves beyond static IP-based detection by analyzing the unique characteristics of TCP/IP and TLS handshakes. By identifying the specific network stack of a client or server, researchers can bypass simple IP-based defenses and gain deeper insights into infrastructure. This approach allows for more precise threat hunting and reconnaissance, even when attackers use proxies or VPNs to mask their origin.
Security professionals often treat IP addresses as the ultimate source of truth. If a connection comes from a known malicious IP, we block it. If it comes from a clean one, we let it through. This binary approach is fundamentally flawed because it ignores the underlying network stack. Every operating system, proxy, and VPN implementation has a unique way of handling TCP/IP options and TLS handshakes. By analyzing these nuances, you can identify the actual technology behind a connection, regardless of the IP address it claims to originate from.
The Mechanics of Network Fingerprinting
Network fingerprinting is not about what the traffic says, but how it says it. When a client initiates a connection, it sends a series of packets that reveal its identity through specific implementation details. For example, the way a Windows machine handles TCP window sizes or the specific order of cipher suites in a TLS Client Hello is distinct from how a Linux-based server or an iPhone handles the same request.
Tools like nmap have long used active probing to identify operating systems, but passive fingerprinting is where the real value lies for modern threat hunting. By sitting on the data pipe and observing existing traffic, you can build a profile of a connection without ever sending a single probe packet. This is critical for stealthy reconnaissance. If you are performing a red team engagement or hunting for C2 infrastructure, you want to avoid triggering alerts. Passive tools like p0f or MuonFP allow you to extract these characteristics without alerting the target.
Going Deeper: The TLS Handshake
While TCP/IP fingerprinting is useful, the real goldmine is in the TLS handshake. The JA3 and JA4 standards have revolutionized how we track encrypted traffic. These fingerprints hash the specific combination of TLS versions, accepted cipher suites, and extensions offered by a client.
Consider a scenario where you are tracking a C2 framework like Cobalt Strike. While the IP address might change as the attacker rotates through different VPS providers, the underlying TLS fingerprint of the beacon often remains constant. By logging these fingerprints in your SIEM, you can correlate seemingly unrelated connections across your network.
# Example of a JA3 hash extraction using tshark
tshark -r capture.pcap -T fields -e tls.handshake.extensions_server_name -e tls.handshake.ciphersuite -e tls.handshake.extensions_type
This level of granularity allows you to distinguish between a legitimate browser connection and a malicious script running on the same machine. When you see a connection that claims to be Chrome but has the fingerprint of a Python library, you have found your anomaly.
Real-World Applicability for Pentesters
During a penetration test, you often encounter environments where IP-based filtering is the primary defense. If you are testing a web application that sits behind a WAF or a reverse proxy, you can use fingerprinting to map out the backend infrastructure. By observing the subtle differences in how the proxy and the backend server respond to specific TCP options, you can often determine the underlying OS of the target server.
Furthermore, when you are dealing with proxies or VPNs, the fingerprinting process becomes a game of peeling back layers. A VPN tunnel will add its own overhead and modify the TCP options, resulting in a fingerprint that reflects the VPN client rather than the original host. By understanding these modifications, you can identify when a target is using a specific VPN provider, which can be a significant finding in a threat model.
Defensive Implementation
Defenders should move away from simple blacklists and toward behavioral and stack-based detection. If your infrastructure is being scanned by a botnet, the scanners will often share a common fingerprint. Instead of blocking individual IPs, you can write an eBPF filter or a firewall rule that drops any traffic matching the fingerprint of known scanners. This is a low-noise, high-impact way to reduce the attack surface.
If you are using Arkime for full packet capture, you can integrate these fingerprinting tools to automatically tag sessions. This allows your SOC team to filter out the noise and focus on the connections that don't match your known-good baseline.
What to Do Next
The next time you are performing reconnaissance or threat hunting, stop looking at the IP address as the primary identifier. Start looking at the packets themselves. Are you seeing consistent TCP options across different connections? Do the TLS fingerprints match the expected user agent?
Start by collecting a baseline of your own network traffic. Use Wireshark to inspect the TCP and TLS headers of your own machines. Once you understand what "normal" looks like, you will be surprised at how easy it is to spot the "weird" traffic that indicates an attacker is present. The goal is to make the attacker's job harder by forcing them to account for their own network stack, a task that is far more difficult than simply rotating an IP address.
Vulnerability Classes
Tools Used
Target Technologies
Attack Techniques
All Tags
Up Next From This Conference
Similar Talks

Kill List: Hacking an Assassination Site on the Dark Web

Hacking Millions of Modems




