{"api_version":"1","generated_at":"2026-07-23T14:31:09+00:00","cve":"CVE-2022-23631","urls":{"html":"https://cve.report/CVE-2022-23631","api":"https://cve.report/api/cve/CVE-2022-23631.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2022-23631","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2022-23631"},"summary":{"title":"CVE-2022-23631","description":"superjson is a program to allow JavaScript expressions to be serialized to a superset of JSON. In versions prior to 1.8.1 superjson allows input to run arbitrary code on any server using superjson input without prior authentication or knowledge. The only requirement is that the server implements at least one endpoint which uses superjson during request processing. This has been patched in superjson 1.8.1. Users are advised to update. There are no known workarounds for this issue.","state":"PUBLIC","assigner":"security-advisories@github.com","published_at":"2022-02-09 22:15:00","updated_at":"2024-01-09 03:16:00"},"problem_types":["CWE-94"],"metrics":[],"references":[{"url":"https://www.sonarsource.com/blog/blitzjs-prototype-pollution/","name":"https://www.sonarsource.com/blog/blitzjs-prototype-pollution/","refsource":"MISC","tags":[],"title":"Remote Code Execution via Prototype Pollution in Blitz.js | Sonar","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://github.com/advisories/GHSA-5888-ffcr-r425","name":"https://github.com/advisories/GHSA-5888-ffcr-r425","refsource":"MISC","tags":[],"title":"Prototype Pollution leading to Remote Code Execution in superjson · CVE-2022-23631 · GitHub Advisory Database · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"404"},{"url":"https://github.com/blitz-js/superjson/security/advisories/GHSA-5888-ffcr-r425","name":"https://github.com/blitz-js/superjson/security/advisories/GHSA-5888-ffcr-r425","refsource":"CONFIRM","tags":[],"title":"Prototype Pollution leading to Remote Code Execution · Advisory · blitz-js/superjson · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"500"},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-23631","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-23631","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2022","cve_id":"23631","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"blitzjs","cpe5":"blitz","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"node.js","cpe12":"*","cpe13":"*"},{"cve_year":"2022","cve_id":"23631","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"blitzjs","cpe5":"superjson","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"node.js","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"data_version":"4.0","data_type":"CVE","data_format":"MITRE","CVE_data_meta":{"ID":"CVE-2022-23631","ASSIGNER":"security-advisories@github.com","STATE":"PUBLIC"},"description":{"description_data":[{"lang":"eng","value":"superjson is a program to allow JavaScript expressions to be serialized to a superset of JSON. In versions prior to 1.8.1 superjson allows input to run arbitrary code on any server using superjson input without prior authentication or knowledge. The only requirement is that the server implements at least one endpoint which uses superjson during request processing. This has been patched in superjson 1.8.1. Users are advised to update. There are no known workarounds for this issue.\n"}]},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"CWE-94: Improper Control of Generation of Code ('Code Injection')","cweId":"CWE-94"}]}]},"affects":{"vendor":{"vendor_data":[{"vendor_name":"blitz-js","product":{"product_data":[{"product_name":"superjson","version":{"version_data":[{"version_affected":"=","version_value":"< 1.8.0"}]}}]}}]}},"references":{"reference_data":[{"url":"https://github.com/blitz-js/superjson/security/advisories/GHSA-5888-ffcr-r425","refsource":"MISC","name":"https://github.com/blitz-js/superjson/security/advisories/GHSA-5888-ffcr-r425"},{"url":"https://github.com/advisories/GHSA-5888-ffcr-r425","refsource":"MISC","name":"https://github.com/advisories/GHSA-5888-ffcr-r425"},{"url":"https://www.sonarsource.com/blog/blitzjs-prototype-pollution/","refsource":"MISC","name":"https://www.sonarsource.com/blog/blitzjs-prototype-pollution/"}]},"source":{"advisory":"GHSA-5888-ffcr-r425","discovery":"UNKNOWN"},"impact":{"cvss":[{"attackComplexity":"HIGH","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":9.1,"baseSeverity":"CRITICAL","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"NONE","scope":"CHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H","version":"3.1"}]}},"nvd":{"publishedDate":"2022-02-09 22:15:00","lastModifiedDate":"2024-01-09 03:16:00","problem_types":["CWE-94"],"metrics":{"baseMetricV3":{"cvssV3":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH","baseScore":9.8,"baseSeverity":"CRITICAL"},"exploitabilityScore":3.9,"impactScore":5.9},"baseMetricV2":{"cvssV2":{"version":"2.0","vectorString":"AV:N/AC:L/Au:N/C:P/I:P/A:P","accessVector":"NETWORK","accessComplexity":"LOW","authentication":"NONE","confidentialityImpact":"PARTIAL","integrityImpact":"PARTIAL","availabilityImpact":"PARTIAL","baseScore":7.5},"severity":"HIGH","exploitabilityScore":10,"impactScore":6.4,"acInsufInfo":false,"obtainAllPrivilege":false,"obtainUserPrivilege":false,"obtainOtherPrivilege":false,"userInteractionRequired":false}},"configurations":{"CVE_data_version":"4.0","nodes":[{"operator":"OR","children":[],"cpe_match":[{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:blitzjs:superjson:*:*:*:*:*:node.js:*:*","versionEndExcluding":"1.8.1","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:blitzjs:blitz:*:*:*:*:*:node.js:*:*","versionEndExcluding":"0.45.3","cpe_name":[]}]}]}},"legacy_mitre":{"record":{"CveYear":"2022","CveId":"23631","Ordinal":"226503","Title":"CVE-2022-23631","CVE":"CVE-2022-23631","Year":"2022"},"notes":[{"CveYear":"2022","CveId":"23631","Ordinal":"1","NoteData":"superjson is a program to allow JavaScript expressions to be serialized to a superset of JSON. In versions prior to 1.8.1 superjson allows input to run arbitrary code on any server using superjson input without prior authentication or knowledge. The only requirement is that the server implements at least one endpoint which uses superjson during request processing. This has been patched in superjson 1.8.1. Users are advised to update. There are no known workarounds for this issue.","Type":"Description","Title":null},{"CveYear":"2022","CveId":"23631","Ordinal":"2","NoteData":"2022-02-09","Type":"Other","Title":"Published"},{"CveYear":"2022","CveId":"23631","Ordinal":"3","NoteData":"2022-02-09","Type":"Other","Title":"Modified"}]}}}