image.png

Walkthrough is written by Lakshan Sameera

Special thanks to ****tryhackme, am03bam4n for providing the room. You can access this room using the following link.

https://tryhackme.com/r/room/breachingad

Task 1: Introduction to AD Breaches

For this Tryhackme room, I’m using my own Kali Linux machine, so I need to configure the network with the specific OpenVPN configuration file provided for "network" rooms. This configuration enables secure access to the network environment required for these exercises. I hope you are familiar with the configuration process. If you are using AttackBox, you don't need to configure the network, but you still have to configure the DNS server in the host machine.

The room has a detailed walkthrough on how to configure the DNS server. However, If you are not familiar with this kind of configuration, you can follow the steps.

Task 2: OSINT and Phishing

Two common methods for obtaining initial AD credentials are Open Source Intelligence (OSINT) and Phishing.

Task 3: NTLM Authenticated Services

NTLM and NetNTLM

NTLM (New Technology LAN Manager) is a set of security protocols used to authenticate identities within Active Directory (AD). NTLM’s challenge-response scheme, called NetNTLM, allows network-based authentication by sending an authentication challenge from a service to the client. This scheme is commonly used for services like Exchange servers with an exposed Outlook Web App (OWA), Remote Desktop Protocol (RDP) over the internet, exposed VPN endpoints connected to AD, and other internet-facing applications utilizing NTLM authentication.

In NetNTLM, the application acts as an intermediary between the client and AD. When a user attempts to authenticate, the application forwards the challenge to a Domain Controller rather than directly verifying the user’s credentials. If the Domain Controller confirms the challenge response, the application grants access on behalf of the user. This setup ensures that AD credentials are stored only on the Domain Controller, maintaining security by preventing applications from directly handling or storing sensitive credentials.