CRITICAL🇬🇧 English

CVE-2024-26584

Linux Kernel: błędna obsługa backlogu żądań kryptograficznych w TLS

CVSS 9.8v3.1pub. 2024-02-21upd. 2026-08-04

Podatność w podsystemie TLS jądra Linux dotyczy nieprawidłowej obsługi sytuacji, gdy kolejka żądań kryptograficznych jest pełna i zwracany jest kod -EBUSY zamiast -EINPROGRESS. Błąd może prowadzić do niestabilności systemu lub innych poważnych skutków, co przy ocenie CVSS 9.8 klasyfikuje go jako krytyczny.

Pokaż oryginał (EN)

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.

🤖 Analiza AI
Jak działa

Gdy flaga CRYPTO_TFM_REQ_MAY_BACKLOG jest ustawiona dla żądań do API kryptograficznego, funkcje crypto_aead_encrypt i crypto_aead_decrypt mogą zwrócić kod -EBUSY zamiast -EINPROGRESS w sytuacjach, gdy kolejka cryptd (np. dla AESNI) jest zapełniona. Żądania są wówczas umieszczane w backlogu i przetwarzane asynchronicznie, jednak asynchroniczny callback jest wywoływany dwukrotnie — najpierw z błędem -EINPROGRESS, a następnie z wartością 0 (sukces). Oryginalny kod nie obsługiwał poprawnie tego scenariusza, co skutkowało błędem typu CWE-755 (niewłaściwa obsługa wyjątkowych warunków).

Skutki

Atakujący zdalny, bez uwierzytelnienia, może potencjalnie doprowadzić do naruszenia poufności, integralności oraz dostępności systemu, co odpowiada pełnemu kompromitowaniu zgodnie z wektorem CVSS 9.8.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami — poprawki zostały opublikowane jako commity w stabilnym repozytorium jądra Linux pod adresami wskazanymi w sekcji referencji. Zaleca się aktualizację jądra do wersji zawierającej wymienione łatki.

Kogo dotyczy

Jądro Linux (Linux Kernel) — konkretne wersje wskazane w referencjach producenta (commity dostępne w repozytorium kernel.org)

Uwagi

Poprawka bazuje na pomocnikach tls_*crypt_async_wait() i konwertuje kod błędu EBUSY na EINPROGRESS, eliminując konieczność modyfikacji wszystkich ścieżek obsługi błędów. W opisie wymieniono Sabrinę jako autorkę oryginalnej wersji patcha.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Linux Kernel

    OS
    Linux
    4.16.0 – 6.1.84 (bez)6.2.0 – 6.6.18 (bez)6.7.0 – 6.7.6 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2025-10585CRITICAL9.8⚠ KEVPL ✓ten sam produkt

Type confusion w V8 (Google Chrome) — zdalne uszkodzenie sterty

CVE-2025-34028CRITICAL9.3⚠ KEVPL ✓ten sam produkt

Commvault Command Center – nieuwierzytelniony RCE przez path traversal w ZIP

CVE-2022-47986CRITICAL9.8⚠ KEVPL ✓ten sam produkt

RCE przez YAML deserialization w IBM Aspera Faspex

CVE-2022-22954CRITICAL9.8⚠ KEVPL ✓ten sam produkt

RCE w VMware Workspace ONE Access i Identity Manager poprzez server-side template injection

CVE-2020-4006CRITICAL9.1⚠ KEVPL ✓ten sam produkt

Command Injection w VMware Workspace One Access i Identity Manager