Skip to content
Heist/ feed
Back to feed
Medium

nodejs — security advisory

Type: advisorySources: OSVAdvisory ID: UBUNTU-CVE-2024-21890

The Node.js Permission Model does not clarify in the documentation that wildcards should be only used as the last character of a file path. For example: ``` --allow-fs-read=/home/node/.ssh/*.pub ``` will ignore `pub` and give access to everything after `.ssh/`. This misleading documentation affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

Products
nodejs
Affected versions
20.18.1+dfsg-1ubuntu2, 20.19.2+dfsg-1, 20.19.4+dfsg-1, 20.19.5+dfsg+~cs20.19.12-4, 22.21.1+dfsg+~cs22.19.0-6ubuntu4, 22.22.0+dfsg+~cs22.19.13-2ubuntu1, 22.22.0+dfsg+~cs22.19.6-1ubuntu2, 22.22.1+dfsg+~cs22.19.15-1ubuntu1, 24.16.0+dfsg+~cs24.13.1-2ubuntu1, 24.18.0+dfsg+~cs24.13.2-1ubuntu1, 24.19.0+dfsg+~cs24.13.3-1ubuntu1
Fixed versions
Not specified
CVEs
CVE-2024-21890
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 01:06 UTC · Revision 1

Source evidence

UBUNTU-CVE-2024-21890

core-osv · Original source

Published 20 Feb 2024, 02:15 UTC

The Node.js Permission Model does not clarify in the documentation that wildcards should be only used as the last character of a file path. For example: ``` --allow-fs-read=/home/node/.ssh/*.pub ``` will ignore `pub` and give access to everything after `.ssh/`. This misleading documentation affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

osv:UBUNTU-CVE-2024-21890

nodejs

Fixed versions: Not specified

nodejs

Fixed versions: Not specified

nodejs

Fixed versions: Not specified

Complete source record
{
  "id": "158e2187e6ac61883839f14b1eaf8f54ccdc64b6b348cb408d0fa96fd235c62f",
  "url": "https://osv.dev/vulnerability/UBUNTU-CVE-2024-21890",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "UBUNTU-CVE-2024-21890",
    "summary": "The Node.js Permission Model does not clarify in the documentation that wildcards should be only used as the last character of a file path. For example: ``` --allow-fs-read=/home/node/.ssh/*.pub ``` will ignore `pub` and give access to everything after `.ssh/`. This misleading documentation affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.",
    "evidence": "osv:UBUNTU-CVE-2024-21890",
    "products": [
      {
        "name": {
          "value": "nodejs",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "20.18.1+dfsg-1ubuntu2",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "20.19.2+dfsg-1",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "20.19.4+dfsg-1",
            "evidence": "/affected/0/versions"
          }
        ]
      },
      {
        "name": {
          "value": "nodejs",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "22.22.1+dfsg+~cs22.19.15-1ubuntu1",
            "evidence": "/affected/1/versions"
          },
          {
            "value": "24.16.0+dfsg+~cs24.13.1-2ubuntu1",
            "evidence": "/affected/1/versions"
          },
          {
            "value": "24.18.0+dfsg+~cs24.13.2-1ubuntu1",
            "evidence": "/affected/1/versions"
          },
          {
            "value": "24.19.0+dfsg+~cs24.13.3-1ubuntu1",
            "evidence": "/affected/1/versions"
          }
        ]
      },
      {
        "name": {
          "value": "nodejs",
          "evidence": "/affected/2/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "20.19.4+dfsg-1",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "20.19.5+dfsg+~cs20.19.12-4",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "22.21.1+dfsg+~cs22.19.0-6ubuntu4",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "22.22.0+dfsg+~cs22.19.6-1ubuntu2",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "22.22.0+dfsg+~cs22.19.13-2ubuntu1",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "22.22.1+dfsg+~cs22.19.15-1ubuntu1",
            "evidence": "/affected/2/versions"
          }
        ]
      }
    ],
    "severity": "medium",
    "structured": {
      "id": "UBUNTU-CVE-2024-21890",
      "aliases": [
        "UBUNTU-CVE-2024-21890"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
        },
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"
        },
        {
          "type": "Ubuntu",
          "score": "medium"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "nodejs",
            "purl": "pkg:deb/ubuntu/nodejs?arch=source&distro=questing",
            "ecosystem": "Ubuntu:25.10"
          },
          "versions": [
            "20.18.1+dfsg-1ubuntu2",
            "20.19.2+dfsg-1",
            "20.19.4+dfsg-1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2024/UBUNTU-CVE-2024-21890.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libnode115",
                "binary_version": "20.19.4+dfsg-1"
              },
              {
                "binary_name": "nodejs",
                "binary_version": "20.19.4+dfsg-1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "nodejs",
            "purl": "pkg:deb/ubuntu/nodejs?arch=source&distro=stonking",
            "ecosystem": "Ubuntu:26.10"
          },
          "versions": [
            "22.22.1+dfsg+~cs22.19.15-1ubuntu1",
            "24.16.0+dfsg+~cs24.13.1-2ubuntu1",
            "24.18.0+dfsg+~cs24.13.2-1ubuntu1",
            "24.19.0+dfsg+~cs24.13.3-1ubuntu1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2024/UBUNTU-CVE-2024-21890.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libnode137",
                "binary_version": "24.19.0+dfsg+~cs24.13.3-1ubuntu1"
              },
              {
                "binary_name": "nodejs",
                "binary_version": "24.19.0+dfsg+~cs24.13.3-1ubuntu1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "nodejs",
            "purl": "pkg:deb/ubuntu/nodejs?arch=source&distro=resolute",
            "ecosystem": "Ubuntu:26.04:LTS"
          },
          "versions": [
            "20.19.4+dfsg-1",
            "20.19.5+dfsg+~cs20.19.12-4",
            "22.21.1+dfsg+~cs22.19.0-6ubuntu4",
            "22.22.0+dfsg+~cs22.19.6-1ubuntu2",
            "22.22.0+dfsg+~cs22.19.13-2ubuntu1",
            "22.22.1+dfsg+~cs22.19.15-1ubuntu1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2024/UBUNTU-CVE-2024-21890.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libnode127",
                "binary_version": "22.22.1+dfsg+~cs22.19.15-1ubuntu1"
              },
              {
                "binary_name": "nodejs",
                "binary_version": "22.22.1+dfsg+~cs22.19.15-1ubuntu1"
              }
            ]
          }
        }
      ],
      "modified": "2026-10-17T12:56:29.649426739Z",
      "provider": "osv",
      "upstream": [
        "CVE-2024-21890"
      ],
      "references": [
        "https://ubuntu.com/security/CVE-2024-21890",
        "https://nodejs.org/en/blog/vulnerability/february-2024-security-releases/#improper-handling-of-wildcards-in---allow-fs-read-and---allow-fs-write-cve-2024-21890---medium",
        "https://www.cve.org/CVERecord?id=CVE-2024-21890",
        "https://www.openwall.com/lists/oss-security/2024/03/11/1"
      ]
    },
    "related_cves": [
      {
        "value": "CVE-2024-21890",
        "evidence": "/upstream"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/1/score"
  },
  "source_id": "core-osv",
  "document_id": 355736,
  "published_at": "2024-02-20T02:15:00+00:00"
}