CVE-2026-48503
WysokieCVSS 7.5Streszczenie
W bibliotece libIEC61850 usługa plików MMS akceptuje początkową pozycję poza zakresem w fileOpen i zapisuje ją w stanie odczytu pliku. Ścieżka fileRead odejmuje większą pozycję od rozmiaru pliku arytmetyką bez znaku i nie ogranicza odpowiedzi do rzeczywistej wartości zwróconej przez FileSystem_readFile. Zbyt duża odpowiedź może zawierać nieaktualne bajty z bufora połączenia, ujawniając wcześniejsze dane i fragmenty protokołu nieuwierzytelnionemu klientowi. Luka naprawiona w wersji 1.6.2.
Ocena ryzyka
Nieuwierzytelniony zdalny klient może odczytać pozostałości danych z bufora połączenia, co prowadzi do wycieku informacji.
Rekomendacja
Zaktualizuj libIEC61850 do wersji 1.6.2 lub nowszej. Wyłącz usługę plików MMS, jeśli nie jest wymagana.
Inne podatności w libIEC61850
Zobacz wszystkie- CVE-2026-68908Średnie
Biblioteka libIEC61850 przed wersją 1.6.2 nie waliduje długości pola RptID w ścieżce zapisu bloku kontroli raportu, akceptując wartości dłuższe niż 129 bajtów. Przy generowaniu raportu funkcja serializująca przekazuje bufor stosu rptIdBuf[130] do MmsValue_setVisibleString, którego ścieżka zmiany rozmiaru zwalnia ten bufor, powodując nieprawidłowe zwolnienie pamięci i awarię serwera.
- CVE-2026-68907Wysokie
W libIEC61850 funkcja checkDataSetAccess odwraca argumenty źródła i celu w StringUtils_copyStringToBuffer podczas konstruowania referencji zbioru danych MMS_ASSOCIATION_SPECIFIC. Powoduje to odczyt poza buforem stosu i skopiowanie tych bajtów do bufora listName, co może doprowadzić do awarii serwera przy żądaniu defineNamedVariableList.
- CVE-2026-57446Średnie
W libIEC61850 od wersji 1.6.1 do 1.6.2 udana operacja MMS ObtainFile zamyka uchwyt pliku w zadaniu, ale pozostawia nieaktualną niepustą wartość w zadaniu oznaczonym jako nieużywane. Jeśli późniejsze żądanie ObtainFile użyje tego zadania i utworzenie miejsca docelowego się nie powiedzie, procedura czyszczenia ponownie zamyka nieaktualny obiekt FILE, co pozwala zdalnie wywołać awarię serwera.
- CVE-2026-48741Wysokie
W bibliotece libIEC61850 funkcja alternateArrayAccess nie waliduje zakresu podtablicy alternate-access, gdy numberOfElements jest większe od zera. Wywołanie MmsValue_getElement poza zakresem zwraca NULL, a gałąź podtablicy przekazuje tę wartość do MmsValue_isDeletable, powodując dereferencję NULL. Zdalne żądanie MMS Read może więc zawiesić serwery, których modele danych zawierają tablice. Luka naprawiona w wersji 1.6.2.
- CVE-2026-52134Krytyczne
libiec61850 w wersji 1.6 zawiera podatność w funkcji parseGoosePayload() w pliku /goose/goose_receiver.c, która pozwala atakującym na ominięcie uwierzytelniania za pomocą przechwyconej ramki GOOSE.
- CVE-2026-68906Wysokie
W libIEC61850 funkcja parseUserInformation sprawdza len pod kątem zera przed walidacją ujemnego bufPos zwróconego przez BerDecoder_decodeLength dla obciętej długości długiej formy. Ścieżka continue pomija błąd, odczytuje buffer[-1], resetuje parsowanie i powtarza ten sam stan, co prowadzi do nieskończonej pętli CPU lub odczytu poza buforem i przerwania procesu.
- CVE-2026-19259Średnie
W bibliotece MZ Automation libiec61850 do wersji 1.6.1 wykryto podatność na przepełnienie bufora na stercie w funkcji MmsMapping_varAccessSpecToObjectReference w pliku src/iec61850/common/iec61850_common.c w komponencie MMS Protocol Workflow. Manipulacja argumentem GetNamedVariableListAttributesResponse.itemId prowadzi do przepełnienia. Atak wymaga dostępu lokalnego, a exploit jest publiczny.
- CVE-2026-19206Średnie
W MZ Automation libiec61850 do wersji 1.6.1 wykryto podatność w funkcji SVReceiver_stopThreadless w pliku src/sampled_values/sv_subscriber.c. Manipulacja prowadzi do przepełnienia bufora na stercie. Atak musi być przeprowadzony lokalnie, a exploit jest publiczny. Wersja 1.6.2 zawiera poprawkę.
- CVE-2026-19108Średnie
Podatność use-after-free w bibliotece MZ Automation libiec61850 do wersji 1.6.1, w funkcji deleteDataSetValuesShadowBuffer w pliku src/iec61850/server/mms_mapping/reporting.c (komponent URCB Revalidation). Atak wymaga dostępu lokalnego. Exploit został opublikowany. Aktualizacja do wersji 1.6.2 naprawia problem.
- CVE-2026-18583Średnie
W bibliotece mz-automation libiec61850 do wersji 1.6.1 wykryto podatność w komponencie MMS Request Handler. Funkcja checkDataSetAccess w pliku src/iec61850/server/mms_mapping/mms_mapping.c powoduje odczyt poza zakresem. Atak może być przeprowadzony zdalnie. Dostępny jest publiczny exploit.
Oryginalny opis (angielski, źródło NVD)
libIEC61850 is an open-source implementation of IEC 61850 client and server protocols including MMS, GOOSE, Sampled Values, and R-Session. Prior to 1.6.2, the MMS file service in src/mms/iso_mms/server/mms_file_service.c accepts an out-of-range initialPosition in fileOpen and stores it in the file-read state. The fileRead path then subtracts the larger read position from the file size using unsigned arithmetic and fails to limit the response to the actual FileSystem_readFile return value. The oversized response can include stale bytes from the reused connection buffer after the requested file contents, disclosing prior response data and protocol fragments to an unauthenticated remote client when the file service is enabled. This issue is fixed in version 1.6.2.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

