Mechanizm logowania w Integria IMS używa operatora luźnego porównania ("==") zamiast ścisłego przy weryfikacji skrótów MD5 haseł, co umożliwia ominięcie uwierzytelnienia. Atakujący może zalogować się na konto ofiary, podając odpowiednio spreparowane hasło inne niż oryginalne.
▸ Pokaż oryginał (EN)
Integria IMS login check uses a loose comparator ("==") to compare the MD5 hash of the password provided by the user and the MD5 hash stored in the database. An attacker with a specific formatted password could exploit this vulnerability in order to login in the system with different passwords.
Podczas logowania aplikacja oblicza skrót MD5 hasła podanego przez użytkownika i porównuje go ze skrótem MD5 przechowanym w bazie danych przy użyciu operatora luźnego porównania ("=="). W językach programowania takich jak PHP operator ten może interpretować pewne ciągi znaków jako równe sobie, nawet jeśli ich wartości tekstowe są różne — zjawisko to określane jest jako tzw. "magic hash" lub porównanie typu juggling. Atakujący, znając ten mechanizm, może skonstruować hasło, którego skrót MD5 zostanie uznany za równy skrótowi MD5 rzeczywistego hasła ofiary mimo faktycznej różnicy wartości.
Atakujący nieposiadający znajomości rzeczywistego hasła może uzyskać nieautoryzowany dostęp do konta w systemie Integria IMS, potencjalnie przejmując pełną kontrolę nad aplikacją, jej danymi i funkcjonalnością.
Należy zastosować patche dostępne u producenta zgodnie z referencjami (https://integriaims.com/en/services/updates/). Dodatkowo zaleca się zastąpienie operatora luźnego porównania ścisłym ("===") w kodzie odpowiedzialnym za weryfikację skrótów haseł oraz rozważenie migracji z MD5 na bezpieczne funkcje haszowania haseł (np. bcrypt, Argon2).
Artica Integria IMS — konkretne wersje wskazane w referencjach producenta (integriaims.com)
Podatność zgłoszona i opisana przez INCIBE-CERT (Hiszpańskie Narodowe Centrum Cyberbezpieczeństwa). Luka wynika z klasycznego błędu type juggling przy porównywaniu skrótów MD5, szeroko opisanego w kontekście języka PHP.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HArtica Integria Ims
APPArtica5.0.92
Powiązane podatności
RCE poprzez nieautoryzowane przesyłanie plików w Artica Integria IMS 5.0.92
Artica Integria IMS – dowolny upload pliku przez filemgr.php
Artica Integria IMS version 5.0 MR56 Package 58, likely earlier versions contains a CWE-640: Weak Password Rec...
Integria IMS in its 5.0.92 version does not filter correctly some fields related to the login.php file. An att...
Artica Integria IMS 5.0.83 has CSRF in godmode/usuarios/lista_usuarios, resulting in the ability to delete an ...