Read the docs
TI-2021-10156 Aliases CVE-2021-29443GHSA-58f5-hfqc-jgch

Padding Oracle Attack due to Observable Timing Discrepancy in jose

Priority LOW 29CWE-203Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
High
Impact type
Information disclosure
Confidentiality · integrity · availability
High · None · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-203.

Summary

jose is an npm library providing a number of cryptographic operations. In vulnerable versions AES_CBC_HMAC_SHA2 Algorithm (A128CBC-HS256, A192CBC-HS384, A256CBC-HS512) decryption would always execute both HMAC tag verification and CBC decryption, if either failed `JWEDecryptionFailed` would be thrown. A possibly observable difference in timing when padding error would occur while decrypting the ciphertext makes a padding oracle and an adversary might be able to make use of that oracle to decrypt data without knowing the decryption key by issuing on average 128*b calls to the padding oracle (where b is the number of bytes in the ciphertext block). All major release versions have had a patch released which ensures the HMAC tag is verified before performing CBC decryption. The fixed versions are `^1.28.1 || ^2.0.5 || >=3.11.4`. Users should upgrade their v1.x dependency to ^1.28.1, their v2.x dependency to ^2.0.5, and their v3.x dependency to ^3.11.4. Thanks to Jason from Microsoft Vulnerability Research (MSVR) for bringing this up and Eva Sarafianou (@esarafianou) for helping to score this advisory.

Why it matters now

EPSS 0.01167 67th percentileScored 2026-11-07
Fix Fixed jose (panva): 1.28.1, 2.0.5, 3.11.4jose (npm): 1.28.1, 2.0.5, 3.11.4

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
panvajosebefore 1.28.1; 2.0.0 to before 2.0.5; 3.0.0 to before 3.11.41.28.1, 2.0.5, 3.11.4Patch availableCNA
—jose (npm)1.0.0 to before 1.28.11.28.1Patch availableGHSA-58f5-hfqc-jgch
—jose (npm)2.0.0 to before 2.0.52.0.5Patch availableGHSA-58f5-hfqc-jgch
—jose (npm)3.0.0 to before 3.11.43.11.4Patch availableGHSA-58f5-hfqc-jgch
  • jose Vendorpanva Affected before 1.28.1; 2.0.0 to before 2.0.5; 3.0.0 to before 3.11.4 Fixed in 1.28.1, 2.0.5, 3.11.4 Patch available CNA
  • jose (npm) Vendor— Affected 1.0.0 to before 1.28.1 Fixed in 1.28.1 Patch available GHSA-58f5-hfqc-jgch
  • jose (npm) Vendor— Affected 2.0.0 to before 2.0.5 Fixed in 2.0.5 Patch available GHSA-58f5-hfqc-jgch
  • jose (npm) Vendor— Affected 3.0.0 to before 3.11.4 Fixed in 3.11.4 Patch available GHSA-58f5-hfqc-jgch

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:panva:jose:*:*:*:*:*:node.js:*:*1.0.0 to before 1.28.1; 2.0.0 to before 2.0.5; 3.0.0 to before 3.11.4Vulnerablepanva
  • cpe:2.3:a:panva:jose:*:*:*:*:*:node.js:*:* Versions 1.0.0 to before 1.28.1; 2.0.0 to before 2.0.5; 3.0.0 to before 3.11.4 Vulnerable ·panva

Remediation

  • Fix · CNA jose (panva) Fixed in 1.28.1, 2.0.5, 3.11.4
  • Fix · GHSA-58f5-hfqc-jgch jose (npm) Fixed in 1.28.1 Advisory →
  • Fix · GHSA-58f5-hfqc-jgch jose (npm) Fixed in 2.0.5 Advisory →
  • Fix · GHSA-58f5-hfqc-jgch jose (npm) Fixed in 3.11.4 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2021-29443
  2. 2026-10-03 Alias added: GHSA-58f5-hfqc-jgch

References

  • TI-2022-16506 JOSE vulnerable to resource exhaustion via specifically crafted JWE CVSS 3.1MEDIUM 5.3

Sources