CVE-2023-38504: Sails denial of service through virtual socket request

CVE-2023-38504 · Severity: low · CVSS 3.1 · Published 2023-07-27

Sails is a popular Node.js web framework for building real-time applications. Versions up to 1.5.6 contain a denial of service vulnerability in the sockets module that allows an attacker to send a specially crafted virtual request, causing the entire Node.js process to crash and disrupting service availability for all users.

Technologies: sails (npm). Vendors: npm.

Quick answers

Is CVE-2023-38504 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2023-38504 being exploited in the wild.
How severe is CVE-2023-38504?
Low severity, with a CVSS score of 3.1, published 27 July 2023.
Which products and versions are affected?
sails (npm) SEMVER:introduced=0,fixed=1.5.7.
Is there a fix for CVE-2023-38504?
Yes. sails (npm): upgrade to 1.5.7 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2023-38504 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2023-38504?
Check whether you run sails (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • sails (npm): upgrade to 1.5.7 or later
    npm install sails@1.5.7

Technical details

The vulnerability is an uncaught exception (CWE-248) in the Sails sockets module that fails to properly handle certain virtual requests. An attacker on the network can send a malicious virtual request to an app with sockets enabled, triggering an unhandled exception that crashes the Node.js process. The attack requires no authentication, no special privileges, and the app must have the sockets hook enabled (which is default). The vulnerability was fixed in Sails v1.5.7 by properly catching and handling the exception. Workarounds include disabling the sockets hook and removing the sails.io.js client.

Affected products

  • Balderdashy Sails <=1.5.6

Identifiers

  • CVE-2023-38504
  • GHSA-gpw9-fwm8-7rx7

Timeline

  • 2023-07-27: disclosed
  • 2023-07-27: patched: Fixed in Sails v1.5.7

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.