Relacje katalogowe
Obsługiwane urządzenia
LabVIEW jest środowiskiem graficznego programowania, wykonania i dystrybucji aplikacji pomiarowych oraz sterujących. W aparaturze bioprocesowej nazwa może oznaczać pełne stanowisko deweloperskie, bezpłatny LabVIEW Runtime uruchamiający skompilowany program producenta, aplikację hosta komunikującą się z kontrolerem po porcie szeregowym albo kod wdrożony na target LabVIEW Real-Time. Te przypadki mają różne pliki, licencje i powierzchnie ataku.
Najważniejsze dane
| Pole | Wartość |
|---|---|
| Producent | National Instruments (NI), od 2023 r. część Emerson |
| Bieżąca linia | LabVIEW 2026 Q3 |
| Minimalna poprawka bieżącej linii obejmująca advisories z sierpnia i września 2026 r. | 2026 Q3 Patch 1 |
| Edycje deweloperskie | Base, Full, Professional oraz LabVIEW+ Suite |
| Edycja bezpłatna | Community Edition, wyłącznie osobiste zastosowania niekomercyjne i nieprzemysłowe |
| Runtime | LabVIEW Runtime/Run-Time Engine, bezpłatny składnik wykonawczy bez edytora |
| Targety czasu rzeczywistego | m.in. CompactRIO i PXI z LabVIEW Real-Time; FPGA wymaga osobnego modułu |
| Język i model wykonania | graficzny język G, dataflow, automatyczna kompilacja VI |
| Główne artefakty | .vi, .lvproj, .lvlib, .lvlibp, .lvclass, .ctl, .xctl, EXE, DLL, installer |
| Typowe formaty danych | TDMS, CSV, pliki binarne definiowane przez aplikację; bazy przez toolkit lub kod aplikacji |
| Domyślny VI Server | TCP wyłączony; ActiveX włączony; po włączeniu TCP port 3363 |
| Główne serwery WWW | Remote Panels TCP 8000/443; LabVIEW Web Services 8080; NI Web Server 80/443; konfiguracja urządzeń 3580 |
| Licencjonowanie | subskrypcja albo perpetual; konto/serial i Computer ID, VLM dla licencji organizacyjnych |
| Fizyczny dongle | aktualne procedury NI opierają się na Computer ID, pliku licencji lub serwerze VLM, bez obowiązkowego dongla USB |
| Liczba rekordów CVE w przeglądzie | 51 dla LabVIEW i jego bezpośrednich komponentów, od 2002 do 2026 r. |
Granice produktu
| Składnik | Funkcja | Znaczenie dla inwentaryzacji |
|---|---|---|
| LabVIEW Development System | edycja kodu G, front panel, block diagram, debugowanie i projekt | obecność edytora umożliwia otwieranie VI/LVLIB/LVCLASS i ma znaczenie dla podatności parserów |
| LabVIEW Runtime | wykonanie EXE i bibliotek zbudowanych w LabVIEW | wersja i bitowość muszą odpowiadać aplikacji; sam Runtime nie daje funkcji deweloperskich |
| Application Builder | budowanie EXE, bibliotek współdzielonych i instalatorów | część Professional lub osobny moduł dla wybranych edycji |
| LabVIEW Real-Time Module | kompilacja i wdrożenie aplikacji na target RT | odrębny system operacyjny, obraz targetu, usługi sieciowe i proces aktualizacji |
| LabVIEW FPGA Module | synteza logiki dla FPGA | osobny bitfile i toolchain; nie należy utożsamiać z desktopowym Runtime |
| NI Web Server / Application Web Server | publikacja web services, konfiguracja i role | własne porty, TLS, konta i historia podatności |
| VI Server | programistyczne sterowanie LabVIEW, VI i front panelami | TCP jest domyślnie wyłączony, lecz aplikacja może go włączyć w pliku INI |
| DSC Module | shared variables, alarmy, logging i domenowe konta NI | mechanizmy kont DSC nie są kontrolą dostępu edycji Base/Full/Professional |
Nazwa LabVIEW w wykazie zainstalowanego oprogramowania nie rozstrzyga, które z tych składników są aktywne. Dla hosta operatorskiego potrzebne są przynajmniej: pełna wersja Runtime, bitowość, lista pakietów NI, sterowniki urządzeń, plik konfiguracyjny EXE, aktywne usługi Windows i reguły zapory.
Powiązane urządzenia
| Karta | Potwierdzony zakres |
|---|---|
| Rotametr Bioreaktor SBR | program Reaktor i własne biblioteki wykonane w LabVIEW; karta producenta wymienia Windows 2000/XP/Vista 32-bit oraz Linux |
| T&J D2MS | aplikacje OAJ/Logger zbudowane w LabVIEW; dokładnie NI LabVIEW Runtime 2018 SP1 32-bit na 64-bitowym Windows |
| T&J CloudReady | D2MS Native Pro z Runtime 2018 SP1 na hoście Windows/SQL Server |
| New Brunswick BioFlo III | opublikowana konfiguracja badawcza wykorzystująca LabVIEW i RS-232 do sekwencyjnego procesu batch; nie jest to fabryczny firmware BioFlo III |
Relacja nie przenosi automatycznie całej historii CVE na urządzenie. D2MS uruchamia skompilowane EXE w Runtime 2018 SP1; typowe podatności wymagające otwarcia przygotowanego pliku VI mają znaczenie dopiero wtedy, gdy dany host lub aplikacja rzeczywiście przetwarza taki artefakt. Analogicznie domyślne konto konfiguracji NI Web Server dotyczy tylko hosta z tym składnikiem i nie jest hasłem do kontrolera BioFlo ani Rotametr.
Wersje używane w inwentarzu
Najdokładniej zidentyfikowany stos ma T&J D2MS. Pełna paczka Community 2.6.2.13 i materiały Native wskazują NI LabVIEW Runtime 2018 SP1, 32-bit. Ten Runtime pracuje na 64-bitowym Windows, a 32-bitowość wpływa na ładowane DLL, komponenty COM, OPC DA i NI DataSocket. Obok niego występuje NI License Manager przygotowany względem linii 4.7.
Rotametr opisuje środowisko i program Reaktor, ale karta produktu nie wiąże go z numerem LabVIEW. BioFlo III ma relację z pojedynczą publikacją badawczą i protokołem RS-232. Tych dwóch przypadków nie wolno sztucznie oznaczać jako Runtime 2018 SP1.
Bieżąca linia i rytm wydań
NI publikuje obecnie wydania kwartalne, np. 2025 Q3, 2026 Q1 i 2026 Q3, oraz kolejne patche tej samej gałęzi. LabVIEW 2026 Q3 ukazał się w lipcu 2026 r. Bieżący poziom bezpieczeństwa dla tej gałęzi to co najmniej 2026 Q3 Patch 1: poprawka obejmuje osiem podatności ogłoszonych w sierpniu i na początku września 2026 r.
| Utrzymywana gałąź | Poziom obejmujący advisories z sierpnia/września 2026 r. |
|---|---|
| 2026 | 2026 Q3 Patch 1 lub nowszy |
| 2025 | 2025 Q3 Patch 5 lub nowszy |
| 2024 | 2024 Q3 Patch 7 lub nowszy |
| 2023 | 2023 Q3 Patch 10 lub nowszy |
| 2022 i starsze | poza Mainstream Support według tabel NI z 2026 r. |
Numer bazowy bez poziomu patcha nie wystarcza do oceny. 2026 Q3 i 2026 Q3 Patch 1 różnią się m.in. stanem CVE-2026-18444 i CVE-2026-18445.
Front panel i block diagram
Program LabVIEW nazywa się Virtual Instrument (VI). Front panel jest interfejsem użytkownika: zawiera controls, indicators, wykresy, przełączniki i pola wartości. Block diagram jest graficznym kodem źródłowym; terminale front panelu są połączone przewodami z funkcjami, strukturami, subVI i węzłami I/O.

