{"schema":"threatline.record/2","record":{"id":"CVE-2026-94545","aliases":["GHSA-vcvr-r3jv-pc5j","GHSA-wx4j-mvgx-mqwp"],"summary":"Satori-generated SVG has improper escaping","details":"Satori is a library to convert HTML and CSS to SVG. Starting in version 0.0.27 and prior to version 0.33.5, Satori does not properly escape certain values before including them in generated SVG output. This can allow crafted values to be interpreted as SVG markup. The impact depends on how the generated SVG is consumed. Version 0.33.5 contains a patch. No complete workaround exists besides upgrading. Applications that cannot immediately upgrade should not render attacker-controlled content with Satori.","categories":["Libraries & packages"],"product":"satori","vendor":"vercel","ecosystem":"npm","affected_ranges":[{"source":"CVE List","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-94545","source_modified_at":"2026-09-30T15:48:41.962Z","fetched_at":"2026-10-23T18:45:31.882637Z","product":"satori","vendor":"vercel","versions":[{"status":"affected","version":">= 0.0.27, < 0.33.5"}],"defaultStatus":null},{"source":"CVE List","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-94545","source_modified_at":"2026-09-30T15:48:41.962Z","fetched_at":"2026-10-23T18:45:31.882637Z","product":"next","vendor":"vercel","versions":[{"status":"affected","version":">= 16.2.0, < 16.3.6"}],"defaultStatus":null},{"source":"GitHub Advisory Database","source_url":"https://github.com/vercel/next.js/security/advisories/GHSA-vcvr-r3jv-pc5j","source_modified_at":"2026-09-22T17:03:51Z","fetched_at":"2026-10-23T18:42:43.628194Z","package":{"ecosystem":"npm","name":"next"},"range":">= 16.2.0 < 16.3.6"},{"source":"GitHub Advisory Database","source_url":"https://github.com/vercel/satori/security/advisories/GHSA-wx4j-mvgx-mqwp","source_modified_at":"2026-09-22T17:09:15Z","fetched_at":"2026-10-23T21:14:28.314422Z","package":{"ecosystem":"npm","name":"satori"},"range":">= 0.0.27 < 0.33.5"},{"source":"OSV","source_url":"https://osv.dev/vulnerability/GHSA-vcvr-r3jv-pc5j","source_modified_at":"2026-10-01T03:56:48.683494153Z","fetched_at":"2026-10-23T18:42:43.628194Z","package":{"ecosystem":"npm","name":"next","purl":"pkg:npm/next"},"ranges":[{"events":[{"introduced":"16.2.0"},{"fixed":"16.3.6"}],"type":"SEMVER"}],"versions":[]}],"fixed_versions":[{"source":"GitHub Advisory Database","source_url":"https://github.com/vercel/next.js/security/advisories/GHSA-vcvr-r3jv-pc5j","source_modified_at":"2026-09-22T17:03:51Z","fetched_at":"2026-10-23T18:42:43.628194Z","package":{"ecosystem":"npm","name":"next"},"version":"16.3.6"},{"source":"GitHub Advisory Database","source_url":"https://github.com/vercel/satori/security/advisories/GHSA-wx4j-mvgx-mqwp","source_modified_at":"2026-09-22T17:09:15Z","fetched_at":"2026-10-23T21:14:28.314422Z","package":{"ecosystem":"npm","name":"satori"},"version":"0.33.5"},{"source":"OSV","source_url":"https://osv.dev/vulnerability/GHSA-vcvr-r3jv-pc5j","source_modified_at":"2026-10-01T03:56:48.683494153Z","fetched_at":"2026-10-23T18:42:43.628194Z","package":{"ecosystem":"npm","name":"next","purl":"pkg:npm/next"},"version":"16.3.6"}],"cvss":5.3,"severity":"Medium","kev":{"listed":false},"epss":{"probability":0.01038,"percentile":0.63662,"score_date":"2026-10-23"},"published_at":"2026-09-30T14:53:34.961Z","modified_at":"2026-10-01T03:56:48.683494153Z","provenance":[{"source":"CVE List","url":"https://www.cve.org/CVERecord?id=CVE-2026-94545","fetched_at":"2026-10-23T18:45:31.882637Z","source_modified_at":"2026-09-30T15:48:41.962Z"},{"source":"GitHub Advisory Database","url":"https://github.com/vercel/next.js/security/advisories/GHSA-vcvr-r3jv-pc5j","fetched_at":"2026-10-23T18:42:43.628194Z","source_modified_at":"2026-09-22T17:03:51Z"},{"source":"GitHub Advisory Database","url":"https://github.com/vercel/satori/security/advisories/GHSA-wx4j-mvgx-mqwp","fetched_at":"2026-10-23T21:14:28.314422Z","source_modified_at":"2026-09-22T17:09:15Z"},{"source":"OSV","url":"https://osv.dev/vulnerability/GHSA-vcvr-r3jv-pc5j","fetched_at":"2026-10-23T18:42:43.628194Z","source_modified_at":"2026-10-01T03:56:48.683494153Z"},{"source":"EPSS","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-94545","fetched_at":"2026-10-23T18:42:43.628194Z","source_modified_at":"2026-10-23"}],"sources":["CVE List","GitHub Advisory Database","OSV","EPSS"],"references":[{"source":"CVE List","url":"https://github.com/vercel/satori/security/advisories/GHSA-wx4j-mvgx-mqwp","tags":["x_refsource_CONFIRM"]},{"source":"CVE List","url":"https://github.com/vercel/next.js/security/advisories/GHSA-vcvr-r3jv-pc5j","tags":["x_refsource_MISC"]},{"source":"CVE List","url":"https://github.com/vercel/satori/pull/814","tags":["x_refsource_MISC"]},{"source":"CVE List","url":"https://github.com/vercel/next.js/commit/868fad38690d72088868f299fa2bef339b26838e","tags":["x_refsource_MISC"]},{"source":"CVE List","url":"https://github.com/vercel/satori/commit/26a52affc031216fee5882b6e965c8dbc7ac1782","tags":["x_refsource_MISC"]},{"source":"CVE List","url":"https://github.com/vercel/next.js/releases/tag/v16.3.6","tags":["x_refsource_MISC"]}],"locations":[],"motoko_assessment":{"status":"requires_architecture_review","automatic_remediation":false},"cve_state":"PUBLISHED","cvss_source":"CVE List","ssvc":{"exploitation":"none","automatable":"no","technical_impact":"partial","assessed_at":"2026-09-30T15:41:03.767825Z"},"classification":{"method":"product-first software-layer rules","rules_version":"2.1","matched_on":"ecosystem","confidence":"heuristic","reviewed":false},"change_timestamp":"2026-10-01T03:56:48.683494153Z","content_hash":"4373f27398e689b9f74ae02ec60053db1224d94494f5131ec6474b60bf152691"}}
