Writing an NTLM Plug-in for Brute-Force Testing
Brute-forcing is the common attack technique of repeatedly guessing credentials to authenticate to a remote server. Now that we’ve covered the basics of what is available for plug-in developers, it’s time to create an example plug-in that you can use in a real-life network-penetration test scenario.
Installations of Microsoft’s IIS web server are
widely deployed. IIS supports two common authentication schemes. The
first is
Basic
authentication, which is a nonencrypted legacy form of authentication
to a restricted area (the restricted area is known as a
realm). The second is
NTLM (NT Lan Man) authentication. NTLM
authenticates against existing credentials on the Windows operating
system. Our new plug-in, named nikto_ntlm.plugin,
guesses credentials against this form of authentication. A possible
attack strategy would be to guess NTLM credentials to the domain, and
then use these credentials to access another available remote
administration—i.e., Terminal Server. The benefit of this
strategy is that with NTLM authentication over HTTP you can guess
credentials faster than you can with Terminal Server. (In either case
it is important to consider account lockout policies.)
First, comment out routines that generate significant traffic. This lets you focus on the specific plug-in when looking through logs and network sniffers during testing. Starting from line 100, our new nikto.pl file that is to be used for plug-in development will look ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access