Llmnr poisoning
Technique
LLMNR (Link-Local Multicast Name Resolution) and NBT-NS (NetBIOS Name Service) poisoning are attack techniques that target Windows name resolution fallback mechanisms. When a Windows system can't resolve a hostname using DNS, it falls back to these broadcast-based protocols. An attacker on the same network can respond to these broadcast requests, impersonating the requested resource and capturing authentication hashes.
This technique allows attackers to collect Net-NTLMv2 hashes that can be cracked offline or potentially relayed to authenticate to other services.
Prerequisites
Access Level: Network access to the target environment (same broadcast domain)
System State: Tr arget Windows systems with LLMNR and/oNBT-NS enabled (default in most Windows environments)
Tools: Responder (Linux) or Inveigh (Windows)
Execution
From Linux Using Responder
-
Start Responder and listen for LLMNR/NBT-NS requests:
-
Wait for authentication hashes to come in as systems attempt to resolve hostnames
-
Crack the captured Net-NTLMv2 hashes:
From Windows Using Inveigh
PowerShell Version
C# Version (InveighZero)
You can view unique captured hashes by typing:
View captured usernames:
Abuse Options
Once you've captured Net-NTLMv2 hashes, you have two primary options:
-
Crack the hashes offline using tools like Hashcat or John the Ripper to recover plaintext passwords
- [[hash_cracking]]
-
Relay the authentication attempt to other services using NTLM Relay attacks (see relay attacks technique)
- [[relay_attacks]]
Hash Cracking with Hashcat
Detection & Mitigation
Detection
- Monitor network traffic for unusual LLMNR and NBT-NS responses
- Look for authentication attempts from unexpected sources
- Use honeypot hostnames that trigger alerts when resolved
Mitigation
- Disable LLMNR:
-
Via Group Policy: Local Computer Policy > Computer Configuration > Administrative Templates > Network > DNS Client > "Turn OFF multicast Name Resolution"
-
Disable NBT-NS:
- Navigate to Network Connections > Network Adapter Properties > TCP/IPv4 Properties > Advanced tab > WINS tab
- Select "Disable NetBios over TCP/IP"
If you cannot disable these protocols:
- Implement Network Access Control (NAC) to restrict unauthorized devices
- Require strong passwords (14+ characters with complexity) to make hash cracking difficult
- Segment networks to limit the scope of potential attacks
- Use SMB signing to prevent NTLM relay attacks
- Consider implementing additional authentication factors