CVE-2025-11786
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 28 - wyżej niż 28% wszystkich znanych CVE
Streszczenie
W urządzeniach Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2 występuje przepełnienie bufora na stosie w funkcji 'SetUserPassword()'. Parametr 'newPassword' jest bez walidacji wstawiany do polecenia powłoki przez 'sprintf()' i wykonywany przez 'system()', co pozwala na wstrzyknięcie dowolnych poleceń.
Ocena ryzyka
Atakujący może wykonać dowolne polecenia systemowe z uprawnieniami aplikacji, co może prowadzić do pełnego przejęcia urządzenia i naruszenia poufności oraz integralności danych.
Rekomendacja
Zaktualizuj oprogramowanie urządzeń do wersji, w której podatność została naprawiona, lub wdroż środki kompensacyjne uniemożliwiające dostęp do podatnej funkcji.
Inne podatności w Circutor SGE-PLC1000/SGE-PLC50
Zobacz wszystkie- CVE-2025-11788Krytyczne
W urządzeniach Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2 występuje przepełnienie bufora na stercie w funkcji 'ShowSupervisorParameters()'. Dane wejściowe użytkownika są kopiowane do bufora o stałym rozmiarze przez 'sprintf()' bez walidacji rozmiaru, co pozwala na dostarczenie zbyt dużego parametru 'meter'.
- CVE-2025-11785Krytyczne
Podatność przepełnienia bufora na stosie w Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2. W funkcji 'ShowMeterPasswords()' dane wejściowe użytkownika są kopiowane do bufora o stałym rozmiarze za pomocą 'sprintf()' bez walidacji rozmiaru. Atakujący może podać zbyt długi parametr 'meter', co prowadzi do przepełnienia bufora.
- CVE-2025-11784Krytyczne
Podatność przepełnienia bufora na stosie w Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2. W funkcji 'ShowMeterDatabase()' dane wejściowe użytkownika są kopiowane do bufora o stałym rozmiarze za pomocą 'sprintf()' bez walidacji rozmiaru. Atakujący może podać zbyt długi parametr 'meter', co prowadzi do przepełnienia bufora.
- CVE-2025-11783Krytyczne
Podatność przepełnienia bufora na stosie w Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2. W funkcji 'AddEvent()' dane wejściowe użytkownika (nazwa użytkownika) są kopiowane do bufora o stałym rozmiarze (48 bajtów) bez sprawdzania granic. Może to prowadzić do uszkodzenia pamięci i potencjalnego zdalnego wykonania kodu.
- CVE-2025-11782Krytyczne
Podatność przepełnienia bufora na stosie w Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2. Funkcja 'ShowDownload()' używa 'sprintf()' do formatowania ciągu zawierającego kontrolowane przez użytkownika dane wejściowe z 'GetParameter(meter)' w buforze o stałym rozmiarze 'acStack_4c' (64 bajty) bez sprawdzania długości. Atakujący może podać zbyt długą wartość parametru 'meter', przekraczającą rozmiar bufora.
- CVE-2025-11780Krytyczne
Podatność przepełnienia bufora na stosie w Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2. W funkcji 'showMeterReport()' dane wejściowe użytkownika są kopiowane do bufora o stałym rozmiarze za pomocą 'sprintf()' bez walidacji rozmiaru. Atakujący może podać zbyt długi parametr 'meter', co prowadzi do przepełnienia bufora.
- CVE-2025-11779Krytyczne
Podatność przepełnienia bufora na stosie w Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2. Funkcja 'SetLan' jest wywoływana podczas stosowania nowej konfiguracji, aktywowanej przez żądanie webowe do aplikacji 'index.cgi'. Parametry nie są sanityzowane, co może prowadzić do wstrzyknięcia komend.
- CVE-2025-11778Krytyczne
Podatność przepełnienia bufora na stosie w Circutor SGE-PLC1000/SGE-PLC50 w wersji 0.9.2. Umożliwia atakującemu zdalne wykorzystanie uszkodzenia pamięci przez funkcję 'read_packet()' w implementacji TACACSPLUS.
- CVE-2025-11789Wysokie
Podatność typu out-of-bounds read w Circutor SGE-PLC1000/SGE-PLC50 v9.0.2. Funkcja 'DownloadFile' konwertuje parametr na liczbę całkowitą za pomocą 'atoi()', a następnie używa go jako indeksu w tablicy 'FilesDownload' z '(&FilesDownload)[iVar2]'. Jeśli parametr jest zbyt duży, nastąpi dostęp do pamięci poza dozwolonym zakresem.
- CVE-2025-11787Wysokie
Podatność na wstrzyknięcie poleceń w systemie operacyjnym Circutor SGE-PLC1000/SGE-PLC50 w wersji 9.0.2 poprzez funkcje 'GetDNS()', 'CheckPing()' i 'TraceRoute()'. Umożliwia to wykonanie dowolnych poleceń w systemie.
Oryginalny opis (angielski, źródło NVD)
Stack-based buffer overflow vulnerability in Circutor SGE-PLC1000/SGE-PLC50 v9.0.2. In the 'SetUserPassword()' function, the 'newPassword' parameter is directly embedded in a shell command string using 'sprintf()' without any sanitisation or validation, and then executed using 'system()'. This allows an attacker to inject arbitrary shell commands that will be executed with the same privileges as the application.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

