CVE-2026-39918
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 48 - wyżej niż 48% wszystkich znanych CVE
Streszczenie
Vvveb przed wersją 1.0.8.1 zawiera podatność na wstrzykiwanie kodu w punkcie końcowym instalacji, gdzie parametr POST subdir jest zapisywany bez oczyszczania do pliku konfiguracyjnego env.php. Atakujący mogą wstrzyknąć dowolny kod PHP, wychodząc z kontekstu ciągu znaków w instrukcji define, co umożliwia nieuwierzytelnione zdalne wykonanie kodu jako użytkownik serwera WWW.
Ocena ryzyka
Ryzyko dla organizacji obejmuje całkowite przejęcie serwera WWW przez nieuwierzytelnionego atakującego, co może prowadzić do kradzieży danych, modyfikacji treści lub dalszego ataku na infrastrukturę.
Rekomendacja
Niezwłocznie zaktualizuj Vvveb do wersji 1.0.8.1 lub nowszej. Jeśli aktualizacja nie jest możliwa, tymczasowo wyłącz punkt końcowy instalacji lub zastosuj reguły WAF blokujące podejrzane parametry POST.
Inne podatności w Vvveb
Zobacz wszystkie- CVE-2026-41938Wysokie
Vvveb przed wersją 1.0.8.2 zawiera podatność na nieograniczone przesyłanie plików w obsłudze przesyłania mediów, która pozwala uwierzytelnionym użytkownikom z uprawnieniami do przesyłania mediów na obejście ograniczeń dotyczących rozszerzeń poprzez przesłanie pliku .htaccess. Umożliwia to atakującym przesyłanie plików .phtml zawierających dowolny kod PHP i wykonanie ładunku poprzez nieautoryzowane żądanie HTTP GET.
- CVE-2026-41936Wysokie
Vvveb przed wersją 1.0.8.2 zawiera podatność na wstrzykiwanie zewnętrznych jednostek XML (XXE) w funkcji importu narzędzi administracyjnych, co pozwala uwierzytelnionym użytkownikom site_admin na odczyt dowolnych plików oraz modyfikację rekordów w bazie danych.
- CVE-2026-41934Wysokie
Vvveb przed wersją 1.0.8.2 zawiera podatność na zdalne wykonanie kodu z uwierzytelnieniem w edytorze kodu administratora, która pozwala użytkownikom o niskich uprawnieniach na wykonanie dowolnego kodu poprzez niewystarczające ograniczenia dotyczące rozszerzeń plików.
- CVE-2026-41930Krytyczne
Vvveb przed wersją 1.0.8.2 zawiera podatność na twardo zakodowane dane uwierzytelniające w konfiguracji docker-compose-apache.yaml, co pozwala nieautoryzowanym atakującym uzyskać dostęp do kontenera phpMyAdmin z prekonfigurowanymi danymi bazy danych.
- CVE-2026-55232Wysokie
Vvveb przed wersją 1.0.8.6 zawiera podatność SSRF, ponieważ walidacja adresów IP obsługuje tylko IPv4, a nie IPv6. Uwierzytelniony użytkownik panelu administracyjnego może wykorzystać proxy oEmbed do odczytu wewnętrznych usług i metadanych chmury, w tym danych uwierzytelniających IAM.
- CVE-2026-55231Wysokie
Vvveb przed wersją 1.0.8.6 ma wadliwy mechanizm czyszczenia ścieżek, który pozwala uwierzytelnionemu użytkownikowi z uprawnieniami do kopii zapasowych na odczyt i usunięcie dowolnych plików na serwerze. Można odzyskać dane uwierzytelniające bazy danych, czytać pliki systemowe i usunąć config/db.php, co umożliwia pełne przejęcie strony.
- CVE-2026-55230Wysokie
Vvveb przed wersją 1.0.8.6 ma sanitizer HTML, który nie usuwa atrybutów obsługi zdarzeń, gdy tag zawiera znak większości w wartości atrybutu w cudzysłowie. Autor treści o niskich uprawnieniach może przechowywać złośliwy kod JavaScript, który wykonuje się w przeglądarkach odwiedzających i administratorów, co może prowadzić do przejęcia konta administratora.
- CVE-2026-54613Średnie
W Vvveb przed wersją 1.0.8.5 funkcja getThemeFolder() w admin/controller/editor/revisions.php zwraca kontrolowany przez atakującego parametr theme bez sanityzacji, a backupFolder() łączy go z DIR_THEMES przed operacjami editor/revisions/load lub editor/revisions/delete na nazwanym pliku .html. sanitizeBackupFileName() usuwa znaki przejścia tylko z osobnego parametru pliku i nie chroni składnika katalogu motywu. Uwierzytelniony użytkownik z domyślną rolą Editor i uprawnieniem editor/* może przesłać sekwencje przejścia, które przekierowują file_get_contents() lub unlink() do osiągalnego podkatalogu kopii zapasowej poza katalogiem głównym sieci.
- CVE-2026-54612Wysokie
W systemie CMS Vvveb od wersji 1.0.0 do 1.0.8.5 funkcja saveGlobalElements() łączy kontrolowaną przez atakującego część ścieżki z katalogiem motywu, co pozwala na path traversal. Uwierzytelniony użytkownik z domyślną rolą Editor może zapisać dowolną treść PHP poza katalogiem motywu, co umożliwia umieszczenie trwałego webshella.
- CVE-2026-54507Wysokie
W Vvveb przed wersją 1.0.8.5 handler oEmbedProxy() przyjmuje kontrolowany przez atakującego parametr url i przekazuje go do getUrl(), podczas gdy validateUrl() sprawdza tylko nazwę hosta, nie jego rozwiązane adresy. Uwierzytelniony użytkownik panelu admina może wywołać żądanie do adresów prywatnych, loopback, link-local lub zarezerwowanych.
Oryginalny opis (angielski, źródło NVD)
Vvveb prior to 1.0.8.1 contains a code injection vulnerability in the installation endpoint where the subdir POST parameter is written unsanitized into the env.php configuration file without escaping or validation. Attackers can inject arbitrary PHP code by breaking out of the string context in the define statement to achieve unauthenticated remote code execution as the web server user.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

