nodejs — security advisory
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
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"
}