GRCCRA

Podatności komponentów IoT: dostawcy i weryfikacja poprawki

Prześledź fikcyjne zawiadomienie o podatności od oceny wersji produktu przez pracę z dostawcą do sprawdzenia poprawki.

Brillnet Piotr Adamski•

Ostatnia aktualizacja:

Cyber Resilience Act wymaga identyfikowania i dokumentowania podatności oraz komponentów zawartych w produktach z elementami cyfrowymi, w tym sporządzenia Software Bill of Materials (SBOM) w powszechnie używanym, maszynowo czytelnym formacie, obejmującym co najmniej zależności najwyższego poziomu.

To nie oznacza jednak, że wygenerowanie pliku kończy pracę. SBOM ma wartość dopiero wtedy, gdy zespół potrafi przejść od komponentu do konkretnego wydania, podatności, decyzji, poprawki i dowodu weryfikacji.

Co CRA mówi o SBOM

Załącznik I część II wymaga od producenta identyfikowania i dokumentowania podatności oraz komponentów produktu, w tym przez sporządzenie SBOM.

Załącznik VII wiąże SBOM z dokumentacją procesów obsługi podatności. Organ nadzoru rynku może też na uzasadnione żądanie otrzymać SBOM, jeżeli jest potrzebny do sprawdzenia zgodności z wymaganiami.

Ważne rozróżnienie: rozporządzenie nie mówi, że każdy producent ma publikować pełny SBOM publicznie dla każdego użytkownika. Załącznik II opisuje informację o miejscu dostępu do SBOM jeżeli producent zdecyduje się go udostępnić użytkownikowi.

Format to tylko pierwsza decyzja

CycloneDX i SPDX są powszechnie używanymi formatami ekosystemu SBOM. Wybór formatu nie rozwiązuje problemu zarządzania.

Dla każdego artefaktu SBOM zapisz co najmniej:

  • produkt;
  • wersję/release;
  • czas wygenerowania;
  • narzędzie i proces generujący;
  • zakres skanowania;
  • wersję formatu;
  • miejsce przechowania;
  • identyfikator lub hash artefaktu;
  • status walidacji.

Bez powiązania z wydaniem nie wiadomo później, czy znaleziony komponent był rzeczywiście dostarczony klientowi.

Przepływ, który daje wartość

komponent → wersja komponentu → wydanie produktu → podatność → ocena wpływu → decyzja → działanie → poprawka → test → dowód → komunikacja

Przykład:

  1. narzędzie wykrywa bibliotekę X w wydaniu 4.8.1;
  2. pojawia się informacja o podatności dotyczącej określonych wersji X;
  3. zespół potwierdza, czy podatny kod jest obecny i osiągalny w produkcie;
  4. powstaje ocena wpływu i decyzja o priorytecie;
  5. poprawka trafia do zadania i konkretnego wydania;
  6. test weryfikuje rezultat;
  7. dowód testu zostaje powiązany ze sprawą;
  8. jeżeli spełnione są przesłanki art. 14, uruchamiany jest oddzielny proces raportowania CRA.

Sam CVE i sam SBOM nie podejmują za zespół decyzji o wpływie na produkt.

SBOM i dostawcy

Komponent może pochodzić z open source, od komercyjnego dostawcy albo z innego zespołu. Dlatego dojrzały proces łączy zależność z:

  • dostawcą lub źródłem komponentu;
  • warunkami utrzymania;
  • źródłem informacji o podatnościach;
  • osobą odpowiedzialną za aktualizację;
  • alternatywą, jeżeli komponent przestanie być wspierany.

To ma znaczenie również dla okresu wsparcia produktu. CRA pozwala przy jego ustalaniu brać pod uwagę m.in. okresy wsparcia kluczowych komponentów pochodzących od stron trzecich.

Opisuj produkt dostarczony użytkownikowi

