CVE-2016-10518

Source
https://nvd.nist.gov/vuln/detail/CVE-2016-10518
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2016-10518.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2016-10518
Aliases
Related
Published
2018-05-31T20:29:00Z
Modified
2025-01-14T06:19:55.744901Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N CVSS Calculator
Summary
[none]
Details

A vulnerability was found in the ping functionality of the ws module before 1.0.0 which allowed clients to allocate memory by sending a ping frame. The ping functionality by default responds with a pong frame and the previously given payload of the ping frame. This is exactly what you expect, but internally ws always transforms all data that we need to send to a Buffer instance and that is where the vulnerability existed. ws didn't do any checks for the type of data it was sending. With buffers in node when you allocate it when a number instead of a string it will allocate the amount of bytes.

References

Affected packages

Debian:11 / node-ws

Package

Name
node-ws
Purl
pkg:deb/debian/node-ws?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
1.0.1+ds1.e6ddaae4-1

Ecosystem specific

{
    "urgency": "unimportant"
}

Debian:12 / node-ws

Package

Name
node-ws
Purl
pkg:deb/debian/node-ws?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
1.0.1+ds1.e6ddaae4-1

Ecosystem specific

{
    "urgency": "unimportant"
}

Debian:13 / node-ws

Package

Name
node-ws
Purl
pkg:deb/debian/node-ws?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
1.0.1+ds1.e6ddaae4-1

Ecosystem specific

{
    "urgency": "unimportant"
}

Git / github.com/websockets/ws

Affected ranges

Type
GIT
Repo
https://github.com/websockets/ws
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed

Affected versions

0.*

0.4.32
0.5.0
0.6
0.6.2
0.6.3
0.6.4
0.6.5
0.7
0.7.1
0.7.2
0.8.0
0.8.1

1.*

1.0.0

v0.*

v0.0.1
v0.0.2
v0.0.3
v0.0.4
v0.1.0
v0.1.1
v0.1.2
v0.2.0
v0.2.5
v0.2.6
v0.2.7
v0.2.8
v0.2.9
v0.3.0
v0.3.1
v0.3.2
v0.3.3
v0.3.4
v0.3.4-2
v0.3.5
v0.3.5-2
v0.3.5-3
v0.3.5-4
v0.3.6
v0.3.7
v0.3.8
v0.3.9
v0.4.0
v0.4.1
v0.4.10
v0.4.11
v0.4.12
v0.4.13
v0.4.14
v0.4.15
v0.4.16
v0.4.17
v0.4.18
v0.4.19
v0.4.2
v0.4.20
v0.4.21
v0.4.22
v0.4.23
v0.4.24
v0.4.25
v0.4.26
v0.4.27
v0.4.28
v0.4.29
v0.4.3
v0.4.30
v0.4.31
v0.4.4
v0.4.5
v0.4.6
v0.4.7
v0.4.8
v0.4.9