node-katex — security advisory
KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web. From 0.11.0 until 0.18.2, KaTeX uses ordinary JavaScript property access for the renderer options object, the trust setting, default and processor setting metadata, and namespace lookup and group restoration, allowing inherited properties to be treated as explicitly supplied values. When Object.prototype is already polluted or an attacker controls the options object's prototype, attacker-controlled mathematical expressions can use an inherited trust value to enable trusted rendering and produce links capable of user-interaction cross-site scripting or loading attacker-selected external resources in a consuming application that inserts unsanitized KaTeX output into a page. KaTeX does not itself create the prototype pollution, and rendering an expression alone does not execute script. This issue is fixed in version 0.18.2.
- Products
- node-katex
- Affected versions
- 0.10.2+dfsg-10, 0.10.2+dfsg-8, 0.10.2+dfsg-9, 0.13.11+~cs6.0.0-2, 0.13.11+~cs6.0.0-2ubuntu0.1~esm1, 0.16.10+~cs6.1.0-2, 0.16.10+~cs6.1.0-2ubuntu0.24.04.1~esm1, 0.16.10+~cs6.1.0-2ubuntu1, 0.16.10+~cs6.1.0-5ubuntu1, 0.16.10+~cs6.1.0-7, 0.16.10+~cs6.1.0-7build1, 0.16.10+~cs6.1.0-8, 0.16.4+~cs6.1.0-1, 0.8.3+dfsg-1
- Fixed versions
- Not specified
- CVEs
- CVE-2026-103923
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 01:58 UTC · Revision 1
Source evidence
KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web. From 0.11.0 until 0.18.2, KaTeX uses ordinary JavaScript property access for the renderer options object, the trust setting, default and processor setting metadata, and namespace lookup and group restoration, allowing inherited properties to be treated as explicitly supplied values. When Object.prototype is already polluted or an attacker controls the options object's prototype, attacker-controlled mathematical expressions can use an inherited trust value to enable trusted rendering and produce links capable of user-interaction cross-site scripting or loading attacker-selected external resources in a consuming application that inserts unsanitized KaTeX output into a page. KaTeX does not itself create the prototype pollution, and rendering an expression alone does not execute script. This issue is fixed in version 0.18.2.
osv:UBUNTU-CVE-2026-103923
node-katex
Fixed versions: Not specified
node-katex
Fixed versions: Not specified
node-katex
Fixed versions: Not specified
node-katex
Fixed versions: Not specified
node-katex
Fixed versions: Not specified
node-katex
Fixed versions: Not specified
Complete source record
{
"id": "d6db3941b13c3c101d414f3342eb1b56fa4fcd36bcbd2aa60edc459f6ebf0d0b",
"url": "https://osv.dev/vulnerability/UBUNTU-CVE-2026-103923",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "UBUNTU-CVE-2026-103923",
"summary": "KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web. From 0.11.0 until 0.18.2, KaTeX uses ordinary JavaScript property access for the renderer options object, the trust setting, default and processor setting metadata, and namespace lookup and group restoration, allowing inherited properties to be treated as explicitly supplied values. When Object.prototype is already polluted or an attacker controls the options object's prototype, attacker-controlled mathematical expressions can use an inherited trust value to enable trusted rendering and produce links capable of user-interaction cross-site scripting or loading attacker-selected external resources in a consuming application that inserts unsanitized KaTeX output into a page. KaTeX does not itself create the prototype pollution, and rendering an expression alone does not execute script. This issue is fixed in version 0.18.2.",
"evidence": "osv:UBUNTU-CVE-2026-103923",
"products": [
{
"name": {
"value": "node-katex",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "0.8.3+dfsg-1",
"evidence": "/affected/0/versions"
}
]
},
{
"name": {
"value": "node-katex",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "0.8.3+dfsg-1",
"evidence": "/affected/1/versions"
}
]
},
{
"name": {
"value": "node-katex",
"evidence": "/affected/2/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "0.10.2+dfsg-8",
"evidence": "/affected/2/versions"
},
{
"value": "0.10.2+dfsg-9",
"evidence": "/affected/2/versions"
},
{
"value": "0.10.2+dfsg-10",
"evidence": "/affected/2/versions"
},
{
"value": "0.13.11+~cs6.0.0-2",
"evidence": "/affected/2/versions"
},
{
"value": "0.13.11+~cs6.0.0-2ubuntu0.1~esm1",
"evidence": "/affected/2/versions"
}
]
},
{
"name": {
"value": "node-katex",
"evidence": "/affected/3/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "0.16.4+~cs6.1.0-1",
"evidence": "/affected/3/versions"
},
{
"value": "0.16.10+~cs6.1.0-2",
"evidence": "/affected/3/versions"
},
{
"value": "0.16.10+~cs6.1.0-2ubuntu0.24.04.1~esm1",
"evidence": "/affected/3/versions"
}
]
},
{
"name": {
"value": "node-katex",
"evidence": "/affected/4/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "0.16.10+~cs6.1.0-5ubuntu1",
"evidence": "/affected/4/versions"
},
{
"value": "0.16.10+~cs6.1.0-7",
"evidence": "/affected/4/versions"
},
{
"value": "0.16.10+~cs6.1.0-7build1",
"evidence": "/affected/4/versions"
},
{
"value": "0.16.10+~cs6.1.0-8",
"evidence": "/affected/4/versions"
}
]
},
{
"name": {
"value": "node-katex",
"evidence": "/affected/5/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "0.16.10+~cs6.1.0-2ubuntu1",
"evidence": "/affected/5/versions"
},
{
"value": "0.16.10+~cs6.1.0-5ubuntu1",
"evidence": "/affected/5/versions"
}
]
}
],
"severity": "low",
"structured": {
"id": "UBUNTU-CVE-2026-103923",
"aliases": [
"UBUNTU-CVE-2026-103923"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N"
},
{
"type": "Ubuntu",
"score": "medium"
}
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "node-katex",
"purl": "pkg:deb/ubuntu/node-katex?arch=source&distro=bionic",
"ecosystem": "Ubuntu:18.04:LTS"
},
"versions": [
"0.8.3+dfsg-1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-103923.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "node-katex",
"binary_version": "0.8.3+dfsg-1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "node-katex",
"purl": "pkg:deb/ubuntu/node-katex?arch=source&distro=focal",
"ecosystem": "Ubuntu:20.04:LTS"
},
"versions": [
"0.8.3+dfsg-1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-103923.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "node-katex",
"binary_version": "0.8.3+dfsg-1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "node-katex",
"purl": "pkg:deb/ubuntu/node-katex?arch=source&distro=esm-apps%2Fjammy",
"ecosystem": "Ubuntu:Pro:22.04:LTS"
},
"versions": [
"0.10.2+dfsg-8",
"0.10.2+dfsg-9",
"0.10.2+dfsg-10",
"0.13.11+~cs6.0.0-2",
"0.13.11+~cs6.0.0-2ubuntu0.1~esm1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-103923.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "fonts-katex",
"binary_version": "0.13.11+~cs6.0.0-2ubuntu0.1~esm1"
},
{
"binary_name": "katex",
"binary_version": "0.13.11+~cs6.0.0-2ubuntu0.1~esm1"
},
{
"binary_name": "libjs-katex",
"binary_version": "0.13.11+~cs6.0.0-2ubuntu0.1~esm1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "node-katex",
"purl": "pkg:deb/ubuntu/node-katex?arch=source&distro=esm-apps%2Fnoble",
"ecosystem": "Ubuntu:Pro:24.04:LTS"
},
"versions": [
"0.16.4+~cs6.1.0-1",
"0.16.10+~cs6.1.0-2",
"0.16.10+~cs6.1.0-2ubuntu0.24.04.1~esm1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-103923.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "fonts-katex",
"binary_version": "0.16.10+~cs6.1.0-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "katex",
"binary_version": "0.16.10+~cs6.1.0-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libjs-katex",
"binary_version": "0.16.10+~cs6.1.0-2ubuntu0.24.04.1~esm1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "node-katex",
"purl": "pkg:deb/ubuntu/node-katex?arch=source&distro=stonking",
"ecosystem": "Ubuntu:26.10"
},
"versions": [
"0.16.10+~cs6.1.0-5ubuntu1",
"0.16.10+~cs6.1.0-7",
"0.16.10+~cs6.1.0-7build1",
"0.16.10+~cs6.1.0-8"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-103923.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "fonts-katex",
"binary_version": "0.16.10+~cs6.1.0-8"
},
{
"binary_name": "katex",
"binary_version": "0.16.10+~cs6.1.0-8"
},
{
"binary_name": "libjs-katex",
"binary_version": "0.16.10+~cs6.1.0-8"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "node-katex",
"purl": "pkg:deb/ubuntu/node-katex?arch=source&distro=resolute",
"ecosystem": "Ubuntu:26.04:LTS"
},
"versions": [
"0.16.10+~cs6.1.0-2ubuntu1",
"0.16.10+~cs6.1.0-5ubuntu1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-103923.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "fonts-katex",
"binary_version": "0.16.10+~cs6.1.0-5ubuntu1"
},
{
"binary_name": "katex",
"binary_version": "0.16.10+~cs6.1.0-5ubuntu1"
},
{
"binary_name": "libjs-katex",
"binary_version": "0.16.10+~cs6.1.0-5ubuntu1"
}
]
}
}
],
"modified": "2026-10-17T12:57:58.607970061Z",
"provider": "osv",
"upstream": [
"CVE-2026-103923"
],
"references": [
"https://ubuntu.com/security/CVE-2026-103923",
"https://www.cve.org/CVERecord?id=CVE-2026-103923",
"https://github.com/KaTeX/KaTeX/security/advisories/GHSA-238p-pmpm-9mq7",
"https://github.com/KaTeX/KaTeX/pull/4260",
"https://github.com/KaTeX/KaTeX/commit/0adf7e77db6915d991803b29699f82b1ccf8d4f4",
"https://github.com/KaTeX/KaTeX/releases/tag/v0.18.2"
]
},
"related_cves": [
{
"value": "CVE-2026-103923",
"evidence": "/upstream"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 357805,
"published_at": "2026-10-01T18:17:00+00:00"
}