Poniższy sposób obsługi SBOM jest naszą rekomendacją operacyjną. Zacznij od wydanego produktu, a nie od komputera programisty. Lista zależności repozytorium może zawierać narzędzia testowe, pomocnicze i opcjonalne moduły, których nie dostarczono. Z kolei obraz produktu może zawierać pliki binarne lub biblioteki niewidoczne na tej liście. Zapisz, co rzeczywiście analizuje generator. Ten zakres jest częścią informacji o artefakcie i pozwala zrozumieć jego ograniczenia.

W hipotetycznym urządzeniu sieciowym dostarczany produkt obejmuje firmware, obraz systemu i pakiet aplikacji. Osobne narzędzie administracyjne może mieć własną wersję. Ustal relacje między tymi zapisami i pokaż granice. Plik nazwany „pełny SBOM” niewiele pomaga, jeżeli zespół nie potrafi wyjaśnić, czy obejmuje wszystkie te elementy, czy tylko repozytorium aplikacji. Nazwa powinna odpowiadać rzeczywistemu zakresowi, a brakujące obszary trzeba pozostawić widoczne zamiast przemilczeć.

CRA wskazuje minimum dotyczące zależności najwyższego poziomu. Producent może wybrać głębszą analizę, jeżeli wspiera ona ocenę ryzyka i obsługę podatności. To decyzja techniczna. Nie zamienia każdej możliwej poprawy w dodatkowy obowiązek ustawowy. Zapisz granice i sposób zbadania komponentów poza nimi. Praktycznym celem jest możliwość ustalenia właściwych zależności produktu po otrzymaniu informacji o nowej podatności, a nie wyłącznie uzyskanie poprawnie wyglądającego pliku.

Zachowaj wynik i warunki generowania

Rekomendowany zapis obejmuje wejście wydania, narzędzie, konfigurację i wynik. Ponowne uruchomienie generatora przy zmienionych źródłach pakietów może dać inny obraz niż w dniu dostawy. Zachowaj więc pierwotny artefakt. Sama możliwość wykonania skanu jeszcze raz nie zastępuje jego przechowania. Połącz wynik ze stabilną identyfikacją wydania i sprawdź jego użyteczność. Dzięki temu późniejsza ocena dotyczy rzeczywistego produktu, a nie przypadkowo odtworzonego środowiska.

Zweryfikuj identyfikatory, wersje i oczywiste braki. Czytelność maszynowa nie oznacza kompletności. Brak wersji lub zbyt ogólna nazwa mogą uniemożliwić wiarygodne dopasowanie informacji o podatności. CycloneDX i SPDX publikują oficjalne specyfikacje. Nazwa formatu nie potwierdza zgodności konkretnego pliku z wybraną specyfikacją. Zachowaj faktycznie zastosowaną wersję formatu oraz wynik walidacji. Nie ograniczaj ewidencji do rozszerzenia pliku, którego zawartości nikt nie sprawdził.

Jeśli ponowny build zmienia komponenty dostarczane użytkownikom, potraktuj go jako nowy stan artefaktu, nawet przy tej samej nazwie handlowej. Zespół powinien porównać zależności i sprawdzić potrzebę aktualizacji oceny bezpieczeństwa. Kod aplikacji może pozostać bez zmian, podczas gdy obraz bazowy lub biblioteka się zmieniły. Zapisz również, gdzie trafiła nowa wersja, jeżeli taka informacja jest dostępna. Brak wiedzy o dystrybucji oznacz jako brak, zamiast zakładać jednoczesną aktualizację wszystkich instalacji.

Dopasowanie podatności wymaga oceny wpływu

W hipotetycznym przykładzie ostrzeżenie dotyczy biblioteki zapisanej w SBOM wydania 4.8.1. Najpierw potwierdź tożsamość komponentu. Podobna nazwa nie musi oznaczać tego samego pakietu. Następnie ustal obecność podatnego kodu, konfigurację i warunki wykorzystania. Zachowaj fakty wspierające wynik. Sama etykieta skanera nie wyjaśni później, dlaczego podatność uznano za istotną albo nieistotną dla danego produktu i jego konkretnego sposobu użycia.

