
Wprowadzenie do problemu / definicja luki
CVE-2025-59299 to podatność w oprogramowaniu Delta Electronics DIAScreen (narzędzie HMI/SCADA z ekosystemu DIAStudio). Błąd wynika z braku prawidłowej walidacji danych z pliku dostarczonego przez użytkownika, co skutkuje zapisywaniem poza końcem bufora podczas parsowania projektu (CWE-787). Do wykorzystania konieczne jest otwarcie przez użytkownika specjalnie spreparowanego pliku – efekt to wykonanie kodu w kontekście bieżącego procesu. Wersje podatne to wszystkie przed 1.6.1; producent opublikował aktualizację podnoszącą DIAScreen do v1.6.1.
W skrócie
- Produkt: Delta Electronics DIAScreen
- CVE: CVE-2025-59299
- Klasyfikacja: CWE-787 Out-of-Bounds Write (błąd parsowania plików projektu DPA)
- Wymagania ataku: interakcja użytkownika (otwarcie złośliwego pliku)
- Skutki: RCE w kontekście procesu DIAScreen (wysokie CIA)
- Ocena ryzyka: CVSS v3.1 7.8 (High); v4.0 6.8 (Medium) wg CNA
- Wersje podatne: < 1.6.1; remediacja: aktualizacja do v1.6.1
- Zakres: środowiska OT/ICS, szczególnie stacje inżynierskie/HMI z DIAStudio
Kontekst / historia / powiązania
Luka została ujawniona w pakiecie czterech podobnych błędów DIAScreen: CVE-2025-59297, -59298, -59299, -59300, wszystkie o charakterze Out-of-Bounds Write w parserze plików projektu. Producent opublikował formalną notę bezpieczeństwa Delta-PCSA-2025-00018 z jednoznaczną rekomendacją aktualizacji do v1.6.1. Zero Day Initiative przypisuje odkrycie badaczowi Natnael Samson (@NattiSamson) i potwierdza wektor: złośliwy plik DPA → parsowanie → OOB write → RCE.
Analiza techniczna / szczegóły luki
Gdzie jest błąd?
W komponencie parsującym pliki projektu .DPA. Plik zawiera strukturę danych, która – przy braku rygorystycznej walidacji długości/pól – może spowodować zapis danych poza zaalokowaną strukturą. To klasyczny heap/stack OOB write (CWE-787), który umożliwia nadpisanie wskaźników/kontrolnych struktur pamięci i w konsekwencji przejęcie przepływu wykonania.
Warunki ataku:
- Ofiara otwiera złośliwy plik w DIAScreen (wektor „file-based”).
- Uprawnienia nie są wymagane ponad domyślne (PR:N), ale to atak lokalny z UI:R (użytkownik musi otworzyć plik).
- Po udanym wywołaniu błędu możliwe jest RCE w kontekście użytkownika uruchamiającego DIAScreen.
Metadane CVSS (NVD):
- CVSS v3.1: 7.8 (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H)
- CVSS v4.0 (CNA): 6.8 (UI:A, VA:H, itd.)
W praktyce, na stacjach inżynierskich OT konsekwencje te często przekładają się na wysokie ryzyko operacyjne (kontekst HMI/SCADA).
Praktyczne konsekwencje / ryzyko
Scenariusze nadużyć w OT/ICS:
- Spear-phishing do inżynierów/techników – załącznik „aktualizacja projektu.dpa”; po otwarciu dochodzi do RCE i osadzenia implantu w środowisku HMI.
- Wymiana plików przez pamięci USB w strefach z ograniczoną łącznością – wektor popularny w fabrykach i na liniach produkcyjnych.
- Złośliwy projekt na serwerze wersji (np. share SMB) – podmiana pliku projektu, kompromitacja kolejnych stacji.
Skutek biznesowy: przejęcie stacji inżynierskiej/HMI może pozwolić na manipulację ekranami sterowania, zmianę receptur/parametrów, czy sabotaż procesu przy dalszym ruchu bocznym. Brak izolacji IT/OT i słaba segmentacja zwiększają prawdopodobieństwo eskalacji.
Źródła potwierdzają wektor i wpływ wprost (RCE po otwarciu pliku) oraz wskazują na pakiet czterech CVE w tej samej klasie błędów.
Rekomendacje operacyjne / co zrobić teraz
1) Patching i inwentarz
- Zaktualizuj DIAScreen do v1.6.1 lub nowszej na wszystkich stacjach inżynierskich/HMI. To oficjalna i jednoznaczna rekomendacja producenta.
- Zidentyfikuj instalacje (Windows) i sprawdź wersję aplikacji:
Jeżeli skrypt nie zwróci wyniku, przeszukaj dysk pod kątem katalogów DIAStudio/DIAScreen i sprawdź wersję plików binarnych (Właściwości → Szczegóły).
2) „Virtual patching” i twardnienie do czasu aktualizacji
- Zabroń/ogranicz otwieranie plików .DPA z lokacji ryzykownych (Downloads, %TEMP%, nośniki wymienne) – reguła SRP/AppLocker (Path/Hash).
- Polityki pocztowe: blokada lub kwarantanna załączników .dpa, tagowanie detekcji w bramce pocztowej (DLP/ATP).
- Kontrola nośników USB: whitelisting urządzeń, skan AV/EDR, auto-kwarantanna plików .dpa zewnętrznych.
- Segmentacja sieci OT: stacje z DIAScreen za zaporą, brak dostępu z sieci biurowej; zdalny dostęp tylko VPN i tylko z listy dozwolonych.
3) Monitoring i detekcja (przykłady)
Sigma (Windows) – podejrzane otwarcia plików DPA z lokalizacji wysokiego ryzyka:
title: Suspicious DIAScreen Project Open From Risky Locations id: 1b1a1e0c-6f6b-4d40-b1e5-7d1f4f5a9da9 status: experimental logsource: category: file_event product: windows detection: selection_ext: TargetFilename|endswith: '.dpa' selection_paths: TargetFilename|contains: - '\Downloads\' - '\Temp\' - '\$Recycle.Bin\' - '\RemovableDrive\' condition: selection_ext and selection_paths level: medium tags: - attack.initial_access - attack.t1204.002 # Malicious FileSysmon – nietypowe wywołanie DIAScreen po otwarciu projektu:
<!-- Sysmon Event ID 1: Process Create --> <RuleGroup name="DIAScreen Suspicious Launch" groupRelation="or"> <ProcessCreate onmatch="include"> <Image condition="end with">DIAScreen.exe</Image> <ParentImage condition="contains">\Temp\</ParentImage> </ProcessCreate> <ProcessCreate onmatch="include"> <Image condition="end with">DIAScreen.exe</Image> <CommandLine condition="contains">.dpa</CommandLine> </ProcessCreate> </RuleGroup>EDR/AV: stwórz watchlist na proces DIAScreen.exe otwierający .dpa z „niezaufanych” ścieżek i na crash/exception w procesie (częsty artefakt prób OOB write).
4) Procedury użytkownika / szkolenia
- Nie otwieraj plików projektu otrzymanych e-mailem/IM bez walidacji źródła.
- W środowiskach air-gapped – skan nośników przed importem projektów.
Różnice / porównania z innymi przypadkami (pakiet CVE dla DIAScreen)
Zarówno CVE-2025-59297, -59298, -59299, jak i -59300 dotyczą tej samej klasy błędu (CWE-787) w parserze DIAScreen i są naprawione w v1.6.1. Różnią się one lokalizacją w kodzie/ścieżką parsowania i mogą być wyzwalane przez odmienne pola pliku. Z punktu widzenia obrony operacyjnej: te same kontrole (aktualizacja, polityki plików, segmentacja, monitoring) redukują ryzyko dla całego pakietu.
Podsumowanie / najważniejsze wnioski
- To błąd „file-open → RCE”: wystarczy otwarcie złośliwego projektu .DPA.
- Ryzyko realne w OT/ICS, bo DIAScreen działa na stacjach inżynierskich/HMI.
- Patch do v1.6.1 jest dostępny i zalecany natychmiast.
- Do czasu aktualizacji: blokuj .DPA z nieznanych źródeł, egzekwuj segmentację i monitoruj użycie DIAScreen.
- Wprowadź procedury operacyjne: kontrola nośników, polityki pocztowe, szkolenia użytkowników.
Źródła / bibliografia
- Vendor advisory (PDF): „Delta-PCSA-2025-00018 – DIAScreen File Parsing Out-Of-Bounds Write Vulnerabilities” – wersje podatne < 1.6.1, CVSS v3.1=7.8, rekomendacja aktualizacji do v1.6.1. (PDF)
- NVD – CVE-2025-59299: opis „lacks proper validation of the user-supplied file”, metryki CVSS v3.1=7.8, wskazanie na wersje do <1.6.1 i link do advisory producenta. (NVD)
- ZDI-25-970: „DPA File Parsing Out-Of-Bounds Write RCE”, UI:R, RCE w kontekście bieżącego procesu, timeline i odniesienie do CISA. (zerodayinitiative.com)
- Ameeba Exploit Tracker – wpis o CVE-2025-59299: streszczenie luki (wektor plikowy, RCE po otwarciu). (Użyte jako źródło drugorzędne/uzupełniające). (Ameeba)
- Strona przeglądowa Delta – Product Cybersecurity Advisory: potwierdza istnienie advisory i politykę publikacji po dostępności poprawek. (deltaww.com)
Uwaga operacyjna: NVD i advisory producenta wprost wskazują v1.6.1 jako próg naprawy; utrzymuj ten numer jako twardy warunek zgodności w CMDB/OT asset management i audytach patch compliance.




