Skip to content
CVE PROGRAM SOURCE RECORD9.8 Critical

CVE-2024-26584

net: tls: handle backlogging of crypto requests

Description

In the Linux kernel, the following vulnerability has been resolved: net: tls: handle backlogging of crypto requests Since we're setting the CRYPTO_TFM_REQ_MAY_BACKLOG flag on our requests to the crypto API, crypto_aead_{encrypt,decrypt} can return -EBUSY instead of -EINPROGRESS in valid situations. For example, when the cryptd queue for AESNI is full (easy to trigger with an artificially low cryptd.cryptd_max_cpu_qlen), requests will be enqueued to the backlog but still processed. In that case, the async callback will also be called twice: first with err == -EINPROGRESS, which it seems we can just ignore, then with err == 0. Compared to Sabrina's original patch this version uses the new tls_*crypt_async_wait() helpers and converts the EBUSY to EINPROGRESS to avoid having to modify all the error handling paths. The handling is identical.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • a54667f6728c2714a400f3c884727da74b6d1717 to < 3ade391adc584f17b5570fd205de3ad029090368affected
  • a54667f6728c2714a400f3c884727da74b6d1717 to < cd1bbca03f3c1d845ce274c0d0a66de8e5929f72affected
  • a54667f6728c2714a400f3c884727da74b6d1717 to < 13eca403876bbea3716e82cdfe6f1e6febb38754affected
  • a54667f6728c2714a400f3c884727da74b6d1717 to < ab6397f072e5097f267abf5cb08a8004e6b17694affected
  • a54667f6728c2714a400f3c884727da74b6d1717 to < 8590541473188741055d27b955db0777569438e3affected

Linux Linux

Default version status: affected

  • 4.16affected
  • 0 to < 4.16unaffected
  • 5.15.160 to ≤ 5.15.*unaffected
  • 6.1.84 to ≤ 6.1.*unaffected
  • 6.6.18 to ≤ 6.6.*unaffected
  • 6.7.6 to ≤ 6.7.*unaffected
  • 6.8 to ≤ *unaffected

References