Oddziel obecność komponentu, skutek techniczny i obowiązek raportowania. Biblioteka może być obecna, ale podatna funkcja nieużywana. Osiągalna podatność może wymagać pilnej poprawki bez automatycznego spełnienia art. 14. Wiarygodny sygnał aktywnego wykorzystania może natomiast zmienić ocenę raportową. Każdy wniosek potrzebuje własnej podstawy i odpowiedzialnej osoby. Jeden status „dotyczy” nie utrzymuje tych różnic i może spowodować nieporozumienia pomiędzy programistą, osobą regulacyjną i autorem komunikatu.

Jeśli wpływ jest niepewny, przypisz badanie i opisz tymczasowy sposób postępowania z ryzykiem. Nie używaj „nie da się wykorzystać” jako wygodnego zamknięcia bez uzasadnienia. Nie obiecuj również, że wszystkie komponenty są wolne od podatności, ponieważ skan nie pokazał trafień. Skan ma zakres i datę. Nowa publikacja lub lepsze rozpoznanie komponentu może zmienić ocenę po wydaniu, dlatego proces musi pozwalać ponownie rozpatrzyć dotychczasowy wynik.

Sprawdź wszystkie właściwe wspierane wydania

Producent może utrzymywać kilka gałęzi, wersje dla określonych klientów lub warianty sprzętu. Poprawka najnowszej gałęzi nie dowodzi obsługi starszej, nadal wspieranej wersji. Użyj relacji komponent–wydanie, aby wskazać miejsca wymagające oceny. Dla każdej rodziny zapisz wynik albo wyjaśnij, dlaczego wspólna decyzja obejmuje jasno określoną grupę. Tak ograniczysz ryzyko, że poprawka istnieje, ale jedna grupa użytkowników pozostaje poza faktycznym działaniem naprawczym.

Dla poprawki ustal nową wersję komponentu, zmianę produktu i dowód testu. Sprawdź kompatybilność oraz dostarczenie aktualizacji. Zmiana zależności może usunąć jedną słabość, a jednocześnie uszkodzić ważną funkcję. Test powinien więc obejmować cel bezpieczeństwa i właściwe zachowanie produktu. Zapis GRC odsyła do tych wyników. Zamknięcie zadania programistycznego nie zastępuje sprawdzenia, że efekt jest poprawny w konkretnym wydaniu i konfiguracji obsługiwanej u użytkownika.

Po dystrybucji zachowaj nowy SBOM lub zapis komponentów i jego relację do wcześniejszego wydania. Przyszłą informację o podatności można wtedy odnieść do faktycznie dostarczonego stanu. Jeśli klient nie może od razu aktualizować, opisz dostępne ograniczenie skutków i pozostające ryzyko. Te praktyki nie tworzą ogólnego wyłączenia dla starszych wersji. Producent nadal musi uwzględnić właściwe obowiązki wsparcia, a techniczne utrudnienie wymaga decyzji i działania, nie tylko zmiany statusu.

Pytaj dostawcę o dane potrzebne do decyzji

Poproś o identyfikację i wersję komponentu, elementy wbudowane, warunki wsparcia, kontakt podatności i kanał aktualizacji. Zakres pytania dostosuj do kupowanego produktu oraz umowy. Ogólne zapewnienie „dbamy o bezpieczeństwo” nie ujawnia użytej biblioteki i nie mówi, jak producent dowie się o końcu wsparcia. Konkretna odpowiedź daje materiał do oceny. Jej źródło i data pozwalają później sprawdzić, czy informacja nadal odpowiada używanej wersji.

Przy nietransparentnym komponencie komercyjnym oddziel wiedzę od braków. Przypisz pozyskanie danych i oceń ryzyko zależności, której stanu bezpieczeństwa nie można dostatecznie zbadać. Nie wypełniaj brakujących identyfikatorów zmyślonymi wartościami. Jeśli rozważasz wymianę, pokaż czas, koszt, ograniczenia kompatybilności i zatwierdzoną decyzję. Zamiana nie zawsze jest natychmiastowa. Plan powinien wyjaśniać obsługę produktu do chwili zweryfikowania nowego komponentu oraz ryzyka, które w tym okresie pozostają.

