From Code to Coverage (Part 6): What netlogon.log Sees That Event 1644 Never Will
A deep technical investigation into ldapnomnom, a tool that claims to generate no Windows audit logs while brute-forcing Active Directory usernames via LDAP Ping (cLDAP). Source code analysis reveals the tool actually uses TCP (not UDP), making it detectable via Event 5156 from the Windows Filtering Platform. The post explains why Event 1644 structurally cannot log LDAP Ping traffic (it bypasses the LDAP engine entirely, routing to netlogon.dll instead), while netlogon.log with debug logging captures every queried username. A key defender advantage: netlogon.log distinguishes disabled accounts from nonexistent ones, while attackers see identical responses for both. True UDP cLDAP (demonstrated with a custom cldap_ping.py) does evade Event 5156 but still appears in netlogon.log without source IP attribution. Microsoft Defender for Identity (MDI external ID 2437) can detect both TCP and UDP variants via packet capture but is threshold-based and bypassable with throttling. The recommended detection approach correlates netlogon.log usernames with Event 5156 source IPs using a 5-second timestamp window.