Źródło obrazu: NI LabVIEW Environment: Detailed Explanation, s. 1.
Model dataflow uruchamia węzeł, gdy dostępne są wszystkie jego dane wejściowe. Niezależne gałęzie diagramu mogą wykonywać się współbieżnie. Kod może wywoływać biblioteki DLL, .NET, ActiveX, Python i C/C++, dlatego SBOM aplikacji nie kończy się na plikach NI.

Źródło obrazu: NI LabVIEW Environment: Detailed Explanation, s. 4.
Projekt, biblioteki i zależności
| Rozszerzenie lub artefakt | Znaczenie |
|---|---|
.vi |
pojedynczy Virtual Instrument: front panel, block diagram, connector pane i metadane |
.lvproj |
projekt i drzewo targetów, zależności oraz build specifications |
.lvlib |
XML-owa definicja project library i odwołania do jej elementów |
.lvlibp |
packed project library; pojedynczy nieedytowalny plik zależny od wersji LabVIEW |
.lvclass |
klasa LabVIEW i jej prywatne dane/metody |
.ctl / .xctl |
definicje kontrolek i XControl |
.llb |
starsza biblioteka kontenerowa LabVIEW |
| EXE / DLL | wynik Application Builder uruchamiany z odpowiednim Runtime |
| installer | paczka EXE, Runtime oraz opcjonalnych sterowników i modułów |
.rtexe |
aplikacja startowa dla wybranych targetów LabVIEW Real-Time |
Project Explorer ładuje biblioteki, klasy, XControls i ich hierarchie zależności. Elementy wywoływane dynamicznie mogą pojawić się dopiero w Items in Memory, więc samo statyczne drzewo .lvproj nie jest pełnym manifestem wykonania. Istotne są również ścieżki wyszukiwania subVI, katalog data, prywatne DLL, zarejestrowane ActiveX/COM i pakiety instalowane przez NI Package Manager albo VIPM.
Runtime i zgodność bitowości
LabVIEW Runtime może być pobrany osobno, przez NI Package Manager albo włączony do instalatora aplikacji. Nie zawiera środowiska edycji. Runtime jest wymagany na każdym hoście uruchamiającym EXE lub bibliotekę zbudowaną Application Builderem.
NI wymaga zgodnej bitowości aplikacji i Runtime. Na 64-bitowym Windows mogą współistnieć 32- i 64-bitowe Runtime tej samej wersji. Różne główne wersje również mogą być zainstalowane równolegle. Dla aplikacji zbudowanych w LabVIEW 2016 i starszym potrzebny jest Runtime tej samej wersji; od 2017 builder może dopuścić późniejsze Runtime opcją Allow future versions of the LabVIEW Runtime to run this application, ale NI zastrzega możliwość zmiany zachowania.
W D2MS jest to praktyczny punkt identyfikacyjny: 2018 SP1 32-bit należy potwierdzić w NI MAX albo przez wersję lvrt.dll w Program Files (x86)\National Instruments\Shared\LabVIEW Run-Time.
Application Builder i dystrybucja
Application Builder tworzy stand-alone EXE, shared library i instalator. Installer może dołączyć odpowiedni Runtime oraz runtimes modułów i sterowników użytych przez aplikację. Professional zawiera Application Builder; dla pozostałych wariantów NI oferuje osobny moduł.
W inwentaryzacji pakietu producenta aparatury należy zachować razem:
- EXE i odpowiadający mu plik INI;
- katalog
data, biblioteki prywatne i DLL; - instalator Runtime o tej samej wersji i bitowości;
- NI Package Manager feed/cache oraz listę zainstalowanych packages;
- instalatory NI-VISA, NI-DAQmx, NI-RIO, OPC/DSC i innych sterowników;
- pliki licencyjne, serial, Computer ID i konfigurację VLM;
- projekt źródłowy, jeżeli jest częścią dostawy;
- obraz systemu operatorskiego i eksport konfiguracji NI MAX.
LabVIEW Real-Time i FPGA
LabVIEW Real-Time rozdziela host deweloperski od targetu. Projekt zawiera komputer My Computer, target RT i opcjonalny target FPGA. Kod jest kompilowany na hoście, wdrażany przez sieć i może zostać skonfigurowany jako aplikacja startowa targetu. Dla CompactRIO target RT wykonuje logikę deterministyczną, zarządza I/O i komunikacją; FPGA realizuje szybsze lub sprzętowo deterministyczne zadania.
Typowa architektura ma trzy warstwy:
| Warstwa | Funkcja |
|---|---|
| host Windows/Linux | projekt, HMI, konfiguracja, analiza, baza i aktualizacje |
| procesor RT | pętle deterministyczne, sekwencje, logging i komunikacja |
| FPGA | bezpośrednia obsługa I/O, timing, filtracja i sprzętowa logika ochronna |
Target Real-Time jest osobnym zasobem IT. Należy zebrać model kontrolera, obraz NI Linux Real-Time lub starszego RTOS, wersję NI-RIO, startup application, pliki ni-rt.ini, konta, certyfikaty, dostęp SSH/WWW i konfigurację NI MAX. Żaden z czterech modeli powiązanych w tej encyklopedii nie ma potwierdzonego targetu CompactRIO; sekcja opisuje granicę platformy, nie cechę tych urządzeń.
Dane i storage
LabVIEW nie wymusza jednego backendu. Aplikacja może zapisywać TDMS, CSV, tekst, format binarny definiowany przez autora, pliki konfiguracji lub dane w bazie dostępnej przez toolkit, ODBC albo własną bibliotekę. TDMS przechowuje hierarchię root/group/channel oraz właściwości i dane kanałów; pliki mogą mieć oddzielny indeks.
W systemie D2MS właściwym backendem jest Microsoft SQL Server 2017, a formaty projektu i konfiguracji T&J są osobną warstwą. Nie należy wnioskować SQL Server dla każdego systemu LabVIEW ani TDMS dla D2MS tylko dlatego, że LabVIEW obsługuje ten format.
Interfejsy i sterowniki
LabVIEW może integrować aparaturę przez sterowniki i biblioteki, w tym:
- NI-VISA dla serial, USB, GPIB i instrumentów TCP/IP;
- NI-DAQmx dla urządzeń akwizycji;
- NI-RIO dla CompactRIO i FPGA;
- OPC/DSC oraz shared variables;
- TCP, UDP, HTTP, Web Services i Network Streams;
- DLL, .NET, ActiveX/COM i Python;
- sterowniki instrumentów producentów trzecich.
To katalog możliwości platformy. Dla BioFlo III potwierdzono RS-232 i aplikację badawczą; dla D2MS Community potwierdzono OPC DA i NI DataSocket, a konfiguracje aplikacji T&J mają ustawienia VI Server/Web Server w plikach INI.
Porty i usługi sieciowe
| Port | Składnik | Stan/rola |
|---|---|---|
| TCP 3363 | VI Server | TCP domyślnie wyłączony w Development System; port konfigurowalny |
| TCP 8000 | Remote Front Panels | domyślny wariant bez TLS |
| TCP 443 | Remote Front Panels / NI Web Server | wariant TLS; port zależy od konfiguracji serwera |
| TCP 8080 | LabVIEW Web Services | Application Web Server |
| TCP 80/443 | NI Web Server | HTTP/HTTPS dla web services i aplikacji serwera |
| TCP 3580 | Web Monitoring and Configuration | konfiguracja urządzeń NI |
| UDP 5353 | mDNS | wykrywanie usług/urządzeń |
| TCP 52725 | NI Network Browser | wykrywanie urządzeń |
| UDP 44515/44525, TCP 44516 | NI MAX Hardware Identification | discovery i konfiguracja sprzętu |
| TCP 3079 | LabVIEW Real-Time | deployment i debugowanie VI |
| TCP 2343, UDP 6000–6010, TCP 59110+ | Network Streams | dane i dynamiczne endpointy LogosXT |
| TCP 3537 | NI-VISA Server | zdalny dostęp VISA |
Lista opisuje porty możliwe dla składników NI, a nie zestaw otwarty na każdym hoście. Stan trzeba powiązać z usługą/procesem, konfiguracją INI, zaporą i rolą hosta.
VI Server
VI Server pozwala programowo sterować LabVIEW, obiektami front panelu i VI. W bieżącej dokumentacji NI jego TCP/IP jest domyślnie wyłączony, a ActiveX domyślnie włączony. Włączenie TCP wyświetla ostrzeżenie bezpieczeństwa. Domyślny port dla głównej instancji aplikacji to 3363; target może użyć portu dynamicznego.
Kontrola obejmuje trzy osobne listy:
- protokoły i port;
Machine Access, czyli dozwolone/odrzucone adresy;User Accessoraz zasoby dostępne przez serwer.
Brak pasującego wpisu Machine Access skutkuje odmową. Konfiguracja aplikacji zbudowanej może znajdować się w INI obok EXE. D2MS dostarcza m.in. server.app.propertiesEnabled=True, server.ole.enabled=True i server.tcp.paranoid=True; dlatego audyt hosta T&J powinien objąć rzeczywisty listener, access lists i uruchomione moduły.