Dla open source oceniaj rzeczywiste utrzymanie, nie popularność. Zapisz źródła wydań i ostrzeżeń oraz osobę śledzącą właściwe zmiany. Brak komercyjnej umowy nie usuwa potrzeby utrzymania produktu przez jego producenta. Aktywność społeczności nie jest umowną obietnicą wieloletniego wsparcia całego rozwiązania. Przeanalizuj, co zespół zrobi przy zaniku utrzymania projektu. Sam link do repozytorium nie pokazuje kompetencji do naprawy ani gotowej ścieżki zastąpienia zależności.

Udostępniaj artefakt z właściwym kontekstem

SBOM może ujawniać architekturę lub informacje biznesowe. Ustal dostęp wewnętrzny, przekazywanie na zewnątrz i odpowiedzialność za wnioski organów. Poufność nie usuwa obowiązków udostępnienia. CRA odróżnia dokumentację i dostęp organu od dobrowolnego udostępniania użytkownikom. Umowa klienta może tworzyć dodatkową kwestię. Dla każdego kanału sprawdź podstawę i zachowaj informację, co przekazano, komu oraz kiedy. Jedna polityka „nie udostępniamy” nie zastąpi oceny konkretnych obowiązków i uzgodnień.

Przed przekazaniem sprawdź produkt, wydanie i przypadkowe treści, np. ścieżki wewnętrzne lub dane narzędzi niezwiązanych z dostawą. Wyjaśnij granice analizy. Odbiorca nie powinien zgadywać, czy komponent należy do oprogramowania wykonującego funkcję produktu, narzędzia budowania czy osobnej aplikacji. Są to rekomendowane kontrole jakości komunikacji. Nie wymagają publicznego ujawnienia wszystkich wewnętrznych zapisów zależności. Pomagają natomiast udostępnić właściwy artefakt bez niepotrzebnego rozszerzania lub zniekształcania jego znaczenia.

Przetestuj użyteczność procesu na jednej sprawie

Wybierz wspierane wydanie i hipotetyczne ostrzeżenie. Poproś zespół o znalezienie artefaktu, potwierdzenie komponentu, ocenę wpływu, wskazanie osoby decyzyjnej i możliwego działania naprawczego. Zapisz czas pracy i brakujące informacje. Nie wymagaj z góry pozytywnego wyniku. Ćwiczenie ma znaleźć słabe punkty identyfikacji i powiązania wydań, zanim zależeć będzie od nich prawdziwa sprawa. Ujawnione luki potrzebują właścicieli i terminu ponownego sprawdzenia.

Rekomendowane wskaźniki pokazują udział wspieranych wydań z użytecznymi artefaktami, nierozstrzygnięte identyfikacje i zaległe oceny wpływu. Zdefiniuj użyteczność dla produktu, zamiast liczyć pliki. Kilka wiarygodnych zapisów może dać więcej niż tysiące niezweryfikowanych wyników. Wskaźnik nie certyfikuje zgodności. Służy do wyboru pracy, która poprawia zdolność podjęcia decyzji. Wynik ćwiczenia powinien być listą konkretnych zmian, a rzeczywiste oceny techniczne i regulacyjne pozostają przy odpowiedzialnych osobach.

Nie buduj kolejnego skanera GRC

Pulsar nie powinien konkurować z narzędziami SCA, skanerami zależności i generatorami SBOM. Ich zadaniem jest wykrywać i opisywać komponenty.

Rolą GRC jest wykorzystać te dane w procesie decyzyjnym:

  • powiązać artefakt z produktem i wydaniem;
  • przypisać ryzyko i działanie;
  • wskazać właściciela i termin;
  • zachować decyzję;
  • dołączyć dowód naprawy i testu;
  • wykazać historię podczas przeglądu.

