Krytyczny Odebrany

CVE-2026-90961

opublikowano:
modyfikacja:
Ocena CVSS
9.3
Krytyczny · v4.0
wektor: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

Wtyczki uwierzytelniające LdapAuth i LinOTPAuth w MISP zawierają lukę umożliwiającą obejście uwierzytelniania. Zarówno LdapAuthenticate, jak i LinOTPAuthenticate zastępują klasę FormAuthenticate CakePHP, ale nie replikują jej strażnika sprawdzania poprawności danych wejściowych _checkFields(). W rezultacie pola adresu e-mail i hasła wyodrębnione z żądania logowania są przekazywane do dalszej logiki uwierzytelniania bez sprawdzania, czy są to ciągi niepuste.

W module uwierzytelniającym LDAP puste lub zerowe hasło jest przekazywane do funkcji ldap_bind(). Zgodnie z RFC 4513, sekcja 5.1.2, żądanie powiązania z prawidłową nazwą wyróżniającą i pustym hasłem stanowi nieuwierzytelnione powiązanie, które wiele serwerów katalogowych LDAP uznaje za pomyślne. Osoba atakująca, która zna dowolny prawidłowy adres e-mail użytkownika w katalogu, może zatem uwierzytelnić się jako ten użytkownik bez konieczności posiadania hasła. Ponadto wartości niebędące ciągami znaków (null, false, tablice) są albo przekształcane w puste ciągi znaków przez funkcję ldap_bind(), zgłaszają błędy TypeErrors, albo są błędnie interpretowane jako warunki wyszukiwania w funkcji _findUser(), co może prowadzić do niezamierzonych wyników uwierzytelnienia.

W uwierzytelniaczu LinOTP ten sam brakujący strażnik umożliwia połączenie poświadczeń niebędących ciągiem znaków z żądaniem weryfikacji LinOTP, a w gałęzi uwierzytelniania mieszanego akceptowane jest puste hasło w oparciu o przechowywany skrót pustego ciągu.

Drugim problemem w uwierzytelnianiu LDAP jest to, że nowo utworzonym kontom użytkowników (automatycznie udostępnianym przy pierwszym logowaniu LDAP) przypisano puste hasło. Ponieważ ścieżka zapisu pomija sprawdzanie poprawności, pusty ciąg znaków jest mieszany i zapisywany. Jeśli później nie będzie już można znaleźć użytkownika w LDAP i zostanie użyte zastępcze uwierzytelnianie mieszane, przechowywany skrót pustego ciągu zostanie zweryfikowany na podstawie pustego hasła, ponownie umożliwiając nieuwierzytelniony dostęp.

Luka wymaga, aby w instancji MISP była włączona odpowiednia wtyczka (LdapAuth lub LinOTPAuth) oraz aby osoba atakująca znała co najmniej jeden prawidłowy adres e-mail zarejestrowany w katalogu lub magazynie użytkowników MISP. Nie jest wymagane żadne wcześniejsze uwierzytelnienie. Skuteczna eksploatacja zapewnia atakującemu pełne uprawnienia podszywającego się użytkownika, które mogą obejmować dostęp administracyjny do danych wywiadowczych o zagrożeniach.


Wersja, której dotyczy problem: ≤2.5.45

>_ Słabości (CWE)

>_ Referencje

Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.

This product uses the NVD API but is not endorsed or certified by the NVD.

Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.

CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.

NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org