{"id":"CVE-2017-18076","aliases":["DEBIAN-CVE-2017-18076","DSA-4109-1","EUVD-2018-0158","GHSA-9pr6-grf4-x2fr","UBUNTU-CVE-2017-18076"],"status":"published","title":"Omniauth allows POST parameters to be stored in session","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.02129,"percentile":0.82068,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"published":"2018-01-26T19:00:00Z","modified":"2026-10-20T10:47:48Z","fixes":[{"ecosystem":"RubyGems","package":"omniauth","fixed_in":["1.3.2"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"ruby-omniauth","fixed_in":["1.3.1-2"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"ruby-omniauth","fixed_in":["1.3.1-2"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"ruby-omniauth","fixed_in":["1.3.1-2"],"sources":["osv"]},{"ecosystem":"Debian:8","package":"ruby-omniauth","fixed_in":["1.2.1-1+deb8u1"],"sources":["osv"]},{"ecosystem":"Debian:9","package":"ruby-omniauth","fixed_in":["1.3.1-1+deb9u1"],"sources":["osv"]},{"ecosystem":"Ubuntu:16.04:LTS","package":"ruby-omniauth","fixed_in":["1.3.1-1+deb9u1build0.16.04.1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"RubyGems","package":"omniauth","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.3.2"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"ruby-omniauth","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.3.1-2"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"ruby-omniauth","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.3.1-2"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"ruby-omniauth","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.3.1-2"}]}]},{"source":"osv","ecosystem":"Debian:8","package":"ruby-omniauth","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.2.1-1+deb8u1"}]}],"versions":["1.2.1-1"]},{"source":"osv","ecosystem":"Debian:9","package":"ruby-omniauth","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.3.1-1+deb9u1"}]}],"versions":["1.3.1-1"]},{"source":"osv","ecosystem":"RubyGems","package":"omniauth","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.3.2"}]}],"versions":["0.0.1","0.0.3","0.0.4","0.0.5","0.1.0","0.1.1","0.1.2","0.1.3","0.1.4","0.1.5","0.1.6","0.2.0","0.2.0.beta1","0.2.0.beta2","0.2.0.beta3","0.2.0.beta4","0.2.0.beta5","0.2.1","0.2.2","0.2.3","0.2.4","0.2.5","0.2.6","0.3.0","0.3.0.rc3","0.3.2","1.0.0","1.0.0.beta1","1.0.0.pr1","1.0.0.pr2","1.0.0.rc1","1.0.0.rc2","1.0.1","1.0.2","1.0.3","1.1.0","1.1.1","1.1.2","1.1.3","1.1.4","1.2.1","1.2.2","1.3.0","1.3.1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"ruby-omniauth","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.3.1-1+deb9u1build0.16.04.1"}]}],"versions":["1.2.2-3","1.3.1-1"]}],"products":[{"vendor":"debian","product":"debian_linux"},{"vendor":"omniauth","product":"omniauth"}],"references":[{"url":"https://github.com/omniauth/omniauth/pull/867","tags":["x_refsource_CONFIRM","x_transferred","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://www.debian.org/security/2018/dsa-4109","tags":["vendor-advisory","x_refsource_DEBIAN","x_transferred","Third Party Advisory","advisory","web"]},{"url":"https://bugs.debian.org/888523","tags":["x_refsource_CONFIRM","x_transferred","Issue Tracking","Third Party Advisory","report","web"]},{"url":"https://github.com/omniauth/omniauth/pull/867/commits/71866c5264122e196847a3980c43051446a03e9b","tags":["x_refsource_CONFIRM","x_transferred","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2017-18076","tags":["advisory"]},{"url":"https://github.com/rubysec/ruby-advisory-db/blob/master/gems/omniauth/CVE-2017-18076.yml","tags":["web"]},{"url":"https://github.com/advisories/GHSA-9pr6-grf4-x2fr"},{"url":"https://security-tracker.debian.org/tracker/CVE-2017-18076","tags":["advisory"]},{"url":"https://github.com/omniauth/omniauth","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2017-18076","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2017-18076","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2017-18076","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","status":"published","published":"2018-01-26T19:00:00Z","modified":"2024-08-05T21:13:47.519Z","updated_at":"2026-11-02T14:33:21.747294Z"}],"euvd":[{"id":"EUVD-2018-0158","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","status":"published","published":"2018-01-26T19:00:00Z","modified":"2024-08-05T21:13:47Z","updated_at":"2026-11-03T02:23:07.6199Z"}],"ghsa":[{"id":"GHSA-9pr6-grf4-x2fr","title":"Omniauth allows POST parameters to be stored in session","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","status":"published","published":"2018-01-29T15:45:28Z","modified":"2023-08-28T10:20:18Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T14:37:00.680009Z"}],"nvd":[{"id":"CVE-2017-18076","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","status":"published","published":"2018-01-26T19:29:00.26Z","modified":"2026-06-17T01:12:09.597Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:P/I:N/A:N","level":"medium","assessor":"primary"}],"updated_at":"2026-11-02T14:04:13.257031Z"}],"osv":[{"id":"CVE-2017-18076","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","status":"published","published":"2018-01-26T19:29:00.26Z","modified":"2026-10-20T10:47:48.850500782Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:44:05.486486Z"},{"id":"DEBIAN-CVE-2017-18076","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","status":"published","published":"2018-01-26T19:29:00.26Z","modified":"2026-09-01T20:03:46.919787628Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:45:29.100767Z"},{"id":"GHSA-9pr6-grf4-x2fr","title":"Omniauth allows POST parameters to be stored in session","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","status":"published","published":"2018-01-29T15:45:28Z","modified":"2024-12-03T06:18:52.625847Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:46:43.875515Z"},{"id":"UBUNTU-CVE-2017-18076","description":"In strategy.rb in OmniAuth before 1.3.2, the authenticity_token value is improperly protected because POST (in addition to GET) parameters are stored in the session and become available in the environment of the callback phase.","status":"published","published":"2018-01-26T19:29:00Z","modified":"2025-07-18T16:44:17Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:54:14.977781Z"},{"id":"DSA-4109-1","title":"ruby-omniauth - security update","status":"published","published":"2018-02-09T00:00:00Z","modified":"2026-03-09T01:21:09.104243Z","updated_at":"2026-11-02T15:46:16.523846Z"}]}}