Źródło obrazu: LabVIEW Configuration for Secure Applications, 2024, s. 1.
Konta, role i domyślne dane NI Web Server
Edycje Base, Full i Professional nie używają kont LabVIEW jako ogólnego mechanizmu wymuszania uprawnień. Domain Account Manager i podstawowe śledzenie użytkownika są związane przede wszystkim z DSC. Kontrola dostępu aplikacji operatorskiej musi być zaimplementowana w samej aplikacji albo w zewnętrznym systemie tożsamości.
NI Web Server obsługuje role i privileges dla HTTP Method VIs. Oficjalna procedura podaje szczególny stan inicjalny: jeżeli ustawienia bezpieczeństwa NI Web-based Configuration & Monitoring nie zostały jeszcze ustanowione, dostęp konfiguracyjny używa nazwy Admin i pustego hasła. Jest to domyślne konto komponentu NI Web Server, a nie uniwersalne hasło LabVIEW Runtime ani któregokolwiek z powiązanych bioreaktorów.
Community Edition używa licencji przypisanej do użytkownika: może być zainstalowana na maksymalnie trzech komputerach i działać na jednym naraz. Aktywacja Community wymaga zalogowania do konta NI; offline activation nie jest dla niej dostępna, choć po aktywacji program może działać bez sieci.

