{"api_version":"1","generated_at":"2026-06-23T14:06:55+00:00","cve":"CVE-2013-4660","urls":{"html":"https://cve.report/CVE-2013-4660","api":"https://cve.report/api/cve/CVE-2013-4660.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2013-4660","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2013-4660"},"summary":{"title":"CVE-2013-4660","description":"The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, which allows remote attackers to execute arbitrary code via a crafted string that triggers an eval operation.","state":"PUBLISHED","assigner":"mitre","published_at":"2013-06-28 14:55:02","updated_at":"2026-04-29 01:13:23"},"problem_types":["CWE-20","n/a"],"metrics":[{"version":"2.0","source":"nvd@nist.gov","type":"Primary","score":"6.8","severity":"","vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","data":{"version":"2.0","vectorString":"AV:N/AC:M/Au:N/C:P/I:P/A:P","baseScore":6.8,"accessVector":"NETWORK","accessComplexity":"MEDIUM","authentication":"NONE","confidentialityImpact":"PARTIAL","integrityImpact":"PARTIAL","availabilityImpact":"PARTIAL"}}],"references":[{"url":"https://nealpoole.com/blog/2013/06/code-execution-via-yaml-in-js-yaml-nodejs-module/","name":"https://nealpoole.com/blog/2013/06/code-execution-via-yaml-in-js-yaml-nodejs-module/","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Exploit","Vendor Advisory"],"title":"Code Execution via YAML in JS-YAML Node.js Module » Neal Poole","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"http://portal.nodesecurity.io/advisories/js-yaml","name":"http://portal.nodesecurity.io/advisories/js-yaml","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Vendor Advisory"],"title":"NodeSec Advisories | Advisory: js-yaml","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://www.cve.org/CVERecord?id=CVE-2013-4660","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2013-4660","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"n/a","product":"n/a","version":"affected n/a","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.2.0","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.2.1","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.2.2","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.3.0","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.3.1","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.3.2","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.3.3","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.3.4","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.3.5","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.3.6","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"0.3.7","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"1.0.0","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"1.0.1","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"1.0.2","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"1.0.3","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"2.0.0","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"2.0.1","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"2.0.2","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"2.0.3","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2013","cve_id":"4660","vulnerable":"1","versionEndIncluding":"2.0.4","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"nodeca","cpe5":"js-yaml","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[{"cve":"CVE-2013-4660","qid":"980769","title":"Nodejs (npm) Security Update for js-yaml (GHSA-xxvw-45rp-3mj2)"}]},"source_records":{"cve_program":{"containers":{"adp":[{"providerMetadata":{"dateUpdated":"2024-08-06T16:52:26.982Z","orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE"},"references":[{"tags":["x_refsource_MISC","x_transferred"],"url":"https://nealpoole.com/blog/2013/06/code-execution-via-yaml-in-js-yaml-nodejs-module/"},{"tags":["x_refsource_CONFIRM","x_transferred"],"url":"http://portal.nodesecurity.io/advisories/js-yaml"}],"title":"CVE Program Container"}],"cna":{"affected":[{"product":"n/a","vendor":"n/a","versions":[{"status":"affected","version":"n/a"}]}],"descriptions":[{"lang":"en","value":"The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, which allows remote attackers to execute arbitrary code via a crafted string that triggers an eval operation."}],"problemTypes":[{"descriptions":[{"description":"n/a","lang":"en","type":"text"}]}],"providerMetadata":{"dateUpdated":"2013-06-28T14:00:00.000Z","orgId":"8254265b-2729-46b6-b9e3-3dfca2d5bfca","shortName":"mitre"},"references":[{"tags":["x_refsource_MISC"],"url":"https://nealpoole.com/blog/2013/06/code-execution-via-yaml-in-js-yaml-nodejs-module/"},{"tags":["x_refsource_CONFIRM"],"url":"http://portal.nodesecurity.io/advisories/js-yaml"}],"x_legacyV4Record":{"CVE_data_meta":{"ASSIGNER":"cve@mitre.org","ID":"CVE-2013-4660","STATE":"PUBLIC"},"affects":{"vendor":{"vendor_data":[{"product":{"product_data":[{"product_name":"n/a","version":{"version_data":[{"version_value":"n/a"}]}}]},"vendor_name":"n/a"}]}},"data_format":"MITRE","data_type":"CVE","data_version":"4.0","description":{"description_data":[{"lang":"eng","value":"The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, which allows remote attackers to execute arbitrary code via a crafted string that triggers an eval operation."}]},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"n/a"}]}]},"references":{"reference_data":[{"name":"https://nealpoole.com/blog/2013/06/code-execution-via-yaml-in-js-yaml-nodejs-module/","refsource":"MISC","url":"https://nealpoole.com/blog/2013/06/code-execution-via-yaml-in-js-yaml-nodejs-module/"},{"name":"http://portal.nodesecurity.io/advisories/js-yaml","refsource":"CONFIRM","url":"http://portal.nodesecurity.io/advisories/js-yaml"}]}}}},"cveMetadata":{"assignerOrgId":"8254265b-2729-46b6-b9e3-3dfca2d5bfca","assignerShortName":"mitre","cveId":"CVE-2013-4660","datePublished":"2013-06-28T14:00:00.000Z","dateReserved":"2013-06-24T00:00:00.000Z","dateUpdated":"2024-09-17T02:11:39.386Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.1"},"nvd":{"publishedDate":"2013-06-28 14:55:02","lastModifiedDate":"2026-04-29 01:13:23","problem_types":["CWE-20","n/a"],"metrics":{"cvssMetricV2":[{"source":"nvd@nist.gov","type":"Primary","cvssData":{"version":"2.0","vectorString":"AV:N/AC:M/Au:N/C:P/I:P/A:P","baseScore":6.8,"accessVector":"NETWORK","accessComplexity":"MEDIUM","authentication":"NONE","confidentialityImpact":"PARTIAL","integrityImpact":"PARTIAL","availabilityImpact":"PARTIAL"},"baseSeverity":"MEDIUM","exploitabilityScore":8.6,"impactScore":6.4,"acInsufInfo":false,"obtainAllPrivilege":false,"obtainUserPrivilege":false,"obtainOtherPrivilege":false,"userInteractionRequired":false}]},"configurations":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:*:*:*:*:*:*:*:*","versionEndIncluding":"2.0.4","matchCriteriaId":"AA8BD4E2-1381-466B-90F8-475F371AEC08"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.2.0:*:*:*:*:*:*:*","matchCriteriaId":"4BFECE74-6573-4638-A03A-84BADAAA6B08"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.2.1:*:*:*:*:*:*:*","matchCriteriaId":"CE8B5616-9AFD-493D-B537-4B2DCA61B456"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.2.2:*:*:*:*:*:*:*","matchCriteriaId":"E6F50693-8090-45AF-8D19-D63AC31D7240"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.3.0:*:*:*:*:*:*:*","matchCriteriaId":"BC87D583-06D3-44E7-AF14-8FEFBA4F2A39"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.3.1:*:*:*:*:*:*:*","matchCriteriaId":"BF766D05-2086-402D-A1CD-B0E74349C5D8"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.3.2:*:*:*:*:*:*:*","matchCriteriaId":"71CC3AFF-12D2-40FB-B0D4-6B11778AE2CB"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.3.3:*:*:*:*:*:*:*","matchCriteriaId":"D5AB170A-A395-4914-B615-2C4BBDFE85DB"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.3.4:*:*:*:*:*:*:*","matchCriteriaId":"E78D927C-EF70-459F-BB28-AC904F52B07D"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.3.5:*:*:*:*:*:*:*","matchCriteriaId":"BC289787-23F1-4DE1-8258-9ED136E54026"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.3.6:*:*:*:*:*:*:*","matchCriteriaId":"889B2FD8-D061-487E-A227-01B5E76F5304"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:0.3.7:*:*:*:*:*:*:*","matchCriteriaId":"7BD84B2A-0DD7-421C-A470-48CFC16481FC"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:1.0.0:*:*:*:*:*:*:*","matchCriteriaId":"5EFEA856-42BA-484E-8F9B-3289B19640B0"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:1.0.1:*:*:*:*:*:*:*","matchCriteriaId":"ACDBEBEE-5CB5-4D00-A211-E25C80ED657C"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:1.0.2:*:*:*:*:*:*:*","matchCriteriaId":"7826754E-C50C-4B62-A474-6863A21BC907"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:1.0.3:*:*:*:*:*:*:*","matchCriteriaId":"82E5E45D-7CF3-4B28-A5B9-CAFE300B4BE8"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:2.0.0:*:*:*:*:*:*:*","matchCriteriaId":"D214C5A9-BABC-444D-B974-8BB394D3F96C"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:2.0.1:*:*:*:*:*:*:*","matchCriteriaId":"EB5D80AC-550A-4501-BD7A-6726A57721FE"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:2.0.2:*:*:*:*:*:*:*","matchCriteriaId":"BE3EE145-BD50-4C86-8D58-DB76B96458B0"},{"vulnerable":true,"criteria":"cpe:2.3:a:nodeca:js-yaml:2.0.3:*:*:*:*:*:*:*","matchCriteriaId":"4F435032-6B39-4E7A-B4EC-DBABBDAB5051"}]}]}]},"legacy_mitre":{"record":{"CveYear":"2013","CveId":"4660","Ordinal":"1","Title":"CVE-2013-4660","CVE":"CVE-2013-4660","Year":"2013"},"notes":[{"CveYear":"2013","CveId":"4660","Ordinal":"1","NoteData":"The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, which allows remote attackers to execute arbitrary code via a crafted string that triggers an eval operation.","Type":"Description","Title":"CVE-2013-4660"},{"CveYear":"2013","CveId":"4660","Ordinal":"2","NoteData":"2013-06-28","Type":"Other","Title":"Published"}]}}}