{"id":"GHSA-2c7c-3mj9-8fqh","aliases":["GO-2023-2334"],"status":"published","title":"Decryption of malicious PBES2 JWE objects can consume unbounded system resources","description":"The go-jose package is subject to a \"billion hashes attack\" causing denial-of-service when decrypting JWE inputs. This occurs when an attacker can provide a PBES2 encrypted JWE blob with a very large p2c value that, when decrypted, produces a denial-of-service.","facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-400"],"published":"2023-11-21T15:39:17Z","modified":"2026-09-10T03:49:58Z","fixes":[{"ecosystem":"Go","package":"github.com/go-jose/go-jose/v3","fixed_in":["3.0.1"],"sources":["ghsa","osv"]},{"ecosystem":"Go","package":"github.com/square/go-jose","fixed_in":["2.6.2"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/go-jose/go-jose/v3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.0.1"}]}]},{"source":"ghsa","ecosystem":"Go","package":"github.com/square/go-jose","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.6.2"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/go-jose/go-jose/v3","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.0.1"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/square/go-jose","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.6.2"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/go-jose/go-jose/v3","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.0.1"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/square/go-jose","ranges":[{"type":"SEMVER","events":[{"introduced":"0"}]}]}],"references":[{"url":"https://github.com/go-jose/go-jose/issues/64","tags":["web","report"]},{"url":"https://github.com/go-jose/go-jose/commit/65351c27657d58960c2e6c9fbb2b00f818e50568","tags":["web","fix"]},{"url":"https://github.com/go-jose/go-jose/commit/a3d307244c3bc50b25a71aa0688764c32ec419c7","tags":["web"]},{"url":"https://github.com/advisories/GHSA-2c7c-3mj9-8fqh"},{"url":"https://github.com/go-jose/go-jose","tags":["package"]}],"sources":{"ghsa":[{"id":"GHSA-2c7c-3mj9-8fqh","title":"Decryption of malicious PBES2 JWE objects can consume unbounded system resources","description":"The go-jose package is subject to a \"billion hashes attack\" causing denial-of-service when decrypting JWE inputs. This occurs when an attacker can provide a PBES2 encrypted JWE blob with a very large p2c value that, when decrypted, produces a denial-of-service.","status":"published","published":"2023-11-21T22:17:19Z","modified":"2024-02-27T18:36:28Z","cwes":["CWE-400"],"updated_at":"2026-11-02T14:37:38.935144Z"}],"osv":[{"id":"GHSA-2c7c-3mj9-8fqh","title":"Decryption of malicious PBES2 JWE objects can consume unbounded system resources","description":"The go-jose package is subject to a \"billion hashes attack\" causing denial-of-service when decrypting JWE inputs. This occurs when an attacker can provide a PBES2 encrypted JWE blob with a very large p2c value that, when decrypted, produces a denial-of-service.","status":"published","published":"2023-11-21T22:17:19Z","modified":"2026-09-10T03:49:58.719941857Z","cwes":["CWE-400"],"updated_at":"2026-11-02T15:46:34.338541Z"},{"id":"GO-2023-2334","title":"Denial of service via decryption of malicious PBES2 JWE objects in github.com/go-jose/go-jose/v3","description":"The go-jose package is subject to a \"billion hashes attack\" causing denial-of-service when decrypting JWE inputs. This occurs when an attacker can provide a PBES2 encrypted JWE blob with a very large p2c value that, when decrypted, produces a denial-of-service.","status":"published","published":"2023-11-21T15:39:17Z","modified":"2026-02-04T02:43:28.4281Z","updated_at":"2026-11-02T15:47:01.185262Z"}]}}
