Miggo Logo

CVE-2016-10519:
Remote Memory Disclosure in bittorrent-dht

5

CVSS Score

Basic Information

EPSS Score
0.54157%
Published
9/1/2020
Updated
1/9/2023
KEV Status
No
Technology
TechnologyJavaScript

Technical Details

CVSS Vector
AV:N/AC:L/Au:N/C:P/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
bittorrent-dhtnpm< 5.1.35.1.3

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from improper handling of node IDs in two key functions:

  1. _addNode processes incoming node information without validating the nodeId type, allowing invalid inputs to reach Buffer creation
  2. idToBuffer previously created Buffers from any input type using 'new Buffer(id, 'hex')', which when given non-string/non-Buffer inputs (like numbers/objects) would read from arbitrary memory addresses. The patches add type checks and null returns to prevent this. These functions would appear in stack traces when processing malicious messages due to their role in node ID validation and Buffer allocation.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

V*rsions o* `*ittorr*nt-**t` prior to *.*.* *r* *****t** *y * r*mot* m*mory *is*losur* vuln*r**ility. T*is vuln*r**ility *llows *n *tt**k*r to s*n* * sp**i*i* s*ri*s o* o* m*ss***s to * list*nin* p**r *n* **t it to r*v**l int*rn*l m*mory. T**r* *r*

Reasoning

T** vuln*r**ility st*ms *rom improp*r **n*lin* o* no** I*s in two k*y *un*tions: *. _***No** pro**ss*s in*omin* no** in*orm*tion wit*out v*li**tin* t** no**I* typ*, *llowin* inv*li* inputs to r**** *u***r *r**tion *. i*To*u***r pr*viously *r**t** *u*