rclement / mailer

Dead-simple mailer micro-service for static websites
https://rclement.github.io/mailer/
GNU Affero General Public License v3.0
59 stars 8 forks source link

Update dependency cryptography to v42 [SECURITY] #848

Open renovate[bot] opened 9 months ago

renovate[bot] commented 9 months ago

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
cryptography (changelog) ==41.0.6 -> ==42.0.4 age adoption passing confidence

GitHub Vulnerability Alerts

CVE-2023-50782

A flaw was found in the python-cryptography package. This issue may allow a remote attacker to decrypt captured messages in TLS servers that use RSA key exchanges, which may lead to exposure of confidential or sensitive data.

CVE-2024-0727

Issue summary: Processing a maliciously formatted PKCS12 file may lead OpenSSL to crash leading to a potential Denial of Service attack

Impact summary: Applications loading files in the PKCS12 format from untrusted sources might terminate abruptly.

A file in PKCS12 format can contain certificates and keys and may come from an untrusted source. The PKCS12 specification allows certain fields to be NULL, but OpenSSL does not correctly check for this case. This can lead to a NULL pointer dereference that results in OpenSSL crashing. If an application processes PKCS12 files from an untrusted source using the OpenSSL APIs then that application will be vulnerable to this issue.

OpenSSL APIs that are vulnerable to this are: PKCS12_parse(), PKCS12_unpack_p7data(), PKCS12_unpack_p7encdata(), PKCS12_unpack_authsafes() and PKCS12_newpass().

We have also fixed a similar issue in SMIME_write_PKCS7(). However since this function is related to writing data we do not consider it security significant.

The FIPS modules in 3.2, 3.1 and 3.0 are not affected by this issue.

CVE-2024-26130

If pkcs12.serialize_key_and_certificates is called with both:

  1. A certificate whose public key did not match the provided private key
  2. An encryption_algorithm with hmac_hash set (via PrivateFormat.PKCS12.encryption_builder().hmac_hash(...)

Then a NULL pointer dereference would occur, crashing the Python process.

This has been resolved, and now a ValueError is properly raised.

Patched in https://github.com/pyca/cryptography/pull/10423

GHSA-h4gh-qq45-vh27

pyca/cryptography's wheels include a statically linked copy of OpenSSL. The versions of OpenSSL included in cryptography 37.0.0-43.0.0 are vulnerable to a security issue. More details about the vulnerability itself can be found in https://openssl-library.org/news/secadv/20240903.txt.

If you are building cryptography source ("sdist") then you are responsible for upgrading your copy of OpenSSL. Only users installing from wheels built by the cryptography project (i.e., those distributed on PyPI) need to update their cryptography versions.


Release Notes

pyca/cryptography (cryptography) ### [`v42.0.4`](https://redirect.github.com/pyca/cryptography/compare/42.0.3...42.0.4) [Compare Source](https://redirect.github.com/pyca/cryptography/compare/42.0.3...42.0.4) ### [`v42.0.3`](https://redirect.github.com/pyca/cryptography/compare/42.0.2...42.0.3) [Compare Source](https://redirect.github.com/pyca/cryptography/compare/42.0.2...42.0.3) ### [`v42.0.2`](https://redirect.github.com/pyca/cryptography/compare/42.0.1...42.0.2) [Compare Source](https://redirect.github.com/pyca/cryptography/compare/42.0.1...42.0.2) ### [`v42.0.1`](https://redirect.github.com/pyca/cryptography/compare/42.0.0...42.0.1) [Compare Source](https://redirect.github.com/pyca/cryptography/compare/42.0.0...42.0.1) ### [`v42.0.0`](https://redirect.github.com/pyca/cryptography/compare/41.0.7...42.0.0) [Compare Source](https://redirect.github.com/pyca/cryptography/compare/41.0.7...42.0.0) ### [`v41.0.7`](https://redirect.github.com/pyca/cryptography/compare/41.0.6...41.0.7) [Compare Source](https://redirect.github.com/pyca/cryptography/compare/41.0.6...41.0.7)

Configuration

📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR was generated by Mend Renovate. View the repository job log.

codecov[bot] commented 9 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (426053a) to head (806d3d8). Report is 1 commits behind head on master.

:exclamation: Current head 806d3d8 differs from pull request most recent head d47614c. Consider uploading reports for the commit d47614c to get more accurate results

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #848 +/- ## ========================================= Coverage 100.00% 100.00% ========================================= Files 14 14 Lines 834 834 Branches 62 62 ========================================= Hits 834 834 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.