{"id":"CVE-2022-23106","aliases":["EUVD-2022-0587","GHSA-fpj7-9xm6-8hgr"],"status":"published","title":"Observable Discrepancy and Observable Timing Discrepancy in Jenkins Configuration as Code Plugin","description":"Jenkins Configuration as Code Plugin 1.55 and earlier used a non-constant time comparison function when validating an authentication token allowing attackers to use statistical methods to obtain a valid authentication token.","severity":{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-11","score":0.01158,"percentile":0.67494,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-203","CWE-208"],"published":"2022-01-12T00:00:00Z","modified":"2026-10-24T10:30:16Z","fixes":[{"ecosystem":"Maven","package":"io.jenkins:configuration-as-code","fixed_in":["1.55.1","1.54.1","1.53.1","1.47.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"io.jenkins:configuration-as-code","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.55"},{"last_affected":"1.55"},{"fixed":"1.55.1"}]}],"versions":["1.55"]},{"source":"ghsa","ecosystem":"Maven","package":"io.jenkins:configuration-as-code","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.54"},{"last_affected":"1.54"},{"fixed":"1.54.1"}]}],"versions":["1.54"]},{"source":"ghsa","ecosystem":"Maven","package":"io.jenkins:configuration-as-code","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.48"},{"fixed":"1.53.1"}]}]},{"source":"ghsa","ecosystem":"Maven","package":"io.jenkins:configuration-as-code","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.47.1"}]}]},{"source":"osv","ecosystem":"Maven","package":"io.jenkins:configuration-as-code","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.55"},{"fixed":"1.55.1"}]}],"versions":["1.55"]},{"source":"osv","ecosystem":"Maven","package":"io.jenkins:configuration-as-code","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.54"},{"fixed":"1.54.1"}]}],"versions":["1.54"]},{"source":"osv","ecosystem":"Maven","package":"io.jenkins:configuration-as-code","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.48"},{"fixed":"1.53.1"}]}],"versions":["1.48","1.49","1.50","1.51","1.52","1.53"]},{"source":"osv","ecosystem":"Maven","package":"io.jenkins:configuration-as-code","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.47.1"}]}],"versions":["0.10-alpha","0.11-alpha","0.6-alpha","0.7-alpha","0.8-alpha","0.9-alpha","1.0","1.0-rc1","1.0-rc2","1.0-rc3","1.1","1.10","1.11","1.12","1.13","1.14","1.15","1.16","1.17","1.18","1.19","1.2","1.20","1.21","1.22","1.23","1.24","1.25","1.26","1.27","1.28","1.29","1.3","1.30","1.31","1.32","1.33","1.34","1.35","1.36","1.36.1-beta","1.36.2","1.37","1.38","1.39","1.4","1.40","1.41","1.42","1.43","1.44","1.45","1.46","1.47","1.5","1.6","1.7","1.8","1.9"]}],"products":[{"vendor":"jenkins","product":"configuration_as_code"},{"vendor":"jenkins project","product":"jenkins configuration as code plugin"}],"references":[{"url":"https://www.jenkins.io/security/advisory/2022-01-12/#SECURITY-2141","tags":["x_transferred","Vendor Advisory","advisory","web"]},{"url":"http://www.openwall.com/lists/oss-security/2022/01/12/6","tags":["mailing-list","x_transferred","Mailing List","Third Party Advisory","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-23106","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelist/blob/00bfb5abeecc9f553a2f42954ee540e493498ee9/2022/23xxx/CVE-2022-23106.json","tags":["web"]},{"url":"https://github.com/jenkinsci/configuration-as-code-plugin/commit/4f425675edf77d382a6fd10890f1a704ff3b2277","tags":["web"]},{"url":"https://github.com/advisories/GHSA-fpj7-9xm6-8hgr"},{"url":"https://github.com/jenkinsci/configuration-as-code-plugin","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2022-23106","description":"Jenkins Configuration as Code Plugin 1.55 and earlier used a non-constant time comparison function when validating an authentication token allowing attackers to use statistical methods to obtain a valid authentication token.","status":"published","published":"2022-01-12T00:00:00Z","modified":"2024-08-03T03:36:19.211Z","updated_at":"2026-11-02T14:34:29.478363Z"}],"euvd":[{"id":"EUVD-2022-0587","description":"Jenkins Configuration as Code Plugin 1.55 and earlier used a non-constant time comparison function when validating an authentication token allowing attackers to use statistical methods to obtain a valid authentication token.","status":"published","published":"2022-01-12T00:00:00Z","modified":"2024-08-03T03:36:19Z","updated_at":"2026-11-03T03:25:51.741657Z"}],"ghsa":[{"id":"GHSA-fpj7-9xm6-8hgr","title":"Observable Discrepancy and Observable Timing Discrepancy in Jenkins Configuration as Code Plugin","description":"Jenkins Configuration as Code Plugin prior to 1.55.1, 1.54.1, 1.53.1, and 1.47.1 does not use a constant-time comparison when checking whether two authentication tokens are equal.\n\nThis could potentially allow attackers to use statistical methods to obtain a valid authentication token.\n\nConfiguration as Code Plugin 1.55.1, 1.54.1, 1.53.1, and 1.47.1 now uses a constant-time comparison when validating authentication tokens.","status":"published","published":"2022-01-21T23:38:30Z","modified":"2023-12-27T15:00:48Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N","level":"low"}],"cwes":["CWE-203","CWE-208"],"updated_at":"2026-11-02T14:37:28.753349Z"}],"nvd":[{"id":"CVE-2022-23106","description":"Jenkins Configuration as Code Plugin 1.55 and earlier used a non-constant time comparison function when validating an authentication token allowing attackers to use statistical methods to obtain a valid authentication token.","status":"published","published":"2022-01-12T20:15:09.207Z","modified":"2026-06-17T04:29:31.48Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","level":"medium","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:P/I:N/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-203"],"updated_at":"2026-11-02T14:07:10.836864Z"}],"osv":[{"id":"CVE-2022-23106","description":"Jenkins Configuration as Code Plugin 1.55 and earlier used a non-constant time comparison function when validating an authentication token allowing attackers to use statistical methods to obtain a valid authentication token.","status":"published","published":"2022-01-12T20:15:09.207Z","modified":"2026-10-24T10:30:16.307346855Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T15:44:24.061177Z"},{"id":"GHSA-fpj7-9xm6-8hgr","title":"Observable Discrepancy and Observable Timing Discrepancy in Jenkins Configuration as Code Plugin","description":"Jenkins Configuration as Code Plugin prior to 1.55.1, 1.54.1, 1.53.1, and 1.47.1 does not use a constant-time comparison when checking whether two authentication tokens are equal.\n\nThis could potentially allow attackers to use statistical methods to obtain a valid authentication token.\n\nConfiguration as Code Plugin 1.55.1, 1.54.1, 1.53.1, and 1.47.1 now uses a constant-time comparison when validating authentication tokens.","status":"published","published":"2022-01-21T23:38:30Z","modified":"2024-02-16T07:58:00.156125Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N","level":"low"}],"cwes":["CWE-203","CWE-208"],"updated_at":"2026-11-02T15:46:46.760785Z"}]}}
