CRITICAL🇬🇧 English

CVE-2020-23361

phpList — pominięcie uwierzytelnienia przez type juggling w porównaniu hashy

CVSS 9.8v3.1pub. 2021-01-27upd. 2024-11-21

phpList 3.5.3 zawiera podatność umożliwiającą obejście logowania (login bypass) poprzez atak typu type juggling. Jest to krytyczna luka, ponieważ pozwala nieuwierzytelnionemu atakującemu uzyskać dostęp do konta bez znajomości hasła.

Pokaż oryginał (EN)

phpList 3.5.3 allows type juggling for login bypass because == is used instead of === for password hashes, which mishandles hashes that begin with 0e followed by exclusively numerical characters.

🤖 Analiza AI
Jak działa

Problem wynika z użycia operatora luźnego porównania (==) zamiast ścisłego (===) podczas weryfikacji hashy haseł. W PHP operator == przy porównywaniu ciągów znaków traktuje wartości zaczynające się od '0e' i zawierające wyłącznie cyfry jako notację naukową (np. 0e1234 == 0e5678 zwraca true, ponieważ oba są interpretowane jako 0). Atakujący może dostarczyć hasło, którego hash zaczyna się od '0e' i zawiera same cyfry (tzw. 'magic hash'), co sprawi, że porównanie z innym hashem o tej samej właściwości zwróci fałszywie prawdziwy wynik. W efekcie możliwe jest zalogowanie się na konto ofiary bez znajomości jej rzeczywistego hasła.

Skutki

Atakujący bez żadnego uwierzytelnienia może uzyskać pełny dostęp do konta użytkownika lub administratora systemu mailingowego phpList, co prowadzi do naruszenia poufności, integralności i dostępności danych.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami. Zaleca się aktualizację phpList do wersji wyższej niż 3.5.3, w której operator porównania hashy został zmieniony na ścisły (===).

Kogo dotyczy

phpList w wersji 3.5.3

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

    APP
    Phplist
    3.5.3
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2020-22249CRITICAL9.8PL ✓ten sam produkt

RCE w phplist 3.5.1 poprzez upload złośliwego pluginu

CVE-2021-3188CRITICAL9.8PL ✓ten sam produkt

CSV Injection w phpList 3.6.0 poprzez parametr email i eksport danych

CVE-2020-8547CRITICAL9.8PL ✓ten sam produkt

phpList 3.5.0 — pominięcie uwierzytelnienia admina przez type juggling

CVE-2017-20029HIGH7.3ten sam produkt

A vulnerability was found in PHPList 3.2.6 and classified as critical. This issue affects some unknown process...

CVE-2020-35708HIGH7.2ten sam produkt

phpList 3.5.9 allows SQL injection by admins who provide a crafted fourth line of a file to the "Config - Impo...