Miggo Logo

CVE-2020-25340: NFStream Local Denial of Service (DoS)

5.5

CVSS Score
3.1

Basic Information

EPSS Score
0.14854%
Published
5/24/2022
Updated
9/26/2024
KEV Status
No
Technology
TechnologyPython

Technical Details

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
nfstreampip= 5.2.0

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability arises when an NFStreamer object is destroyed without being used, leaving allocated modules (like nDPI contexts) unfreed. The GitHub issue explicitly links the leak to improper cleanup in nDPI's ndpi_flow_free(), but the root cause in NFStream lies in its lifecycle management. The NFStreamer init method initializes these modules, and the NDPI plugin's del method (or related cleanup logic) fails to free them if the object is destroyed early. This matches CWE-401 (missing memory release) and the described exploit scenario.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

*n issu* w*s *is*ov*r** in N*Str**m *.*.*. ****us* som* *llo**t** mo*ul*s *r* not *orr**tly *r***, i* t** n*str**m o*j**t is *ir**tly **stroy** wit*out **in* us** **t*r it is *r**t**, it will **us* * m*mory l**k t**t m*y r*sult in * lo**l **ni*l o* s

Reasoning

T** vuln*r**ility *ris*s w**n *n N*Str**m*r o*j**t is **stroy** wit*out **in* us**, l**vin* *llo**t** mo*ul*s (lik* n*PI *ont*xts) un*r***. T** *it*u* issu* *xpli*itly links t** l**k to improp*r *l**nup in n*PI's n*pi_*low_*r**(), *ut t** root **us*