CVE-2026-78191
Niskie ryzyko· EPSS 39%Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 39 - wyżej niż 39% wszystkich znanych CVE
Streszczenie
WebDyne w wersjach od 2.031 przed 3.022 dla Perla wykonuje pliki mające .psp w dowolnym miejscu nazwy jako strony Perla. Decyzja o uruchomieniu pliku jako strony opiera się na dopasowaniu nazwy do WEBDYNE_PSP_EXT_RE, które nie ma zakotwiczenia końca. Aplikacja sprawdzająca tylko końcowe rozszerzenie przy uploadach pozwala zdalnemu atakującemu wgrać plik taki jak report.psp.pdf i uruchomić jego osadzony Perl poprzez żądanie.
Ocena ryzyka
Możliwe jest zdalne wykonanie kodu w kontekście serwera aplikacji, co może prowadzić do pełnego przejęcia systemu. Ryzyko jest krytyczne w aplikacjach przyjmujących uploady.
Rekomendacja
Zaktualizuj WebDyne do wersji 3.022 lub nowszej. Dodatkowo weryfikuj uploadowane pliki pod kątem występowania .psp w dowolnym miejscu nazwy, nie tylko na końcu.
Inne podatności w WebDyne
Zobacz wszystkie- CVE-2026-78192Niskie ryzyko· EPSS 13%
WebDyne w wersjach od 2.022 przed 3.022 dla Perla ujawnia kod źródłowy aplikacji nieuwierzytelnionym klientom poprzez przeglądarkę źródeł na domyślnej stronie indeksu. Domyślnie włączona strona indeksu zwraca pliki spod katalogu dokumentów wskazane w parametrze source żądania HTMX, w tym pliki .psp, .pm i .pl. Zdalny atakujący może odczytać kod Perla aplikacji, w tym bloki __PERL__ stron .psp oraz przechowywane w nich dane uwierzytelniające.
- CVE-2026-78190Niskie ryzyko· EPSS 15%
WebDyne w wersjach od 2.014 przed 3.022 dla Perla odzwierciedla parametry żądania bez escapowania w wartościach pól formularza, umożliwiając cross-site scripting. Znaczniki textfield, password_field i filefield wypełniają atrybut value z parametru żądania o tej samej nazwie, a WEBDYNE_CGI_AUTOESCAPE domyślnie jest wyłączone. Od wersji 2.022 WebDyne::HTML::Tiny zastąpiło metodę entity_encode wersją zwracającą dane wejściowe bez zmian, więc włączenie WEBDYNE_CGI_AUTOESCAPE nie działa.
- CVE-2026-78189Niskie ryzyko· EPSS 16%
WebDyne w wersjach od 3.007 przed 3.022 dla Perla wykonuje pliki .psp spoza katalogu dokumentów poprzez path traversal w fallbacku trasy API PSGI. Gdy żądanie nie pasuje do żadnego pliku, handler PSGI ponawia je jako trasę API przez api_filename, zachowując segmenty .. w ścieżce i sprawdzając jedynie, czy złączona ścieżka zaczyna się od katalogu dokumentów, co żądanie /../private przechodzi. Zdalny atakujący może uruchomić osadzony Perl w dowolnym czytelnym pliku .psp, np. wgranym poza katalog dokumentów.
- CVE-2026-78188Niskie ryzyko· EPSS 2%
WebDyne w wersjach od 2.014 przed 3.022 dla Perla wysyła ciasteczka sesji bez atrybutów Secure, HttpOnly i SameSite. WebDyne::Session ustawia ciasteczko sesji tylko z nazwą, wartością i ścieżką. Przeglądarki wysyłają wtedy identyfikator sesji przez zwykły HTTP oraz w żądaniach cross-site i udostępniają go skryptom strony.
Oryginalny opis (angielski, źródło NVD)
WebDyne versions from 2.031 before 3.022 for Perl execute files with .psp anywhere in the name as Perl pages. WebDyne decides whether to run a requested file as a page by matching its name against WEBDYNE_PSP_EXT_RE, which has no end anchor. An application that accepts uploads by checking only the final extension lets a remote attacker upload a file such as report.psp.pdf and run its embedded Perl by requesting it.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

