{"id":"CVE-2019-16782","published":"2019-12-18T19:05:14Z","modified":"2024-08-05T01:24:48Z","title":"Possible Information Leak / Session Hijack Vulnerability in Rack","vendor":"rack","product":"rack","tier":"core","eol":null,"affectedVersions":[{"vendor":"rack","product":"rack","versions":["before 1.6.12 or 2.0.8"]}],"description":{"text":"There's a possible information leak / session hijack vulnerability in Rack (RubyGem rack). This vulnerability is patched in versions 1.6.12 and 2.0.8. Attackers may be able to find and hijack sessions by using timing attacks targeting the session id. Session ids are usually stored and indexed in a database that uses some kind of scheme for speeding up lookups of that session id. By carefully measuring the amount of time it takes to look up a session, an attacker may be able to find a valid session id and hijack the session. The session id itself may be generated randomly, but the way the session is indexed by the backing store does not use a secure comparison.","provenance":"source","from":"CVE.org"},"summary":null,"cvss":{"score":6.3,"severity":"MEDIUM","version":"3.1","vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N","provenance":"source","from":"CVE.org CNA"},"epss":{"score":0.03703,"percentile":0.89701,"date":"2026-10-28","provenance":"source"},"kev":null,"vulncheckKev":null,"exploited":false,"otx":{"pulseCount":0,"pulses":[],"provenance":"machine"},"cwes":[{"id":"CWE-208","name":"Observable Timing Discrepancy"}],"references":[{"url":"https://github.com/rack/rack/security/advisories/GHSA-hrqr-hxpp-chr3","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/rack/rack/commit/7fecaee81f59926b6e1913511c90650e76673b38","tags":["x_refsource_CONFIRM"]},{"url":"http://www.openwall.com/lists/oss-security/2019/12/18/3","tags":["mailing-list","x_refsource_MLIST"]},{"url":"http://www.openwall.com/lists/oss-security/2019/12/18/2","tags":["mailing-list","x_refsource_MLIST"]},{"url":"http://www.openwall.com/lists/oss-security/2019/12/19/3","tags":["mailing-list","x_refsource_MLIST"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/HZXMWILCICQLA2BYSP6I2CRMUG53YBLX/","tags":["vendor-advisory","x_refsource_FEDORA"]},{"url":"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00016.html","tags":["vendor-advisory","x_refsource_SUSE"]},{"url":"http://www.openwall.com/lists/oss-security/2020/04/08/1","tags":["mailing-list","x_refsource_MLIST"]},{"url":"http://www.openwall.com/lists/oss-security/2020/04/09/2","tags":["mailing-list","x_refsource_MLIST"]}],"techniques":[{"id":"T1110","name":"Brute Force","tactics":["credential-access"],"provenance":"source","basis":"ctid-cve","bases":["ctid-cve"],"basisDetail":"CTID attack_to_cve (Phase 2)","mappingType":"exploitation_technique","evidence":[],"confidence":"high"},{"id":"T1563","name":"Remote Service Session Hijacking","tactics":["lateral-movement"],"provenance":"source","basis":"ctid-cve","bases":["ctid-cve"],"basisDetail":"CTID attack_to_cve (Phase 2)","mappingType":"primary_impact","evidence":[],"confidence":"high"}],"reports":[],"affected":[{"ecosystem":"RubyGems","package":"rack","vulnerableRanges":["<1.6.12",">=2.0.0, <2.0.8"],"patched":["1.6.12","2.0.8"],"from":["GHSA-hrqr-hxpp-chr3"],"provenance":"source"}],"advisories":[{"id":"GHSA-hrqr-hxpp-chr3","url":"https://github.com/advisories/GHSA-hrqr-hxpp-chr3","severity":"MODERATE","ecosystem":"RubyGems","package":"rack","vulnerableRanges":["<1.6.12"],"patched":["1.6.12"],"provenance":"source","from":"GHSA"},{"id":"GHSA-hrqr-hxpp-chr3","url":"https://github.com/advisories/GHSA-hrqr-hxpp-chr3","severity":"MODERATE","ecosystem":"RubyGems","package":"rack","vulnerableRanges":[">=2.0.0, <2.0.8"],"patched":["2.0.8"],"provenance":"source","from":"GHSA"}],"euvd":{"id":"EUVD-2019-0795","url":"https://euvd.enisa.europa.eu/vulnerability/EUVD-2019-0795","exploited":false,"exploitedSince":null,"provenance":"source"},"exploits":[],"exploitSources":null,"exploitRefs":[],"flow":[{"stage":"exploitation","techniques":["T1110"],"provenance":"source"},{"stage":"primary","techniques":["T1563"],"provenance":"source"}],"timeline":[{"date":"2019-12-18","kind":"published","label":"Published (CVE.org)","url":"https://www.cve.org/CVERecord?id=CVE-2019-16782","provenance":"source"}],"speed":{"daysToPublicExploit":null,"firstExploitFrom":null,"daysToKev":null},"priority":{"score":22.4,"factors":[{"name":"In a KEV catalog","points":0.0,"detail":"not listed"},{"name":"Recent KEV listing","points":0.0,"detail":"not listed"},{"name":"Known ransomware use","points":0.0,"detail":"not known"},{"name":"EPSS percentile","points":17.94,"detail":"percentile 0.8970"},{"name":"Named in threat reports","points":0.0,"detail":"0 reports"},{"name":"Public exploit code","points":0.0,"detail":"none found"},{"name":"Mentioned in OTX pulses","points":0.0,"detail":"0 pulses"},{"name":"CVSS severity","points":4.41,"detail":"base score 6.3"},{"name":"End-of-life product","points":0.0,"detail":"supported or unknown"}]},"lineage":{"children":[{"from":"CVE-2019-16782","to":"CVE-2019-25025","relation":"related","confidence":"low","kind":"lineage","evidence":[{"kind":"text","provenance":"source","relation":"related","quote":"This is a related issue to CVE-2019-16782.","from":"CVE.org","in":"CVE-2019-25025"}]}],"packageHistory":[{"cve":"CVE-2015-3225","published":"2015-07-26","fixed":"1.6.2","kev":false},{"cve":"CVE-2018-16470","published":"2018-11-13","fixed":"2.0.6","kev":false,"link":{"from":"CVE-2018-16470","to":"CVE-2019-16782","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"RubyGems:rack","fromFixed":"2.0.6","toFixed":"2.0.8","daysApart":400}]}},{"cve":"CVE-2018-16471","published":"2018-11-13","fixed":"2.0.6","kev":false,"link":{"from":"CVE-2018-16471","to":"CVE-2019-16782","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"RubyGems:rack","fromFixed":"1.6.11","toFixed":"1.6.12","daysApart":400}]}},{"cve":"CVE-2019-16782","published":"2019-12-18","fixed":"2.0.8","kev":false},{"cve":"CVE-2020-8161","published":"2020-07-02","fixed":"2.1.3","kev":false},{"cve":"CVE-2020-8184","published":"2020-06-19","fixed":"2.2.3","kev":false},{"cve":"CVE-2022-30122","published":"2022-12-05","fixed":"2.2.3.1","kev":false}],"package":"RubyGems:rack"}}