
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.
Windows
-> SYN
-> Network Sensor
-> DROP
The network sensor retains visibility into the blocked attempt.
Windows
-> Host Firewall DROP
The packet never reaches the external network sensor.
Validation:
docs/windows-host-mitigation-validation.md
| State | TCP/445 | Sensor Visibility | SMB | NTLM | Zeek Alert |
|---|---|---|---|---|---|
| No mitigation | Allowed | Full | Yes | Yes | Yes |
| Gateway block | Blocked at gateway | SYN attempts visible | No | No | No |
| Windows host block | Blocked at endpoint | No matching packets | No | No | No |
This demonstrates both detective and preventive controls.
The laboratory demonstrates that detection and prevention should be used together.
The defensive model includes:
Endpoint filtering
+
Network egress filtering
+
Zeek network monitoring
+
NTLM authentication monitoring
+
Patch management
Gateway controls provide centralized enforcement and network visibility.
Host controls stop unwanted communication earlier.
Zeek provides visibility when suspicious authentication reaches the monitored network path.
The repository preserves evidence collected during the experiments.
Stored under:
evidence/pcap/
Examples include:
Stored under:
evidence/logs/
Evidence includes:
SHA-256 hashes are recorded in the corresponding analysis documents to support evidence integrity.
cve-2023-23397-detection-lab/
|
|-- README.md
|-- LICENSE
|
|-- lab/
| `-- network-plan.md
|
|-- detections/
| `-- zeek/
| `-- cve_2023_23397_ntlm.zeek
|
|-- docs/
| |-- attack-flow.md
| |-- threat-model.md
| |-- literature-review.md
| |-- research-methodology.md
| |-- baseline-traffic-analysis.md
| |-- smb-baseline-analysis.md
| |-- ntlm-detection-analysis.md
| |-- mitigation-analysis.md
| |-- mitigation-validation.md
| |-- windows-host-mitigation-validation.md
| `-- live-validation-2026-09-11.md
|
|-- evidence/
|-- pcap/
|-- logs/
|-- screenshots/
`-- validation-20260911/
|
|-- report/
| `-- project-report.md
|
`-- scripts/
`-- verify_validation_evidence.py
The current project has successfully completed:
Lab Architecture
|
v
Routed Network Validation
|
v
Baseline PCAP
|
v
SMB / NTLM Baseline
|
v
Custom Zeek Detection
|
v
Detection Alert Validation
|
v
Gateway TCP/445 Mitigation
|
v
Gateway Post-Mitigation Validation
|
v
Windows Host TCP/445 Mitigation
|
v
Host Post-Mitigation Validation
Validated tools used in the current implementation include:
Potential future improvements include:
These items are future work and are not presented as completed capabilities.
The laboratory primarily validates network-observable SMB and NTLM behavior.
The current controlled tests demonstrate the authentication behavior relevant to CVE-2023-23397 but do not claim to reproduce every component of real-world Outlook exploitation.
The custom rule is designed for the defined laboratory trust boundaries and would require tuning before use in a production environment.
The live three-VM environment was revalidated on 2026-09-11. The run confirmed the routed packet path, controlled SMB/NTLM telemetry, detector loading, correlated custom notices, negative cases, gateway and host blocking, and rollback recovery.
Key evidence is consistent across the repository:
ens33, 0 on ens34, and an iptables counter of 5 packets / 260 bytes.CCpuF7S8CCLEmpKsd.The validated conclusion is limited to forced outbound SMB/NTLM behavior associated with CVE-2023-23397 and the corresponding detection and mitigation controls. The project does not prove that Outlook processed a malicious MAPI message or that CVE-2023-23397 was exploited.
See docs/live-validation-2026-09-11.md and evidence/validation-20260911/.
All testing documented in this repository is conducted within an isolated and controlled laboratory environment using systems owned or explicitly authorized for testing.
The project is intended exclusively for:
No production systems or unauthorized external systems are targeted.