CVE-2026-58391
ŚrednieCVSS 5.4Streszczenie
W OPNsense przed wersją 26.1.11 nazwy kategorii i opisy aliasów zapisywane są w atrybutach HTML title bez bezpiecznego kodowania cudzysłowów. Warstwa odpowiedzi używa ENT_NOQUOTES, więc cudzysłów zamyka atrybut i pozwala dodać atrybut obsługi zdarzeń do istniejącego elementu span. Użytkownik z uprawnieniami do edycji kategorii lub aliasów zapory może zapisać złośliwą wartość, która wykona skrypt w sesji administratora otwierającego stronę reguł lub NAT.
Ocena ryzyka
Uwierzytelniony użytkownik z ograniczonymi uprawnieniami może wykonać dowolny skrypt w sesji administratora, uzyskać dostęp do tokenów CSRF i wykonać działania w jego imieniu. Prowadzi to do eskalacji uprawnień i pełnej kompromitacji konfiguracji zapory.
Rekomendacja
Zaktualizuj OPNsense do wersji 26.1.11 lub nowszej. Do czasu aktualizacji ogranicz uprawnienia do edycji kategorii i aliasów zapory wyłącznie do zaufanych administratorów.
Inne podatności w OPNsense
Zobacz wszystkie- CVE-2026-71490Wysokie
OPNsense, platforma firewall i routingu oparta na FreeBSD, w wersjach przed 26.1.11 nieprawidłowo przetwarza wartości uprawnień w funkcji ACL::hasPrivilege(). Użytkownik bezpośrednio przypisany zarówno do uprawnienia zapisu komponentu, jak i user-config-readonly może zostać uznany za pozbawionego ograniczenia tylko do odczytu, co pozwala na zapisywanie zmian konfiguracji przez API MVC.
- CVE-2026-63442Wysokie
OPNsense, platforma firewall i routingu oparta na FreeBSD, w wersjach przed 26.1.11 pozwala na wstrzyknięcie znaków CR i LF w polu nazwy użytkownika formularza logowania WebGUI. Atakujący z dostępem sieciowym do strony logowania może sfałszować zdarzenia uwierzytelniania dla innego adresu IP, dodając go do tabeli sshlockout PF, lub zresetować własny licznik prób brute-force.
- CVE-2026-58395Średnie
OPNsense to platforma firewall i routingu oparta na FreeBSD. Przed wersją 26.1.11 ścieżka bezpiecznego usuwania osiągana przez ApiMutableModelControllerBase::delBase() interpoluje niezwalidowany token bezpiecznego usuwania z adresu URL żądania do wyrażenia XPath na config.xml przed potwierdzeniem, że token jest prawidłowym identyfikatorem. Użytkownik posiadający uprawnienie do dowolnego z dotkniętych modułów może wysłać spreparowany token do jednego z 21 dotkniętych endpointów usuwania obejmujących Traffic Shaper, DHCP relay, Dnsmasq, Firewall Category lub Kea DHCP, powodując dopasowanie XPath do danych konfiguracyjnych w modułach. Wynikowy komunikat błędu ujawnia nazwy elementów konfiguracji, opisy, ścieżki referencyjne i UUID oraz zapewnia oracle obecności podciągu XPath, w tym dla modułów, do których użytkownik normalnie nie ma dostępu. Żądanie nie modyfikuje konfiguracji ani nie wykonuje usunięcia. Problem naprawiono w wersji 26.1.11.
- CVE-2026-58394Średnie
OPNsense to platforma firewall i routingu oparta na FreeBSD. Przed wersją 26.1.11 plik src/www/system_advanced_admin.php wczytuje rekordy certyfikatów do $a_cert, ale pomija tę tablicę w legacy_html_escape_form_data() przed wyrenderowaniem każdej wartości descr certyfikatu w selektorze certyfikatów SSL. Opis certyfikatu akceptuje metaznaki HTML, co pozwala użytkownikowi z uprawnieniem page-system-certmanager na zapisanie znaczników, które wykonują się, gdy inny użytkownik otworzy System Settings Administration. Problem naprawiono w wersji 26.1.11.
- CVE-2026-58393Średnie
OPNsense to platforma firewall i routingu oparta na FreeBSD. Przed wersją 26.1.11 pole common_name w OpenVPN Client Specific Override akceptuje sekwencje przejścia ścieżki, a openvpn_csc_conf_write() łączy wartość do /var/etc/openvpn-csc/<vpnid>/<common_name> bez normalizacji ani sprawdzenia basename. Dotknięte procedury obsługi zdarzeń to client_connect.php i user_pass_verify.php. Uwierzytelniony użytkownik z uprawnieniami Client Specific Override może zapisać wartość przejścia, a pasujące zdarzenie OpenVPN client-connect lub uwierzytelnienia powoduje zapisanie wygenerowanego pliku CSO poza zamierzonym katalogiem. Zawartość pliku to wygenerowana konfiguracja OpenVPN, a nie dowolne bajty, a praktyczne wykorzystanie wymaga, aby atakujący spowodował przetworzenie pasującej nazwy common name lub nazwy użytkownika. Problem naprawiono w wersji 26.1.11.
- CVE-2026-58392Średnie
OPNsense to platforma firewall i routingu oparta na FreeBSD. Przed wersją 26.1.11 strona NTP GPS przechowuje wartość initcmd dostarczoną przez operatora w formie base64, stosuje legacy_html_escape_form_data() do zakodowanego ciągu, a następnie używa base64_decode() do zdekodowania wartości bezpośrednio do pola tekstowego polecenia inicjalizacji GPS w src/www/services_ntpd_gps.php. Ponieważ dekodowanie następuje po escapowaniu, przechowywany HTML pozostaje nieescapowany w miejscu wyjścia. Użytkownik z uprawnieniem page-services-ntp-gps może zapisać wartość, która zamyka pole tekstowe, a skrypt wykonuje się w sesji każdego użytkownika, który później otworzy stronę GPS. Skrypt może odczytać materiały CSRF i wykonać uwierzytelnione działania, w tym działania dostępne dla administratora. Problem naprawiono w wersji 26.1.11.
- CVE-2026-58390Wysokie
W OPNsense przed wersją 26.1.11 widget pulpitu OpenVPN oraz widok statusu połączeń umieszczają nazwę common_name klienta w atrybutach data-common-name bez bezpiecznego kodowania cudzysłowów. Przy konfiguracji z username-as-common-name i uwierzytelnianiem RADIUS lub LDAP możliwe jest wstrzyknięcie zdarzenia i wykonanie skryptu w sesji administratora. Luka naprawiona w wersji 26.1.11.
- CVE-2026-53582Wysokie
W OPNsense przed wersją 26.1.10 moduł Trust przechowuje kontrolowane przez atakującego wartości refid i wstawia je do wyrażeń XPath, co umożliwia atakującemu z uprawnieniami CA Manager lub Certificate Manager odzyskiwanie wartości z config.xml znak po znaku. Luka naprawiona w wersji 26.1.10.
- CVE-2026-57155Krytyczne
W OPNsense przed wersją 26.1.11 importer GeoIP dla aliasów zapory używa niezwalidowanej wartości country_code z pliku CSV do tworzenia nazw plików wyjściowych, co pozwala na path traversal. Użytkownik z uprawnieniem edycji aliasów zapory może dostarczyć złośliwe archiwum i zapisać treści jako root, a następnie wykorzystać cron do wykonania poleceń jako root.
- CVE-2026-53581Krytyczne
OPNsense to platforma zapory sieciowej oparta na FreeBSD. Przed wersją 26.1.9 opnsense/core i 26.4_20 BE/opnsense/core, podatność na przechodzenie po ścieżce w module konfiguracji NTP pozwala atakującemu nadpisać dowolne pliki w systemie jako użytkownik root. Manipulując parametrem portu szeregowego GPS lub PPS, atakujący z dostępem do konfiguracji NTP może wyjść poza zamierzony katalog i zapisać dane w dowolnym pliku.
Oryginalny opis (angielski, źródło NVD)
OPNsense is a FreeBSD based firewall and routing platform. Prior to version 26.1.11, Firewall Rules and NAT views place stored category names and alias descriptions into HTML title attributes in filter_rule.volt and nat_rule.volt without quote-safe encoding. The response layer uses ENT_NOQUOTES, so a double quote survives and closes the attribute, allowing an event-handler attribute to be added to the existing span. A user with Firewall Categories or Firewall Alias Edit privileges can store a category name or alias description; the category must be assigned to a filter or NAT rule, or the alias must be referenced by a rule source or destination, and the rule must be saved so the affected tooltip is rendered. Script then executes in the session of an administrator or other user who opens the affected Rules or NAT page. The script can access CSRF material and perform authenticated actions as the victim. This issue is fixed in version 26.1.11.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

