CVE-2026-87929
KrytyczneCVSS 9.8Streszczenie
MaxSite CMS do wersji 109.6 zawiera na stałe zaszyty klucz szyfrowania sesji w pliku application/config/config.php, który nie jest zmieniany podczas instalacji. Umożliwia to nieuwierzytelnionemu atakującemu sfałszowanie ciasteczek sesji administratora poprzez obliczenie HMAC-SHA1 z publicznie znanym kluczem, omijając kontrolę uwierzytelniania w funkcjach is_login() i mso_check_allow().
Ocena ryzyka
Atakujący może uzyskać pełny dostęp administracyjny do systemu CMS bez żadnych danych uwierzytelniających, co prowadzi do całkowitej kompromitacji aplikacji i danych.
Rekomendacja
Zaleca się natychmiastową aktualizację systemu MaxSite CMS do najnowszej wersji, która zmienia klucz szyfrowania sesji podczas instalacji. Jeśli aktualizacja nie jest możliwa, należy ręcznie zmienić klucz w pliku konfiguracyjnym i ograniczyć dostęp do niego.
Inne podatności w MaxSite CMS
Zobacz wszystkie- CVE-2026-87930Wysokie
MaxSite CMS do wersji 109.6 przekazuje ciasteczko ci_session do funkcji unserialize() bez ograniczeń klas, co pozwala nieuwierzytelnionym atakującym na wstrzyknięcie obiektów PHP. Atakujący mogą sfałszować prawidłowe ciasteczka sesji używając zakodowanego na stałe klucza szyfrującego, aby wywołać metody magiczne i uszkodzić stan aplikacji lub osiągnąć wykonanie kodu, jeśli istnieją klasy gadżetów.
- CVE-2026-87928Średnie
MaxSite CMS w wersjach od 0.94 do 109.6 zawiera podatność na cross-site scripting (XSS) w obsłudze przesyłania plików w panelu administracyjnym, która pozwala każdemu zalogowanemu użytkownikowi na przesyłanie plików HTML. Atakujący może przesłać HTML zawierający złośliwe skrypty do katalogu uploads/_pages/, które wykonują się w przeglądarkach odwiedzających, umożliwiając trwałe ataki XSS.
- CVE-2026-87927Wysokie
MaxSite CMS do wersji 109.6 zawiera podatność na lokalne dołączanie plików w dyspozytorach ajax i require-maxsite, która pozwala nieuwierzytelnionym atakującym na wykonanie uprzywilejowanych plików handlera poprzez dostarczenie zakodowanych w base64 sekwencji przechodzenia po ścieżkach. Atakujący mogą ominąć walidację ścieżek i wykonać akcje handlera ograniczone do administratora bez uwierzytelnienia, uzyskując dostęp do wrażliwych funkcji.
- CVE-2026-70554Krytyczne
MaxSite CMS zawiera podatność na wstrzykiwanie obiektów PHP, która pozwala nieuwierzytelnionym atakującym na wykonanie dowolnego kodu poprzez przekazanie kontrolowanych danych w ciasteczku maxsite_comuser do funkcji unserialize() bez walidacji. Możliwe jest wykorzystanie łańcuchów gadgetów, takich jak SoapClient lub Imagick, do zdalnego wykonania kodu.
- CVE-2026-70553Krytyczne
MaxSite CMS zawiera podatność na zdalne wykonanie kodu, która pozwala nieuwierzytelnionym atakującym na wstrzyknięcie dowolnego kodu PHP do pliku konfiguracyjnego aplikacji poprzez wysłanie spreparowanych żądań POST do punktu instalacji po zakończeniu instalacji. Atakujący może wykorzystać wartość db_dbprefix, aby przełamać literał łańcucha PHP i dodać własny kod.
- CVE-2026-70552Krytyczne
MaxSite CMS 109.5 i wcześniejsze zawiera podatność na ominięcie uwierzytelniania w dyspozytorze AJAX, która pozwala nieuwierzytelnionym atakującym na dostęp do punktów końcowych zarezerwowanych dla administratorów poprzez podanie nagłówka X-Requested-With i zakodowanej ścieżki do pliku *-ajax.php. Może to umożliwić manipulację stanami ankiet i liczbą głosów.
- CVE-2026-37700Średnie
Podatność na Cross-Site Scripting (XSS) w MaxSite CMS v.109.2 umożliwia zdalnemu atakującemu uzyskanie wrażliwych informacji poprzez endpoint przesyłania plików na stronie backendu używany przez admin_page.
Oryginalny opis (angielski, źródło NVD)
MaxSite CMS through 109.6 ships with a hardcoded session encryption key in application/config/config.php that is never changed during installation, allowing unauthenticated attackers to forge administrator session cookies. Attackers can mint a malicious ci_session cookie with administrator privileges by computing an HMAC-SHA1 using the publicly known encryption key, bypassing authentication checks in is_login() and mso_check_allow() functions.