Źródło obrazu: LabVIEW Configuration for Secure Applications, 2024, s. 2.
Konfiguracja bezpieczna według NI
Oficjalny przewodnik z czerwca 2024 r. zaleca dla aplikacji wymagających kontroli bezpieczeństwa:
Behavior for unrecognized Run When Opened VIsustawić na otwarcie VI bez automatycznego uruchomienia;- sprawdzić ścieżki wyszukiwania subVI i używać zaufanych lokalizacji;
- po pracy z chronionymi VI użyć
Clear Password Cache; - rejestrować w revision history konto systemu operacyjnego, a nie współdzieloną nazwę;
- pozostawić VI Server TCP wyłączony, wyłączyć ActiveX i wszystkie accessible resources, jeżeli nie są wymagane;
- nie aktywować NI Web Server, Application Web Server ani Remote Panel Server bez skonfigurowania TLS, ról i ograniczeń;
- dla shared variables świadomie zarządzać kontem
Nobodyalbo skonfigurowaną tożsamością DSC.
Dokument odnosi te ustawienia do NIST SP 800-53 rev. 5 i obejmuje Base, Full oraz Professional.
Usługi Windows instalowane z LabVIEW
Przewodnik NI wymienia sześć usług startujących wraz z Windows:
| Nazwa usługi | Funkcja |
|---|---|
lkClassAds |
NI PSP Service Locator |
lkTimeSync |
NI Time Synchronization |
niauth |
NI Authentication Service |
NIDomainService |
NI Domain Service |
nimDNSResponder |
NI mDNS Responder Service |
NiSvcLoc |
NI Service Locator |
Lista procesów, kont usług, ścieżek binarnych i ACL jest częścią inwentaryzacji hosta. W instalacji Runtime zestaw może być mniejszy lub rozszerzony przez sterowniki, NI Web Server, DSC, NI-RIO i NI Package Manager.
Licencje i aktywacja
LabVIEW Base, Full, Professional i LabVIEW+ Suite są oferowane w subskrypcji albo jako licencje wieczyste. Perpetual zachowuje prawo do uruchamiania kupionej wersji; pierwszy rok obejmuje software service, a dalszy dostęp do nowych/starszych wydań i wsparcia zależy od odnowienia. Subskrypcja wymaga odnowienia, by kontynuować użycie.
Aktywacja single-seat używa serialu, 16-znakowego Computer ID i NI License Manager. Host odłączony od Internetu może otrzymać kod aktywacyjny wygenerowany dla konkretnego produktu, wersji i Computer ID. Organizacje używają NI Volume License Manager; klient pyta serwer VLM o prawo do uruchomienia albo otrzymuje plik disconnected license. Utrata kontaktu z VLM może uruchomić 14-dniowy backup license.
Aktualne procedury nie wymagają fizycznego klucza USB. W środowisku izolowanym artefaktami krytycznymi są plik licencji, Computer ID, nazwa/MAC serwera VLM, nilm.opt, stan połączenia z VLM i data wygaśnięcia disconnected license.
Ceny i numery części
Sklep NI wycenia LabVIEW według edycji, terminu, regionu i usług. Statyczna karta produktu publikuje numery części, a kwotę ładuje dla wybranej konfiguracji lub kieruje do wyceny. Z tego powodu trwałym identyfikatorem zakupowym jest kombinacja part number, edycji, terminu oraz typu stanowiska.
| Wariant | Informacja zakupowa |
|---|---|
| Base | subscription albo perpetual; przykładowy link sklepu używa part number 784503-35 |
| Full | subscription albo perpetual; przykładowy link używa 784522-35 |
| Professional | subscription albo perpetual; przykładowy link używa 784584-35 |
| LabVIEW+ Suite | subscription albo perpetual; przykładowy link używa 788509-35 |
| Debug Deployment | perpetual z pierwszym rokiem service; służy do naprawy wcześniej wdrożonej aplikacji |
| Runtime | pobierany bezpłatnie; nie zapewnia edycji kodu |
| Community | bezpłatny tylko dla osobistych zastosowań niekomercyjnych i nieprzemysłowych |
Przy wycenie stanowiska bioprocesowego trzeba oddzielić licencję aplikacji OEM, LabVIEW Development, moduły Real-Time/FPGA/DSC, deployment/debug, sterowniki oraz utrzymanie NI. Sam Runtime może być bezpłatny, choć aplikacja OEM i jej wsparcie pozostają komercyjne.
Pliki do pobrania
| Materiał | Oficjalny odnośnik | Uwagi |
|---|---|---|
| LabVIEW Runtime | NI Software Downloads | wybór wersji, OS i bitowości; starsze wydania mogą wymagać aktywnej subskrypcji/service |
| pełny LabVIEW | LabVIEW Download | online installer, offline installer i trial zależnie od konta |
| Community Edition | LabVIEW Community Download | 2026 Q3 dla Windows 11/Server 2025/Server 2022/Windows 10 IoT Enterprise 2021 |
| Application Builder | Application Builder Module | osobny moduł; Professional ma builder w edycji |
| LabVIEW+ Suite | LabVIEW+ Suite Download | pakiet obejmujący m.in. TestStand, DIAdem, FlexLogger i InstrumentStudio |
| tabela Runtime/Development | Compatibility Q3 2026 | oficjalny arkusz XLSX |
| konfiguracja bezpieczna | LabVIEW Configuration for Secure Applications | PDF dla LabVIEW 2024, Base/Full/Professional |
| aktualizacje bezpieczeństwa | NI Security Updates | roczne indeksy advisories i poprawek |
Mały bootstrapper NI może mieć około 8,59 MB, podczas gdy pełny offline bundle ma wiele gigabajtów; przykładowy LabVIEW+ Suite 2026 Q3 ma 16,2 GB. Wielogigabajtowe instalatory są dostępne pod wersjonowanymi odnośnikami producenta.
Aktualizacje i kontrola wersji
NI Package Manager i NI Update Service dostarczają produkty, sterowniki i poprawki. NI zaleca NI Update Service 2026 Q3 lub nowszy dla bieżących aktualizacji bezpieczeństwa. W środowisku odłączonym paczki należy przenieść jako zweryfikowany offline installer albo zatwierdzony cache/repository.
Minimalny zapis wersji powinien obejmować:
- LabVIEW/Runtime: rok, Q1/Q3, SP i numer patcha;
- bitowość;
- wersję
lvrt.dll; - wydania NI Package Manager i NI Update Service;
- wszystkie NI drivers/modules/toolkits;
- build aplikacji OEM i jej plik INI;
- obraz oraz wersję targetu Real-Time;
- wersję FPGA bitfile i projekt, z którego powstał.
Charakter powierzchni CVE
Większość współczesnych podatności LabVIEW wymaga, by użytkownik otworzył przygotowany plik VI, LVLIB albo LVCLASS. Skutkiem może być odczyt poza buforem, zapis poza buforem, use-after-free, ujawnienie informacji lub wykonanie kodu w kontekście procesu LabVIEW. Osobne klasy dotyczą TDMS, DLL hijacking, CLI, ActiveX i usług WWW.
| Klasa | Przykładowy warunek |
|---|---|
| parser VI/zasobów | otwarcie przygotowanego .vi w podatnej wersji |
| parser bibliotek/klas | otwarcie .lvlib lub .lvclass |
| TDMS | przetworzenie przygotowanego pliku danych |
| DLL hijacking | kontrola katalogu w nieograniczonej ścieżce wyszukiwania |
| ActiveX | wywołanie podatnej metody kontrolki z przygotowanymi parametrami |
| NI Web Server | zdalne żądanie do uruchomionego komponentu |
| CLI | lokalny uwierzytelniony użytkownik i niewłaściwe uprawnienia katalogu instalacyjnego |
CVE 2002–2022
| Identyfikator | Składnik i typ |
|---|---|
| CVE-2002-0748 | LabVIEW Web Server 5.1.1–6.1; DoS przez nietypowe zakończenie żądania HTTP GET |
| CVE-2013-5021 | cwui.ocx; absolute path traversal i zapis/wykonanie pliku przez kontrolki ActiveX |
| CVE-2013-5022 | cw3dgrph.ocx; absolute path traversal w 3D Graph ActiveX |
| CVE-2013-5023 | HelpAsst ActiveX; DoS przez wyświetlenie lokalnego CHM |
| CVE-2017-2775 | LvVariantUnflatten, 64-bit; heap corruption/RCE przy przygotowanym VI |
| CVE-2017-2779 | parser segmentu RSRC; arbitrary null write i potencjalne code execution |
| CVE-2022-27237 | XSS w komponencie NI Web Server instalowanym z LabVIEW i innymi produktami |
| CVE-2022-42718 | niewłaściwe domyślne uprawnienia folderu LabVIEW CLI; lokalne podniesienie uprawnień |
CVE 2024
| Identyfikatory | Typ i zakres |
|---|---|
| CVE-2024-23608, CVE-2024-23610, CVE-2024-23611 | out-of-bounds write przy przygotowanym VI; LabVIEW 2024 Q1 i starsze |
| CVE-2024-23609, CVE-2024-23612 | improper error handling prowadzący do memory corruption/RCE; 2024 Q1 i starsze |
| CVE-2024-4079 | out-of-bounds read i możliwe code execution przy VI; 2024 Q1 i starsze |
| CVE-2024-4080 | improper length check w tdcore.dll, memory corruption; 2024 Q1 i starsze |
| CVE-2024-4081 | memory corruption/out-of-bounds write; 2024 Q1 i starsze |
| CVE-2024-6638 | integer overflow przy odczycie TDMS, infinite loop; 2024 Q1 i starsze |
| CVE-2024-10494 | out-of-bounds read w HeapObjMapImpl.cpp; 2024 Q3 i starsze |
| CVE-2024-10495 | out-of-bounds read podczas ładowania font table w fontmgr.cpp; 2024 Q3 i starsze |
| CVE-2024-10496 | out-of-bounds read w BuildFontMap; 2024 Q3 i starsze |
CISA ICSA-24-205-03 grupuje CVE-2024-4079, CVE-2024-4080 i CVE-2024-4081; wszystkie wymagają interakcji użytkownika z przygotowanym VI i dotyczą 24.1f0/2024 Q1 oraz starszych wydań.
CVE 2025
| Identyfikatory | Typ i zakres |
|---|---|
| CVE-2025-2629 | DLL hijacking przy ładowaniu NI Error Reporting; 2025 Q1 i starsze |
| CVE-2025-2630 | DLL hijacking przez uncontrolled search path; 2025 Q1 i starsze |
| CVE-2025-2631, CVE-2025-2632 | out-of-bounds write podczas obsługi informacji CPU; 2025 Q1 i starsze |
| CVE-2025-2633 | out-of-bounds read w lvre!UDecStrToNum; 2025 Q1 i starsze |
| CVE-2025-2634 | out-of-bounds read w fontmgr; 2025 Q1 i starsze |
| CVE-2025-7361 | code injection przez CIN node; dotyczy 32-bitowego LabVIEW 2025 Q1 i starszego |
| CVE-2025-7848 | memory corruption w lvpict.cpp; przygotowany VI |
| CVE-2025-7849 | memory corruption przy pustym VILinkObj; przygotowany VI |
| CVE-2025-64461 | out-of-bounds write w mgocre_SH_25_3!RevBL() |
| CVE-2025-64462 | out-of-bounds read w LVResFile::RGetMemFileHandle() |
| CVE-2025-64463 | out-of-bounds read w LVResource::DetachResource() |
| CVE-2025-64464 | out-of-bounds read w lvre!VisaWriteFromFile() |
| CVE-2025-64465 | out-of-bounds read w lvre!DataSizeTDR() |
| CVE-2025-64466 | out-of-bounds read w lvre!ExecPostedProcRecPost() |
| CVE-2025-64467 | out-of-bounds read w LVResFile::FindRsrcListEntry() |
| CVE-2025-64468 | use-after-free w sentry!sentry_span_set_data() |
| CVE-2025-64469 | stack-based buffer overflow przy parsowaniu VI |
Dziewięć rekordów 64461–64469 dotyczy LabVIEW 2025 Q3 i starszych. NI wskazuje co najmniej 2025 Q3 Patch 3, 2024 Q3 Patch 5, 2023 Q3 Patch 8 albo 2022 Q3 Patch 7 dla tej kampanii. Późniejsze advisories podnoszą minimalne poziomy gałęzi jeszcze wyżej.
CVE 2026
| Identyfikatory | Typ i zakres |
|---|---|
| CVE-2026-32860 | out-of-bounds write przy ładowaniu przygotowanego .lvlib; 2026 Q1 i starsze |
| CVE-2026-32861 | out-of-bounds write przy ładowaniu przygotowanego .lvclass; 2026 Q1 i starsze |
| CVE-2026-32862 | out-of-bounds write w ResFileFactory::InitResourceMgr() |
| CVE-2026-32863 | out-of-bounds read w sentry_transaction_context_set_operation() |
| CVE-2026-32864 | out-of-bounds read w mgcore_SH_25_3!aligned_free() |
| CVE-2026-16233 | out-of-bounds write w aligned_free(); 2026 Q3 26.3.0 i starsze |
| CVE-2026-16234 | out-of-bounds read w StringUtils Converter |
| CVE-2026-64201 | out-of-bounds read w EnQRunQ |
| CVE-2026-64202 | out-of-bounds read w LVGetFileType |
| CVE-2026-64203 | out-of-bounds read w QualifiedName prepend |
| CVE-2026-64204 | out-of-bounds write przy zwalnianiu TDRefCountedPtr |
| CVE-2026-18444 | signed-to-unsigned conversion i out-of-bounds read przy ładowaniu obrazu |
| CVE-2026-18445 | integer overflow i out-of-bounds write przy przygotowanym VI |
Pięć rekordów 32860–32864 naprawiono w 2026 Q1 Patch 1. Sześć rekordów 16233/16234/64201–64204 oraz dwa rekordy 18444/18445 wymagają w bieżącej linii 2026 Q3 Patch 1. Wszystkie opisane w tej grupie scenariusze wymagają otwarcia przygotowanego artefaktu przez użytkownika; nie są zdalnym przejęciem dowolnego Runtime tylko z powodu nasłuchu urządzenia procesowego.
Znaczenie CVE dla Runtime 2018 SP1 D2MS
Host D2MS ma wersję objętą przedziałem „2021 i starsze” w bieżących tabelach wsparcia NI, ale triage wymaga funkcji, nie samej daty. Najważniejsze punkty są następujące:
- OAJ i loggery są skompilowanymi aplikacjami PE uruchamianymi przez 32-bitowy Runtime;
- konfiguracje T&J włączają wybrane właściwości VI Server/ActiveX i szerokie reguły Web Server, więc aktywne listenery trzeba zmierzyć;
- import profili, CSV, XML-owych plików T&J i raportów jest inną ścieżką niż otwieranie edytowalnego VI;
- funkcje
lvre!VisaWriteFromFile,DataSizeTDRi inne elementy runtime wymagają sprawdzenia względem faktycznie osiągalnych operacji aplikacji; - aktualizacja samego Runtime musi być zgodna z EXE zbudowanym przez T&J i powinna przejść test aplikacyjny.
Dlatego karta D2MS ma relację do LabVIEW, ale katalog nie dodaje jej automatycznie 51 typów podatności. Wynik oceny powinien wskazywać dokładny build lvrt.dll, załadowane moduły oraz kontrolowane pliki wejściowe.
Dane uwierzytelniające i hasła w artefaktach
Audyt hosta powinien objąć:
| Miejsce | Dane |
|---|---|
| plik INI EXE/LabVIEW | ustawienia VI Server, Web Server, access lists i ścieżki |
| NI Web Server | użytkownicy, role, privileges, certyfikat i stan początkowego Admin |
| NI License Manager | serial, Computer ID, aktywacje i installed license files |
| NI VLM | server, porty, nilm.opt, grupy, typ licencji i disconnected files |
| DSC/Shared Variable Engine | domena NI, konta, Nobody, alarmy i logging |
| VI password cache | hasła użyte do otwierania chronionych źródeł VI |
| aplikacja OEM | własna baza użytkowników, role operatora, serwisu i administratora |
Hasło chroniące block diagram VI zabezpiecza dostęp do źródła i może pozostać w cache sesji; nie jest zamiennikiem kontroli dostępu do funkcji uruchomionej aplikacji.
Backup i odtwarzanie
Jednostką backupu nie jest tylko EXE. Minimalny komplet obejmuje projekt lub source distribution, wszystkie dynamicznie ładowane VI, biblioteki, pliki konfiguracji i danych, instalatory Runtime/driverów, listę pakietów NI, ustawienia NI MAX, certyfikaty, pliki licencji oraz backup bazy aplikacji OEM.
Dla targetu Real-Time potrzebny jest obraz systemu, startup application, konfiguracja sieci i wykaz modułów C Series/FPGA. Odtworzenie na innym modelu targetu może wymagać dodania nowego targetu w projekcie i ponownej kompilacji; nazwa/serial istniejącego targetu może być związana z projektem.
Weryfikacja stanowiska
- W NI MAX i filesystemie ustalić wszystkie wersje Runtime, bitowość oraz
lvrt.dll. - Zebrać listę produktów z NI Package Manager i usług Windows.
- Powiązać procesy EXE z plikami INI, bibliotekami, katalogiem danych i sterownikami.
- Zmierzyć porty i wskazać komponent odpowiadający za każdy listener.
- Odczytać VI Server Machine/User Access, accessible resources i port.
- Odczytać NI Web Server users/roles/privileges, TLS i certyfikaty.
- Sprawdzić Computer ID, typ aktywacji, VLM i pliki disconnected license.
- Zidentyfikować pliki VI/LVLIB/LVCLASS/TDMS przyjmowane od użytkownika lub z sieci.
- Porównać branch i patch z tabelą advisories NI.
- Zweryfikować restore aplikacji, bazy i ewentualnego targetu Real-Time na środowisku testowym.
Źródła
- NI — Select Your LabVIEW Edition — edycje, terminy licencji, Community, Runtime i deployment.
- NI — LabVIEW Runtime Download — pobieranie, trial, wersje i bitowość.
- NI — LabVIEW and Run-Time Engine Compatibility — zgodność, side-by-side i zasady dla aplikacji sprzed 2017 r.
- NI — LabVIEW 32-bit and 64-bit Compatibility — bitowość modułów i Runtime.
- NI — Install or Include LabVIEW Runtime — NIPM, oddzielny Runtime i installer Application Builder.
- NI — Configuring Firewalls — porty VI Server, Remote Panels, RT, MAX, VISA i Web Server.
- NI — VI Server Page — protokoły, port 3363 i access lists.
- NI — Configuring Web Services Security — HTTPS, roles i privileges.
- NI — LabVIEW Configuration for Secure Applications — ustawienia, usługi i granice kont Base/Full/Professional.
- NI — Activate Software Without Internet — serial, Computer ID i kody offline.
- NI — Creating a Disconnected or Home License — VLM i pliki disconnected.
- NI — Security Updates 2025 — kampanie 2025.
- NI — Security Updates 2026 — kampanie 2026.
- NI — LabVIEW 2026 Q3 Bug Fixes — poprawki Patch 1.
- CISA ICSA-24-205-03 — CVE-2024-4079/4080/4081.
- NVD — wyszukiwanie LabVIEW — opisy, CWE i historia 51 rekordów użytych do triage.
- NI — Managing a Project in LabVIEW — biblioteki, klasy, zależności i build specifications.
- NI — Using LabVIEW for NI Linux Real-Time CompactRIO — host, target RT, FPGA i NI Linux Real-Time.
- SciELO — BioFlo III z LabVIEW/RS-232 — zakresowana relacja badawcza urządzenia.