CRITICAL✓ PATCH🇬🇧 English

CVE-2020-11945

Squid: przepełnienie licznika nonce w Digest Authentication umożliwia RCE

CVSS 9.8v3.1pub. 2020-04-23upd. 2024-11-21

Podatność w serwerze proxy Squid (wersje przed 5.0.2) pozwala zdalnemu, nieuwierzytelnionemu atakującemu na ominięcie mechanizmu Digest Authentication poprzez odtworzenie przechwyconego nonce. W skrajnym przypadku możliwe jest zdalne wykonanie kodu (RCE).

Pokaż oryginał (EN)

An issue was discovered in Squid before 5.0.2. A remote attacker can replay a sniffed Digest Authentication nonce to gain access to resources that are otherwise forbidden. This occurs because the attacker can overflow the nonce reference counter (a short integer). Remote code execution may occur if the pooled token credentials are freed (instead of replayed as valid credentials).

🤖 Analiza AI
Jak działa

Mechanizm Digest Authentication w Squid używa licznika odwołań do nonce (nonce reference counter) zadeklarowanego jako krótka liczba całkowita (short integer). Atakujący, który wcześniej podsłuchał prawidłowy nonce sieciowy, może wielokrotnie go odtwarzać, doprowadzając do przepełnienia licznika (integer overflow, CWE-190). Przepełnienie powoduje, że serwer traktuje powtórzony nonce jako prawidłowy, przyznając dostęp do zasobów normalnie niedostępnych. Jeśli w wyniku przepełnienia przechowywane dane uwierzytelniające (pooled token credentials) zostaną zwolnione z pamięci zamiast ponownie użyte, może dojść do wykonania dowolnego kodu przez atakującego.

Skutki

Atakujący może uzyskać nieautoryzowany dostęp do zasobów chronionych przez Digest Authentication, a w scenariuszu z błędnym zwolnieniem pamięci — wykonać dowolny kod na serwerze (RCE), co zagraża pełnej integralności, poufności i dostępności systemu.

Mitygacja

Należy zaktualizować Squid do wersji 5.0.2 lub nowszej. Dla gałęzi v4 dostępny jest patch wskazany w referencjach producenta (changeset squid-4-eeebf0f37a72a2de08348e85ae34b02c34e9a811). Użytkownicy dystrybucji openSUSE i Debian powinni zastosować aktualizacje pakietów dostarczone przez opiekunów dystrybucji.

Kogo dotyczy

Squid-Cache Squid w wersjach przed 5.0.2 (w tym gałąź v4). Dotyczy również dystrybucji Debian Linux dostarczających podatne pakiety Squid.

Uwagi

Informacja o podatności została opublikowana 23 kwietnia 2020 r. na liście oss-security. Podatność wynika z użycia zbyt wąskiego typu danych (short integer) dla licznika nonce, co jest klasycznym przypadkiem integer overflow (CWE-190).

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

    OS
    Canonical
    16.0418.0419.1020.04
  • Debian

    OS
    Debian
    10.09.0
  • Fedora Project Fedora

    OS
    Fedoraproject
    303132
  • Opensuse Leap

    OS
    Opensuse
    15.1
  • Squid Cache Squid

    APP
    Squid-Cache
    3.0 – 3.5.285.0 – 5.0.2 (bez)4.0 – 4.11 (bez)
🟢
PATCH DOSTĘPNY
Aktualizacja od producenta gotowa. Wdrożenie w ramach standardowego cyklu.
Tagi
RCE
CWE
Referencje

Powiązane podatności

CVE-2026-24061CRITICAL9.8⚠ KEVPL ✓ten sam produkt

GNU Inetutils telnetd: ominięcie uwierzytelnienia przez zmienną USER

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

Sudo: eskalacja uprawnień do root poprzez opcję --chroot (CVE-2025-32463)

CVE-2025-49113CRITICAL9.9⚠ KEVPL ✓ten sam produkt

RCE przez deserializację PHP w Roundcube Webmail (parametr _from)

CVE-2025-32433CRITICAL10.0⚠ KEVPL ✓ten sam produkt

Erlang/OTP SSH — nieuwierzytelniony RCE (CVSS 10.0)

CVE-2025-24201CRITICAL10.0⚠ KEVPL ✓ten sam produkt

Apple WebKit: out-of-bounds write umożliwiający ucieczkę z sandbox przeglądarki