{"api_version":"1","generated_at":"2026-07-23T08:09:21+00:00","cve":"CVE-2012-5371","urls":{"html":"https://cve.report/CVE-2012-5371","api":"https://cve.report/api/cve/CVE-2012-5371.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2012-5371","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2012-5371"},"summary":{"title":"CVE-2012-5371","description":"Ruby (aka CRuby) 1.9 before 1.9.3-p327 and 2.0 before r37575 computes hash values without properly restricting the ability to trigger hash collisions predictably, which allows context-dependent attackers to cause a denial of service (CPU consumption) via crafted input to an application that maintains a hash table, as demonstrated by a universal multicollision attack against a variant of the MurmurHash2 algorithm, a different vulnerability than CVE-2011-4815.","state":"PUBLISHED","assigner":"mitre","published_at":"2012-11-28 13:03:10","updated_at":"2026-04-29 01:13:23"},"problem_types":["CWE-310","n/a"],"metrics":[{"version":"2.0","source":"nvd@nist.gov","type":"Primary","score":"5","severity":"","vector":"AV:N/AC:L/Au:N/C:N/I:N/A:P","data":{"version":"2.0","vectorString":"AV:N/AC:L/Au:N/C:N/I:N/A:P","baseScore":5,"accessVector":"NETWORK","accessComplexity":"LOW","authentication":"NONE","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"PARTIAL"}}],"references":[{"url":"http://2012.appsec-forum.ch/conferences/#c17","name":"http://2012.appsec-forum.ch/conferences/#c17","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"7-8 Novembre – Conférences | Application Security Forum – Western Switzerland 2012","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://www.131002.net/data/talks/appsec12_slides.pdf","name":"https://www.131002.net/data/talks/appsec12_slides.pdf","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"Jean-Philippe Aumasson","mime":"application/pdf","httpstatus":"200","archivestatus":"200"},{"url":"http://secunia.com/advisories/51253","name":"http://secunia.com/advisories/51253","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"About Secunia Research | Flexera","mime":"text/plain","httpstatus":"200","archivestatus":"200"},{"url":"http://securitytracker.com/id?1027747","name":"http://securitytracker.com/id?1027747","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Patch"],"title":"Ruby Hash Table Collision Bug Lets Remote Users Deny Service - SecurityTracker","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=875236","name":"https://bugzilla.redhat.com/show_bug.cgi?id=875236","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Patch"],"title":"Bug 875236 – CVE-2012-5371 ruby: Murmur hash-flooding DoS flaw in ruby 1.9 (oCERT-2012-001)","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"http://asfws12.files.wordpress.com/2012/11/asfws2012-jean_philippe_aumasson-martin_bosslet-hash_flooding_dos_reloaded.pdf","name":"http://asfws12.files.wordpress.com/2012/11/asfws2012-jean_philippe_aumasson-martin_bosslet-hash_flooding_dos_reloaded.pdf","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"WordPress.com","mime":"application/pdf","httpstatus":"403","archivestatus":"200"},{"url":"http://www.osvdb.org/87280","name":"http://www.osvdb.org/87280","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"","mime":"","httpstatus":"-1","archivestatus":"0"},{"url":"http://www.securityfocus.com/bid/56484","name":"http://www.securityfocus.com/bid/56484","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"Malformed Request","mime":"text/html","httpstatus":"200","archivestatus":"0"},{"url":"http://www.ocert.org/advisories/ocert-2012-001.html","name":"http://www.ocert.org/advisories/ocert-2012-001.html","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"oCERT.org - oCERT Advisories","mime":"text/xml","httpstatus":"200","archivestatus":"200"},{"url":"http://www.ubuntu.com/usn/USN-1733-1","name":"http://www.ubuntu.com/usn/USN-1733-1","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"USN-1733-1: Ruby vulnerabilities | Ubuntu","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://exchange.xforce.ibmcloud.com/vulnerabilities/79993","name":"https://exchange.xforce.ibmcloud.com/vulnerabilities/79993","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":[],"title":"IBM X-Force Exchange","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"http://www.ruby-lang.org/en/news/2012/11/09/ruby19-hashdos-cve-2012-5371/","name":"http://www.ruby-lang.org/en/news/2012/11/09/ruby19-hashdos-cve-2012-5371/","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Patch","Vendor Advisory"],"title":"Hash-flooding DoS vulnerability for ruby 1.9 (CVE-2012-5371)","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://www.cve.org/CVERecord?id=CVE-2012-5371","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2012-5371","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":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"1.9","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"1.9.1","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"1.9.2","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"1.9.3","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"1.9.3","cpe7":"p0","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"1.9.3","cpe7":"p125","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"1.9.3","cpe7":"p194","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"2.0","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2012","cve_id":"5371","vulnerable":"1","versionEndIncluding":"1.9.3","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"ruby-lang","cpe5":"ruby","cpe6":"*","cpe7":"p286","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"adp":[{"providerMetadata":{"dateUpdated":"2024-08-06T21:05:47.293Z","orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE"},"references":[{"tags":["x_refsource_MISC","x_transferred"],"url":"http://asfws12.files.wordpress.com/2012/11/asfws2012-jean_philippe_aumasson-martin_bosslet-hash_flooding_dos_reloaded.pdf"},{"name":"1027747","tags":["vdb-entry","x_refsource_SECTRACK","x_transferred"],"url":"http://securitytracker.com/id?1027747"},{"name":"87280","tags":["vdb-entry","x_refsource_OSVDB","x_transferred"],"url":"http://www.osvdb.org/87280"},{"name":"56484","tags":["vdb-entry","x_refsource_BID","x_transferred"],"url":"http://www.securityfocus.com/bid/56484"},{"tags":["x_refsource_MISC","x_transferred"],"url":"https://www.131002.net/data/talks/appsec12_slides.pdf"},{"tags":["x_refsource_CONFIRM","x_transferred"],"url":"http://www.ruby-lang.org/en/news/2012/11/09/ruby19-hashdos-cve-2012-5371/"},{"tags":["x_refsource_MISC","x_transferred"],"url":"http://2012.appsec-forum.ch/conferences/#c17"},{"tags":["x_refsource_CONFIRM","x_transferred"],"url":"https://bugzilla.redhat.com/show_bug.cgi?id=875236"},{"name":"51253","tags":["third-party-advisory","x_refsource_SECUNIA","x_transferred"],"url":"http://secunia.com/advisories/51253"},{"tags":["x_refsource_MISC","x_transferred"],"url":"http://www.ocert.org/advisories/ocert-2012-001.html"},{"name":"USN-1733-1","tags":["vendor-advisory","x_refsource_UBUNTU","x_transferred"],"url":"http://www.ubuntu.com/usn/USN-1733-1"},{"name":"ruby-hash-function-dos(79993)","tags":["vdb-entry","x_refsource_XF","x_transferred"],"url":"https://exchange.xforce.ibmcloud.com/vulnerabilities/79993"}],"title":"CVE Program Container"}],"cna":{"affected":[{"product":"n/a","vendor":"n/a","versions":[{"status":"affected","version":"n/a"}]}],"datePublic":"2012-11-07T00:00:00.000Z","descriptions":[{"lang":"en","value":"Ruby (aka CRuby) 1.9 before 1.9.3-p327 and 2.0 before r37575 computes hash values without properly restricting the ability to trigger hash collisions predictably, which allows context-dependent attackers to cause a denial of service (CPU consumption) via crafted input to an application that maintains a hash table, as demonstrated by a universal multicollision attack against a variant of the MurmurHash2 algorithm, a different vulnerability than CVE-2011-4815."}],"problemTypes":[{"descriptions":[{"description":"n/a","lang":"en","type":"text"}]}],"providerMetadata":{"dateUpdated":"2017-08-28T12:57:01.000Z","orgId":"8254265b-2729-46b6-b9e3-3dfca2d5bfca","shortName":"mitre"},"references":[{"tags":["x_refsource_MISC"],"url":"http://asfws12.files.wordpress.com/2012/11/asfws2012-jean_philippe_aumasson-martin_bosslet-hash_flooding_dos_reloaded.pdf"},{"name":"1027747","tags":["vdb-entry","x_refsource_SECTRACK"],"url":"http://securitytracker.com/id?1027747"},{"name":"87280","tags":["vdb-entry","x_refsource_OSVDB"],"url":"http://www.osvdb.org/87280"},{"name":"56484","tags":["vdb-entry","x_refsource_BID"],"url":"http://www.securityfocus.com/bid/56484"},{"tags":["x_refsource_MISC"],"url":"https://www.131002.net/data/talks/appsec12_slides.pdf"},{"tags":["x_refsource_CONFIRM"],"url":"http://www.ruby-lang.org/en/news/2012/11/09/ruby19-hashdos-cve-2012-5371/"},{"tags":["x_refsource_MISC"],"url":"http://2012.appsec-forum.ch/conferences/#c17"},{"tags":["x_refsource_CONFIRM"],"url":"https://bugzilla.redhat.com/show_bug.cgi?id=875236"},{"name":"51253","tags":["third-party-advisory","x_refsource_SECUNIA"],"url":"http://secunia.com/advisories/51253"},{"tags":["x_refsource_MISC"],"url":"http://www.ocert.org/advisories/ocert-2012-001.html"},{"name":"USN-1733-1","tags":["vendor-advisory","x_refsource_UBUNTU"],"url":"http://www.ubuntu.com/usn/USN-1733-1"},{"name":"ruby-hash-function-dos(79993)","tags":["vdb-entry","x_refsource_XF"],"url":"https://exchange.xforce.ibmcloud.com/vulnerabilities/79993"}],"x_legacyV4Record":{"CVE_data_meta":{"ASSIGNER":"cve@mitre.org","ID":"CVE-2012-5371","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":"Ruby (aka CRuby) 1.9 before 1.9.3-p327 and 2.0 before r37575 computes hash values without properly restricting the ability to trigger hash collisions predictably, which allows context-dependent attackers to cause a denial of service (CPU consumption) via crafted input to an application that maintains a hash table, as demonstrated by a universal multicollision attack against a variant of the MurmurHash2 algorithm, a different vulnerability than CVE-2011-4815."}]},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"n/a"}]}]},"references":{"reference_data":[{"name":"http://asfws12.files.wordpress.com/2012/11/asfws2012-jean_philippe_aumasson-martin_bosslet-hash_flooding_dos_reloaded.pdf","refsource":"MISC","url":"http://asfws12.files.wordpress.com/2012/11/asfws2012-jean_philippe_aumasson-martin_bosslet-hash_flooding_dos_reloaded.pdf"},{"name":"1027747","refsource":"SECTRACK","url":"http://securitytracker.com/id?1027747"},{"name":"87280","refsource":"OSVDB","url":"http://www.osvdb.org/87280"},{"name":"56484","refsource":"BID","url":"http://www.securityfocus.com/bid/56484"},{"name":"https://www.131002.net/data/talks/appsec12_slides.pdf","refsource":"MISC","url":"https://www.131002.net/data/talks/appsec12_slides.pdf"},{"name":"http://www.ruby-lang.org/en/news/2012/11/09/ruby19-hashdos-cve-2012-5371/","refsource":"CONFIRM","url":"http://www.ruby-lang.org/en/news/2012/11/09/ruby19-hashdos-cve-2012-5371/"},{"name":"http://2012.appsec-forum.ch/conferences/#c17","refsource":"MISC","url":"http://2012.appsec-forum.ch/conferences/#c17"},{"name":"https://bugzilla.redhat.com/show_bug.cgi?id=875236","refsource":"CONFIRM","url":"https://bugzilla.redhat.com/show_bug.cgi?id=875236"},{"name":"51253","refsource":"SECUNIA","url":"http://secunia.com/advisories/51253"},{"name":"http://www.ocert.org/advisories/ocert-2012-001.html","refsource":"MISC","url":"http://www.ocert.org/advisories/ocert-2012-001.html"},{"name":"USN-1733-1","refsource":"UBUNTU","url":"http://www.ubuntu.com/usn/USN-1733-1"},{"name":"ruby-hash-function-dos(79993)","refsource":"XF","url":"https://exchange.xforce.ibmcloud.com/vulnerabilities/79993"}]}}}},"cveMetadata":{"assignerOrgId":"8254265b-2729-46b6-b9e3-3dfca2d5bfca","assignerShortName":"mitre","cveId":"CVE-2012-5371","datePublished":"2012-11-28T11:00:00.000Z","dateReserved":"2012-10-10T00:00:00.000Z","dateUpdated":"2024-08-06T21:05:47.293Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.1"},"nvd":{"publishedDate":"2012-11-28 13:03:10","lastModifiedDate":"2026-04-29 01:13:23","problem_types":["CWE-310","n/a"],"metrics":{"cvssMetricV2":[{"source":"nvd@nist.gov","type":"Primary","cvssData":{"version":"2.0","vectorString":"AV:N/AC:L/Au:N/C:N/I:N/A:P","baseScore":5,"accessVector":"NETWORK","accessComplexity":"LOW","authentication":"NONE","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"PARTIAL"},"baseSeverity":"MEDIUM","exploitabilityScore":10,"impactScore":2.9,"acInsufInfo":false,"obtainAllPrivilege":false,"obtainUserPrivilege":false,"obtainOtherPrivilege":false,"userInteractionRequired":false}]},"configurations":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:*:p286:*:*:*:*:*:*","versionEndIncluding":"1.9.3","matchCriteriaId":"A45A2FA0-5451-4A6D-8301-B60645354AA5"},{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:1.9:*:*:*:*:*:*:*","matchCriteriaId":"D9237145-35F8-4E05-B730-77C0F386E5B2"},{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:1.9.1:*:*:*:*:*:*:*","matchCriteriaId":"C78BB1D8-0505-484D-B824-1AA219F8B247"},{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:1.9.2:*:*:*:*:*:*:*","matchCriteriaId":"5178D04D-1C29-4353-8987-559AA07443EC"},{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:1.9.3:*:*:*:*:*:*:*","matchCriteriaId":"D0535DC9-EB0E-4745-80AC-4A020DF26E38"},{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:1.9.3:p0:*:*:*:*:*:*","matchCriteriaId":"94F5AA37-B466-4E2E-B217-5119BADDD87B"},{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:1.9.3:p125:*:*:*:*:*:*","matchCriteriaId":"6DF0F0F5-4022-4837-9B40-4B1127732CC9"},{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:1.9.3:p194:*:*:*:*:*:*","matchCriteriaId":"B3848B08-85C2-4AAD-AA33-CCEB80EF5B32"},{"vulnerable":true,"criteria":"cpe:2.3:a:ruby-lang:ruby:2.0:*:*:*:*:*:*:*","matchCriteriaId":"90E0471D-1323-4E67-B66C-DEBF3BBAEEAA"}]}]}]},"legacy_mitre":{"record":{"CveYear":"2012","CveId":"5371","Ordinal":"1","Title":"CVE-2012-5371","CVE":"CVE-2012-5371","Year":"2012"},"notes":[{"CveYear":"2012","CveId":"5371","Ordinal":"1","NoteData":"Ruby (aka CRuby) 1.9 before 1.9.3-p327 and 2.0 before r37575 computes hash values without properly restricting the ability to trigger hash collisions predictably, which allows context-dependent attackers to cause a denial of service (CPU consumption) via crafted input to an application that maintains a hash table, as demonstrated by a universal multicollision attack against a variant of the MurmurHash2 algorithm, a different vulnerability than CVE-2011-4815.","Type":"Description","Title":"CVE-2012-5371"},{"CveYear":"2012","CveId":"5371","Ordinal":"2","NoteData":"2012-11-28","Type":"Other","Title":"Published"},{"CveYear":"2012","CveId":"5371","Ordinal":"3","NoteData":"2017-08-28","Type":"Other","Title":"Modified"}]}}}