Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach nDPI-inspected network path
-
DeliveryEstablish SoftEther-classified UDP flow
-
ExploitSend crafted short SoftEther datagram
-
ExecutionTrigger OOB read in host_fqdn dissector
-
ImpactCrash or destabilize DPI process
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | nDPI must be actively inspecting network traffic, and the targeted flow must already be classified by nDPI as SoftEther before the trigger packet is sent. The attacker then sends a crafted short/truncated SoftEther UDP datagram so that the consumed byte count used by strncmp exceeds the actual payload length, causing a read beyond the packet buffer in dissect_softether_host_fqdn(). No authentication and no user interaction are required (PR:N/UI:N per the CVSS 4.0 vector). The key limiting factor is the precondition that a SoftEther flow must already exist and be classified on the monitored segment, which constrains purely opportunistic exploitation; impact is limited to availability (process crash/instability) of the DPI engine, not data disclosure or code execution. |
| Impact | The signals point to a moderate, bounded risk rather than a top-tier emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) shows a remotely reachable, low-complexity, unauthenticated trigger, which raises the base to 6.9, but the only impact metric set is VA:L - the out-of-bounds read affects availability in a limited way (potential crash/instability of the DPI engine) with VC:N and VI:N, so there is no confidentiality or integrity impact per the vendor vector. This tempers the 'network/unauthenticated' alarm: the worst realistic outcome is a denial-of-service of the monitoring process, not code execution or data theft. EPSS is low at 0.43% (37th percentile) and the CVE is not listed in CISA KEV, consistent with no confirmed active exploitation. The vuln.today decision label is 'this_month', indicating a routine-but-prompt patch priority rather than act_now/emergency. Note a tension to verify: the 'Information Disclosure' tag conflicts with the CVSS VC:N (no confidentiality impact) - the flaw is a CWE-125 out-of-bounds read whose comparison result is not returned to the attacker, so it does not disclose data to a remote party; treat the 'Information Disclosure' labeling as questionable. A public PoC reference (hackmd write-up) exists but is not verified as working exploit code, so PoC availability must not be read as active exploitation. |
| Exploit ScenarioDerived | An attacker able to put traffic on a network segment inspected by nDPI first ensures a flow is classified as SoftEther, then sends a crafted short/truncated SoftEther UDP datagram on that already-classified flow. Because dissect_softether_host_fqdn() passes the consumed byte count instead of the actual data length to strncmp, the comparison reads past the packet payload buffer, risking a crash or instability of the monitoring process. A public PoC reference exists; it is not verified as working exploit code. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
An out-of-bounds read in nDPI's SoftEther dissector (dissect_softether_host_fqdn() in softether.c, all versions through 6.0) lets remote, unauthenticated attackers crash or destabilize a DPI engine that is inspecting traffic. The flaw is only reachable once nDPI has already classified a flow as SoftEther: the attacker then sends a crafted short or truncated SoftEther UDP datagram so that the consumed byte count passed to strncmp exceeds the real payload length, and the comparison runs past the end of the packet buffer. Impact is limited to availability of the monitoring process (no confidentiality or integrity effect), and the precondition of an existing classified SoftEther flow constrains opportunistic abuse; EPSS is low at 0.43% (37th percentile), there is no KEV listing, and no working exploit code appears in the available data, although a public technical write-up of the bug exists.
RemediationAI
Patch available per vendor advisory: the upstream fix is GitHub PR https://github.com/ntop/nDPI/pull/3298, merged as commit https://github.com/ntop/nDPI/commit/ca9d819151606377ac53305583fe819748c69be2, which adds a val1.value_size > 0 guard before the strncmp against "host_name"; a tagged release version containing this commit is not identified in the provided data, so confirm the fix is present before upgrading and rebuild any product that statically links nDPI. Until the fixed code is deployed, the practical exposure reduction is to limit where SoftEther parsing runs - the bug requires nDPI to have already classified a flow as SoftEther, so keeping the DPI sensor off untrusted or Internet-facing segments, or restricting SoftEther UDP traffic to trusted management networks, removes the precondition, at the cost of losing visibility into genuine SoftEther sessions on those paths. Where the build permits disabling the SoftEther protocol detector entirely, that eliminates the parser path but also stops SoftEther classification and any reporting that depends on it. Monitor the inspecting process for crashes or restarts as an indicator of attempted triggering, and track https://github.com/ntop/nDPI/issues/3291 and the VulnCheck advisory for updated fixed-version guidance.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
nDPI is ntop's open-source deep packet inspection library, used to classify flows for traffic-monitoring and security tooling that embeds it. Its SoftEther protocol parser walks TLV-style fields in SoftEther packets; dissect_softether_host_fqdn() compares a parsed value against the literal "host_name" using value_siz, the number of bytes consumed so far, rather than the actual length of the parsed value. When a truncated or short SoftEther datagram is supplied, that consumed count can exceed what remains in the payload buffer, so strncmp reads past the end of the packet buffer (CWE-125, out-of-bounds read). The upstream fix in PR #3298 / commit ca9d819 simply guards the comparison with val1.value_size > 0 before calling strncmp, confirming that the defect is a missing length/emptiness check on the parsed value rather than a memory-corruption primitive. Because the read is bounded by the comparison length and the result only feeds protocol identification, the realistic consequence is a crash or instability of the inspecting process, not disclosure or code execution - consistent with the assessed CVSS 3.1 vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L. The exact trigger mechanics beyond the truncated-datagram description are as stated in the available sources.
Know when Ndpi gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Remote unauthenticated crafted packet triggers an OOB read in the DPI library; the read value is not returned so C:N/I:N, and the only effect is a limited crash risk giving A:L.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
ntop nDPI through 6.0 contains an out-of-bounds read vulnerability in dissect_softether_host_fqdn() in softether.c that compares host_name using the consumed byte count instead of data length. Remote attackers can send crafted short UDP datagrams on already-classified SoftEther flows, causing strncmp to read beyond the packet payload buffer.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
In nDPI through 3.2 Stable, the SSH protocol dissector has multiple KEXINIT integer overflows that result in a controlle
In nDPI through 3.2, the OpenVPN dissector is vulnerable to a heap-based buffer over-read in ndpi_search_openvpn in lib/
In nDPI through 3.2, the packet parsing code is vulnerable to a heap-based buffer over-read in ndpi_parse_packet_line_in
ntop nDPI 3.4 has a stack-based buffer overflow in processClientServerHello. Rated high severity (CVSS 8.8), this vulner
In nDPI through 3.2, the Oracle protocol dissector has a heap-based buffer over-read in ndpi_search_oracle in lib/protoc
In nDPI through 3.2 Stable, an out-of-bounds read in concat_hash_string in ssh.c can be exploited by a network-positione
In nDPI through 3.2, ndpi_reset_packet_line_info in lib/ndpi_main.c omits certain reinitialization, leading to a use-aft
In nDPI through 3.2, there is a stack overflow in extractRDNSequence in lib/protocols/tls.c. Rated critical severity (CV
In nDPI through 3.2, the H.323 dissector is vulnerable to a heap-based buffer over-read in ndpi_search_h323 in lib/proto
Heap buffer overflow in ntop nDPI before version 6.0 allows unauthenticated network-adjacent or remote attackers to corr
Crafted DNS traffic parsed by the nDPI 5.1.0 deep-packet-inspection library can terminate the hosting process wherever t
nDPI through 4.12 has a potential stack-based buffer overflow in ndpi_address_cache_restore in lib/ndpi_cache.c. Rated h
EUVD-2026-110492
GHSA-gpg3-522v-2frf
NVD
CVE.org
EPSS
Exploit-DB