CVE-2026-48694
WysokieCVSS 8.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 14 - wyżej niż 14% wszystkich znanych CVE
Streszczenie
FastNetMon Community Edition do wersji 1.2.9 zawiera podatność iniekcji konfiguracji w pluginie integracji z routerami Juniper. Zmienna $IP_ATTACK (z argv[1]) jest bezpośrednio interpolowana do komend NETCONF bez walidacji, co pozwala atakującemu na wstrzyknięcie dodatkowych komend CLI Junipera poprzez znaki nowej linii. Może to prowadzić do modyfikacji tablic routingu, filtrów firewall, kont użytkowników i innych elementów konfiguracji.
Ocena ryzyka
Atakujący może przejąć pełną kontrolę nad routerem Juniper, zmieniając jego konfigurację i potencjalnie zakłócając ruch sieciowy.
Rekomendacja
Zaktualizuj FastNetMon do najnowszej wersji i zastosuj walidację danych wejściowych w pluginie Juniper.
Inne podatności w FastNetMon
Zobacz wszystkie- CVE-2026-48689Krytyczne
FastNetMon Community Edition do wersji 1.2.9 zawiera przepełnienie bufora sterty o jeden bajt w klasie dynamic_binary_buffer_t. Pięć metod używa nieprawidłowego sprawdzenia granic, co pozwala na zapis o jeden bajt poza przydzielonym buforem. Atakujący wysyłający ruch sieciowy (NetFlow, sFlow, IPFIX lub BGP) może wywołać to przepełnienie, potencjalnie prowadząc do zdalnego wykonania kodu.
- CVE-2026-48691Krytyczne
Przepełnienie liczby całkowitej w FastNetMon Community Edition do wersji 1.2.9 w enkoderze atrybutu BGP AS_PATH prowadzi do przepełnienia bufora sterty.
- CVE-2026-48687Krytyczne
FastNetMon Community Edition do wersji 1.2.9 zawiera podatność na wstrzykiwanie poleceń systemu operacyjnego w pluginie integracji z routerami Juniper. Funkcja _log() w pliku src/juniper_plugin/fastnetmon_juniper.php (linie 117-118) konstruuje polecenia powłoki poprzez konkatenację parametru $msg bezpośrednio w wywołaniach exec(). Parametr $msg zawiera niesanetyzowane dane pochodzące z argumentów wiersza poleceń argv[1] do argv[3], reprezentujących adres IP ataku, kierunek i siłę.
- CVE-2026-48686Krytyczne
FastNetMon Community Edition do wersji 1.2.9 zawiera przepełnienie bufora na stosie w dekoderze BGP NLRI. Funkcja decode_bgp_subnet_encoding_ipv4_raw() w src/bgp_protocol.cpp odczytuje prefix_bit_length bezpośrednio z pakietu BGP bez walidacji, czy jest <= 32 dla prefiksów IPv4. Wartość ta jest przekazywana do how_much_bytes_we_need_for_storing_certain_subnet_mask(), która oblicza ceil(prefix_bit_length / 8), zwracając do 32 bajtów dla prefix_bit_length równego 255. Wynik jest używany jako argument długości w memcpy() kopiującym do 4-bajtowej zmiennej stosowej uint32_t (prefix_ipv4), powodując przepełnienie bufora o maksymalnie 28 bajtów, co może być wykorzystane do wykonania dowolnego kodu. Dodatkowo, niezweryfikowany prefix_bit_length jest przekazywany do convert_cidr_to_binary_netmask_local_function_copy(), gdzie przesunięcie (32 - cidr) z cidr > 32 powoduje niezdefiniowane zachowanie.
- CVE-2026-48682Średnie
FastNetMon Community Edition do wersji 1.2.9 zawiera odczyt poza zakresem w parserze pakietów IPv4. W pliku src/simple_packet_parser_ng.cpp, po walidacji, że pakiet zawiera co najmniej 20 bajtów, kod przesuwa wskaźnik o 4 * IHL bez sprawdzenia, czy IHL >= 5 i czy dostępne są odpowiednie bajty. IHL o wartości 15 przy tylko 20 bajtach powoduje odczyt 40 bajtów poza zakresem; IHL 0-4 prowadzi do błędnej interpretacji nagłówków.
- CVE-2026-48696Średnie
FastNetMon Community Edition do wersji 1.2.9 zawiera przepełnienie bufora. Jest to inna podatność niż CVE-2026-48686 i CVE-2026-48689.
- CVE-2026-48695Wysokie
FastNetMon Community Edition do wersji 1.2.9 zawiera podatność na wstrzykiwanie poleceń systemu operacyjnego w pluginie integracji z routerami MikroTik. Funkcja _log() w pliku src/mikrotik_plugin/fastnetmon_mikrotik.php (linie 107-108) konstruuje polecenia powłoki poprzez konkatenację parametru $msg bezpośrednio w wywołaniu exec(). Atakujący, który może wpływać na wartości argv[], może wstrzyknąć dowolne polecenia powłoki.
- CVE-2026-48693Średnie
Podatność w FastNetMon Community Edition do wersji 1.2.9. Lokalny atakujący może wykorzystać przewidywalne ścieżki plików w /tmp do nadpisania dowolnych plików jako użytkownik FastNetMon (zazwyczaj root).
- CVE-2026-48692Wysokie
FastNetMon Community Edition do wersji 1.2.9 udostępnia serwer gRPC na porcie 50052 bez uwierzytelnienia. Atakujący z dostępem sieciowym może wykonywać krytyczne operacje, takie jak banowanie IP, odbanowywanie ataków oraz uruchamianie skryptów zewnętrznych.
- CVE-2026-48688Wysokie
FastNetMon Community Edition do wersji 1.2.9 zawiera wiele odczytów poza zakresem w dekoderze atrybutów BGP MP_REACH_NLRI IPv6. Funkcja decode_mp_reach_ipv6() nie sprawdza poprawności danych przed ich użyciem, co pozwala atakującemu na kontrolowanie długości pól i wywołanie odczytu poza przydzieloną pamięcią.
Oryginalny opis (angielski, źródło NVD)
FastNetMon Community Edition through 1.2.9 contains a configuration injection vulnerability in the Juniper router integration plugin. In src/juniper_plugin/fastnetmon_juniper.php, the $IP_ATTACK variable (received from argv[1]) is directly interpolated into Juniper NETCONF set-configuration commands at lines 69 and 90 without any validation or sanitization. Line 69: $conn->load_set_configuration("set routing-options static route {$IP_ATTACK} community 65535:666 discard"). Line 90: $conn->load_set_configuration("delete routing-options static route {$IP_ATTACK}/32"). An attacker who can control the IP address string can inject additional Juniper CLI configuration commands by embedding newline characters followed by arbitrary set/delete commands. This could modify the router's routing table, firewall filters, user accounts, or any other configuration element accessible via NETCONF. The impact is full router compromise.

