{"id":"CVE-2017-2585","aliases":["EUVD-2018-0707","GHSA-w6gv-3r3v-gwgj","RHSA-2017:0872","RHSA-2017:0873"],"status":"published","title":"keycloak-core vulnerable to timing attacks against JWS token verification","description":"Red Hat Keycloak before version 2.5.1 has an implementation of HMAC verification for JWS tokens that uses a method that runs in non-constant time, potentially leaving the application vulnerable to timing attacks.","severity":{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.01974,"percentile":0.80608,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-200"],"published":"2018-03-12T15:00:00Z","modified":"2026-10-24T10:30:33Z","fixes":[{"ecosystem":"Maven","package":"org.keycloak:keycloak-core","fixed_in":["2.5.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"org.keycloak:keycloak-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.5.1"}]}]},{"source":"osv","ecosystem":"Maven","package":"org.keycloak:keycloak-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.5.1"}]}],"versions":["1.0-alpha-1","1.0-alpha-1-12062013","1.0-alpha-2","1.0-alpha-3","1.0-alpha-4","1.0-beta-1","1.0-beta-1-20150521","1.0-beta-1-20150523","1.0-beta-2","1.0-beta-3","1.0-beta-4","1.0-final","1.0-rc-1","1.0-rc-2","1.0.1.Final","1.0.2.Final","1.0.3.Final","1.0.4.Final","1.0.5.Final","1.1.0.Beta1","1.1.0.Beta2","1.1.0.Final","1.1.1.Final","1.2.0.Beta1","1.2.0.CR1","1.2.0.Final","1.3.0.Final","1.3.1.Final","1.4.0.Final","1.5.0-Final","1.5.0.Final","1.5.1.Final","1.6.0.Final","1.6.1.Final","1.7.0.CR1","1.7.0.Final","1.8.0.Alpha1","1.8.0.CR1","1.8.0.CR2","1.8.0.CR3","1.8.0.Final","1.8.1.Final","1.9.0.CR1","1.9.0.Final","1.9.1.Final","1.9.2.Final","1.9.3.Final","1.9.4.Final","1.9.5.Final","1.9.7.Final","1.9.8.Final","2.0.0.CR1","2.0.0.Final","2.1.0.CR1","2.1.0.Final","2.2.0.CR1","2.2.0.Final","2.2.1.Final","2.3.0.CR1","2.3.0.Final","2.4.0.CR1","2.4.0.Final","2.5.0.CR1","2.5.0.Final"]},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1-2.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-freemarker","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.3.23-1.redhat_2.2.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-javapackages-tools","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.4.1-5.15.3.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-keycloak","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.5.5-2.Final_redhat_1.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-keycloak-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.5.5-2.Final_redhat_1.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-libunix-dbus-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.8.0-2.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-libunix-dbus-java-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.8.0-2.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-libunix-dbus-java-devel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.8.0-2.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-liquibase","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.4.1-2.redhat_2.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-liquibase-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.4.1-2.redhat_2.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-python-javapackages","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.4.1-5.15.3.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-runtime","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1-2.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-twitter4j","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.0.4-1.redhat_3.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-twitter4j-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.0.4-1.redhat_3.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-zxing","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.2.1-1.redhat_4.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-zxing-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.2.1-1.redhat_4.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el6","package":"rh-sso7-zxing-javase","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.2.1-1.redhat_4.1.jbcs.el6"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1-2.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-freemarker","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.3.23-1.redhat_2.2.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-javapackages-tools","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.4.1-5.15.3.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-keycloak","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.5.5-2.Final_redhat_1.1.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-keycloak-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.5.5-2.Final_redhat_1.1.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-libunix-dbus-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.8.0-2.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-libunix-dbus-java-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.8.0-2.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-libunix-dbus-java-devel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.8.0-2.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-liquibase","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.4.1-2.redhat_2.1.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-liquibase-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.4.1-2.redhat_2.1.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-python-javapackages","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.4.1-5.15.3.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-runtime","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1-2.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-twitter4j","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.0.4-1.redhat_3.1.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-twitter4j-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.0.4-1.redhat_3.1.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-zxing","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.2.1-1.redhat_4.1.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-zxing-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.2.1-1.redhat_4.1.jbcs.el7"}]}],"bundled":3},{"source":"osv","ecosystem":"Red Hat:red_hat_single_sign_on:7::el7","package":"rh-sso7-zxing-javase","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.2.1-1.redhat_4.1.jbcs.el7"}]}],"bundled":3}],"products":[{"vendor":"keycloak","product":"keycloak"},{"vendor":"red hat, inc.","product":"keycloak"},{"vendor":"redhat","product":"keycloak"},{"vendor":"redhat","product":"single_sign_on"}],"references":[{"url":"http://rhn.redhat.com/errata/RHSA-2017-0876.html","tags":["vendor-advisory","x_refsource_REDHAT","x_transferred","Vendor Advisory","advisory","web"]},{"url":"http://www.securitytracker.com/id/1038180","tags":["vdb-entry","x_refsource_SECTRACK","x_transferred","Third Party Advisory","VDB Entry","advisory"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1412376","tags":["x_refsource_CONFIRM","x_transferred","Issue Tracking","report","web"]},{"url":"http://www.securityfocus.com/bid/97393","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","advisory"]},{"url":"https://access.redhat.com/errata/RHSA-2017:0873","tags":["vendor-advisory","x_refsource_REDHAT","x_transferred","Vendor Advisory","advisory","web"]},{"url":"https://access.redhat.com/errata/RHSA-2017:0872","tags":["vendor-advisory","x_refsource_REDHAT","x_transferred","Vendor Advisory","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2017-2585","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-w6gv-3r3v-gwgj","tags":["advisory"]},{"url":"https://web.archive.org/web/20170420113802/http://www.securitytracker.com/id/1038180","tags":["web"]},{"url":"https://web.archive.org/web/20200227175650/http://www.securityfocus.com/bid/97393","tags":["web"]},{"url":"https://access.redhat.com/security/updates/classification/#moderate","tags":["article"]},{"url":"https://access.redhat.com/documentation/en-us/red_hat_single_sign-on/7.1/html/release_notes/","tags":["article"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1388988","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1404782","tags":["report"]},{"url":"https://issues.redhat.com/browse/RHSSO-427","tags":["article"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2017/rhsa-2017_0872.json","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2016-8629","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2016-8629","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2016-8629","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2016-9589","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2016-9589","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2016-9589","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2017-2585","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2017-2585","tags":["advisory"]},{"url":"https://issues.redhat.com/browse/RHSSO-426","tags":["article"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2017/rhsa-2017_0873.json","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2017-2585","description":"Red Hat Keycloak before version 2.5.1 has an implementation of HMAC verification for JWS tokens that uses a method that runs in non-constant time, potentially leaving the application vulnerable to timing attacks.","status":"published","published":"2018-03-12T15:00:00Z","modified":"2024-09-16T22:56:17.924Z","updated_at":"2026-11-02T14:33:15.543086Z"}],"euvd":[{"id":"EUVD-2018-0707","description":"Red Hat Keycloak before version 2.5.1 has an implementation of HMAC verification for JWS tokens that uses a method that runs in non-constant time, potentially leaving the application vulnerable to timing attacks.","status":"published","published":"2018-03-12T15:00:00Z","modified":"2024-09-16T22:56:17Z","updated_at":"2026-11-03T00:54:58.273879Z"}],"ghsa":[{"id":"GHSA-w6gv-3r3v-gwgj","title":"keycloak-core vulnerable to timing attacks against JWS token verification","description":"Red Hat Keycloak before version 2.5.1 has an implementation of HMAC verification for JWS tokens that uses a method that runs in non-constant time, potentially leaving the application vulnerable to timing attacks.","status":"published","published":"2018-10-18T16:47:41Z","modified":"2023-09-07T20:31:13Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-200"],"updated_at":"2026-11-02T14:37:03.287418Z"}],"nvd":[{"id":"CVE-2017-2585","description":"Red Hat Keycloak before version 2.5.1 has an implementation of HMAC verification for JWS tokens that uses a method that runs in non-constant time, potentially leaving the application vulnerable to timing attacks.","status":"published","published":"2018-03-12T15:29:00.397Z","modified":"2026-06-17T01:16:27.14Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"primary"},{"version":"2.0","score":4.3,"vector":"AV:N/AC:M/Au:N/C:P/I:N/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-200"],"updated_at":"2026-11-02T14:04:16.247048Z"}],"osv":[{"id":"CVE-2017-2585","description":"Red Hat Keycloak before version 2.5.1 has an implementation of HMAC verification for JWS tokens that uses a method that runs in non-constant time, potentially leaving the application vulnerable to timing attacks.","status":"published","published":"2018-03-12T15:29:00.397Z","modified":"2026-10-24T10:30:33.5984346Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T15:44:05.486486Z"},{"id":"GHSA-w6gv-3r3v-gwgj","title":"keycloak-core vulnerable to timing attacks against JWS token verification","description":"Red Hat Keycloak before version 2.5.1 has an implementation of HMAC verification for JWS tokens that uses a method that runs in non-constant time, potentially leaving the application vulnerable to timing attacks.","status":"published","published":"2018-10-18T16:47:41Z","modified":"2024-02-16T07:58:50.193955Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-200"],"updated_at":"2026-11-02T15:46:58.401149Z"},{"id":"RHSA-2017:0872","title":"Red Hat Security Advisory: Red Hat Single Sign-On 7.1 update on RHEL 6","status":"published","published":"2024-09-13T14:40:04Z","modified":"2026-03-18T11:30:06.142216Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:53:04.262457Z"},{"id":"RHSA-2017:0873","title":"Red Hat Security Advisory: Red Hat Single Sign-On 7.1 update on RHEL 7","status":"published","published":"2024-09-13T14:39:58Z","modified":"2026-03-18T11:30:08.582677Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:53:04.262457Z"}]}}
