@@ -4,8 +4,43 @@ Changelog
44All notable changes to this project will be documented in this file.
55This project adheres to `Semantic Versioning <https://semver.org/ >`__.
66
7- `Unreleased <https://github.com/jpadilla/pyjwt/compare/2.13.0...HEAD >`__
8- ------------------------------------------------------------------------
7+ `Unreleased <https://github.com/jpadilla/pyjwt/compare/2.14.0...HEAD >`__
8+ -------------------------------------------------------------------------
9+
10+ `v2.14.0 <https://github.com/jpadilla/pyjwt/compare/2.13.0...2.14.0 >`__
11+ -----------------------------------------------------------------------
12+
13+ Security
14+ ~~~~~~~~
15+
16+ - Harden HMAC key validation against public-key material supplied as JWK,
17+ JWKS, array, encoded, BOM-prefixed, DER, or PEM input. See
18+ `GHSA-r6x4-923q-g947 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-r6x4-923q-g947 >`__,
19+ `GHSA-ffc3-869f-jxw9 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-ffc3-869f-jxw9 >`__,
20+ `GHSA-p4g4-x82p-q773 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-p4g4-x82p-q773 >`__,
21+ and `GHSA-w2cx-738m-mc7w <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-w2cx-738m-mc7w >`__.
22+ - Reject automatic redirects when ``PyJWKClient `` fetches a JWKS, preventing
23+ redirected destinations from being treated as trusted key sources. See
24+ `GHSA-9v7f-9g4p-ffgj <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-9v7f-9g4p-ffgj >`__.
25+ - Limit repeated JWKS refreshes caused by unknown key IDs while preserving
26+ normal key-rotation behavior. See
27+ `GHSA-2gx3-rcp4-g85q <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-2gx3-rcp4-g85q >`__.
28+ - Handle deeply nested and malformed JWS/JWK input without uncaught recursion
29+ errors or whole-set parsing failures. See
30+ `GHSA-8wjv-2p76-3863 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-8wjv-2p76-3863 >`__
31+ and `GHSA-w6j9-cwv2-h6wq <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-w6j9-cwv2-h6wq >`__.
32+ - Enforce detached-payload and compact JWS encoding rules during decoding.
33+ See `GHSA-hxm8-2xgr-2p9m <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-hxm8-2xgr-2p9m >`__
34+ and `GHSA-mvj7-wp6q-v59j <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-mvj7-wp6q-v59j >`__.
35+
36+ Fixed
37+ ~~~~~
38+
39+ - Apply HMAC key validation consistently when keys are loaded through
40+ ``PyJWK `` and ``PyJWKClient ``. See
41+ `GHSA-pxh4-856f-4h89 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-pxh4-856f-4h89 >`__.
42+ - Reject empty HMAC keys when represented as JWKs.
43+ See `GHSA-pxh4-856f-4h89 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-pxh4-856f-4h89 >`__.
944
1045`v2.13.0 <https://github.com/jpadilla/pyjwt/compare/2.12.1...2.13.0 >`__
1146-----------------------------------------------------------------------
0 commit comments