Security
Headlines
HeadlinesLatestCVEs

Headline

Ubuntu Security Notice USN-5526-1

Ubuntu Security Notice 5526-1 - Aapo Oksman discovered that PyJWT incorrectly handled signatures constructed from SSH public keys. A remote attacker could use this to forge a JWT signature.

Packet Storm
#vulnerability#web#ubuntu#js#ssh

=========================================================================
Ubuntu Security Notice USN-5526-1
July 20, 2022

pyjwt vulnerability

A security issue affects these releases of Ubuntu and its derivatives:

  • Ubuntu 22.04 LTS
  • Ubuntu 20.04 LTS
  • Ubuntu 18.04 LTS

Summary:

PyJWT could allow signature forgery.

Software Description:

  • pyjwt: Python 3 implementation of JSON Web Token

Details:

Aapo Oksman discovered that PyJWT incorrectly handled signatures
constructed from SSH public keys. A remote attacker could use this to forge
a JWT signature.

Update instructions:

The problem can be corrected by updating your system to the following
package versions:

Ubuntu 22.04 LTS:
python3-jwt 2.3.0-1ubuntu0.1

Ubuntu 20.04 LTS:
python3-jwt 1.7.1-2ubuntu2.1

Ubuntu 18.04 LTS:
python-jwt 1.5.3+ds1-1ubuntu0.1
python3-jwt 1.5.3+ds1-1ubuntu0.1

In general, a standard system update will make all the necessary changes.

References:
https://ubuntu.com/security/notices/USN-5526-1
CVE-2022-29217

Package Information:
https://launchpad.net/ubuntu/+source/pyjwt/2.3.0-1ubuntu0.1
https://launchpad.net/ubuntu/+source/pyjwt/1.7.1-2ubuntu2.1
https://launchpad.net/ubuntu/+source/pyjwt/1.5.3+ds1-1ubuntu0.1

Related news

GHSA-ffqj-6fqr-9h24: Key confusion through non-blocklisted public key formats

### Impact _What kind of vulnerability is it? Who is impacted?_ Disclosed by Aapo Oksman (Senior Security Specialist, Nixu Corporation). > PyJWT supports multiple different JWT signing algorithms. With JWT, an > attacker submitting the JWT token can choose the used signing algorithm. > > The PyJWT library requires that the application chooses what algorithms > are supported. The application can specify > "jwt.algorithms.get_default_algorithms()" to get support for all > algorithms. They can also specify a single one of them (which is the > usual use case if calling jwt.decode directly. However, if calling > jwt.decode in a helper function, all algorithms might be enabled.) > > For example, if the user chooses "none" algorithm and the JWT checker > supports that, there will be no signature checking. This is a common > security issue with some JWT implementations. > > PyJWT combats this by requiring that the if the "none" algorithm is > used, the key has to be empty. As the...

CVE-2022-29217

PyJWT is a Python implementation of RFC 7519. PyJWT supports multiple different JWT signing algorithms. With JWT, an attacker submitting the JWT token can choose the used signing algorithm. The PyJWT library requires that the application chooses what algorithms are supported. The application can specify `jwt.algorithms.get_default_algorithms()` to get support for all algorithms, or specify a single algorithm. The issue is not that big as `algorithms=jwt.algorithms.get_default_algorithms()` has to be used. Users should upgrade to v2.4.0 to receive a patch for this issue. As a workaround, always be explicit with the algorithms that are accepted and expected when decoding.

Packet Storm: Latest News

NIELD (Network Interface Events Logging Daemon) 0.6.2