
Detection and mitigation research lab for CVE-2023-23397 using network and endpoint security telemetry.
This project is a defensive cybersecurity research lab focused on the network behavior associated with CVE-2023-23397.
The project studies suspicious outbound SMB and NTLM authentication from a Windows endpoint and demonstrates a complete defensive workflow:
Baseline
-> Network Observation
-> NTLM Detection
-> Alert Generation
-> Gateway Mitigation
-> Host Mitigation
-> Validation
The laboratory is fully isolated and uses only systems owned and controlled for authorized security testing.
This repository is organized as a reproducible defensive security study rather than an exploit demonstration. Its central research question is:
Can SMB/NTLM protocol semantics and network trust boundaries detect anomalous outbound authentication behavior associated with CVE-2023-23397, and how do host-side and gateway-side mitigations differ in blocking behavior and sensor visibility?
The study evaluates four questions:
The project validates forced outbound SMB/NTLM behavior associated with CVE-2023-23397 and the corresponding detection and mitigation controls. It does not prove that Outlook processed a malicious MAPI message or that CVE-2023-23397 was exploited.
| Document | Purpose |
|---|---|
report/project-report.md | Main research report with questions, design, results, discussion, and limitations |
docs/literature-review.md | Review of authoritative work on the vulnerability, Forced Authentication, NTLM, Zeek and firewall controls |
docs/research-methodology.md | Topology, variables, controls, procedures, evidence sources and validity boundaries |
docs/live-validation-2026-09-11.md | Exact live validation observations and final lab state |
evidence/validation-20260911/ | PCAPs, logs, integrity manifest and machine-readable verification summary |
scripts/verify_validation_evidence.py | Read-only automated evidence consistency checks |
The primary goals of this project are to:
The laboratory contains three virtual machines.
| System | Role | Address |
|---|---|---|
| Windows-Victim | Protected Windows endpoint | 10.10.20.10/24 |
| Ubuntu-Sensor | Router and Zeek security sensor | 10.10.20.1/24, 10.10.30.1/24 |
| Kali-Adversary | Controlled SMB destination | 10.10.30.10/24 |
Logical traffic path:
Windows-Victim
10.10.20.10
|
| VICTIM_NET
|
Ubuntu-Sensor
10.10.20.1 / 10.10.30.1
|
| ATTACK_NET
|
Kali-Adversary
10.10.30.10
The victim and adversary networks are isolated from each other.
Traffic between them must traverse Ubuntu-Sensor, allowing the sensor to observe and control the communication.
A separate VMware management network is used for administrative SSH access to Ubuntu-Sensor.
More information:
lab/network-plan.md
CVE-2023-23397 is associated with forced outbound authentication behavior involving Microsoft Outlook.
The security-relevant behavior is a Windows system attempting to authenticate to an attacker-controlled network resource.
This laboratory focuses on the observable network behavior:
Windows endpoint
-> outbound TCP/445
-> SMB negotiation
-> NTLM authentication
-> network detection
The laboratory does not claim that every generated SMB event represents exploitation of the Outlook vulnerability.
Instead, controlled SMB and NTLM traffic is used to safely develop and validate defensive detection logic.
Detailed analysis:
docs/attack-flow.md
Primary technique:
T1187 - Forced Authentication
Primary tactic:
Credential Access
The project focuses on detecting and preventing suspicious outbound authentication from a protected workstation toward an untrusted destination.
The first phase established normal routed communication between the Windows victim and the controlled adversary.
Baseline packet captures and Zeek connection logs were collected before detection logic was introduced.
This provided a reference point for later comparison.
Analysis:
docs/baseline-traffic-analysis.md
A controlled SMB server was hosted on Kali-Adversary.
Windows-Victim successfully accessed:
\\10.10.30.10\SHARE
Zeek successfully parsed:
The baseline demonstrated that the sensor could observe the complete authentication path before custom detection logic was introduced.
Analysis:
docs/smb-baseline-analysis.md
A custom Zeek detector was developed:
detections/zeek/cve_2023_23397_ntlm.zeek
The detector generates:
CVE23397::Suspicious_Outbound_NTLM
The rule evaluates four main conditions:
This provides more context than alerting on TCP/445 alone.
Detection logic:
Victim network
+
Untrusted destination
+
TCP/445
+
NTLM Authenticate
=
Suspicious outbound NTLM notice
A five-minute suppression interval is used to reduce duplicate notices for repeated authentication toward the same destination.
The custom detector was successfully validated using controlled SMB and NTLM traffic.
The validated event demonstrated correlation between:
A validated alert included:
CVE23397::Suspicious_Outbound_NTLM
The detection analysis and integrity-verified evidence are documented in:
docs/ntlm-detection-analysis.md
The first mitigation was applied on Ubuntu-Sensor.
The gateway blocked forwarded TCP/445 traffic from:
10.10.20.10
to:
10.10.30.10:445
After the rule was enabled:
Windows SYN
-> Ubuntu Sensor
-> DROP
Observed result:
Validation:
docs/mitigation-validation.md
A second mitigation was tested using Windows Defender Firewall.
The endpoint blocked outbound:
TCP/445 -> 10.10.30.10
Observed result:
This demonstrated an important difference between the two defensive control points.