CVE-2026-25861
ŚrednieCVSS 5.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 8 - wyżej niż 8% wszystkich znanych CVE
Streszczenie
QloApps do wersji 1.7.0 używa słabego algorytmu MD5 do haszowania haseł w funkcji Tools::encrypt(). Atakujący mogą przeprowadzić ataki brute-force offline na te hashe, a ryzyko zwiększa automatyczne generowanie 8-znakowych haseł podczas konwersji gościa na klienta.
Ocena ryzyka
Ujawnienie haseł użytkowników może prowadzić do nieautoryzowanego dostępu do kont i kradzieży danych wrażliwych.
Rekomendacja
Należy natychmiast zaktualizować QloApps do wersji zawierającej poprawkę (commit 64e9722) oraz zmienić algorytm haszowania na bezpieczniejszy, np. bcrypt.
Inne podatności w QloApps
Zobacz wszystkie- CVE-2026-115326Średnie
QloApps do wersji 1.7.0 zawiera podatność typu insecure direct object reference w OrderDetailController::displayAjaxSubmitRefundRequest(), która pozwala uwierzytelnionym klientom składać wnioski o zwrot dla linii usług innych klientów. Atakujący mogą podać obce wartości id_service_product_order_detail wraz z własnym id_order, aby tworzyć rekordy zwrotów, anulować linie usług ofiar i uszkadzać ilości zwrotów.
- CVE-2026-103590Średnie
QloApps do wersji 1.7.0 zawiera podatność typu odbity cross-site scripting (XSS) w polach długości pobytu edytora typów pokoi w back-office. Atakujący mogą nakłonić uwierzytelnionych administratorów do wysłania spreparowanych żądań POST z złośliwymi ładunkami w parametrach restriction_min_los i restriction_max_los, wykonując dowolny JavaScript w sesji administracyjnej ofiary.
- CVE-2026-103587Średnie
QloApps do wersji 1.7.0 zawiera podatność typu reflected XSS w wyszukiwarce Book Now systemu rezerwacji hotelowych w panelu back-office, gdzie parametry date_to i id_room_type są kopiowane do zmiennych szablonu bez walidacji. Atakujący może przygotować złośliwy link z ładunkiem JavaScript w tych parametrach, który wykona się w sesji zalogowanego administratora po kliknięciu linku.
- CVE-2025-67325Krytyczne
Nieograniczone przesyłanie plików w funkcji recenzji hotelu w QloApps w wersjach 1.7.0 i wcześniejszych pozwala zdalnym, nieuwierzytelnionym atakującym osiągnąć zdalne wykonanie kodu.
- CVE-2026-116746Średnie
QloApps w wersjach od 1.6.0 do 1.7.0 zawiera podatność braku autoryzacji w akcji AJAX AddReview modułu qlohotelreview, która pozwala nieuwierzytelnionym atakującym przesyłać recenzje dla dowolnych zamówień. Atakujący mogą wykorzystać publicznie ujawniony token review_ajax_token i wyliczać kolejne wartości id_order, aby publikować fałszywe oceny i recenzje przypisane innym klientom.
- CVE-2026-116745Średnie
QloApps do wersji 1.7.0 zawiera podatność na ujawnienie informacji w OrderConfirmationController::init(), która pozwala nieuwierzytelnionym atakującym uzyskać referencje zamówień gości i adresy e-mail poprzez podanie wartości id_cart gościa. Atakujący mogą iterować kolejne wartości id_cart, odczytywać nagłówek przekierowania Location, przeglądać szczegóły rezerwacji przez śledzenie gościa i konwertować gości na konta z hasłami wybranymi przez atakującego.
- CVE-2026-110229Średnie
QloApps do wersji 1.7.0 zawiera podatność na nieprawidłową kontrolę dostępu w AdminSlipController, która pozwala pracownikom back-office ograniczonym do hotelu na dostęp do not kredytowych wszystkich hoteli. Atakujący mogą przeglądać, eksportować jako PDF, oznaczać jako zrealizowane oraz generować bony na zakupy z rekordów zwrotów innych hoteli, ujawniając tożsamości klientów i kwoty.
- CVE-2026-110226Średnie
QloApps do wersji 1.7.0 zawiera podatność na złamaną kontrolę dostępu, która pozwala pracownikom back-office ograniczonym do hotelu na tworzenie typów pokoi pod nieprzypisanymi hotelami poprzez podanie dowolnego id_hotel. Atakujący mogą wyliczyć wszystkie hotele przez niefiltrowany selektor formularza typów pokoi i wysyłać obce identyfikatory hoteli do AdminProductsController, tworząc pokoje i inwentarz pod innymi hotelami.
- CVE-2026-110224Średnie
QloApps do wersji 1.7.0 zawiera podatność na odbite cross-site scripting w AdminSearchConfController::processSave(), która odbija odrzucone aliasy i wartości wyszukiwania bez escapowania w komunikatach o błędach walidacji. Atakujący mogą nakłonić uwierzytelnionego użytkownika back-office do przesłania spreparowanego żądania, wykonując JavaScript w jego sesji administracyjnej.
- CVE-2026-110221Średnie
QloApps do wersji 1.7.0 zawiera podatność na odbite cross-site scripting w formularzu AdminHotelFeaturePricesSettings, która odbija wartości feature_price_name i impact_price po nieudanej walidacji bez escapowania. Atakujący mogą zwabić uwierzytelnionego użytkownika back-office do przesłania spreparowanego żądania za pomocą złośliwego linku lub automatycznie przesyłanego formularza, wykonując JavaScript w jego sesji administracyjnej.
Oryginalny opis (angielski, źródło NVD)
QloApps through 1.7.0, fixed in commit 64e9722, contains a weak cryptographic algorithm vulnerability that allows attackers to compromise user credentials by exploiting the use of MD5 for password hashing in the Tools::encrypt() function within classes/Tools.php, which concatenates a static cookie key with the supplied password. Attackers can perform offline brute-force attacks against the MD5 hashes, with the risk compounded by auto-generated 8-character passwords assigned during guest-to-customer account conversion in classes/Customer.php, making credential recovery trivial.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