W Pulsarze można uporządkować ryzyka, działania, dostawców, dokumenty, dowody i raporty związane z obsługą komponentów. Obsługę formatów CycloneDX/SPDX uzgodnij w zakresie usługi przed zaplanowaniem importu SBOM.

Co sprawdzić w swoim procesie dziś

  • Czy potrafisz wskazać SBOM dla konkretnego release?
  • Czy wynik jest reprodukowalny?
  • Czy komponent ma właściciela?
  • Czy podatność można powiązać z wydaniem produktu?
  • Czy decyzja o akceptacji ryzyka ma autora i termin przeglądu?
  • Czy poprawka ma dowód testu?
  • Czy wiadomo, kiedy sprawa przechodzi do procesu raportowania CRA?

Zobacz Pulsar GRC na jednym procesie dowodowym

Powiązane materiały

Prześledź podatność fikcyjnego komponentu IoT

Przyjmij fikcyjny czujnik przemysłowy z oprogramowaniem dostarczonym częściowo przez inną firmę. Producent otrzymuje zawiadomienie o podatności jednego komponentu. Ćwiczenie zaczyna się od tego zawiadomienia i kończy decyzją po przeglądzie oraz dowodami. Samo dopasowanie nazwy w SBOM nie potwierdza, że podatność dotyczy produktu albo że ktoś ją wykorzystał.

Zapisz wersję produktu i oprogramowania przekazaną użytkownikom. Porównaj komponent z zawiadomieniem oraz ustal warunki dostępu do podatnej funkcji. Sprawdź również wspierane starsze wersje. Nazwa pakietu może nie wystarczyć, jeżeli dostawca przeniósł poprawkę do wcześniejszej wersji lub zmienił kompilację. Pytanie do dostawcy powinno dotyczyć właśnie tej niejasności, a nie ogólnego zapewnienia o bezpieczeństwie.

W dostępnym procesie Pulsara powiąż dostawcę, ryzyko i działanie oceniające zawiadomienie. Wskaż właściciela produktu oraz osobę przeglądającą ustalenia techniczne. Dodaj fikcyjne zawiadomienie i opis wersji. Oznaczenie danych przykładowych musi pozostać widoczne, żeby materiału nie pomylono później z zapisem rzeczywistej podatności.

Załóż, że przegląd wykazał konfigurację objętą problemem. Dodaj działanie pozyskania i oceny poprawionego komponentu. Ustal próbę odpowiadającą warunkom pracy czujnika. Informacja dostawcy „naprawiono” jest przydatna, ale producent potrzebuje dowodu dla własnej wersji i konfiguracji. Po próbie zapisz wynik, decyzję recenzenta i pozostałe czynności. Poprawka działająca w laboratorium nie dowodzi aktualizacji wszystkich urządzeń u klientów.

Oceń osobno obowiązki raportowania. Od 11 września 2026 stosuje się obowiązki z art. 14 CRA dotyczące określonych aktywnie wykorzystywanych podatności i poważnych incydentów w produktach objętych zakresem. Dopasowanie komponentu nie jest automatycznie dowodem aktywnego wykorzystania. Fikcyjnej próby nie wysyłasz jako zgłoszenia urzędowego.

Podczas czternastodniowej próby sprawdź, czy zespół znajduje kontekst produktu, pytanie do dostawcy, właściciela, decyzję i dowody. Pulsar nie staje się przez to generatorem SBOM, skanerem podatności ani narzędziem aktualizującym urządzenia. Przeczytaj warunki wymaganej metody płatności, cenę po próbie i anulowanie. Oceniaj system na podstawie pracy, którą faktycznie porządkuje.

Sprawdź warunki i rozpocznij 14-dniową próbę

CRA dla SaaS: zakres, działania i dowody

KSC/NIS2 dla dostawcy IT: samoocena i rejestr działań

API i MCP w GRC: dostęp i przygotowanie integracji

Źródła i zakres

Materiał informacyjny. Nie zastępuje treści licencjonowanych norm ani indywidualnej porady prawnej.