Blog CCyber

Praktyczne przewodniki dla software house'ów, firm SaaS, zespołów produktowych, producentów hardware i liderów engineeringu, którzy muszą tworzyć bezpieczne produkty cyfrowe oraz spełniać wymagania cyberbezpieczeństwa, w tym Cyber Resilience Act. Omawiamy secure SDLC, product security, threat modeling, zarządzanie podatnościami, SBOM, bezpieczne aktualizacje, DevSecOps, testy bezpieczeństwa, responsible disclosure i podejście secure-by-design.

Jak przygotować produkt cyfrowy do testów bezpieczeństwa i certyfikacji?

Przygotowanie produktu cyfrowego do testów bezpieczeństwa i certyfikacji wymaga więcej niż udostępnienia aplikacji testerowi. Firma powinna uporządkować zakres produktu, architekturę, środowisko testowe, dokumentację techniczną, SBOM, model zagrożeń, proces podatności, dowody Secure SDLC i wymagania regulacyjne, szczególnie pod Cyber Resilience Act.

Opracowanie: Zespół redakcyjny CCyber

Odpowiedź w skrócie

Produkt cyfrowy warto przygotować do testów bezpieczeństwa i certyfikacji przez uporządkowanie zakresu, architektury, środowiska testowego, dokumentacji, dostępu dla testerów, danych testowych, listy komponentów, SBOM, modelu zagrożeń, wymagań bezpieczeństwa i procesu obsługi podatności. Test bezpieczeństwa sprawdza odporność techniczną produktu. Certyfikacja lub ocena zgodności wymaga dodatkowo dowodów procesu: ryzyka produktu, Secure SDLC, aktualizacji, dokumentacji technicznej, wyników testów, decyzji o ryzyku i obsługi podatności po wydaniu.

Ostatnia aktualizacja

Lipiec 2026

Dla kogo jest ten artykuł

  • software house’y
  • firmy SaaS
  • producenci produktów cyfrowych
  • firmy tworzące aplikacje webowe, mobilne i desktopowe
  • producenci IoT, sprzętu i systemów wbudowanych
  • CTO, Head of Engineering i liderzy techniczni
  • product ownerzy i product managerowie
  • zespoły DevOps i DevSecOps
  • zespoły product security
  • CISO i osoby odpowiedzialne za bezpieczeństwo aplikacji
  • firmy przygotowujące się do CRA, EUCC, testów penetracyjnych, oceny zgodności lub wymagań klientów B2B

Najważniejsze wnioski

  1. Test bezpieczeństwa i certyfikacja to różne rzeczy. Test pokazuje podatności i ryzyka techniczne, a certyfikacja lub ocena zgodności wymaga szerszego pakietu dowodów.
  2. Przed testami trzeba jasno ustalić zakres: produkt, wersja, środowisko, API, role, dane, integracje, wyłączenia i zasady testowania.
  3. Przed certyfikacją lub oceną zgodności trzeba przygotować dokumentację: architekturę, model zagrożeń, ocenę ryzyka, SBOM, wyniki testów, proces podatności, aktualizacje i dowody Secure SDLC.
  4. Pod CRA większość produktów może korzystać z samooceny producenta, ale niektóre produkty ważne lub krytyczne mogą wymagać udziału jednostki notyfikowanej.
  5. Najlepszy pierwszy krok to test-readiness assessment: krótki przegląd, który pokazuje, czego brakuje przed testami, audytem, certyfikacją albo oceną zgodności.

Co oznacza przygotowanie produktu do testów bezpieczeństwa?

Przygotowanie produktu do testów bezpieczeństwa oznacza uporządkowanie wszystkiego, czego testerzy potrzebują, aby wykonać rzetelny test i nie tracić czasu na zgadywanie, jak działa produkt.

W praktyce chodzi o:

  • określenie zakresu testów
  • przygotowanie środowiska testowego
  • udostępnienie dokumentacji technicznej
  • przygotowanie kont i ról użytkowników
  • udostępnienie danych testowych
  • opisanie API i integracji
  • ustalenie zasad bezpieczeństwa podczas testu
  • ustalenie osób kontaktowych
  • przygotowanie ścieżki zgłaszania krytycznych podatności
  • zaplanowanie czasu na naprawy i ponowną weryfikację

Dobrze przygotowany test daje lepszy wynik, ponieważ testerzy mogą skupić się na ryzykach produktu, a nie na szukaniu dostępu, dokumentacji i podstawowych informacji.

Co oznacza przygotowanie produktu do certyfikacji?

Przygotowanie do certyfikacji lub formalnej oceny zgodności oznacza przygotowanie produktu, procesu i dowodów do sprawdzenia względem określonych wymagań. W zależności od celu może chodzić o ocenę zgodności pod CRA, certyfikację cyberbezpieczeństwa, wymagania klienta, audyt dostawcy albo standard branżowy.

Certyfikacja zwykle wymaga więcej niż test penetracyjny. Może wymagać pokazania:

  • zakresu produktu
  • oceny ryzyka
  • architektury
  • wymagań bezpieczeństwa
  • modelu zagrożeń
  • dowodów bezpiecznego wytwarzania
  • wyników testów bezpieczeństwa
  • SBOM
  • procesu obsługi podatności
  • procesu aktualizacji bezpieczeństwa
  • dokumentacji technicznej
  • dowodów napraw i ponownej weryfikacji

Najprościej: test bezpieczeństwa sprawdza produkt w praktyce, a certyfikacja lub ocena zgodności sprawdza także, czy firma ma proces, dowody i odpowiedzialność za produkt.

Testy bezpieczeństwa a certyfikacja: czym się różnią?

Test bezpieczeństwa

Test bezpieczeństwa to techniczna weryfikacja produktu, aplikacji, API, infrastruktury lub komponentu. Jego celem jest znalezienie podatności, błędów konfiguracji, słabości logicznych i ryzyk, które mogą zostać wykorzystane przez atakującego.

Typowy wynik testu:

  • raport podatności
  • opis ryzyka
  • dowody techniczne
  • rekomendacje napraw
  • priorytety
  • ponowna weryfikacja po naprawie

Certyfikacja lub ocena zgodności

Certyfikacja lub ocena zgodności sprawdza produkt względem wymagań określonego schematu, regulacji, standardu albo profilu bezpieczeństwa. Może obejmować testy techniczne, ale zwykle obejmuje też dokumentację, proces, role, dowody i formalne decyzje.

Typowy wynik:

  • ocena spełnienia wymagań
  • dokumentacja techniczna
  • lista dowodów
  • deklaracja zgodności, jeśli dotyczy
  • certyfikat, jeśli dotyczy
  • wnioski do poprawy
  • obowiązki utrzymania zgodności po wydaniu

Ocena zgodności pod CRA

Pod CRA producent produktu z elementami cyfrowymi musi wykazać spełnienie wymagań cyberbezpieczeństwa. Dla wielu produktów możliwa będzie samoocena producenta. Dla części produktów ważnych lub krytycznych może być wymagany udział jednostki notyfikowanej albo bardziej rygorystyczna procedura.

Dlatego firma nie powinna zakładać, że „certyfikacja” zawsze oznacza to samo. Najpierw trzeba ustalić, jaki produkt, jaka regulacja, jaki schemat, jaka kategoria i jaki poziom wymagań mają zastosowanie.

Od czego zacząć przygotowanie?

Krok 1: ustal cel testu lub certyfikacji

Najpierw trzeba odpowiedzieć, po co produkt ma być testowany lub certyfikowany. Inaczej wygląda przygotowanie do testu penetracyjnego API, inaczej do oceny zgodności pod CRA, inaczej do certyfikacji EUCC, a inaczej do ankiety bezpieczeństwa dużego klienta.

Przykładowe cele:

  • test penetracyjny przed wdrożeniem
  • test API przed udostępnieniem klientom
  • test aplikacji mobilnej przed publikacją
  • przygotowanie do CRA
  • przygotowanie dokumentacji technicznej produktu
  • ocena zgodności produktu
  • certyfikacja cyberbezpieczeństwa
  • dowody dla klienta B2B
  • wymagania przetargowe
  • wymagania ubezpieczyciela lub audytora

Dowód do przygotowania: krótki opis celu, oczekiwanego wyniku i odbiorcy raportu lub certyfikacji.

Krok 2: określ zakres produktu

Zakres jest jednym z najważniejszych elementów przygotowania. Nieprecyzyjny zakres prowadzi do słabego testu, nieporozumień i problemów z interpretacją wyników.

Zakres powinien obejmować:

  • nazwę produktu
  • wersję produktu
  • moduły objęte testem
  • moduły wyłączone z testu
  • API
  • aplikacje webowe
  • aplikacje mobilne
  • komponenty instalowane u klienta
  • środowiska chmurowe
  • integracje zewnętrzne
  • role użytkowników
  • typy danych przetwarzanych przez produkt

Dowód do przygotowania: dokument zakresu testu lub oceny zgodności z listą systemów, wersji i wyłączeń.

Krok 3: przygotuj architekturę i przepływy danych

Testerzy i audytorzy muszą zrozumieć, jak działa produkt. Bez architektury test będzie bardziej powierzchowny, a certyfikacja może utknąć na brakach w dokumentacji.

Przygotuj:

  • diagram architektury
  • diagram przepływu danych
  • opis komponentów
  • opis API
  • opis integracji
  • opis ról i uprawnień
  • opis danych wrażliwych
  • granice zaufania
  • opis środowisk: test, staging, produkcja

Dowód do przygotowania: aktualny diagram architektury i przepływów danych.

Krok 4: przygotuj środowisko testowe

Środowisko testowe powinno być możliwie podobne do produkcji, ale bez ryzyka dla prawdziwych klientów, danych i procesów biznesowych.

Środowisko powinno mieć:

  • stabilną wersję produktu
  • kontrolowane dane testowe
  • konta testowe z różnymi rolami
  • integracje testowe lub bezpieczne atrapy integracji
  • możliwość odtworzenia stanu po testach
  • logowanie zdarzeń
  • monitoring dostępności
  • jasne zasady, czego testerzy nie mogą robić

Nie należy udostępniać testerom środowiska produkcyjnego bez bardzo jasnych zasad, zgód, ograniczeń i oceny ryzyka.

Dowód do przygotowania: opis środowiska testowego, dane dostępowe, zasady testowania i plan przywrócenia stanu.

Krok 5: przygotuj dane testowe

Dane testowe powinny pozwolić na realistyczny test, ale nie powinny ujawniać prawdziwych danych klientów lub pracowników.

Przygotuj:

  • użytkowników o różnych rolach
  • klientów testowych
  • dane przykładowe
  • scenariusze wielodostępności dla SaaS
  • dane do importu i eksportu
  • dane błędne i graniczne
  • testowe tokeny API
  • testowe integracje

Dowód do przygotowania: zestaw danych testowych i potwierdzenie, że nie zawiera danych produkcyjnych ani poufnych.

Krok 6: przygotuj konta, role i dostęp dla testerów

Testerzy powinni mieć dostęp do ról, które odzwierciedlają realne użycie produktu. Jeśli test obejmuje autoryzację, potrzebne są konta o różnych poziomach uprawnień.

Przygotuj:

  • konto zwykłego użytkownika
  • konto administratora klienta
  • konto administratora platformy
  • konto read-only, jeśli istnieje
  • konto API
  • konto użytkownika z ograniczonym dostępem
  • konto drugiego klienta do testów separacji danych

Dowód do przygotowania: lista kont testowych, zakres uprawnień i data wygaśnięcia dostępu.

Krok 7: przygotuj model zagrożeń

Model zagrożeń pomaga ukierunkować testy na najważniejsze ryzyka. Nie musi być idealny, ale powinien pokazywać, co zespół uważa za najważniejsze zagrożenia produktu.

Model powinien obejmować:

  • główne aktywa
  • aktorów zagrożeń
  • scenariusze nadużyć
  • granice zaufania
  • ryzyka dla danych klientów
  • ryzyka dla API
  • ryzyka dla integracji
  • ryzyka dla administracji i supportu
  • decyzje o zabezpieczeniach

Dowód do przygotowania: model zagrożeń lub lista najważniejszych scenariuszy ryzyka.

Krok 8: przygotuj SBOM i listę komponentów

Jeśli produkt ma być oceniany pod CRA albo wymagania klientów B2B, lista komponentów jest bardzo ważna. SBOM pomaga sprawdzić zależności, podatności, licencje i wpływ nowych podatności na produkt.

Przygotuj:

  • SBOM dla testowanej wersji produktu
  • listę zależności bezpośrednich
  • listę zależności pośrednich, jeśli dostępna
  • obrazy kontenerów
  • komponenty open source
  • komponenty komercyjne
  • komponenty dostarczane przez klientów lub dostawców

Dowód do przygotowania: SBOM powiązany z konkretną wersją produktu.

Krok 9: wykonaj wewnętrzny przegląd przed testem

Przed zewnętrznym testem warto usunąć oczywiste problemy. Dzięki temu budżet testu nie zostanie zużyty na błędy, które firma mogła wykryć sama.

Wewnętrzny przegląd powinien obejmować:

  • skanowanie zależności
  • skanowanie sekretów
  • podstawowe testy SAST
  • podstawowe testy DAST
  • testy API
  • przegląd konfiguracji chmury
  • przegląd uprawnień
  • przegląd logowania zdarzeń bezpieczeństwa

Dowód do przygotowania: lista problemów usuniętych przed testem i status otwartych ryzyk.

Krok 10: ustal zasady testowania

Test bezpieczeństwa musi mieć jasne zasady. Testerzy powinni wiedzieć, co wolno, czego nie wolno, kiedy testować, z kim się kontaktować i jak zgłaszać krytyczne podatności.

Zasady powinny określać:

  • zakres testu
  • czas testu
  • adresy IP testerów
  • dozwolone techniki
  • zakazane techniki
  • limity testów obciążeniowych
  • zasady testowania produkcji, jeśli dotyczy
  • ścieżkę zgłaszania krytycznych podatności
  • osoby kontaktowe
  • zasady ochrony danych i poufności

Dowód do przygotowania: zasady testowania zatwierdzone przez właściciela produktu i bezpieczeństwa.

Krok 11: przygotuj proces obsługi wyników

Test nie kończy się na raporcie. Najważniejsze jest to, co firma zrobi z wynikami: jak oceni podatności, kto je naprawi, kiedy nastąpi ponowna weryfikacja i jakie dowody zostaną zachowane.

Proces powinien obejmować:

  • spotkanie po raporcie
  • triage podatności
  • priorytety napraw
  • właścicieli zadań
  • terminy napraw
  • ponowną weryfikację
  • aktualizację rejestru podatności
  • decyzje o ryzyku zaakceptowanym
  • komunikację z klientami, jeśli potrzebna

Dowód do przygotowania: procedura obsługi wyników testu i rejestr napraw.

Krok 12: przygotuj pakiet dowodów do certyfikacji lub oceny zgodności

Jeżeli celem jest certyfikacja, ocena zgodności lub przygotowanie do CRA, firma powinna przygotować pakiet dowodów szerszy niż raport z testu.

Pakiet może obejmować:

  • opis produktu
  • zakres produktu
  • architekturę
  • ocenę ryzyka
  • model zagrożeń
  • wymagania bezpieczeństwa
  • wyniki testów
  • SBOM
  • proces obsługi podatności
  • proces aktualizacji bezpieczeństwa
  • instrukcje dla użytkownika
  • okres wsparcia
  • dowody napraw
  • decyzje o ryzyku

Dowód do przygotowania: uporządkowany folder dowodów produktu gotowy do klienta, audytu, jednostki oceniającej lub organu nadzoru.

Jakie rodzaje testów bezpieczeństwa warto rozważyć?

Test aplikacji webowej

Sprawdza aplikację webową z perspektywy użytkownika, atakującego i logiki biznesowej. Obejmuje między innymi uwierzytelnianie, autoryzację, sesje, formularze, pliki, błędy, konfigurację i dostęp do danych.

Test API

Jest szczególnie ważny dla produktów SaaS, aplikacji mobilnych i integracji B2B. Powinien sprawdzać autoryzację obiektów, role, tokeny, limity zapytań, walidację danych i nadużycia przepływów biznesowych.

Test aplikacji mobilnej

Powinien obejmować aplikację, komunikację z API, przechowywanie danych na urządzeniu, ochronę tokenów, konfigurację, reverse engineering i specyficzne ryzyka platform mobilnych.

Test infrastruktury i chmury

Sprawdza konfigurację środowiska, sieć, dostęp, konta uprzywilejowane, logowanie, składowanie danych, konfigurację usług chmurowych i bezpieczeństwo wdrożenia.

Test CI/CD i łańcucha dostaw

Sprawdza repozytoria, pipeline, sekrety, artefakty, zależności, podpisywanie, uprawnienia i możliwość podstawienia złośliwego kodu lub komponentu.

Test IoT lub systemu wbudowanego

Powinien obejmować firmware, aktualizacje, komunikację, interfejsy sprzętowe, konfigurację domyślną, klucze, protokoły, aplikację mobilną i backend.

Test przygotowujący do certyfikacji

Może mieć charakter wstępnej oceny gotowości. Celem nie jest tylko znalezienie podatności, ale sprawdzenie, czy produkt i dokumentacja są gotowe do formalnego procesu.

Przygotowanie do CRA: co musi być gotowe?

Zakres i klasyfikacja produktu

  • czy produkt jest produktem z elementami cyfrowymi?
  • czy jest udostępniany na rynku UE?
  • czy firma jest producentem, importerem, dystrybutorem czy podwykonawcą?
  • czy produkt należy do kategorii domyślnej, ważnej lub krytycznej?
  • czy potrzebna jest samoocena czy udział jednostki notyfikowanej?

Ocena ryzyka produktu

  • architektura
  • dane
  • użytkownicy
  • dostępy administracyjne
  • integracje
  • komponenty zewnętrzne
  • podatności
  • możliwe skutki kompromitacji

Dokumentacja techniczna

  • opis produktu
  • architektura
  • ocena ryzyka
  • wymagania bezpieczeństwa
  • zastosowane zabezpieczenia
  • wyniki testów
  • SBOM
  • proces podatności
  • proces aktualizacji
  • instrukcje dla użytkownika
  • okres wsparcia

Dowody procesu

  • Secure SDLC
  • modelowanie zagrożeń
  • przeglądy kodu
  • testy bezpieczeństwa
  • zarządzanie podatnościami
  • historia aktualizacji
  • decyzje o ryzyku
  • komunikacja z użytkownikami

Przygotowanie do certyfikacji cyberbezpieczeństwa

Najpierw ustal właściwy schemat

Nie każda certyfikacja pasuje do każdego produktu. Produkt SaaS, aplikacja mobilna, router, firewall, moduł kryptograficzny, urządzenie IoT i komponent sprzętowy mogą wymagać zupełnie innych podejść.

Przed rozpoczęciem sprawdź:

  • jaki jest cel certyfikacji
  • czy certyfikacja jest dobrowolna czy wymagana
  • czy klient wskazuje konkretny schemat
  • czy produkt pasuje do zakresu schematu
  • jaki poziom zapewnienia jest potrzebny
  • czy wymagane jest laboratorium lub jednostka certyfikująca
  • jakie dokumenty trzeba przygotować
  • jak długo może potrwać proces

EUCC i Common Criteria

EUCC to unijny schemat certyfikacji oparty na Common Criteria. Może dotyczyć produktów ICT, takich jak komponenty technologiczne, sprzęt i oprogramowanie. Jest to podejście bardziej formalne niż zwykły test penetracyjny i wymaga przygotowania wymagań bezpieczeństwa, dokumentacji oraz oceny przez właściwe podmioty.

Nie każdy software house będzie od razu potrzebował EUCC. Warto jednak rozumieć ten kierunek, jeśli produkt ma funkcje bezpieczeństwa, jest używany w sektorach regulowanych, będzie sprzedawany dużym klientom albo może należeć do kategorii wymagającej wyższego poziomu zapewnienia.

Certyfikacja a gotowość do certyfikacji

Wiele firm powinno zacząć nie od samej certyfikacji, ale od oceny gotowości. Taka ocena pokazuje, czy produkt ma wystarczającą dokumentację, testy, procesy, dowody i kontrolę wersji.

Ocena gotowości pozwala uniknąć sytuacji, w której formalny proces zaczyna się zbyt wcześnie i ujawnia braki, które można było przygotować wcześniej.

Checklista przygotowania do testów bezpieczeństwa

Zakres

  • czy mamy opis produktu?
  • czy znamy wersję produktu?
  • czy znamy moduły objęte testem?
  • czy znamy wyłączenia?
  • czy znamy role użytkowników?
  • czy znamy dane i integracje?

Środowisko

  • czy środowisko testowe działa stabilnie?
  • czy jest odseparowane od produkcji?
  • czy są dane testowe?
  • czy są konta testowe?
  • czy włączono logowanie?
  • czy mamy plan przywrócenia stanu po testach?

Dokumentacja

  • czy mamy diagram architektury?
  • czy mamy opis API?
  • czy mamy opis ról?
  • czy mamy model zagrożeń?
  • czy mamy listę komponentów?
  • czy mamy wymagania bezpieczeństwa?

Organizacja

  • czy są osoby kontaktowe?
  • czy ustalono terminy?
  • czy ustalono zasady testowania?
  • czy ustalono ścieżkę zgłaszania krytycznych podatności?
  • czy zaplanowano czas na naprawy?
  • czy zaplanowano ponowną weryfikację?

Checklista przygotowania do certyfikacji lub oceny zgodności

Produkt i regulacje

  • czy produkt podlega CRA?
  • czy produkt jest udostępniany na rynku UE?
  • czy określono rolę firmy?
  • czy określono kategorię produktu?
  • czy wiadomo, czy wystarczy samoocena?
  • czy potrzebna jest jednostka notyfikowana lub schemat certyfikacji?

Dowody bezpieczeństwa

  • czy mamy ocenę ryzyka?
  • czy mamy model zagrożeń?
  • czy mamy wyniki testów?
  • czy mamy SBOM?
  • czy mamy rejestr podatności?
  • czy mamy dowody napraw?

Procesy

  • czy mamy Secure SDLC?
  • czy mamy proces obsługi podatności?
  • czy mamy proces bezpiecznych aktualizacji?
  • czy mamy proces komunikacji z klientami?
  • czy mamy proces zgłoszeń pod CRA?
  • czy mamy kontrolę wersji i wydań?

Dokumentacja techniczna

  • czy dokumentacja jest aktualna?
  • czy opisuje produkt i architekturę?
  • czy pokazuje zastosowane zabezpieczenia?
  • czy zawiera wyniki testów?
  • czy zawiera okres wsparcia?
  • czy zawiera instrukcje dla użytkownika?

Najczęstsze błędy

Błąd 1: test bez jasnego zakresu

Niejasny zakres prowadzi do sporów, luk w testach i raportu, którego trudno użyć. Zakres musi wskazywać produkt, wersję, moduły, konta, API, integracje i wyłączenia.

Błąd 2: środowisko testowe różne od produkcji

Jeśli środowisko testowe znacząco różni się od produkcji, wyniki testu mogą być mniej wartościowe. Różnice powinny być opisane i świadomie zaakceptowane.

Błąd 3: brak danych i ról testowych

Bez realistycznych kont, ról i danych testerzy nie sprawdzą poprawnie autoryzacji, separacji danych, przepływów biznesowych i wielodostępności w SaaS.

Błąd 4: traktowanie testu jako certyfikacji

Raport z testu nie jest automatycznie certyfikatem. Może być dowodem technicznym, ale certyfikacja lub ocena zgodności zwykle wymaga szerszej dokumentacji i procesu.

Błąd 5: brak procesu obsługi wyników

Jeśli po teście nie ma triage, właścicieli, terminów napraw i ponownej weryfikacji, raport nie przekłada się na realną poprawę bezpieczeństwa.

Błąd 6: brak dokumentacji technicznej

Dla oceny zgodności i certyfikacji brak dokumentacji jest jednym z największych problemów. Produkt może być technicznie dobry, ale trudny do formalnego potwierdzenia.

Błąd 7: zbyt późne przygotowanie do CRA

CRA wymaga procesu, dokumentacji i dowodów. Tego nie da się przygotować w ostatnim tygodniu przed oceną. Najlepiej zacząć od oceny gotowości i planu działań.

Plan działania na 30, 60 i 90 dni

Pierwsze 30 dni

  • ustal cel testów lub certyfikacji
  • zrób rejestr produktów i wersji
  • wybierz produkt pilotażowy
  • opisz zakres testu
  • przygotuj diagram architektury
  • przygotuj środowisko testowe
  • przygotuj konta i dane testowe
  • zbierz istniejące wyniki testów i dokumentację

Dni 31 do 60

  • wykonaj modelowanie zagrożeń
  • przygotuj SBOM
  • uruchom wewnętrzne skanowanie zależności i sekretów
  • wykonaj podstawowy przegląd API i kontroli dostępu
  • usuń oczywiste problemy przed testem zewnętrznym
  • przygotuj zasady testowania
  • przygotuj proces obsługi wyników testu

Dni 61 do 90

  • przeprowadź test bezpieczeństwa
  • wykonaj triage podatności
  • napraw priorytetowe podatności
  • wykonaj ponowną weryfikację
  • uzupełnij dokumentację techniczną
  • przygotuj pakiet dowodów dla klienta, audytu lub CRA
  • ustal plan przygotowania do formalnej certyfikacji lub oceny zgodności, jeśli jest potrzebna

Jakie dokumenty i dowody warto przygotować?

Dokumenty produktu

  • opis produktu
  • lista wersji
  • zakres funkcji
  • architektura
  • diagram przepływu danych
  • lista API
  • lista integracji
  • lista ról i uprawnień

Dokumenty bezpieczeństwa

  • ocena ryzyka produktu
  • model zagrożeń
  • wymagania bezpieczeństwa
  • SBOM
  • wyniki SAST, DAST i SCA
  • raport testu penetracyjnego
  • raport testów API
  • rejestr podatności

Dokumenty procesowe

  • polityka Secure SDLC
  • proces obsługi podatności
  • proces aktualizacji bezpieczeństwa
  • proces zgłaszania podatności
  • proces wydania produktu
  • proces komunikacji z klientami
  • procedura zgłoszeń pod CRA

Dowody operacyjne

  • dowody napraw podatności
  • wyniki ponownej weryfikacji
  • decyzje o akceptacji ryzyka
  • historia aktualizacji bezpieczeństwa
  • logi zatwierdzeń wydań
  • potwierdzenie dostępów testowych
  • komunikaty bezpieczeństwa

Jak mierzyć gotowość produktu?

Gotowość do testów

  • zakres testu jest zatwierdzony
  • środowisko testowe działa stabilnie
  • konta testowe są gotowe
  • dane testowe są gotowe
  • architektura i API są opisane
  • osoby kontaktowe są wyznaczone
  • zasady testowania są zaakceptowane

Gotowość do oceny zgodności lub certyfikacji

  • produkt ma ocenę ryzyka
  • produkt ma dokumentację techniczną
  • produkt ma SBOM
  • produkt ma proces obsługi podatności
  • produkt ma proces aktualizacji bezpieczeństwa
  • produkt ma wyniki testów
  • produkt ma dowody napraw i decyzji o ryzyku

Przykład biznesowy

Firma SaaS przygotowuje platformę B2B do testu bezpieczeństwa wymaganego przez dużego klienta. Zespół chce od razu zamówić test penetracyjny, ale szybko okazuje się, że nie ma aktualnego diagramu architektury, środowisko testowe różni się od produkcji, brakuje kont dla różnych ról, a API nie jest dobrze opisane.

Firma najpierw wykonuje przygotowanie do testu. Ustala zakres, tworzy konta testowe, przygotowuje dane dla dwóch klientów testowych, opisuje API, zbiera dokumentację i uruchamia wewnętrzne skanowanie zależności oraz sekretów.

Dzięki temu zewnętrzny test jest bardziej wartościowy. Testerzy nie tracą czasu na organizację dostępu, tylko sprawdzają realne ryzyka: autoryzację, separację danych klientów, API, panel administratora, eksport danych i integracje.

Po teście firma robi triage, naprawia podatności i wykonuje ponowną weryfikację. Następnie wykorzystuje raport jako część większego pakietu dowodów: SBOM, model zagrożeń, rejestr podatności, proces aktualizacji i dokumentację techniczną pod CRA.

Jak ccyber.io może pomóc?

ccyber.io pomaga firmom przygotować produkty cyfrowe do testów bezpieczeństwa, certyfikacji, oceny zgodności i wymagań klientów B2B. Nie zaczynamy od samego testu. Najpierw sprawdzamy, czy produkt, środowisko, dokumentacja i procesy są gotowe.

Możemy wesprzeć organizację w obszarach:

  • test-readiness assessment
  • przygotowanie zakresu testu bezpieczeństwa
  • przegląd architektury i przepływów danych
  • przygotowanie modelu zagrożeń
  • przygotowanie SBOM
  • przegląd API i kontroli dostępu
  • przygotowanie dokumentacji technicznej pod CRA
  • proces obsługi podatności
  • proces aktualizacji bezpieczeństwa
  • pakiet dowodów dla klientów, audytu, certyfikacji lub oceny zgodności

Najlepszym pierwszym krokiem jest krótka ocena gotowości produktu. Pokazuje, czy produkt jest przygotowany do testu, czego brakuje przed oceną zgodności i które działania warto wykonać przed zaangażowaniem zewnętrznych testerów albo jednostki oceniającej.

FAQ

Czy test bezpieczeństwa i certyfikacja to to samo?

Nie. Test bezpieczeństwa wykrywa podatności i ryzyka techniczne. Certyfikacja lub ocena zgodności sprawdza produkt względem określonych wymagań i zwykle wymaga szerszej dokumentacji, procesu oraz dowodów.

Czy raport z testu penetracyjnego wystarczy pod CRA?

Nie. Raport z testu może być ważnym dowodem, ale CRA wymaga szerszego podejścia: oceny ryzyka, dokumentacji technicznej, obsługi podatności, aktualizacji, SBOM, okresu wsparcia i informacji dla użytkownika.

Czy każdy produkt pod CRA wymaga jednostki notyfikowanej?

Nie. Dla wielu produktów możliwa będzie samoocena producenta. Niektóre produkty ważne lub krytyczne mogą jednak wymagać bardziej rygorystycznej procedury albo udziału jednostki notyfikowanej.

Co przygotować przed testem aplikacji webowej?

Zakres testu, środowisko testowe, konta użytkowników, dane testowe, opis ról, opis API, architekturę, zasady testowania, osoby kontaktowe i proces obsługi wyników.

Co przygotować przed testem API?

Dokumentację API, konta i tokeny o różnych rolach, przykładowe zapytania, dane testowe, limity, opis autoryzacji, scenariusze biznesowe i środowisko testowe.

Czy trzeba mieć SBOM przed certyfikacją?

W wielu przypadkach tak. SBOM jest bardzo ważny przy CRA, zarządzaniu podatnościami, ocenie komponentów, odpowiedziach dla klientów i dokumentacji technicznej produktu.

Czym jest gotowość do certyfikacji?

To stan, w którym produkt ma nie tylko wyniki testów, ale także zakres, dokumentację, procesy, dowody, właścicieli i kontrolę wersji potrzebne do formalnej oceny.

Od czego zacząć, jeśli produkt nigdy nie był testowany?

Najlepiej zacząć od oceny gotowości: zakres, architektura, środowisko testowe, konta, dane, API, podstawowe skanowanie, model zagrożeń i plan obsługi wyników testu.

Podsumowanie

Przygotowanie produktu cyfrowego do testów bezpieczeństwa i certyfikacji wymaga uporządkowania produktu, procesu i dowodów. Samo udostępnienie aplikacji testerowi nie wystarczy, jeśli brakuje zakresu, środowiska, danych, dokumentacji i procesu obsługi wyników.

Dla firm przygotowujących się do CRA lub wymagań dużych klientów kluczowe jest szersze podejście: ocena ryzyka, dokumentacja techniczna, SBOM, proces podatności, aktualizacje bezpieczeństwa, model zagrożeń i dowody Secure SDLC.

Najlepsza kolejność to: najpierw gotowość, potem test, następnie naprawy i ponowna weryfikacja, a dopiero później formalna certyfikacja lub ocena zgodności, jeśli jest wymagana.

Źródła

Bezpieczne aktualizacje: jak przygotować proces aktualizacji produktu pod wymagania CRA?

Bezpieczne aktualizacje produktu cyfrowego to nie tylko wydanie poprawki. Pod Cyber Resilience Act producent powinien mieć proces wykrywania podatności, przygotowania poprawki, testowania, podpisywania, bezpiecznej dystrybucji, komunikacji z użytkownikami, monitorowania wdrożenia i dokumentowania dowodów przez cały okres wsparcia produktu.

Opracowanie: Zespół redakcyjny CCyber

Odpowiedź w skrócie

Bezpieczny proces aktualizacji pod CRA powinien obejmować cały cykl życia poprawki: wykrycie podatności, ocenę ryzyka, przygotowanie zmiany, testy, zatwierdzenie, podpisanie artefaktu, bezpieczną dystrybucję, komunikat dla użytkowników, monitorowanie wdrożenia i dokumentowanie dowodów. Producent produktu z elementami cyfrowymi powinien też określić okres wsparcia, zapewnić aktualizacje bezpieczeństwa bez zbędnej zwłoki, przygotować możliwość automatycznych aktualizacji tam, gdzie ma to zastosowanie, oraz oddzielać aktualizacje bezpieczeństwa od funkcjonalnych, jeśli jest to technicznie możliwe.

Ostatnia aktualizacja

Lipiec 2026

Dla kogo jest ten artykuł

  • software house’y
  • firmy SaaS tworzące produkty cyfrowe lub rozwiązania powiązane z produktem
  • producenci aplikacji webowych, mobilnych i desktopowych
  • producenci IoT, sprzętu i systemów wbudowanych
  • firmy tworzące komponenty, biblioteki, API i moduły
  • CTO, Head of Engineering i liderzy techniczni
  • zespoły DevOps i DevSecOps
  • zespoły product security
  • CISO i osoby odpowiedzialne za bezpieczeństwo aplikacji
  • osoby odpowiedzialne za CRA, Secure SDLC, SBOM, podatności i dokumentację techniczną produktu

Najważniejsze wnioski

  1. Bezpieczna aktualizacja to proces, a nie jednorazowe wysłanie poprawki do użytkownika.
  2. Pod CRA producent powinien umieć wykazać, że potrafi usuwać podatności i dostarczać aktualizacje bezpieczeństwa przez określony okres wsparcia produktu.
  3. Aktualizacje bezpieczeństwa powinny być testowane, podpisywane, dystrybuowane bezpiecznym kanałem i możliwe do powiązania z konkretną wersją produktu.
  4. Jeśli produkt umożliwia automatyczne aktualizacje, użytkownik powinien mieć jasne informacje, możliwość odroczenia i możliwość wyłączenia automatycznej instalacji tam, gdzie CRA tego wymaga.
  5. Najlepszy start to mapa produktów i wersji, polityka aktualizacji, proces wydawniczy, rejestr podatności, SBOM, procedura komunikacji i pakiet dowodów do dokumentacji technicznej.

Czym są bezpieczne aktualizacje produktu?

Bezpieczne aktualizacje to proces przygotowywania, sprawdzania i dostarczania poprawek produktu w taki sposób, aby zmniejszać ryzyko podatności, nie wprowadzać nowych błędów i nie umożliwiać atakującym podstawienia złośliwej wersji produktu.

W praktyce bezpieczny proces aktualizacji odpowiada na pytania:

  • skąd wiemy, że produkt wymaga poprawki?
  • które wersje produktu są objęte wsparciem?
  • kto decyduje o wydaniu aktualizacji bezpieczeństwa?
  • jak testujemy poprawkę?
  • jak podpisujemy i chronimy artefakty?
  • jak użytkownik otrzymuje aktualizację?
  • czy aktualizacja może zostać zainstalowana automatycznie?
  • jak użytkownik może odroczyć lub wyłączyć automatyczną aktualizację, jeśli ma do tego prawo?
  • jak komunikujemy ryzyko, obejścia i zalecane działania?
  • jak dokumentujemy, że aktualizacja została wydana i była dostępna?

Bezpieczna aktualizacja nie dotyczy wyłącznie kodu. Dotyczy również procesu budowania, kontroli zmian, podpisów, kanałów dystrybucji, dokumentacji, wsparcia użytkownika i reakcji na podatności.

Dlaczego CRA zmienia podejście do aktualizacji?

Cyber Resilience Act wprowadza wymagania cyberbezpieczeństwa dla produktów z elementami cyfrowymi. Jednym z kluczowych obszarów jest obsługa podatności przez cały okres wsparcia produktu.

Dla producentów oznacza to, że produkt powinien być projektowany i utrzymywany tak, aby możliwe było:

  • wykrywanie i dokumentowanie podatności
  • przygotowywanie poprawek bezpieczeństwa
  • dostarczanie aktualizacji w odpowiednim czasie
  • bezpieczne dystrybuowanie aktualizacji
  • informowanie użytkowników o dostępnych aktualizacjach
  • oddzielanie aktualizacji bezpieczeństwa od aktualizacji funkcjonalnych, jeśli jest to technicznie możliwe
  • określenie końca okresu wsparcia
  • przygotowanie dowodów do dokumentacji technicznej

CRA zmienia więc aktualizacje z tematu technicznego w temat produktowy, regulacyjny i biznesowy. Zespół musi wiedzieć nie tylko, jak wydać poprawkę, ale też jak wykazać, że proces działa.

Jakie wymagania CRA są najważniejsze dla aktualizacji?

1. Aktualizacje bezpieczeństwa muszą usuwać podatności

Producent powinien mieć proces, który pozwala reagować na podatności i usuwać je przez aktualizacje bezpieczeństwa. To wymaga połączenia zarządzania podatnościami, procesu wydawniczego, testów, komunikacji i dokumentacji.

2. Aktualizacje powinny być dostarczane bez zbędnej zwłoki

Jeżeli firma wie o istotnej podatności, nie powinna odkładać poprawki bez uzasadnienia. Priorytet powinien zależeć od ryzyka, ekspozycji produktu, aktywnego wykorzystania podatności, wpływu na klientów i dostępności obejścia.

3. Aktualizacje bezpieczeństwa powinny być oddzielone od funkcjonalnych, jeśli jest to możliwe

Użytkownik nie powinien być zmuszany do instalowania dużej aktualizacji funkcjonalnej tylko po to, aby otrzymać poprawkę bezpieczeństwa, jeśli technicznie można te aktualizacje rozdzielić.

4. Produkt powinien umożliwiać automatyczne aktualizacje tam, gdzie ma to zastosowanie

CRA wskazuje na automatyczne aktualizacje bezpieczeństwa w określonych przypadkach, w szczególności dla produktów konsumenckich. Jednocześnie użytkownik powinien mieć jasny i prosty mechanizm wyłączenia automatycznych aktualizacji oraz możliwość czasowego odroczenia instalacji.

5. Użytkownik powinien dostać jasne informacje

Aktualizacja bezpieczeństwa powinna być połączona z informacją, co naprawia, jakie działania użytkownik powinien wykonać i czy istnieje ryzyko wymagające dodatkowych kroków.

6. Producent musi określić okres wsparcia

Użytkownik powinien wiedzieć, do kiedy może oczekiwać obsługi podatności i aktualizacji bezpieczeństwa. Końcowa data okresu wsparcia powinna być wskazana jasno, z miesiącem i rokiem.

Bezpieczna aktualizacja krok po kroku

Krok 1: ustal produkty, wersje i okresy wsparcia

Nie da się dobrze zarządzać aktualizacjami, jeśli firma nie wie, które produkty i wersje są nadal wspierane. Pierwszy krok to rejestr produktów i wersji.

Rejestr powinien obejmować:

  • nazwę produktu
  • wersje wspierane
  • wersje wycofane ze wsparcia
  • datę końca wsparcia
  • typ produktu
  • model dystrybucji
  • właściciela biznesowego
  • właściciela technicznego
  • kluczowych klientów lub segmenty użytkowników
  • zależności i komponenty krytyczne

Dowód do przygotowania: rejestr produktów, wersji i okresów wsparcia.

Krok 2: zdefiniuj politykę aktualizacji bezpieczeństwa

Polityka aktualizacji powinna określać, kiedy firma wydaje poprawkę bezpieczeństwa, kto podejmuje decyzję, jak wygląda testowanie i jak użytkownicy są informowani.

Polityka powinna zawierać:

  • definicję aktualizacji bezpieczeństwa
  • różnicę między aktualizacją bezpieczeństwa a funkcjonalną
  • kryteria pilności
  • role i odpowiedzialności
  • terminy przygotowania i wydania poprawek
  • zasady automatycznych aktualizacji
  • zasady odroczenia i wyłączenia aktualizacji
  • zasady komunikacji z użytkownikami
  • zasady dokumentowania dowodów

Dowód do przygotowania: polityka aktualizacji bezpieczeństwa zatwierdzona przez właściciela produktu i bezpieczeństwa.

Krok 3: połącz aktualizacje z zarządzaniem podatnościami

Aktualizacja bezpieczeństwa zwykle wynika z podatności. Dlatego proces aktualizacji powinien być połączony z rejestrem podatności, SBOM i procesem oceny ryzyka.

Dla każdej ważnej podatności ustal:

  • który produkt jest dotknięty
  • które wersje są dotknięte
  • czy podatność jest aktywnie wykorzystywana
  • czy istnieje obejście
  • czy potrzebna jest poprawka
  • kiedy poprawka może zostać wydana
  • czy powstaje obowiązek zgłoszenia pod CRA
  • jak poinformować użytkowników

Dowód do przygotowania: powiązanie podatności z wydaniem poprawki i decyzją komunikacyjną.

Krok 4: przygotuj bezpieczny proces budowania i wydania

Atakujący może próbować podmienić poprawkę, przejąć proces budowania, ukraść klucz podpisu albo wstrzyknąć złośliwy kod do procesu wydania. Dlatego bezpieczeństwo aktualizacji zależy także od bezpieczeństwa procesu wytwarzania.

Sprawdź:

  • kto może zatwierdzić zmianę
  • kto może uruchomić budowanie wersji
  • kto może wdrożyć poprawkę na produkcję
  • gdzie przechowywane są sekrety i klucze
  • czy artefakty są podpisywane
  • czy istnieje rozdzielenie ról
  • czy proces CI/CD jest logowany
  • czy można powiązać artefakt z kodem źródłowym i wersją produktu

Dowód do przygotowania: opis procesu budowania i wydania, logi zatwierdzeń oraz lista osób z uprawnieniami.

Krok 5: podpisuj aktualizacje i weryfikuj integralność

Użytkownik lub system powinien mieć możliwość sprawdzenia, że aktualizacja pochodzi od właściwego producenta i nie została zmieniona po drodze.

W praktyce oznacza to:

  • podpisywanie artefaktów
  • ochronę kluczy podpisu
  • rotację kluczy, jeśli jest potrzebna
  • procedurę unieważnienia klucza
  • weryfikację podpisu po stronie klienta lub systemu instalującego
  • ochronę przed cofnięciem do starszej podatnej wersji
  • ochronę przed podstawieniem nieprawidłowego pakietu

Dowód do przygotowania: procedura podpisywania aktualizacji, rejestr kluczy i dowody weryfikacji podpisu.

Krok 6: zabezpiecz kanał dystrybucji aktualizacji

Kanał dystrybucji aktualizacji może być celem ataku. Jeżeli atakujący przejmie serwer aktualizacji, repozytorium, konto administracyjne albo system dystrybucji, może próbować dostarczyć złośliwą wersję produktu.

Kontrole bezpieczeństwa powinny obejmować:

  • MFA dla administratorów
  • ograniczony dostęp do repozytoriów aktualizacji
  • logowanie działań administratorów
  • weryfikację integralności pakietów
  • ochronę przed cofnięciem wersji
  • monitoring nietypowych zmian
  • kopie zapasowe metadanych i artefaktów
  • plan awaryjny na wypadek kompromitacji kanału dystrybucji

Dowód do przygotowania: diagram kanału aktualizacji, kontrola dostępu, logi i plan awaryjny.

Krok 7: testuj aktualizacje przed wydaniem

Poprawka bezpieczeństwa nie może naprawiać jednej podatności i jednocześnie powodować nowego incydentu. Testy powinny obejmować zarówno bezpieczeństwo, jak i stabilność produktu.

Testy powinny obejmować:

  • test naprawionej podatności
  • test regresji
  • test kompatybilności
  • test instalacji aktualizacji
  • test powrotu do działania po nieudanej aktualizacji
  • test integralności pakietu
  • test podpisu
  • test komunikatu dla użytkownika

Dowód do przygotowania: raport testów aktualizacji, decyzja o dopuszczeniu wydania i lista znanych ograniczeń.

Krok 8: zaplanuj instalację automatyczną, odroczenie i wyłączenie

Dla części produktów automatyczne aktualizacje bezpieczeństwa będą najlepszym sposobem ograniczenia ryzyka. Nie zawsze jednak można instalować poprawki automatycznie bez wpływu na użytkownika, produkcję lub integracje.

Proces powinien określać:

  • czy produkt obsługuje automatyczne aktualizacje
  • czy automatyczna instalacja jest ustawieniem domyślnym
  • czy użytkownik może czasowo odroczyć aktualizację
  • czy użytkownik może wyłączyć automatyczne aktualizacje
  • jak użytkownik otrzymuje instrukcję wyłączenia
  • jakie ryzyko tworzy wyłączenie aktualizacji
  • jak firma monitoruje wersje nieaktualne

Dowód do przygotowania: opis mechanizmu automatycznych aktualizacji, instrukcja dla użytkownika i rejestr decyzji produktowych.

Krok 9: przygotuj komunikację z użytkownikami

Aktualizacja bezpieczeństwa powinna być zrozumiała dla użytkownika. Komunikat nie musi ujawniać wszystkich szczegółów technicznych przed naprawą, ale powinien jasno wskazywać, co użytkownik ma zrobić.

Komunikat może zawierać:

  • nazwę produktu
  • wersje dotknięte problemem
  • wersję naprawioną
  • poziom ryzyka
  • zalecane działania
  • czy aktualizacja jest automatyczna
  • czy użytkownik może odroczyć instalację
  • czy istnieje obejście
  • czy wymagany jest restart lub przerwa techniczna
  • gdzie znaleźć dodatkowe informacje

Dowód do przygotowania: zatwierdzony komunikat bezpieczeństwa i lista kanałów komunikacji.

Krok 10: monitoruj wdrożenie aktualizacji

Wydanie poprawki nie oznacza, że ryzyko zniknęło. Firma powinna wiedzieć, ilu użytkowników zainstalowało aktualizację, które wersje są nadal podatne i czy pojawiły się problemy po wdrożeniu.

Monitoruj:

  • liczbę zaktualizowanych instalacji
  • liczbę instalacji nadal podatnych
  • błędy instalacji
  • zgłoszenia od użytkowników
  • wpływ na działanie produktu
  • próby wykorzystania podatności po wydaniu poprawki
  • czas od wydania poprawki do jej zainstalowania

Dowód do przygotowania: raport adopcji aktualizacji i lista problemów po wydaniu.

Krok 11: utrzymuj dostępność aktualizacji przez wymagany czas

CRA wymaga, aby aktualizacje bezpieczeństwa udostępnione użytkownikom w okresie wsparcia pozostawały dostępne po wydaniu przez co najmniej 10 lat albo przez pozostałą część okresu wsparcia, w zależności od tego, który okres jest dłuższy.

To oznacza, że producent powinien zaplanować:

  • gdzie przechowuje aktualizacje
  • jak długo przechowuje artefakty
  • jak zabezpiecza repozytorium aktualizacji
  • jak utrzymuje metadane i podpisy
  • jak obsługuje starsze wersje wspierane
  • jak dokumentuje dostępność poprawek

Dowód do przygotowania: polityka przechowywania aktualizacji i rejestr dostępnych wersji.

Krok 12: dokumentuj dowody do CRA

Pod CRA aktualizacje bezpieczeństwa są częścią dowodów, że producent obsługuje podatności i utrzymuje produkt w sposób bezpieczny. Dowody powinny być dostępne w dokumentacji technicznej albo powiązanych rejestrach.

Dokumentuj:

  • podatność lub problem bezpieczeństwa
  • ocenę ryzyka
  • decyzję o wydaniu poprawki
  • zakres poprawki
  • testy
  • zatwierdzenie wydania
  • podpis artefaktu
  • datę publikacji
  • komunikat dla użytkowników
  • monitoring wdrożenia
  • decyzję o zgłoszeniu lub braku zgłoszenia pod CRA

Dowód do przygotowania: pełny pakiet dowodów aktualizacji bezpieczeństwa.

Checklista bezpiecznych aktualizacji pod CRA

Produkt i wsparcie

  • czy mamy listę produktów objętych CRA?
  • czy znamy wspierane wersje?
  • czy znamy datę końca wsparcia?
  • czy użytkownik otrzymuje informację o okresie wsparcia?
  • czy mamy proces dla produktów wycofywanych ze wsparcia?

Podatności i decyzje

  • czy mamy rejestr podatności?
  • czy wiemy, która podatność wymaga aktualizacji?
  • czy oceniamy aktywne wykorzystanie podatności?
  • czy mamy terminy napraw?
  • czy mamy decyzję o komunikacji z użytkownikami?

Budowanie i wydanie

  • czy zmiana jest zatwierdzona?
  • czy artefakt jest powiązany z kodem źródłowym?
  • czy artefakt jest podpisany?
  • czy klucze podpisu są chronione?
  • czy proces CI/CD jest kontrolowany?
  • czy istnieje możliwość odtworzenia, kto zatwierdził wydanie?

Dystrybucja i instalacja

  • czy aktualizacja jest dostarczana bezpiecznym kanałem?
  • czy system weryfikuje integralność aktualizacji?
  • czy produkt wspiera automatyczne aktualizacje, jeśli ma to zastosowanie?
  • czy użytkownik może odroczyć aktualizację?
  • czy użytkownik może wyłączyć automatyczne aktualizacje tam, gdzie ma to zastosowanie?

Dowody i dokumentacja

  • czy mamy raport testów?
  • czy mamy komunikat bezpieczeństwa?
  • czy mamy dowód publikacji aktualizacji?
  • czy mamy raport adopcji aktualizacji?
  • czy aktualizacja jest uwzględniona w dokumentacji technicznej?
  • czy oceniono obowiązek zgłoszenia przez SRP?

Bezpieczne aktualizacje dla różnych typów produktów

Aplikacje SaaS

W modelu SaaS producent zwykle kontroluje środowisko produkcyjne i może szybciej wdrażać poprawki. Wyzwanie polega na kontroli zmian, testach regresji, komunikacji z klientami i monitorowaniu wpływu na integracje.

W SaaS szczególnie ważne są:

  • kontrola zmian produkcyjnych
  • testy regresji
  • monitoring po wdrożeniu
  • komunikacja o przerwach technicznych
  • kontrola dostępu administracyjnego
  • dowody wdrożenia poprawki

Aplikacje instalowane u klienta

Przy oprogramowaniu instalowanym u klienta producent często nie ma pełnej kontroli nad momentem instalacji. Dlatego ważne są mechanizm aktualizacji, powiadomienia, instrukcje, kompatybilność i monitoring wersji, jeśli jest możliwy.

Aplikacje mobilne

Aplikacje mobilne zależą od sklepów aplikacji, systemów operacyjnych i zachowania użytkowników. Firma powinna planować, jak szybko poprawka trafi do użytkownika i jak ograniczyć ryzyko dla starszych wersji.

Produkty IoT i systemy wbudowane

W produktach IoT i systemach wbudowanych aktualizacja może dotyczyć firmware, urządzeń o ograniczonych zasobach, łączności niestabilnej i ryzyka fizycznego. Szczególnie ważne są podpisy, weryfikacja integralności, odporność na przerwaną aktualizację i możliwość bezpiecznego powrotu do działania.

Komponenty i biblioteki

Jeśli firma dostarcza komponent, bibliotekę, SDK albo API, powinna przygotować jasne wersjonowanie, komunikaty o podatnościach, instrukcje aktualizacji i informacje dla integratorów. Klient musi wiedzieć, jak bezpiecznie zaktualizować komponent w swoim produkcie.

Najczęstsze błędy przy aktualizacjach bezpieczeństwa

Błąd 1: brak listy wspieranych wersji

Jeżeli firma nie wie, które wersje produktu wspiera, trudno ustalić, dla których wersji trzeba przygotować poprawkę i których klientów poinformować.

Błąd 2: poprawka bez testów

Presja czasu po wykryciu podatności może prowadzić do zbyt szybkiego wydania. Poprawka bezpieczeństwa nadal musi być przetestowana, szczególnie jeśli dotyczy uwierzytelniania, dostępu, danych klientów albo procesu instalacji.

Błąd 3: brak podpisywania aktualizacji

Niepodpisane albo słabo chronione aktualizacje mogą zostać podmienione. Dla produktu cyfrowego mechanizm aktualizacji jest jednym z najbardziej wrażliwych elementów bezpieczeństwa.

Błąd 4: brak planu na nieudaną aktualizację

Aktualizacja może się nie udać. Firma powinna wiedzieć, jak produkt wróci do działania, jak chronione są dane i jak użytkownik otrzyma pomoc.

Błąd 5: mieszanie poprawek bezpieczeństwa z dużymi zmianami funkcjonalnymi

Jeśli użytkownik musi instalować dużą zmianę funkcjonalną tylko po to, aby otrzymać poprawkę bezpieczeństwa, rośnie ryzyko opóźnień i problemów kompatybilności.

Błąd 6: brak komunikacji z użytkownikami

Użytkownik musi wiedzieć, że aktualizacja jest dostępna, jaki problem rozwiązuje i co powinien zrobić. Brak komunikacji wydłuża czas ekspozycji na podatność.

Błąd 7: brak dowodów

Jeżeli firma nie dokumentuje testów, zatwierdzeń, podpisów, publikacji i komunikacji, trudno wykazać zgodność z wymaganiami, nawet jeśli aktualizacja została wykonana poprawnie.

Plan wdrożenia procesu aktualizacji na 30, 60 i 90 dni

Pierwsze 30 dni

  • wyznacz właściciela procesu aktualizacji bezpieczeństwa
  • zrób listę produktów, wersji i okresów wsparcia
  • sprawdź obecny sposób wydawania poprawek
  • sprawdź, czy aktualizacje są podpisywane
  • sprawdź, kto ma dostęp do procesu wydania
  • przygotuj podstawową politykę aktualizacji bezpieczeństwa
  • wybierz jeden produkt pilotażowy

Dni 31 do 60

  • połącz proces aktualizacji z rejestrem podatności
  • zdefiniuj terminy dla poprawek bezpieczeństwa
  • przygotuj szablon komunikatu bezpieczeństwa
  • dodaj testy aktualizacji do procesu wydania
  • sprawdź ochronę kluczy i artefaktów
  • przygotuj procedurę awaryjną dla nieudanej aktualizacji
  • ustal zasady rozdzielania aktualizacji bezpieczeństwa i funkcjonalnych

Dni 61 do 90

  • wdroż podpisywanie i weryfikację aktualizacji tam, gdzie brakuje kontroli
  • uruchom monitoring adopcji aktualizacji
  • przygotuj procedurę zgłoszeń pod CRA
  • dodaj aktualizacje do dokumentacji technicznej produktu
  • przeprowadź ćwiczenie wydania pilnej poprawki
  • przygotuj pakiet dowodów dla klienta lub audytu
  • rozszerz proces na kolejne produkty

Jakie dokumenty i dowody warto przygotować?

Dokumenty zarządcze

  • polityka aktualizacji bezpieczeństwa
  • rejestr produktów i okresów wsparcia
  • role i odpowiedzialności
  • zasady komunikacji z użytkownikami
  • zasady akceptacji ryzyka przy opóźnionej aktualizacji

Dokumenty techniczne

  • opis mechanizmu aktualizacji
  • opis kanału dystrybucji
  • proces podpisywania artefaktów
  • procedura ochrony kluczy
  • procedura testów aktualizacji
  • procedura obsługi nieudanej aktualizacji
  • powiązanie aktualizacji z SBOM i podatnościami

Dowody operacyjne

  • zgłoszenie podatności
  • ocena ryzyka
  • zadanie naprawcze
  • wyniki testów
  • zatwierdzenie wydania
  • podpis artefaktu
  • komunikat bezpieczeństwa
  • dowód publikacji aktualizacji
  • raport adopcji aktualizacji
  • decyzja o zgłoszeniu lub braku zgłoszenia pod CRA

Jak mierzyć skuteczność procesu aktualizacji?

Metryki szybkości

  • czas od wykrycia podatności do decyzji o aktualizacji
  • czas od decyzji do przygotowania poprawki
  • czas od poprawki do wydania
  • czas od wydania do instalacji przez użytkowników

Metryki jakości

  • liczba aktualizacji wycofanych z powodu błędów
  • liczba problemów po aktualizacji
  • procent aktualizacji z pełnymi testami
  • procent aktualizacji podpisanych i zweryfikowanych

Metryki zgodności

  • liczba produktów z określonym okresem wsparcia
  • liczba produktów z udokumentowanym mechanizmem aktualizacji
  • liczba aktualizacji z pakietem dowodów
  • liczba decyzji o zgłoszeniach CRA podjętych w terminie

Metryki adopcji

  • procent instalacji na najnowszej wersji
  • procent instalacji podatnych
  • liczba użytkowników, którzy odroczyli aktualizację
  • liczba użytkowników z wyłączonymi automatycznymi aktualizacjami

Przykład biznesowy

Firma tworzy aplikację desktopową używaną przez klientów B2B w sektorze regulowanym. Produkt ma moduł aktualizacji, ale nie ma jasnej polityki wsparcia, podpisywanie aktualizacji jest wykonywane ręcznie, a komunikaty do klientów są przygotowywane dopiero wtedy, gdy pojawia się problem.

Po analizie CRA firma zauważa, że musi uporządkować cały proces. Najpierw tworzy rejestr wersji wspieranych, określa okres wsparcia, wskazuje właściciela procesu aktualizacji i łączy podatności z wydaniami poprawek.

Następnie firma wprowadza podpisywanie artefaktów, testy instalacji aktualizacji, plan postępowania przy nieudanej aktualizacji i szablon komunikatu bezpieczeństwa. Dodaje też raport adopcji, aby widzieć, którzy klienci nadal korzystają ze starszych wersji.

Po 90 dniach firma nie tylko wydaje poprawki szybciej, ale też ma dowody: kto zatwierdził poprawkę, co naprawiono, jak ją przetestowano, kiedy ją opublikowano i ilu klientów ją zainstalowało.

Jak ccyber.io może pomóc?

ccyber.io pomaga firmom tworzącym produkty cyfrowe przygotować bezpieczny proces aktualizacji zgodny z wymaganiami CRA, praktykami Secure SDLC i realnym sposobem pracy zespołów produktowych.

Możemy wesprzeć organizację w obszarach:

  • ocena gotowości procesu aktualizacji pod CRA
  • mapowanie produktów, wersji i okresów wsparcia
  • projekt polityki aktualizacji bezpieczeństwa
  • połączenie aktualizacji z zarządzaniem podatnościami
  • przegląd procesu CI/CD i wydawania poprawek
  • przegląd podpisywania i dystrybucji aktualizacji
  • przygotowanie komunikatów bezpieczeństwa
  • procedura zgłoszeń pod CRA
  • pakiet dowodów do dokumentacji technicznej produktu
  • warsztat dla zespołu produktowego, technicznego i bezpieczeństwa

Najlepszym pierwszym krokiem jest krótki assessment procesu aktualizacji. Pozwala ustalić, które produkty wymagają największej uwagi, gdzie brakuje kontroli i co trzeba wdrożyć przed terminami CRA.

FAQ

Czym jest bezpieczna aktualizacja produktu?

To aktualizacja przygotowana, przetestowana, podpisana, dystrybuowana i monitorowana w taki sposób, aby usuwać ryzyko bezpieczeństwa bez tworzenia nowego ryzyka dla użytkownika i produktu.

Czy CRA wymaga automatycznych aktualizacji?

CRA wskazuje automatyczne aktualizacje bezpieczeństwa tam, gdzie ma to zastosowanie, szczególnie dla produktów konsumenckich. Użytkownik powinien mieć też jasny mechanizm wyłączenia automatycznych aktualizacji i możliwość czasowego odroczenia.

Czy aktualizacje bezpieczeństwa muszą być oddzielone od funkcjonalnych?

CRA wskazuje, że gdy jest to technicznie możliwe, aktualizacje bezpieczeństwa powinny być dostarczane oddzielnie od aktualizacji funkcjonalnych. Celem jest to, aby użytkownik nie musiał instalować dużej zmiany funkcjonalnej tylko po to, aby otrzymać poprawkę bezpieczeństwa.

Czy aktualizacja bezpieczeństwa powinna być darmowa?

CRA wskazuje, że aktualizacje bezpieczeństwa służące usunięciu zidentyfikowanych problemów powinny być dostarczane bez opóźnień i bezpłatnie, chyba że inaczej uzgodniono między producentem a użytkownikiem biznesowym dla produktu tworzonego na zamówienie.

Jak długo trzeba utrzymywać dostępność aktualizacji?

CRA wymaga, aby każda aktualizacja bezpieczeństwa udostępniona użytkownikom w okresie wsparcia pozostawała dostępna po wydaniu przez co najmniej 10 lat albo przez pozostałą część okresu wsparcia, w zależności od tego, który okres jest dłuższy.

Czy wystarczy opublikować plik z poprawką na stronie?

Nie zawsze. Firma powinna zapewnić bezpieczny kanał dystrybucji, integralność aktualizacji, instrukcje dla użytkownika, komunikację, testy, monitorowanie i dowody. Samo opublikowanie pliku może być niewystarczające.

Czy proces aktualizacji jest częścią dokumentacji technicznej pod CRA?

Tak. Proces aktualizacji, obsługi podatności, testów, wsparcia i dowodów powinien być powiązany z dokumentacją techniczną produktu oraz procesem oceny zgodności.

Od czego zacząć przygotowanie procesu aktualizacji?

Najlepiej zacząć od rejestru produktów i wspieranych wersji, polityki aktualizacji bezpieczeństwa, połączenia z rejestrem podatności, przeglądu podpisywania aktualizacji oraz przygotowania komunikatów i dowodów.

Podsumowanie

Bezpieczne aktualizacje są jednym z najważniejszych elementów zgodności z CRA i realnego bezpieczeństwa produktu cyfrowego. Produkt, którego nie da się bezpiecznie aktualizować, będzie trudny do utrzymania, trudny do obrony przed klientami i trudny do wykazania w dokumentacji technicznej.

Najważniejsze elementy procesu to rejestr produktów, okres wsparcia, zarządzanie podatnościami, testowanie, podpisywanie, bezpieczna dystrybucja, automatyzacja tam, gdzie ma zastosowanie, komunikacja i monitoring adopcji aktualizacji.

Firmy, które przygotują ten proces wcześniej, będą lepiej gotowe na CRA, pytania klientów, audyty, incydenty i sytuacje, w których trzeba szybko wydać krytyczną poprawkę bezpieczeństwa.

Źródła

Zarządzanie podatnościami dla produktów cyfrowych: od czego zacząć?

Zarządzanie podatnościami w produktach cyfrowych nie kończy się na skanowaniu bibliotek i czekaniu na raport z testu penetracyjnego. Firmy tworzące oprogramowanie powinny mieć proces wykrywania, oceny, priorytetyzacji, naprawy, testowania, komunikowania i dokumentowania podatności przez cały cykl życia produktu, szczególnie pod Cyber Resilience Act.

Opracowanie: Zespół redakcyjny CCyber

Odpowiedź w skrócie

Zarządzanie podatnościami dla produktów cyfrowych to proces wykrywania, oceny, priorytetyzacji, naprawy, testowania, komunikowania i dokumentowania podatności w oprogramowaniu, komponentach, API, chmurze, konfiguracji, zależnościach i procesie wydawniczym. Firma powinna zacząć od rejestru produktów, rejestru komponentów, kanału zgłaszania podatności, jasnych ról, klasyfikacji ryzyka, terminów napraw, procesu aktualizacji, SBOM, testów bezpieczeństwa oraz procedury zgłoszeń pod Cyber Resilience Act.

Ostatnia aktualizacja

Lipiec 2026

Dla kogo jest ten artykuł

  • software house’y
  • firmy SaaS
  • producenci produktów cyfrowych
  • firmy tworzące aplikacje webowe i mobilne
  • producenci IoT, sprzętu i systemów wbudowanych
  • CTO, Head of Engineering i liderzy techniczni
  • zespoły DevOps i DevSecOps
  • zespoły product security
  • CISO i osoby odpowiedzialne za bezpieczeństwo aplikacji
  • osoby odpowiedzialne za CRA, Secure SDLC, SBOM, testy bezpieczeństwa i dokumentację produktu

Najważniejsze wnioski

  1. Zarządzanie podatnościami nie jest jednorazowym skanem. To proces działający przez cały cykl życia produktu.
  2. Najpierw trzeba wiedzieć, jakie produkty, komponenty, wersje, zależności i środowiska firma utrzymuje.
  3. Priorytetyzacja nie powinna opierać się wyłącznie na wyniku CVSS. Trzeba uwzględnić ekspozycję, wykorzystanie podatności, krytyczność produktu, dostępność poprawki i kontekst biznesowy.
  4. Pod CRA producenci muszą przygotować proces obsługi podatności, aktualizacji bezpieczeństwa, dokumentacji i zgłoszeń aktywnie wykorzystywanych podatności oraz poważnych incydentów.
  5. Najlepszy start to rejestr produktów, kanał zgłaszania podatności, SBOM, proces oceny ryzyka, terminy napraw i pakiet dowodów dla klientów, audytów oraz organów nadzoru.

Co to jest zarządzanie podatnościami produktu cyfrowego?

Zarządzanie podatnościami produktu cyfrowego to uporządkowany proces obsługi słabości bezpieczeństwa, które mogą występować w produkcie, jego komponentach, konfiguracji, bibliotekach, interfejsach API, środowisku chmurowym, procesie wdrożeniowym albo dokumentacji.

W praktyce proces odpowiada na pytania:

  • skąd wiemy, że produkt ma podatność?
  • kto przyjmuje zgłoszenie?
  • kto ocenia wpływ na produkt i klientów?
  • jak ustalamy priorytet naprawy?
  • kto decyduje o wydaniu poprawki?
  • jak testujemy naprawę?
  • jak informujemy klientów?
  • czy powstaje obowiązek zgłoszenia pod CRA?
  • jak dokumentujemy decyzje, terminy i dowody?

Dobre zarządzanie podatnościami nie polega na tym, że firma „ma skaner”. Skaner jest tylko jednym ze źródeł informacji. Najważniejszy jest proces, który zamienia informację o podatności w decyzję, poprawkę, test, komunikację i dowód.

Podatność, błąd, ryzyko i incydent: czym się różnią?

Podatność

Podatność to słabość produktu, komponentu, procesu lub konfiguracji, która może zostać wykorzystana do naruszenia bezpieczeństwa. Może dotyczyć kodu, zależności, ustawień chmury, kontroli dostępu, logiki biznesowej albo procesu aktualizacji.

Błąd

Błąd to nieprawidłowe działanie systemu. Nie każdy błąd jest podatnością bezpieczeństwa, ale część błędów może prowadzić do podatności. Przykład: błąd w walidacji danych może umożliwić wstrzyknięcie polecenia albo obejście kontroli dostępu.

Ryzyko

Ryzyko to połączenie prawdopodobieństwa wykorzystania podatności i skutków dla firmy, produktu oraz klientów. Ta sama podatność może mieć inny poziom ryzyka w różnych produktach.

Incydent

Incydent to zdarzenie, które negatywnie wpływa lub może negatywnie wpłynąć na bezpieczeństwo produktu, danych, funkcji albo usług. Podatność może prowadzić do incydentu, ale nie każda podatność oznacza, że incydent już wystąpił.

Dlaczego zarządzanie podatnościami jest ważne pod CRA?

Cyber Resilience Act wprowadza wymagania cyberbezpieczeństwa dla produktów z elementami cyfrowymi. Dla firm tworzących oprogramowanie oznacza to konieczność zabezpieczania produktu przez cały cykl życia: od projektowania i rozwoju, przez wydanie, aż po aktualizacje, obsługę podatności i komunikację z użytkownikami.

Pod CRA producent musi być przygotowany na:

  • identyfikowanie podatności i komponentów produktu
  • dokumentowanie podatności oraz działań naprawczych
  • przygotowanie i utrzymywanie SBOM
  • wydawanie aktualizacji bezpieczeństwa
  • zgłaszanie aktywnie wykorzystywanych podatności
  • zgłaszanie poważnych incydentów wpływających na bezpieczeństwo produktu
  • prowadzenie dokumentacji technicznej
  • informowanie użytkowników o ryzyku i poprawkach, jeśli jest to wymagane

Od 11 września 2026 roku zaczynają obowiązywać wymagania raportowania aktywnie wykorzystywanych podatności i poważnych incydentów przez Single Reporting Platform. To oznacza, że firmy nie powinny czekać do 2027 roku z budową procesu. Bez rejestru podatności, właścicieli, klasyfikacji i ścieżki eskalacji trudno będzie dotrzymać terminów zgłoszeń.

Od czego zacząć zarządzanie podatnościami?

Krok 1: przygotuj rejestr produktów i wersji

Nie można skutecznie zarządzać podatnościami, jeśli firma nie wie, które produkty, wersje i komponenty utrzymuje. Pierwszy krok to rejestr produktów cyfrowych.

Rejestr powinien obejmować:

  • nazwę produktu
  • właściciela biznesowego
  • właściciela technicznego
  • aktualnie wspierane wersje
  • wersje wycofane ze wsparcia
  • kluczowe komponenty
  • repozytoria kodu
  • obrazy kontenerów
  • środowiska produkcyjne
  • klientów lub segmenty klientów objęte produktem
  • krytyczność produktu

Dowód do przygotowania: rejestr produktów i wersji z właścicielami oraz statusem wsparcia.

Krok 2: utwórz rejestr komponentów i SBOM

Duża część podatności w produktach cyfrowych dotyczy komponentów zewnętrznych: bibliotek, pakietów, obrazów kontenerów, zależności pośrednich i narzędzi używanych w procesie budowania.

Firma powinna przygotować SBOM, czyli zestawienie komponentów oprogramowania, i powiązać je z konkretną wersją produktu.

SBOM pomaga odpowiedzieć na pytania:

  • czy używamy podatnego komponentu?
  • w których produktach?
  • w których wersjach?
  • czy komponent jest używany bezpośrednio czy pośrednio?
  • czy podatność faktycznie wpływa na produkt?
  • czy potrzebna jest poprawka lub aktualizacja?

Dowód do przygotowania: SBOM dla kluczowych produktów, rejestr komponentów i proces aktualizacji SBOM przy wydaniach.

Krok 3: zdefiniuj źródła informacji o podatnościach

Podatności mogą zostać wykryte na wiele sposobów. Firma powinna świadomie określić, z jakich źródeł korzysta i kto je monitoruje.

Typowe źródła:

  • skanowanie zależności
  • skanowanie kodu
  • testy aplikacji
  • testy API
  • testy penetracyjne
  • zgłoszenia od klientów
  • zgłoszenia od badaczy bezpieczeństwa
  • komunikaty dostawców
  • bazy CVE i informacje o podatnościach
  • informacje o aktywnym wykorzystywaniu podatności
  • incydenty i alerty bezpieczeństwa

Dowód do przygotowania: lista źródeł podatności, właściciele monitoringu i częstotliwość przeglądu.

Krok 4: przygotuj kanał zgłaszania podatności

Firma tworząca produkt cyfrowy powinna mieć jasny sposób przyjmowania zgłoszeń podatności. Bez tego badacz, klient albo partner może nie wiedzieć, gdzie zgłosić problem.

Warto przygotować:

  • adres e-mail do zgłoszeń bezpieczeństwa
  • plik security.txt
  • stronę z zasadami zgłaszania podatności
  • zakres systemów objętych zgłoszeniami
  • zasady bezpiecznego testowania
  • informację o oczekiwanych danych w zgłoszeniu
  • zasady komunikacji z badaczami
  • wewnętrzną ścieżkę eskalacji

Dowód do przygotowania: polityka zgłaszania podatności, publiczny kanał kontaktu i procedura obsługi zgłoszeń.

Krok 5: utwórz rejestr podatności

Rejestr podatności jest centrum procesu. Powinien zbierać wszystkie podatności niezależnie od źródła: skanera, klienta, testu penetracyjnego, badacza, incydentu albo informacji od dostawcy.

Rejestr powinien zawierać:

  • unikalny identyfikator podatności
  • źródło zgłoszenia
  • produkt i wersję
  • opis podatności
  • komponent lub funkcję
  • wpływ na poufność, integralność i dostępność
  • ocenę ważności
  • ocenę możliwości wykorzystania
  • status naprawy
  • właściciela
  • termin naprawy
  • decyzję o akceptacji ryzyka, jeśli dotyczy
  • dowód naprawy i ponownej weryfikacji

Dowód do przygotowania: centralny rejestr podatności z historią decyzji i działań.

Krok 6: oceniaj podatności w kontekście produktu

Nie każda podatność z wynikiem wysokim oznacza, że produkt jest realnie narażony. I odwrotnie: podatność z wynikiem średnim może być krytyczna, jeśli dotyczy funkcji wystawionej publicznie, danych klientów albo dostępu administracyjnego.

Przy ocenie podatności uwzględnij:

  • wynik CVSS
  • czy podatność jest aktywnie wykorzystywana
  • prawdopodobieństwo wykorzystania, na przykład EPSS
  • czy komponent jest używany w podatny sposób
  • czy funkcja jest osiągalna z internetu
  • czy wymagana jest autoryzacja
  • czy istnieje obejście lub kontrola ograniczająca
  • krytyczność produktu
  • liczbę klientów objętych ryzykiem
  • wpływ na dane osobowe lub dane poufne
  • wymagania umowne i regulacyjne

Dowód do przygotowania: decyzja klasyfikacyjna z uzasadnieniem, a nie tylko wynik ze skanera.

Krok 7: ustal terminy napraw

Firma powinna mieć wewnętrzne terminy reakcji i naprawy. Terminy zależą od ważności podatności, ekspozycji produktu, dostępności poprawki i realnego ryzyka.

Przykładowy model:

  • podatność krytyczna i aktywnie wykorzystywana: natychmiastowa eskalacja i plan działania tego samego dnia
  • podatność krytyczna bez aktywnego wykorzystania: priorytetowa naprawa w ustalonym krótkim terminie
  • podatność wysoka: naprawa w terminie wynikającym z ryzyka produktu
  • podatność średnia: naprawa w planowanym cyklu wydania
  • podatność niska: naprawa przy najbliższej racjonalnej okazji lub akceptacja ryzyka

Terminy nie powinny być kopiowane mechanicznie z internetu. Powinny wynikać z apetytu na ryzyko, wymagań klientów, regulacji i możliwości zespołu.

Dowód do przygotowania: polityka terminów napraw i historia realizacji terminów.

Krok 8: naprawiaj przyczynę, nie tylko objaw

Dobra naprawa podatności nie powinna ograniczać się do zmiany jednej linii kodu, jeśli problem wynika z błędnego wzorca projektowego, braku testów albo słabej kontroli dostępu.

Przy każdej ważnej podatności zapytaj:

  • dlaczego ta podatność powstała?
  • czy podobny problem może występować w innych miejscach?
  • czy potrzebny jest nowy test automatyczny?
  • czy trzeba zmienić standard kodowania?
  • czy trzeba poprawić modelowanie zagrożeń?
  • czy potrzebne jest szkolenie zespołu?
  • czy trzeba zmienić bibliotekę lub komponent?

Dowód do przygotowania: opis przyczyny, poprawka, test regresji i działania zapobiegawcze.

Krok 9: testuj i ponownie weryfikuj naprawy

Naprawa podatności powinna zostać przetestowana. W przeciwnym razie firma nie wie, czy problem rzeczywiście zniknął i czy nie pojawił się nowy błąd.

Weryfikacja może obejmować:

  • test jednostkowy
  • test integracyjny
  • test bezpieczeństwa
  • ponowny test podatności
  • przegląd kodu
  • sprawdzenie konfiguracji
  • test regresji
  • walidację przez zewnętrznego testera lub klienta, jeśli dotyczy

Dowód do przygotowania: wynik ponownej weryfikacji i potwierdzenie zamknięcia podatności.

Krok 10: przygotuj komunikację i aktualizację bezpieczeństwa

Jeśli podatność wpływa na klientów lub użytkowników, trzeba zaplanować komunikację. Nie każda podatność wymaga publicznego komunikatu, ale każda ważna podatność powinna mieć decyzję komunikacyjną.

Komunikat bezpieczeństwa może zawierać:

  • opis problemu na poziomie zrozumiałym dla użytkownika
  • produkty i wersje objęte podatnością
  • wersje naprawione
  • zalecane działania użytkownika
  • obejścia, jeśli poprawka nie jest jeszcze dostępna
  • wpływ na poufność, integralność i dostępność
  • podziękowanie dla zgłaszającego, jeśli ustalono takie zasady
  • kontakt do zespołu bezpieczeństwa

Dowód do przygotowania: zatwierdzony komunikat, lista odbiorców, data publikacji i historia aktualizacji.

Krok 11: sprawdź obowiązki zgłoszeniowe pod CRA

Od 11 września 2026 roku producenci produktów z elementami cyfrowymi muszą zgłaszać aktywnie wykorzystywane podatności i poważne incydenty wpływające na bezpieczeństwo produktu przez Single Reporting Platform.

Proces powinien wskazywać:

  • kto ocenia, czy podatność jest aktywnie wykorzystywana
  • kto ocenia, czy incydent jest poważny
  • kto odpowiada za zgłoszenie
  • kto zatwierdza zgłoszenie
  • jak pilnowane są terminy 24 godzin, 72 godzin i raportu końcowego
  • jak dokumentowane są decyzje
  • jak powiązać zgłoszenie z rejestrem podatności i incydentów

Dowód do przygotowania: procedura zgłoszeń CRA, lista ról, wzory notatek i rejestr zgłoszeń.

Krok 12: wyciągaj wnioski i poprawiaj proces

Każda poważna podatność jest okazją do poprawy procesu. Firma powinna analizować nie tylko, jak szybko naprawiła problem, ale też dlaczego problem powstał i czy można zapobiec podobnym błędom.

Po ważnej podatności warto przeprowadzić krótkie podsumowanie:

  • jak wykryto podatność?
  • jak długo trwała klasyfikacja?
  • jak długo trwała naprawa?
  • czy komunikacja była wystarczająca?
  • czy były opóźnienia?
  • czy potrzebne są nowe testy?
  • czy trzeba poprawić proces Secure SDLC?
  • czy trzeba przeszkolić zespół?

Dowód do przygotowania: notatka lessons learned i lista działań usprawniających.

Jak priorytetyzować podatności?

Nie opieraj się tylko na CVSS

CVSS jest przydatnym standardem oceny technicznej ważności podatności, ale nie powinien być jedynym kryterium kolejności napraw. Produkt cyfrowy ma swój kontekst: klientów, dane, ekspozycję, architekturę, kontrole ograniczające i zobowiązania umowne.

Uwzględnij aktywne wykorzystanie

Podatność aktywnie wykorzystywana przez atakujących powinna mieć wyższy priorytet niż podatność teoretyczna o podobnym wyniku technicznym. Pod CRA aktywne wykorzystanie może uruchamiać obowiązki zgłoszeniowe, jeśli dotyczy produktu z elementami cyfrowymi.

Uwzględnij prawdopodobieństwo wykorzystania

EPSS może wspierać ocenę prawdopodobieństwa wykorzystania podatności w najbliższym czasie. Nie zastępuje oceny zespołu, ale pomaga odróżnić podatności, które są tylko „wysokie technicznie”, od tych, które są bardziej prawdopodobne do wykorzystania.

Uwzględnij ekspozycję produktu

Podatność w funkcji dostępnej publicznie przez internet ma inny priorytet niż podatność w komponencie niedostępnym z zewnątrz i nieużywanym w produkcie.

Uwzględnij dane i klientów

Jeśli podatność może prowadzić do dostępu do danych klientów, danych osobowych, danych finansowych, sekretów, kluczy API albo danych wielu najemców w SaaS, priorytet powinien wzrosnąć.

Uwzględnij łatwość naprawy

Czasem szybka aktualizacja biblioteki usuwa ważne ryzyko przy niewielkim koszcie. Innym razem poprawka wymaga zmiany architektury. Priorytetyzacja powinna uwzględniać zarówno ryzyko, jak i realny plan naprawy.

Minimalny rejestr podatności: jakie pola powinien zawierać?

Dane identyfikacyjne

  • identyfikator podatności
  • data wykrycia
  • źródło zgłoszenia
  • osoba lub system zgłaszający
  • produkt
  • wersja produktu
  • komponent lub funkcja

Dane techniczne

  • opis podatności
  • typ podatności
  • CVE, jeśli dotyczy
  • CWE, jeśli dotyczy
  • CVSS, jeśli został obliczony
  • EPSS, jeśli jest dostępny
  • dowody techniczne
  • warunki wykorzystania

Dane biznesowe

  • wpływ na klientów
  • wpływ na dane
  • wpływ na dostępność
  • liczba klientów objętych ryzykiem
  • krytyczność produktu
  • wymagania umowne
  • wymagania regulacyjne

Dane procesowe

  • właściciel naprawy
  • status
  • priorytet
  • termin naprawy
  • plan naprawy
  • wynik ponownej weryfikacji
  • decyzja komunikacyjna
  • decyzja o zgłoszeniu pod CRA
  • decyzja o akceptacji ryzyka

Plan wdrożenia na 30, 60 i 90 dni

Pierwsze 30 dni

  • wyznacz właściciela procesu zarządzania podatnościami
  • utwórz rejestr produktów i wersji
  • zidentyfikuj główne źródła podatności
  • uruchom podstawowy rejestr podatności
  • przygotuj publiczny kanał zgłaszania podatności
  • zdefiniuj pierwszą skalę ważności i priorytetów
  • wybierz produkt pilotażowy
  • uruchom skanowanie zależności i sekretów

Dni 31 do 60

  • przygotuj SBOM dla produktu pilotażowego
  • wprowadź proces oceny i klasyfikacji podatności
  • ustal terminy napraw dla różnych poziomów ryzyka
  • połącz podatności z zadaniami zespołu produktowego
  • przygotuj wzór komunikatu bezpieczeństwa
  • przygotuj procedurę ponownej weryfikacji napraw
  • przeszkol zespół developerski i support

Dni 61 do 90

  • połącz proces z Secure SDLC
  • dodaj testy bezpieczeństwa do procesu CI/CD
  • przygotuj procedurę zgłoszeń CRA
  • zdefiniuj metryki procesu
  • przygotuj pakiet dowodów dla klientów i audytów
  • przeprowadź ćwiczenie obsługi podatności krytycznej
  • rozszerz proces na kolejne produkty

Checklista zarządzania podatnościami dla produktu cyfrowego

Widoczność produktu

  • czy mamy rejestr produktów?
  • czy znamy wspierane wersje?
  • czy wiemy, które produkty są objęte CRA?
  • czy mamy listę komponentów i zależności?
  • czy mamy SBOM dla kluczowych produktów?

Wykrywanie podatności

  • czy skanujemy zależności?
  • czy skanujemy sekrety?
  • czy testujemy aplikację i API?
  • czy analizujemy zgłoszenia klientów i badaczy?
  • czy monitorujemy komunikaty dostawców?

Ocena i priorytetyzacja

  • czy mamy skalę ważności?
  • czy uwzględniamy aktywne wykorzystanie?
  • czy uwzględniamy ekspozycję produktu?
  • czy uwzględniamy wpływ na dane klientów?
  • czy dokumentujemy decyzje?

Naprawa i weryfikacja

  • czy podatności mają właściciela?
  • czy mają termin naprawy?
  • czy naprawy są testowane?
  • czy wykonujemy ponowną weryfikację?
  • czy aktualizujemy SBOM po zmianie komponentów?

Komunikacja i zgłoszenia

  • czy mamy politykę zgłaszania podatności?
  • czy mamy wzór komunikatu bezpieczeństwa?
  • czy wiemy, kiedy informować klientów?
  • czy mamy procedurę zgłoszeń CRA?
  • czy pilnujemy terminów 24 godzin, 72 godzin i raportu końcowego?

Najczęstsze błędy

Błąd 1: skaner zamiast procesu

Skaner może znaleźć podatność, ale nie ustali właściciela, priorytetu, terminu, komunikacji, wpływu na klientów i obowiązków zgłoszeniowych. Firma potrzebuje procesu, nie tylko narzędzia.

Błąd 2: brak powiązania podatności z wersją produktu

Jeżeli podatność nie jest powiązana z konkretną wersją produktu, trudno ustalić, którzy klienci są narażeni i czy poprawka została wdrożona.

Błąd 3: brak kanału zgłaszania podatności

Jeśli badacz lub klient nie wie, gdzie zgłosić podatność, informacja może trafić do niewłaściwej osoby, zostać zignorowana albo zostać opublikowana bez koordynacji.

Błąd 4: ocenianie tylko wynikiem CVSS

CVSS jest ważny, ale nie wystarcza. Priorytet naprawy musi uwzględniać produkt, klientów, ekspozycję, aktywne wykorzystanie i dostępność poprawki.

Błąd 5: brak ponownej weryfikacji

Zamknięcie zadania w systemie projektowym nie oznacza, że podatność została skutecznie usunięta. Potrzebny jest retest albo inna forma potwierdzenia.

Błąd 6: brak decyzji komunikacyjnych

Nie każda podatność wymaga publicznego komunikatu, ale brak jakiejkolwiek decyzji komunikacyjnej może spowodować chaos, gdy klient zapyta o ryzyko.

Błąd 7: brak przygotowania do CRA

Firmy objęte CRA muszą być gotowe do raportowania aktywnie wykorzystywanych podatności i poważnych incydentów. Bez procedury i ról trudno będzie spełnić terminy.

Jak mierzyć skuteczność procesu?

Metryki operacyjne

  • liczba otwartych podatności według ważności
  • średni czas klasyfikacji podatności
  • średni czas naprawy
  • procent podatności naprawionych w terminie
  • liczba podatności przeterminowanych
  • liczba podatności ponownie otwartych po retestach

Metryki produktu

  • liczba produktów z SBOM
  • liczba produktów objętych skanowaniem zależności
  • liczba produktów z procesem zgłaszania podatności
  • liczba wydań z wykonanym skanowaniem bezpieczeństwa
  • liczba komponentów krytycznych po terminie aktualizacji

Metryki jakości

  • liczba podatności wykrytych przed produkcją
  • liczba podatności wykrytych po wydaniu
  • liczba powtarzających się klas błędów
  • liczba działań zapobiegawczych po analizie przyczyn
  • liczba zgłoszeń od klientów i badaczy obsłużonych w terminie

Przykład biznesowy

Firma SaaS rozwija platformę dla klientów B2B. Produkt ma aplikację webową, API, moduł raportowy, kilka integracji i kilkaset zależności open source. Klient z sektora regulowanego pyta, jak firma obsługuje podatności i jak szybko potrafi odpowiedzieć na nową podatność w popularnej bibliotece.

Na początku zespół sprawdza podatności ręcznie. Część zależności jest w różnych repozytoriach, część w obrazach kontenerów, a część w narzędziach używanych podczas budowania. Nie ma jednego rejestru podatności ani jasnej decyzji, kto zatwierdza komunikację z klientem.

Firma wdraża proces zarządzania podatnościami. Tworzy rejestr produktów, generuje SBOM dla głównej aplikacji, uruchamia skanowanie zależności, przygotowuje kanał zgłaszania podatności, ustala terminy napraw i wzór komunikatu bezpieczeństwa.

Po 90 dniach firma może odpowiedzieć klientowi konkretnie: które produkty są objęte procesem, jak wykrywane są podatności, jak są oceniane, jakie są terminy napraw, jak wygląda komunikacja i jakie dowody można pokazać.

Jak ccyber.io może pomóc?

ccyber.io pomaga firmom tworzącym oprogramowanie wdrożyć praktyczny proces zarządzania podatnościami dla produktów cyfrowych, dostosowany do CRA, Secure SDLC, SBOM i wymagań klientów B2B.

Możemy wesprzeć organizację w obszarach:

  • ocena dojrzałości zarządzania podatnościami
  • mapowanie produktów, wersji i komponentów
  • projekt rejestru podatności
  • proces zgłaszania i obsługi podatności
  • integracja SBOM z zarządzaniem podatnościami
  • priorytetyzacja podatności w kontekście produktu
  • procedura komunikacji z klientami
  • procedura zgłoszeń CRA
  • pakiet dowodów dla klientów, audytów i organów nadzoru
  • szkolenie zespołów produktowych, developerskich i supportu

Najlepszym pierwszym krokiem jest krótki assessment procesu podatności. Pozwala ustalić, gdzie firma ma największe luki, czy jest gotowa na CRA i które działania trzeba wdrożyć w pierwszych 30, 60 i 90 dniach.

FAQ

Czym jest zarządzanie podatnościami w produkcie cyfrowym?

To proces wykrywania, oceny, priorytetyzacji, naprawy, testowania, komunikowania i dokumentowania podatności w produkcie, jego komponentach, konfiguracji, API, chmurze i procesie wydawniczym.

Czy wystarczy skaner podatności?

Nie. Skaner pomaga wykrywać problemy, ale nie zastępuje procesu. Potrzebne są role, decyzje, priorytety, terminy, naprawy, testy, komunikacja i dowody.

Czym różni się podatność od incydentu?

Podatność to słabość, która może zostać wykorzystana. Incydent to zdarzenie, które już wpływa lub może wpływać na bezpieczeństwo produktu, danych albo funkcji.

Jak priorytetyzować podatności?

Warto łączyć CVSS, aktywne wykorzystanie, EPSS, ekspozycję produktu, krytyczność danych, wpływ na klientów, dostępność poprawki i wymagania regulacyjne lub umowne.

Czy SBOM jest potrzebny do zarządzania podatnościami?

Tak, szczególnie dla produktów cyfrowych. SBOM pomaga ustalić, które komponenty i wersje znajdują się w produkcie oraz czy nowa podatność dotyczy konkretnego wydania.

Czy CRA wymaga procesu zarządzania podatnościami?

CRA wymaga, aby producenci produktów z elementami cyfrowymi obsługiwali podatności, dokumentowali je, wydawali aktualizacje bezpieczeństwa i zgłaszali aktywnie wykorzystywane podatności oraz poważne incydenty zgodnie z terminami.

Czy każdą podatność trzeba zgłaszać pod CRA?

Nie każdą. CRA koncentruje się na aktywnie wykorzystywanych podatnościach i poważnych incydentach wpływających na bezpieczeństwo produktu. Firma powinna mieć procedurę oceny, czy powstaje obowiązek zgłoszenia.

Od czego zacząć, jeśli firma nie ma żadnego procesu?

Najlepiej zacząć od rejestru produktów, rejestru podatności, kanału zgłaszania, podstawowej klasyfikacji ryzyka, skanowania zależności, SBOM dla głównego produktu i jasnych terminów napraw.

Podsumowanie

Zarządzanie podatnościami dla produktów cyfrowych to jeden z najważniejszych elementów bezpieczeństwa produktu. Nie wystarczy znaleźć podatność. Trzeba ją ocenić, naprawić, przetestować, udokumentować i w razie potrzeby zakomunikować lub zgłosić.

Dla firm tworzących oprogramowanie proces ten staje się coraz ważniejszy biznesowo i regulacyjnie. Klienci chcą dowodów, audytorzy chcą procesu, a CRA wzmacnia obowiązki producentów w zakresie podatności, aktualizacji i zgłoszeń.

Najlepsze podejście to zacząć prosto: rejestr produktów, SBOM, rejestr podatności, właściciele, priorytety, terminy, testy i procedura komunikacji. Dopiero potem warto automatyzować, skalować i integrować proces z całym Secure SDLC.

Źródła

Zestawienie Materiałów Oprogramowania (SBOM): co firmy zajmujące się oprogramowaniem muszą przygotować pod CRA?

SBOM, czyli zestawienie materiałów oprogramowania, pomaga firmie pokazać, z jakich komponentów, bibliotek i zależności składa się produkt cyfrowy. Pod Cyber Resilience Act firmy tworzące oprogramowanie powinny przygotować proces generowania SBOM, kontrolę zależności, zarządzanie podatnościami, dokumentację techniczną i sposób udostępniania informacji na potrzeby klientów, audytów i organów nadzoru.

Opracowanie: Zespół redakcyjny CCyber

Odpowiedź w skrócie

SBOM, czyli Software Bill of Materials, można po polsku opisać jako zestawienie materiałów oprogramowania albo spis komponentów oprogramowania. To formalny, uporządkowany zapis komponentów, bibliotek, zależności i relacji, z których składa się produkt cyfrowy. Pod Cyber Resilience Act firmy tworzące oprogramowanie powinny przygotować proces generowania SBOM w formacie maszynowo czytelnym, powiązać go z zarządzaniem podatnościami, dokumentacją techniczną, aktualizacjami bezpieczeństwa i dowodami zgodności.

Ostatnia aktualizacja

Lipiec 2026

Dla kogo jest ten artykuł

  • software house’y
  • firmy SaaS
  • firmy tworzące aplikacje webowe i mobilne
  • producenci produktów cyfrowych
  • producenci IoT, sprzętu i systemów wbudowanych
  • CTO, Head of Engineering i liderzy techniczni
  • zespoły DevOps i DevSecOps
  • zespoły product security
  • CISO i osoby odpowiedzialne za bezpieczeństwo aplikacji
  • osoby odpowiedzialne za CRA, Secure SDLC, zarządzanie podatnościami i dokumentację techniczną produktu

Najważniejsze wnioski

  1. SBOM to nie lista pakietów w Excelu. To formalny zapis komponentów i relacji w łańcuchu dostaw oprogramowania.
  2. CRA wymaga identyfikowania i dokumentowania komponentów oraz podatności w produktach z elementami cyfrowymi, w tym przez przygotowanie SBOM w powszechnie używanym i maszynowo czytelnym formacie.
  3. Pod CRA SBOM powinien obejmować co najmniej zależności najwyższego poziomu, ale w praktyce firmy powinny dążyć do lepszej widoczności również zależności pośrednich.
  4. SBOM ma największą wartość wtedy, gdy jest powiązany z procesem zarządzania podatnościami, aktualizacjami bezpieczeństwa, oceną ryzyka produktu i dokumentacją techniczną.
  5. Najlepszy pierwszy krok to automatyczne generowanie SBOM dla głównych produktów, wybór formatu, przypisanie właściciela i wdrożenie procesu aktualizacji przy każdym istotnym wydaniu.

Czym jest SBOM?

SBOM to uporządkowany zapis komponentów użytych w oprogramowaniu. Można go porównać do listy składników produktu. W produkcji fizycznej firma wie, z jakich części składa się urządzenie. W oprogramowaniu podobną rolę pełni SBOM.

SBOM powinien pomóc odpowiedzieć na pytania:

  • jakie komponenty znajdują się w produkcie?
  • jakie wersje komponentów są używane?
  • skąd pochodzą komponenty?
  • jakie są relacje między komponentami?
  • czy komponent ma znane podatności?
  • czy komponent jest nadal utrzymywany?
  • jakie licencje dotyczą komponentów?
  • czy nowa podatność dotyczy naszego produktu?

Najważniejsza rzecz: SBOM nie jest celem samym w sobie. Jest narzędziem do uzyskania widoczności w łańcuchu dostaw oprogramowania, zarządzania podatnościami, odpowiadania klientom i przygotowania dowodów zgodności.

Dlaczego SBOM jest ważny pod Cyber Resilience Act?

Cyber Resilience Act wprowadza wymagania dotyczące cyberbezpieczeństwa produktów z elementami cyfrowymi. Dotyczy to między innymi produktów sprzętowych i programowych wprowadzanych na rynek UE.

CRA wymaga, aby producenci identyfikowali i dokumentowali podatności oraz komponenty zawarte w produktach z elementami cyfrowymi. Wprost wskazuje przygotowanie SBOM w powszechnie używanym i maszynowo czytelnym formacie, obejmującym co najmniej zależności najwyższego poziomu produktu.

W praktyce oznacza to, że firma tworząca produkt cyfrowy powinna wiedzieć, z czego produkt się składa. Jeżeli pojawi się nowa podatność w popularnej bibliotece, firma musi szybko ustalić:

  • czy używamy tego komponentu?
  • w których produktach i wersjach?
  • czy podatna wersja jest w produkcji?
  • czy komponent jest używany bezpośrednio czy pośrednio?
  • czy podatność jest możliwa do wykorzystania w naszym produkcie?
  • czy trzeba wydać poprawkę?
  • czy trzeba poinformować klientów?
  • czy powstaje obowiązek zgłoszenia zgodnie z CRA?

Bez SBOM odpowiedź na te pytania często wymaga ręcznego przeszukiwania repozytoriów, pipeline’ów, obrazów kontenerów, dokumentacji i zgadywania, które komponenty faktycznie trafiły do wydania.

Czy SBOM jest obowiązkowy pod CRA?

CRA wskazuje, że producenci mają identyfikować i dokumentować podatności oraz komponenty zawarte w produktach z elementami cyfrowymi, w tym przez przygotowanie SBOM. Taki SBOM powinien być w powszechnie używanym i maszynowo czytelnym formacie oraz obejmować co najmniej zależności najwyższego poziomu produktu.

W praktyce firmy powinny potraktować SBOM jako jeden z kluczowych elementów przygotowania do CRA, obok:

  • oceny ryzyka cyberbezpieczeństwa produktu
  • bezpiecznego cyklu wytwarzania oprogramowania
  • zarządzania podatnościami
  • procesu zgłaszania podatności
  • procesu aktualizacji bezpieczeństwa
  • dokumentacji technicznej produktu
  • dowodów testów i przeglądów bezpieczeństwa

Ważne: SBOM nie musi automatycznie oznaczać publicznego ujawnienia pełnej listy komponentów każdemu użytkownikowi. CRA przewiduje, że dokumentacja techniczna, w tym SBOM, może być wymagana przez organy nadzoru rynku. Jeżeli producent zdecyduje się udostępniać SBOM użytkownikom, powinien wskazać, gdzie można go uzyskać.

Co powinien zawierać dobry SBOM?

Minimalny zakres SBOM zależy od standardu, narzędzia i celu użycia. Dla firm przygotowujących się do CRA ważne jest, aby SBOM był praktyczny, aktualny, maszynowo czytelny i powiązany z konkretną wersją produktu.

Podstawowe dane komponentu

  • nazwa komponentu
  • wersja komponentu
  • dostawca lub autor komponentu
  • unikalny identyfikator komponentu, jeśli jest dostępny
  • źródło komponentu
  • typ komponentu, na przykład biblioteka, pakiet, moduł, kontener albo aplikacja

Relacje i zależności

  • czy komponent jest zależnością bezpośrednią
  • czy komponent jest zależnością pośrednią
  • który komponent zależy od którego
  • w którym produkcie lub module komponent występuje
  • w której wersji produktu komponent został użyty

Dane bezpieczeństwa

  • powiązanie z podatnościami
  • status analizy podatności
  • informacja, czy podatność dotyczy produktu w praktyce
  • informacja o poprawce lub aktualizacji
  • poziom ryzyka, jeśli został oceniony

Dane licencyjne i zgodność

  • licencja komponentu
  • informacje o prawach autorskich, jeśli są dostępne
  • ograniczenia użycia
  • ryzyka licencyjne

Dane o samym SBOM

  • kto wygenerował SBOM
  • jakim narzędziem został wygenerowany
  • kiedy został wygenerowany
  • dla jakiej wersji produktu
  • w jakim formacie
  • czy SBOM został zweryfikowany
  • gdzie jest przechowywany

Top-level dependencies i zależności pośrednie

Co oznaczają zależności najwyższego poziomu?

Zależności najwyższego poziomu to komponenty, które produkt wykorzystuje bezpośrednio. Przykład: aplikacja korzysta bezpośrednio z konkretnej biblioteki do uwierzytelniania, obsługi plików, logowania albo komunikacji z bazą danych.

Co oznaczają zależności pośrednie?

Zależności pośrednie to komponenty używane przez inne komponenty. Przykład: Twoja aplikacja używa biblioteki A, a biblioteka A używa biblioteki B. Biblioteka B jest zależnością pośrednią.

Co przygotować pod CRA?

CRA wskazuje co najmniej zależności najwyższego poziomu. Jednak z perspektywy realnego zarządzania podatnościami warto dążyć do widoczności również zależności pośrednich. Wiele poważnych podatności pojawia się właśnie w bibliotekach, które nie były dodane ręcznie przez zespół, lecz trafiły do produktu przez inne pakiety.

Praktyczna rekomendacja dla firm tworzących oprogramowanie:

  • zacznij od zależności najwyższego poziomu, jeśli firma nie ma jeszcze żadnego procesu
  • następnie rozszerz SBOM na zależności pośrednie
  • powiąż SBOM z konkretnym wydaniem produktu
  • automatyzuj generowanie SBOM w procesie CI/CD
  • łącz SBOM z narzędziem do oceny podatności

Jakie formaty SBOM warto znać?

SPDX

SPDX to otwarty standard rozwijany przez Linux Foundation. Jest używany do opisu komponentów oprogramowania, licencji, zależności i informacji o łańcuchu dostaw. Specyfikacja SPDX jest dostępna jako międzynarodowy standard ISO/IEC 5962:2021.

SPDX dobrze sprawdza się tam, gdzie ważna jest zgodność licencyjna, wymiana informacji z klientami i interoperacyjność między narzędziami.

CycloneDX

CycloneDX to standard OWASP dla zestawień materiałów, zaprojektowany z myślą o cyberbezpieczeństwie łańcucha dostaw. Obsługuje między innymi SBOM, zestawienia dla usług SaaS, kryptografii, sprzętu i AI.

CycloneDX jest często wykorzystywany w zespołach DevSecOps, przy automatycznym generowaniu SBOM, analizie podatności i integracji z narzędziami bezpieczeństwa.

Który format wybrać?

Nie ma jednej odpowiedzi dla każdej firmy. Ważniejsze od samego formatu jest to, czy SBOM jest aktualny, maszynowo czytelny, powtarzalnie generowany, powiązany z wersją produktu i używany w procesie zarządzania podatnościami.

W praktyce warto wybrać format wspierany przez narzędzia używane w firmie, wymagania klientów i przyszłe wymagania regulacyjne. W wielu organizacjach dobrym podejściem jest obsługa zarówno SPDX, jak i CycloneDX, jeśli narzędzia oraz proces to umożliwiają.

SBOM a zarządzanie podatnościami

SBOM ma największą wartość wtedy, gdy jest używany do działania. Sam plik przechowywany w repozytorium nie zmniejsza ryzyka, jeśli nikt go nie analizuje.

Dobry proces powinien wyglądać tak:

  • produkt jest budowany
  • SBOM jest generowany automatycznie
  • SBOM jest powiązany z konkretną wersją produktu
  • komponenty są sprawdzane pod kątem znanych podatności
  • zespół ocenia, czy podatność faktycznie dotyczy produktu
  • dla istotnych podatności powstaje zadanie naprawcze
  • po naprawie generowana jest nowa wersja SBOM
  • decyzje i dowody są przechowywane na potrzeby klientów, audytów lub CRA

Nie każda podatność oznacza realne ryzyko

SBOM może wskazać, że produkt zawiera komponent z podatnością. To nie zawsze oznacza, że podatność jest możliwa do wykorzystania w danym produkcie. Zespół powinien ocenić kontekst: czy podatna funkcja jest używana, czy komponent jest osiągalny, czy istnieje kontrola ograniczająca ryzyko i czy produkt jest wystawiony na internet.

Dlatego coraz częściej obok SBOM pojawia się VEX, czyli sposób przekazywania informacji, czy dana podatność faktycznie wpływa na konkretny produkt.

SBOM a VEX: czym się różnią?

SBOM pokazuje, co jest w produkcie

SBOM odpowiada na pytanie: z jakich komponentów składa się produkt?

VEX pokazuje, czy podatność dotyczy produktu

VEX odpowiada na pytanie: czy konkretna podatność w komponencie wpływa na ten produkt w praktyce?

Przykład:

  • SBOM pokazuje, że produkt używa biblioteki X w wersji Y
  • baza podatności wskazuje, że biblioteka X ma podatność
  • analiza zespołu pokazuje, że podatna funkcja nie jest używana w produkcie
  • VEX może przekazać klientowi informację, że produkt nie jest podatny w tym konkretnym scenariuszu

Dla firm sprzedających oprogramowanie B2B połączenie SBOM i VEX może znacząco zmniejszyć liczbę chaotycznych pytań od klientów po ujawnieniu nowej podatności w popularnej bibliotece.

Jak przygotować SBOM krok po kroku?

Krok 1: wskaż właściciela procesu SBOM

SBOM nie powinien być tylko zadaniem jednego developera. To element bezpieczeństwa produktu, zarządzania podatnościami i zgodności. Właścicielem może być product security, DevSecOps, CTO, security engineer albo zespół odpowiedzialny za jakość produktu.

Dowód do przygotowania: właściciel procesu SBOM, zakres odpowiedzialności i osoby wspierające.

Krok 2: wybierz produkty i wersje objęte SBOM

Na początku nie trzeba obejmować wszystkiego. Najlepiej zacząć od produktów najważniejszych biznesowo, objętych CRA, sprzedawanych klientom B2B albo zawierających dane wrażliwe.

Priorytet:

  • produkt główny sprzedawany klientom
  • produkt objęty CRA
  • produkt zawierający dane klientów
  • produkt instalowany u klienta
  • produkt z częstymi integracjami
  • produkt z dużą liczbą komponentów open source

Dowód do przygotowania: lista produktów i wersji objętych procesem SBOM.

Krok 3: wybierz format i narzędzia

Wybierz format, który będzie wspierany przez narzędzia zespołu i wymagania klientów. Najczęściej warto rozważyć SPDX lub CycloneDX.

Przy wyborze narzędzia sprawdź:

  • czy obsługuje używane języki programowania
  • czy wykrywa zależności bezpośrednie i pośrednie
  • czy działa w CI/CD
  • czy generuje format maszynowo czytelny
  • czy pozwala powiązać SBOM z wersją produktu
  • czy integruje się ze skanerem podatności
  • czy obsługuje kontenery i obrazy produkcyjne

Dowód do przygotowania: decyzja o formacie, narzędziu i zakresie generowania SBOM.

Krok 4: generuj SBOM automatycznie

Ręczne tworzenie SBOM szybko przestaje działać. Produkt zmienia się z każdym wydaniem, a zależności aktualizują się często. SBOM powinien być generowany automatycznie w procesie budowania lub wydania produktu.

Automatyzacja powinna obejmować:

  • repozytorium kodu
  • pliki zależności
  • obrazy kontenerów
  • artefakty wydaniowe
  • wersję produktu
  • metadane wydania

Dowód do przygotowania: konfiguracja automatycznego generowania SBOM i przykładowy plik dla wydania produktu.

Krok 5: powiąż SBOM z wydaniem produktu

SBOM bez powiązania z wersją produktu ma ograniczoną wartość. Gdy klient zapyta o podatność w konkretnej wersji, firma musi wiedzieć, jaki SBOM dotyczy tej wersji.

Powiąż SBOM z:

  • numerem wersji produktu
  • datą wydania
  • identyfikatorem buildu
  • commitem lub tagiem w repozytorium
  • obrazem kontenera
  • środowiskiem produkcyjnym

Dowód do przygotowania: rejestr wydań produktu z przypisanym SBOM.

Krok 6: skanuj SBOM pod kątem podatności

Po wygenerowaniu SBOM należy go używać do oceny podatności. Sam SBOM nie wystarczy. Potrzebna jest analiza komponentów względem źródeł informacji o podatnościach.

Proces powinien obejmować:

  • skanowanie komponentów
  • ocenę podatności krytycznych i wysokich
  • sprawdzenie, czy podatność dotyczy użycia komponentu w produkcie
  • priorytetyzację napraw
  • zadania dla zespołu
  • ponowną weryfikację po aktualizacji

Dowód do przygotowania: raport podatności, decyzje triage, zadania naprawcze i potwierdzenie napraw.

Krok 7: sprawdzaj jakość SBOM

SBOM może być niekompletny, błędny lub niespójny. Narzędzia nie zawsze wykrywają wszystkie komponenty tak samo. Dlatego potrzebny jest przegląd jakości.

Sprawdź:

  • czy SBOM obejmuje właściwy artefakt
  • czy zawiera główne zależności
  • czy zawiera zależności pośrednie, jeśli taki jest cel
  • czy wersje komponentów są poprawne
  • czy format jest poprawny technicznie
  • czy plik można przetworzyć automatycznie
  • czy SBOM nie zawiera informacji, których firma nie chce ujawniać zewnętrznie

Dowód do przygotowania: checklista jakości SBOM i wynik walidacji.

Krok 8: ustal zasady udostępniania SBOM

SBOM może zawierać informacje wrażliwe biznesowo lub technicznie. Firma powinna ustalić, komu, kiedy i w jakim zakresie udostępnia SBOM.

Możliwe modele:

  • SBOM tylko wewnętrzny
  • SBOM udostępniany klientom po podpisaniu umowy o poufności
  • SBOM udostępniany tylko dla wybranych produktów
  • SBOM udostępniany w wersji ograniczonej
  • informacja o statusie podatności bez pełnego SBOM
  • SBOM udostępniany organom nadzoru rynku na uzasadniony wniosek

Dowód do przygotowania: polityka udostępniania SBOM, ścieżka zatwierdzania i wzór odpowiedzi do klienta.

Plan SBOM na 30, 60 i 90 dni

Pierwsze 30 dni

  • wyznacz właściciela procesu SBOM
  • zrób listę produktów i repozytoriów
  • wybierz produkt pilotażowy
  • wybierz format: SPDX lub CycloneDX
  • wybierz narzędzie do generowania SBOM
  • wygeneruj pierwszy SBOM ręcznie lub półautomatycznie
  • sprawdź, czy SBOM obejmuje zależności najwyższego poziomu

Dni 31 do 60

  • włącz generowanie SBOM do CI/CD
  • powiąż SBOM z wersją produktu
  • dodaj skanowanie podatności na podstawie SBOM
  • ustal proces triage podatności
  • przygotuj pierwszą checklistę jakości SBOM
  • zdefiniuj zasady przechowywania SBOM
  • ustal, kto może udostępniać SBOM klientom

Dni 61 do 90

  • rozszerz SBOM na kolejne produkty
  • dodaj zależności pośrednie, jeśli narzędzie to umożliwia
  • przygotuj procedurę udostępniania SBOM
  • połącz SBOM z procesem zarządzania podatnościami
  • dodaj SBOM do dokumentacji technicznej produktu pod CRA
  • przygotuj wzór odpowiedzi na pytania klientów
  • przygotuj raport dla zarządu i zespołu produktowego

Checklista SBOM pod CRA

Zakres produktu

  • czy wiemy, które produkty mogą być objęte CRA?
  • czy wiemy, które wersje produktów są aktywnie wspierane?
  • czy mamy rejestr produktów i komponentów?
  • czy wiemy, które komponenty są wprowadzane na rynek oddzielnie?
  • czy wiemy, które produkty zawierają oprogramowanie open source?

Generowanie SBOM

  • czy SBOM jest generowany automatycznie?
  • czy SBOM jest w formacie maszynowo czytelnym?
  • czy używamy powszechnie stosowanego formatu?
  • czy SBOM obejmuje co najmniej zależności najwyższego poziomu?
  • czy SBOM jest powiązany z wersją produktu?
  • czy SBOM jest przechowywany jako dowód wydania?

Jakość i bezpieczeństwo

  • czy SBOM jest walidowany technicznie?
  • czy wersje komponentów są poprawne?
  • czy zależności są kompletne?
  • czy SBOM nie ujawnia zbędnych informacji?
  • czy dostęp do SBOM jest kontrolowany?

Podatności i aktualizacje

  • czy SBOM jest skanowany pod kątem podatności?
  • czy istnieje proces oceny, czy podatność wpływa na produkt?
  • czy istnieje rejestr podatności komponentów?
  • czy podatności są zamieniane w zadania naprawcze?
  • czy po aktualizacji generowany jest nowy SBOM?
  • czy proces jest powiązany ze zgłoszeniami CRA?

Dokumentacja i dowody

  • czy SBOM jest częścią dokumentacji technicznej produktu?
  • czy mamy politykę generowania SBOM?
  • czy mamy procedurę udostępniania SBOM?
  • czy mamy historię SBOM dla wydań produktu?
  • czy umiemy pokazać dowody dla klienta, audytu lub organu nadzoru?

Najczęstsze błędy przy SBOM

Błąd 1: traktowanie SBOM jako jednorazowego dokumentu

SBOM musi zmieniać się razem z produktem. Jeżeli produkt ma nowe wydanie, nowe zależności albo nowy obraz kontenera, SBOM również powinien zostać zaktualizowany.

Błąd 2: brak powiązania SBOM z wersją produktu

Jeżeli nie wiadomo, który SBOM dotyczy której wersji produktu, trudno odpowiedzieć na pytanie klienta lub organu nadzoru. SBOM musi być związany z konkretnym wydaniem.

Błąd 3: generowanie SBOM bez analizy podatności

Samo wygenerowanie pliku nie zmniejsza ryzyka. SBOM powinien zasilać proces oceny podatności i aktualizacji.

Błąd 4: brak kontroli jakości

Narzędzia mogą tworzyć różne wyniki. SBOM powinien być walidowany i sprawdzany pod kątem kompletności, poprawności oraz przydatności.

Błąd 5: zbyt szybkie udostępnianie pełnego SBOM bez zasad

SBOM może ujawniać informacje o architekturze, zależnościach i potencjalnych słabościach produktu. Firma powinna ustalić, komu i w jakim zakresie udostępnia takie informacje.

Błąd 6: brak właściciela procesu

Jeżeli nikt nie odpowiada za SBOM, proces szybko się rozpadnie. Potrzebny jest właściciel po stronie product security, DevSecOps, engineeringu albo bezpieczeństwa.

Błąd 7: pomijanie komponentów dostarczanych przez klientów lub dostawców

W produktach B2B część komponentów może pochodzić od klienta, integratora lub dostawcy. Warto ustalić, kto odpowiada za ich opis, podatności i aktualizacje.

SBOM a dokumentacja techniczna pod CRA

SBOM powinien być powiązany z dokumentacją techniczną produktu. Pod CRA dokumentacja techniczna powinna pokazywać, jak produkt został zaprojektowany, wytworzony i utrzymywany pod kątem cyberbezpieczeństwa oraz jak producent obsługuje podatności.

W dokumentacji warto połączyć SBOM z:

  • architekturą produktu
  • oceną ryzyka cyberbezpieczeństwa
  • procesem bezpiecznego wytwarzania oprogramowania
  • zarządzaniem podatnościami
  • procesem aktualizacji bezpieczeństwa
  • procedurą odpowiedzialnego zgłaszania podatności
  • wynikami testów bezpieczeństwa
  • okresem wsparcia produktu

Dobry SBOM pomaga również przy komunikacji z klientami. Kiedy pojawia się nowa podatność, firma nie musi odpowiadać ogólnie. Może sprawdzić wpływ na konkretne produkty i wersje.

Jak mierzyć dojrzałość procesu SBOM?

Poziom 1: SBOM tworzony ręcznie

Firma ma pierwszą listę komponentów, ale proces jest ręczny, nieregularny i niepowiązany z wydaniami produktu.

Poziom 2: SBOM generowany narzędziem

Firma używa narzędzia do generowania SBOM dla wybranego produktu, ale nie zawsze robi to przy każdym wydaniu.

Poziom 3: SBOM w procesie CI/CD

SBOM jest generowany automatycznie przy wydaniu, powiązany z wersją produktu i przechowywany jako dowód.

Poziom 4: SBOM połączony z podatnościami

SBOM zasila proces zarządzania podatnościami. Zespół może szybko odpowiedzieć, czy nowa podatność dotyczy produktu.

Poziom 5: SBOM jako element zgodności i komunikacji z klientami

SBOM jest częścią dokumentacji technicznej, procesów CRA, odpowiedzi do klientów, audytów i zarządzania ryzykiem łańcucha dostaw.

Przykład biznesowy

Firma SaaS rozwija platformę dla klientów B2B. Produkt korzysta z kilkuset komponentów open source, kilku obrazów kontenerów, aplikacji webowej, API i modułu raportowego. Klient z sektora regulowanego pyta, czy firma jest w stanie wskazać, które wersje komponentów znajdują się w produkcie i czy podatność w popularnej bibliotece dotyczy jego środowiska.

Zespół początkowo sprawdza zależności ręcznie. Okazuje się, że różne repozytoria mają różne wersje bibliotek, kontenery zawierają dodatkowe pakiety, a dokumentacja nie pokazuje, które komponenty trafiły do konkretnego wydania.

Firma wdraża proces SBOM. Najpierw generuje SBOM dla głównej aplikacji i obrazów kontenerów. Następnie wiąże SBOM z wersją produktu, dodaje skanowanie podatności, przygotowuje procedurę udostępniania informacji klientom i włącza SBOM do dokumentacji technicznej produktu.

Po kilku tygodniach firma może szybciej odpowiadać na pytania klientów i lepiej zarządzać podatnościami. SBOM przestaje być dokumentem do audytu, a staje się narzędziem operacyjnym.

Jak ccyber.io może pomóc?

ccyber.io pomaga firmom tworzącym oprogramowanie przygotować proces SBOM w sposób praktyczny, dopasowany do CRA, zarządzania podatnościami i rzeczywistego procesu wytwarzania produktu.

Możemy wesprzeć organizację w obszarach:

  • ocena gotowości SBOM pod CRA
  • mapowanie produktów i komponentów
  • wybór formatu SBOM
  • projekt procesu generowania SBOM
  • połączenie SBOM z CI/CD
  • połączenie SBOM z zarządzaniem podatnościami
  • procedura udostępniania SBOM klientom i organom nadzoru
  • przygotowanie SBOM do dokumentacji technicznej produktu
  • szkolenie zespołów produktowych, developerskich i DevOps
  • roadmapa przygotowania do CRA w obszarze komponentów i podatności

Najlepszym pierwszym krokiem jest krótki SBOM readiness assessment. Pozwala ustalić, które produkty wymagają SBOM, jakie narzędzia są dostępne, jak wygląda proces wydań i co trzeba przygotować przed terminami CRA.

FAQ

Czym jest SBOM?

SBOM to formalny zapis komponentów i relacji w łańcuchu dostaw oprogramowania. Pokazuje, z jakich bibliotek, pakietów, modułów i zależności składa się produkt cyfrowy.

Czy SBOM jest wymagany przez CRA?

CRA wskazuje, że producenci mają identyfikować i dokumentować podatności oraz komponenty w produktach z elementami cyfrowymi, w tym przez przygotowanie SBOM w powszechnie używanym i maszynowo czytelnym formacie, obejmującym co najmniej zależności najwyższego poziomu.

Czy SBOM musi obejmować wszystkie zależności pośrednie?

CRA wskazuje co najmniej zależności najwyższego poziomu. Z praktycznego punktu widzenia warto jednak dążyć do widoczności zależności pośrednich, ponieważ wiele podatności pojawia się właśnie tam.

Czy SBOM trzeba publikować publicznie?

Nie zawsze. SBOM może być dokumentem wewnętrznym albo udostępnianym klientom lub organom nadzoru w określonych warunkach. Firma powinna ustalić zasady udostępniania, ponieważ SBOM może zawierać informacje wrażliwe.

Jaki format SBOM wybrać?

Najczęściej warto rozważyć SPDX lub CycloneDX. Wybór powinien zależeć od narzędzi, wymagań klientów, procesu CI/CD, potrzeb analizy podatności i przyszłych wymagań regulacyjnych.

Czy SBOM zastępuje testy bezpieczeństwa?

Nie. SBOM pokazuje komponenty i zależności, ale nie zastępuje testów aplikacji, przeglądów kodu, testów API, modelowania zagrożeń ani oceny architektury.

Czym różni się SBOM od VEX?

SBOM pokazuje, co znajduje się w produkcie. VEX pomaga przekazać, czy konkretna podatność faktycznie wpływa na dany produkt i jego sposób użycia.

Od czego zacząć przygotowanie SBOM?

Najlepiej zacząć od jednego produktu pilotażowego: wybrać format, wygenerować pierwszy SBOM, powiązać go z wersją produktu, sprawdzić podatności i przygotować procedurę aktualizacji oraz udostępniania.

Podsumowanie

SBOM staje się jednym z kluczowych elementów bezpieczeństwa produktów cyfrowych. Pod CRA nie wystarczy wiedzieć, że produkt „używa bibliotek open source”. Firma musi umieć pokazać, jakie komponenty znajdują się w produkcie, jak są dokumentowane, jak są monitorowane i jak wpływają na zarządzanie podatnościami.

Najlepsze podejście to traktowanie SBOM jako procesu, nie jako jednorazowego pliku. SBOM powinien być generowany automatycznie, powiązany z wersją produktu, analizowany pod kątem podatności i przechowywany jako element dokumentacji technicznej.

Firmy, które przygotują proces SBOM wcześniej, będą lepiej gotowe na CRA, wymagania klientów, audyty, incydenty związane z podatnościami i rosnące oczekiwania dotyczące przejrzystości łańcucha dostaw oprogramowania.

Źródła

Threat modeling: praktyczny przewodnik dla zespołów produktowych

Threat modeling, czyli modelowanie zagrożeń, pomaga zespołom produktowym znaleźć problemy bezpieczeństwa na etapie projektowania, zanim trafią do kodu i produkcji. Sprawdź, jak przeprowadzić praktyczną sesję, jakie pytania zadać, jak używać STRIDE, jak dokumentować wyniki i jak zamienić zagrożenia w konkretne zadania dla zespołu.

Opracowanie: Zespół redakcyjny CCyber

Odpowiedź w skrócie

Threat modeling, czyli modelowanie zagrożeń, to praktyczna metoda analizowania produktu, funkcji lub architektury pod kątem tego, co może pójść źle z perspektywy bezpieczeństwa i prywatności. Zespół produktowy powinien zacząć od czterech pytań: nad czym pracujemy, co może pójść źle, co z tym zrobimy i czy wykonaliśmy wystarczająco dobrą pracę. Wynikiem dobrej sesji nie jest sam diagram, ale lista ryzyk, decyzji, wymagań bezpieczeństwa, testów i zadań do wdrożenia.

Ostatnia aktualizacja

Lipiec 2026

Dla kogo jest ten artykuł

  • zespoły produktowe
  • product ownerzy i product managerowie
  • software house’y
  • firmy SaaS
  • CTO i Head of Engineering
  • architekci oprogramowania
  • developerzy
  • DevOps i DevSecOps
  • CISO i osoby odpowiedzialne za bezpieczeństwo aplikacji
  • testerzy i QA
  • firmy przygotowujące się do CRA, Secure SDLC, ISO/IEC 27001, SOC 2 lub wymagań klientów

Najważniejsze wnioski

  1. Modelowanie zagrożeń najlepiej robić wcześnie, na etapie wymagań, architektury lub projektowania ważnej funkcji.
  2. Dobra sesja nie wymaga idealnego diagramu ani drogiego narzędzia. Wystarczy właściwy zakres, dobry zespół, prosty model systemu i konkretne pytania.
  3. Najważniejsze pytanie brzmi: co może pójść źle i jak ograniczymy to ryzyko w produkcie?
  4. STRIDE pomaga uporządkować myślenie o zagrożeniach: podszywanie się, manipulacja, zaprzeczanie działaniom, ujawnienie informacji, odmowa usługi i podniesienie uprawnień.
  5. Wynikiem modelowania powinny być zadania w backlogu, wymagania bezpieczeństwa, testy, decyzje o akceptacji ryzyka i aktualna dokumentacja.

Czym jest threat modeling?

Threat modeling to analiza produktu, funkcji, procesu lub architektury z perspektywy potencjalnych zagrożeń. Celem jest znalezienie problemów bezpieczeństwa i prywatności zanim zostaną utrwalone w kodzie, konfiguracji, integracji lub procesie biznesowym.

W praktyce modelowanie zagrożeń pomaga odpowiedzieć na cztery pytania:

  • nad czym pracujemy?
  • co może pójść źle?
  • co z tym zrobimy?
  • czy wykonaliśmy wystarczająco dobrą pracę?

Dobrze przeprowadzone modelowanie zagrożeń nie jest akademickim ćwiczeniem. To warsztat, którego celem jest poprawa projektu, zmniejszenie ryzyka i stworzenie zadań, które zespół może realnie wykonać.

Dlaczego zespoły produktowe powinny robić modelowanie zagrożeń?

Zespoły produktowe podejmują decyzje, które mają bezpośredni wpływ na bezpieczeństwo: jak działa logowanie, kto ma dostęp do danych, jak działa API, gdzie są granice klienta w SaaS, jakie integracje mają dostęp do systemu i jak produkt reaguje na błędy.

Jeśli bezpieczeństwo pojawia się dopiero podczas testu penetracyjnego przed wydaniem, wiele decyzji architektonicznych jest już trudnych do zmiany. Modelowanie zagrożeń przesuwa rozmowę wcześniej, tam gdzie poprawki są tańsze i mniej bolesne.

Modelowanie zagrożeń pomaga:

  • znaleźć ryzyka na etapie projektu
  • zrozumieć przepływy danych
  • ustalić granice zaufania
  • wykryć błędy w założeniach architektury
  • zamienić ryzyka w wymagania bezpieczeństwa
  • lepiej planować testy bezpieczeństwa
  • przygotować dowody dla klientów i audytów
  • zmniejszyć liczbę kosztownych poprawek po wdrożeniu

Kiedy robić threat modeling?

Przy nowym produkcie

Najlepszy moment to etap koncepcji, architektury lub planowania pierwszej wersji produktu. Wtedy zespół może jeszcze zmienić podejście do danych, uwierzytelniania, integracji i uprawnień bez dużych kosztów.

Przy nowej funkcji wysokiego ryzyka

Nie każda drobna zmiana wymaga pełnej sesji. Modelowanie zagrożeń warto wykonać przy funkcjach, które mają większy wpływ na bezpieczeństwo.

Przykłady funkcji wysokiego ryzyka:

  • logowanie i reset hasła
  • panel administratora
  • płatności
  • API publiczne
  • eksport danych
  • integracje z systemami klientów
  • funkcje AI lub agenci AI
  • zarządzanie rolami i uprawnieniami
  • funkcje wielodostępności w SaaS
  • przetwarzanie danych osobowych lub poufnych

Przy dużej zmianie architektury

Modelowanie zagrożeń warto wykonać przy migracji do chmury, zmianie dostawcy tożsamości, wdrożeniu nowego API, przejściu na mikroserwisy, zmianie modelu danych albo wdrożeniu nowych integracji.

Po incydencie lub poważnej podatności

Jeżeli firma miała incydent albo wykryła poważną podatność, modelowanie zagrożeń pomaga ustalić, czy problem był jednorazowy, czy wynikał ze słabego założenia projektowego.

Przed ważnym audytem lub wdrożeniem regulacyjnym

Modelowanie zagrożeń może wspierać przygotowanie do CRA, NIS2, ISO/IEC 27001, SOC 2, wymagań klientów albo oceny zgodności produktu.

Jak przygotować sesję modelowania zagrożeń?

Krok 1: ustal zakres

Najczęstszy błąd to zbyt szeroki zakres. Sesja typu „modelujemy cały system” może szybko zamienić się w chaotyczną rozmowę bez efektu. Lepiej zacząć od konkretnej funkcji, usługi, modułu lub przepływu danych.

Dobry zakres:

  • logowanie i zarządzanie sesją
  • nowy endpoint API
  • integracja z płatnościami
  • moduł eksportu danych
  • panel administratora
  • proces onboardingu klienta
  • architektura nowego modułu SaaS
  • funkcja AI analizująca dane klientów

Dowód do przygotowania: krótki opis zakresu sesji i cel modelowania.

Krok 2: zaproś właściwe osoby

Modelowanie zagrożeń nie powinno być samotnym ćwiczeniem security. Najlepsze wyniki powstają wtedy, gdy w sesji uczestniczą osoby, które rozumieją produkt, architekturę, dane, użytkowników i ryzyko biznesowe.

Typowy skład sesji:

  • product owner lub product manager
  • architekt lub senior developer
  • developerzy pracujący nad funkcją
  • DevOps lub osoba odpowiedzialna za wdrożenia
  • security engineer lub CISO
  • tester lub QA
  • osoba od compliance lub ochrony danych, jeśli temat dotyczy danych osobowych lub regulacji

Nie chodzi o dużą grupę. Chodzi o właściwe osoby. Sesja 5-7 osób często działa lepiej niż spotkanie całego działu.

Dowód do przygotowania: lista uczestników, role i właściciel wyników sesji.

Krok 3: przygotuj prosty model systemu

Model nie musi być idealny. Ma pomóc zespołowi wspólnie zobaczyć, jak działa system. Najczęściej wystarczy diagram przepływu danych, diagram architektury albo schemat procesu.

Model powinien pokazywać:

  • użytkowników i role
  • systemy zewnętrzne
  • komponenty aplikacji
  • bazy danych
  • API i integracje
  • kolejki, pliki i magazyny danych
  • granice zaufania
  • dane wrażliwe
  • miejsca uwierzytelniania i autoryzacji
  • kanały administracyjne

Dowód do przygotowania: diagram systemu albo diagram przepływu danych z oznaczonymi granicami zaufania.

Krok 4: opisz dane i ich wartość

Nie każde dane mają ten sam poziom ryzyka. Zespół powinien wiedzieć, które dane są publiczne, wewnętrzne, poufne, osobowe, finansowe, medyczne, techniczne albo objęte tajemnicą przedsiębiorstwa.

Warto odpowiedzieć na pytania:

  • jakie dane przetwarza funkcja?
  • gdzie dane są przechowywane?
  • kto ma do nich dostęp?
  • czy dane są szyfrowane?
  • czy dane są wysyłane do systemów zewnętrznych?
  • czy dane klienta mogą zostać pomylone z danymi innego klienta?
  • czy dane są logowane?
  • czy dane trafiają do narzędzi AI?

Dowód do przygotowania: lista danych, klasyfikacja i miejsca przetwarzania.

Krok 5: zidentyfikuj granice zaufania

Granica zaufania to miejsce, w którym dane lub żądanie przechodzi między obszarami o różnym poziomie kontroli. Właśnie tam często pojawiają się najważniejsze ryzyka.

Przykłady granic zaufania:

  • użytkownik z internetu i aplikacja
  • aplikacja i API
  • API i baza danych
  • system firmy i system klienta
  • aplikacja i dostawca płatności
  • środowisko produkcyjne i testowe
  • konto użytkownika i konto administratora
  • agent AI i system wewnętrzny

Dowód do przygotowania: diagram z oznaczonymi granicami zaufania i opisem kontroli na tych granicach.

Jak przeprowadzić modelowanie zagrożeń krok po kroku?

Krok 1: odpowiedz na pytanie „nad czym pracujemy?”

Najpierw zespół musi wspólnie zrozumieć zakres. Product owner opisuje funkcję, architekt pokazuje model, developerzy uzupełniają szczegóły, a security pomaga znaleźć miejsca ryzyka.

Ustal:

  • cel funkcji
  • użytkowników
  • dane
  • komponenty
  • integracje
  • granice zaufania
  • założenia bezpieczeństwa

Krok 2: odpowiedz na pytanie „co może pójść źle?”

Na tym etapie zespół identyfikuje zagrożenia. Można użyć STRIDE, listy kontrolnej OWASP, poprzednich incydentów, wymagań klientów, MITRE ATT&CK albo zwykłej burzy mózgów.

Przykładowe pytania:

  • czy ktoś może podszyć się pod innego użytkownika?
  • czy można zmienić dane bez uprawnienia?
  • czy użytkownik może zaprzeczyć wykonaniu działania?
  • czy dane mogą zostać ujawnione osobie nieuprawnionej?
  • czy funkcję można łatwo zablokować lub przeciążyć?
  • czy zwykły użytkownik może uzyskać uprawnienia administratora?
  • czy klient A może zobaczyć dane klienta B?
  • czy integracja zewnętrzna może nadużyć dostępu?
  • czy logi zawierają dane wrażliwe?
  • czy wynik AI może spowodować niebezpieczną decyzję?

Krok 3: użyj STRIDE jako struktury

STRIDE pomaga uporządkować dyskusję. Nie jest jedyną metodą, ale jest praktyczna i dobrze działa z zespołami produktowymi.

STRIDE obejmuje:

  • Spoofing, czyli podszywanie się
  • Tampering, czyli manipulację danymi lub kodem
  • Repudiation, czyli zaprzeczanie działaniom
  • Information Disclosure, czyli ujawnienie informacji
  • Denial of Service, czyli odmowę usługi
  • Elevation of Privilege, czyli podniesienie uprawnień

Przy każdym elemencie modelu można zapytać, które kategorie STRIDE mają sens. Nie trzeba robić tego mechanicznie dla każdego pola. Celem jest znalezienie realnych zagrożeń, nie wypełnienie tabeli.

Krok 4: oceń ryzyko i priorytety

Nie każde zagrożenie jest tak samo ważne. Po zidentyfikowaniu zagrożeń trzeba ustalić, które wymagają działania teraz, które można zaplanować później, a które można świadomie zaakceptować.

Przy ocenie ryzyka weź pod uwagę:

  • wpływ na klienta
  • wpływ na dane
  • wpływ na dostępność usługi
  • łatwość wykorzystania
  • prawdopodobieństwo wystąpienia
  • możliwość wykrycia
  • koszt naprawy
  • wymagania regulacyjne lub umowne

W praktyce wystarczy prosta skala: krytyczne, wysokie, średnie, niskie. Najważniejsze jest, żeby zespół rozumiał, dlaczego dane ryzyko ma taki priorytet.

Krok 5: zaplanuj reakcję na zagrożenia

Dla każdego istotnego zagrożenia trzeba określić reakcję. Najczęściej są cztery możliwości: ograniczyć ryzyko, usunąć funkcję lub element ryzyka, przenieść odpowiedzialność albo świadomie zaakceptować ryzyko.

Dobre działania ograniczające ryzyko powinny być konkretne:

  • dodaj autoryzację na poziomie obiektu
  • wprowadź MFA dla administratorów
  • ogranicz uprawnienia tokenu API
  • dodaj limit zapytań
  • usuń dane wrażliwe z logów
  • zaszyfruj dane w bazie
  • dodaj testy autoryzacji
  • oddziel dane klientów
  • zmień architekturę integracji
  • dodaj alert dla nietypowego działania

Jeżeli reakcja nie prowadzi do zadania, wymagania lub testu, prawdopodobnie jest zbyt ogólna.

Krok 6: zamień wyniki na zadania

Największa wartość modelowania zagrożeń pojawia się wtedy, gdy wyniki trafiają do pracy zespołu. Ryzyka powinny zostać zamienione w zadania w backlogu, wymagania bezpieczeństwa, testy, decyzje lub akceptacje ryzyka.

Dla każdego istotnego zagrożenia określ:

  • właściciela
  • priorytet
  • termin
  • zadanie techniczne
  • wymagany test
  • dowód wykonania
  • decyzję o akceptacji ryzyka, jeśli ryzyko nie jest naprawiane

Krok 7: sprawdź, czy zrobiliście wystarczająco dobrą pracę

Na koniec sesji zespół powinien sprawdzić, czy model ma sens i czy wyniki są użyteczne.

Pytania kontrolne:

  • czy model pokazuje prawdziwą architekturę?
  • czy oznaczono granice zaufania?
  • czy uwzględniono dane wrażliwe?
  • czy najważniejsze zagrożenia mają reakcję?
  • czy działania są możliwe do wdrożenia?
  • czy powstały zadania w backlogu?
  • czy powstały testy bezpieczeństwa?
  • czy ktoś zaakceptował ryzyka, których nie naprawiamy?

Praktyczna agenda sesji 90 minut

0 do 10 minut: cel i zakres

  • co modelujemy?
  • dlaczego teraz?
  • jakie decyzje chcemy podjąć?
  • jaki jest oczekiwany wynik sesji?

10 do 25 minut: model systemu

  • komponenty
  • użytkownicy
  • role
  • integracje
  • dane
  • granice zaufania

25 do 55 minut: identyfikacja zagrożeń

  • STRIDE
  • scenariusze ataku
  • poprzednie incydenty
  • ryzyka biznesowe
  • wymagania klientów i regulacji

55 do 75 minut: priorytety i reakcje

  • ocena wpływu
  • priorytet ryzyk
  • działania ograniczające
  • zadania techniczne
  • testy
  • akceptacje ryzyka

75 do 90 minut: podsumowanie i właściciele

  • lista najważniejszych ryzyk
  • zadania w backlogu
  • właściciele
  • terminy
  • brakujące informacje
  • data kolejnego przeglądu

Checklista threat modeling dla zespołu produktowego

Zakres

  • czy wiemy, jaką funkcję lub system modelujemy?
  • czy zakres nie jest zbyt szeroki?
  • czy znamy cel biznesowy funkcji?
  • czy wiemy, kto będzie używał funkcji?

Model systemu

  • czy mamy diagram komponentów?
  • czy mamy przepływy danych?
  • czy oznaczyliśmy granice zaufania?
  • czy uwzględniliśmy systemy zewnętrzne?
  • czy wiemy, gdzie są dane wrażliwe?

Uwierzytelnianie i dostęp

  • czy użytkownik może podszyć się pod inną osobę?
  • czy dostęp jest sprawdzany po stronie serwera?
  • czy istnieje ryzyko dostępu do danych innego klienta?
  • czy administratorzy mają oddzielne role?
  • czy tokeny i sesje są bezpiecznie obsługiwane?

Dane

  • czy dane są klasyfikowane?
  • czy dane są szyfrowane w tranzycie?
  • czy dane są szyfrowane w spoczynku, jeśli trzeba?
  • czy dane nie trafiają do logów?
  • czy dane są bezpiecznie usuwane?

Integracje i API

  • czy integracja ma minimalne uprawnienia?
  • czy API ma limity zapytań?
  • czy API waliduje dane wejściowe?
  • czy błędy API nie ujawniają informacji?
  • czy integracja z dostawcą zewnętrznym jest monitorowana?

Monitoring i reakcja

  • czy logujemy ważne zdarzenia bezpieczeństwa?
  • czy mamy alerty dla działań wysokiego ryzyka?
  • czy można odtworzyć, kto wykonał daną akcję?
  • czy wiemy, jak wykryć nadużycie funkcji?
  • czy zespół wie, jak zareagować na incydent?

Threat modeling dla SaaS: na co uważać?

Wielodostępność

W SaaS bardzo ważne jest oddzielenie danych klientów. Jedno z najważniejszych pytań brzmi: czy klient A może przypadkiem albo celowo zobaczyć dane klienta B?

Sprawdź:

  • identyfikator klienta w każdym zapytaniu
  • kontrolę dostępu na poziomie obiektu
  • separację danych w bazie
  • eksporty i raporty
  • logi i dane diagnostyczne
  • dostęp administracyjny supportu

Panel administratora

Panel administratora jest częstym miejscem ryzyka, bo daje szerokie uprawnienia. Modelowanie powinno sprawdzić, kto ma dostęp, jak jest chroniony i co można zrobić z poziomu panelu.

Sprawdź:

  • MFA dla administratorów
  • role i uprawnienia
  • logowanie działań administratorów
  • zatwierdzanie działań wysokiego ryzyka
  • ochronę przed przejęciem sesji

API i integracje

API w SaaS jest często główną powierzchnią ataku. Błędy autoryzacji, brak limitów zapytań, zbyt szerokie tokeny i niebezpieczne integracje mogą prowadzić do poważnych incydentów.

AI i automatyzacje

Jeżeli produkt używa AI lub agentów automatyzujących działania, modelowanie zagrożeń powinno uwzględnić nowe ryzyka: prompt injection, ujawnienie danych z kontekstu, nadmierne uprawnienia agenta i nadmierne poleganie na wyniku AI.

Jakie dokumenty i dowody warto przygotować?

Dokumenty wejściowe

  • opis funkcji
  • diagram architektury
  • diagram przepływu danych
  • lista użytkowników i ról
  • klasyfikacja danych
  • opis integracji
  • wymagania klienta lub regulacji

Wyniki sesji

  • lista zagrożeń
  • ocena ryzyka
  • decyzje o reakcjach
  • wymagania bezpieczeństwa
  • zadania w backlogu
  • testy bezpieczeństwa
  • ryzyka zaakceptowane
  • właściciele i terminy

Dowody do audytu lub klienta

  • data sesji
  • uczestnicy
  • zakres modelowania
  • diagram systemu
  • lista ryzyk i decyzji
  • zadania naprawcze
  • status realizacji
  • potwierdzenie przeglądu modelu po zmianach

Najczęstsze błędy przy modelowaniu zagrożeń

Błąd 1: robienie modelowania za późno

Jeżeli modelowanie zagrożeń odbywa się po zbudowaniu funkcji, zespół może odkryć problemy, których naprawa wymaga dużych zmian architektonicznych. Lepiej robić je wcześnie.

Błąd 2: zbyt szeroki zakres

Próba modelowania całej platformy podczas jednej sesji zwykle kończy się powierzchowną analizą. Lepiej modelować mniejsze fragmenty, ale dokładniej.

Błąd 3: brak osób biznesowych i produktowych

Security i developerzy nie zawsze znają pełny kontekst biznesowy. Product owner pomaga zrozumieć, jak funkcja ma działać, co jest krytyczne dla klienta i które ryzyka są najważniejsze.

Błąd 4: skupienie tylko na narzędziu

Narzędzia mogą pomóc, ale nie zastąpią myślenia. Modelowanie zagrożeń to przede wszystkim rozmowa, zrozumienie systemu i podejmowanie decyzji.

Błąd 5: brak zadań po sesji

Jeśli po sesji nie powstają zadania, wymagania ani testy, modelowanie nie wpływa na produkt. Wyniki muszą trafić do procesu wytwarzania.

Błąd 6: brak aktualizacji modelu

Produkt się zmienia. Model zagrożeń powinien być aktualizowany przy istotnych zmianach architektury, nowych integracjach, nowych danych i nowych funkcjach wysokiego ryzyka.

Błąd 7: szukanie idealnego diagramu

Diagram ma pomóc w rozmowie, a nie być dziełem sztuki. Lepiej mieć prosty diagram, który zespół rozumie, niż idealny model, którego nikt nie używa.

Plan wdrożenia threat modeling na 30, 60 i 90 dni

Pierwsze 30 dni

  • wybierz właściciela procesu modelowania zagrożeń
  • wybierz jeden produkt lub funkcję pilotażową
  • przygotuj prosty szablon sesji
  • przygotuj szablon diagramu przepływu danych
  • przeszkol 1-2 osoby z podstaw STRIDE
  • przeprowadź pierwszą sesję 90 minut
  • zamień wyniki w zadania w backlogu

Dni 31 do 60

  • powtórz sesję dla kolejnej funkcji wysokiego ryzyka
  • dodaj modelowanie zagrożeń do definicji gotowości dla funkcji wysokiego ryzyka
  • połącz wyniki z wymaganiami bezpieczeństwa
  • połącz wyniki z testami bezpieczeństwa
  • przygotuj rejestr ryzyk produktowych
  • zdefiniuj sposób akceptacji ryzyka

Dni 61 do 90

  • wprowadź modelowanie zagrożeń do procesu Secure SDLC
  • przygotuj bibliotekę typowych zagrożeń dla produktu
  • stwórz checklistę dla product ownerów i developerów
  • ustal metryki procesu
  • przygotuj pakiet dowodów dla klientów i audytów
  • zaplanuj kwartalny przegląd najważniejszych modeli

Jak mierzyć skuteczność modelowania zagrożeń?

Metryki procesu

  • liczba przeprowadzonych sesji
  • procent funkcji wysokiego ryzyka objętych modelowaniem
  • liczba produktów z aktualnym modelem zagrożeń
  • czas od sesji do utworzenia zadań
  • procent zadań zrealizowanych w terminie

Metryki jakości

  • liczba istotnych zagrożeń znalezionych przed developmentem
  • liczba wymagań bezpieczeństwa wynikających z modelowania
  • liczba testów bezpieczeństwa dodanych po sesji
  • liczba ryzyk zaakceptowanych przez właściciela biznesowego
  • liczba powtarzających się problemów projektowych

Metryki biznesowe

  • mniej krytycznych problemów wykrywanych tuż przed wydaniem
  • szybsze odpowiedzi na ankiety security klientów
  • lepsze dowody dla audytów
  • mniej kosztownych zmian architektury po wdrożeniu

Przykład biznesowy

Firma SaaS planuje nową funkcję eksportu danych klientów przez API. Funkcja ma umożliwiać klientom pobieranie dużych raportów i integrację z zewnętrznymi systemami analitycznymi.

Zespół produktowy organizuje 90-minutową sesję modelowania zagrożeń. Na diagramie pokazuje użytkownika, API, usługę autoryzacji, bazę danych, kolejkę zadań, magazyn plików i zewnętrzny system klienta.

Podczas sesji zespół identyfikuje kilka ryzyk: klient może pobrać raport innego klienta, token API może mieć zbyt szerokie uprawnienia, eksport może ujawnić dane w logach, funkcja może zostać nadużyta do przeciążenia systemu, a link do raportu może być dostępny zbyt długo.

Wyniki sesji trafiają do backlogu: kontrola dostępu na poziomie obiektu, krótszy czas życia linków, limity zapytań, usunięcie danych wrażliwych z logów, testy autoryzacji i monitoring nietypowych eksportów.

Dzięki temu zespół wykrywa problemy przed napisaniem większości kodu. Test penetracyjny później potwierdza, że najważniejsze ryzyka zostały ograniczone już na etapie projektu.

Jak ccyber.io może pomóc?

ccyber.io pomaga zespołom produktowym, software house’om i firmom SaaS przeprowadzać modelowanie zagrożeń w sposób praktyczny, lekki i powiązany z realną pracą zespołu.

Możemy wesprzeć organizację w obszarach:

  • warsztat threat modeling dla produktu lub funkcji
  • modelowanie zagrożeń dla SaaS, API, AI i integracji
  • przygotowanie diagramów przepływu danych
  • moderacja sesji STRIDE
  • zamiana ryzyk na wymagania i zadania w backlogu
  • przygotowanie checklist dla zespołów produktowych
  • wdrożenie threat modeling do Secure SDLC
  • szkolenie product ownerów, developerów i architektów
  • przygotowanie dowodów do klienta, audytu lub CRA
  • przegląd istniejących modeli zagrożeń

Najlepszym pierwszym krokiem jest warsztat pilotażowy dla jednej funkcji wysokiego ryzyka. Dzięki temu zespół szybko widzi wartość metody i może wdrożyć prosty, powtarzalny proces bez nadmiernej biurokracji.

FAQ

Czy threat modeling jest tylko dla security?

Nie. Najlepsze modelowanie zagrożeń angażuje product ownerów, developerów, architektów, DevOps, testerów i osoby odpowiedzialne za bezpieczeństwo. Security może moderować, ale produkt i technologia muszą być reprezentowane przez zespół.

Czy trzeba używać specjalnego narzędzia?

Nie. Na start wystarczy diagram, tablica, dokument i prosty szablon. Narzędzia mogą pomóc później, gdy firma chce zwiększyć powtarzalność i skalę procesu.

Ile trwa dobra sesja modelowania zagrożeń?

Dla jednej funkcji wysokiego ryzyka często wystarczy 60-90 minut. Dla większego systemu lepiej zrobić kilka mniejszych sesji niż jedno długie spotkanie.

Czy STRIDE jest obowiązkowe?

Nie. STRIDE jest popularną i praktyczną strukturą, ale nie jest jedyną metodą. Można używać także innych podejść, checklist, scenariuszy ataków, MITRE ATT&CK, OWASP ASVS albo własnej metody dopasowanej do firmy.

Kiedy robić threat modeling?

Najlepiej przed developmentem funkcji wysokiego ryzyka, przy zmianach architektury, nowych integracjach, nowych przepływach danych, funkcjach AI, panelach administracyjnych i API.

Co powinno być wynikiem sesji?

Wynikiem powinny być konkretne zagrożenia, ocena ryzyka, decyzje, wymagania bezpieczeństwa, zadania w backlogu, testy, właściciele i terminy.

Czy threat modeling pomaga przy CRA?

Tak. CRA wymaga podejścia do bezpieczeństwa produktu przez cały cykl życia. Modelowanie zagrożeń pomaga przygotować ocenę ryzyka produktu, wymagania bezpieczeństwa, dokumentację i dowody projektowe.

Czy threat modeling zastępuje testy penetracyjne?

Nie. Modelowanie zagrożeń nie zastępuje testów. Pomaga znaleźć problemy wcześniej i lepiej zaplanować testy. Najlepsze podejście łączy modelowanie, przegląd kodu, testy automatyczne i testy manualne.

Podsumowanie

Threat modeling to jedno z najbardziej praktycznych narzędzi dla zespołów produktowych, które chcą budować bezpieczniejsze oprogramowanie bez czekania na test penetracyjny na końcu projektu.

Najważniejsze jest proste podejście: ustal zakres, zrozum system, oznacz dane i granice zaufania, zidentyfikuj zagrożenia, wybierz reakcje, zamień wyniki w zadania i wracaj do modelu przy istotnych zmianach.

Dobre modelowanie zagrożeń nie tworzy dokumentacji dla samej dokumentacji. Tworzy lepsze decyzje produktowe, lepsze wymagania bezpieczeństwa, lepsze testy i mniejsze ryzyko dla klientów oraz firmy.

Źródła

  • Threat Modeling Manifesto - główne źródło koncepcyjne dla artykułu. Wspiera cztery kluczowe pytania modelowania zagrożeń, podejście oparte na współpracy, ciągłym doskonaleniu, wczesnej analizie i praktycznym wykorzystaniu wyników.
  • OWASP Threat Modeling Cheat Sheet - główne źródło praktyczne dla procesu modelowania zagrożeń, w tym modelowania systemu, identyfikacji zagrożeń, STRIDE, odpowiedzi na ryzyka, przeglądu i walidacji wyników.
  • OWASP: Threat Modeling - dodatkowe źródło OWASP dotyczące podstaw modelowania zagrożeń i jego miejsca w bezpieczeństwie aplikacji.
  • NIST SP 800-218: Secure Software Development Framework - źródło dla powiązania modelowania zagrożeń z bezpiecznym cyklem wytwarzania oprogramowania, wymaganiami bezpieczeństwa i redukcją podatności.
  • OWASP ASVS: Application Security Verification Standard - źródło dla wymagań bezpieczeństwa aplikacji i kryteriów weryfikacji, które można wykorzystywać do zamiany wyników modelowania zagrożeń w konkretne wymagania oraz testy.
  • Microsoft Learn: Threat Modeling Tool - źródło dotyczące podejścia Microsoft SDL, STRIDE, analizy projektu systemu i narzędzi wspierających identyfikację oraz ograniczanie zagrożeń.
  • MITRE ATT&CK - źródło dla scenariuszy zachowań atakujących, które może wspierać modelowanie zagrożeń oparte na realnych technikach ataku.
  • Komisja Europejska: Cyber Resilience Act - źródło regulacyjne dla kontekstu produktów z elementami cyfrowymi, bezpieczeństwa przez cykl życia produktu, oceny ryzyka i obowiązków producentów.

Piszemy o regulacjach takich jak NIS2, DORA, CRA i ISO 27001, o bezpieczeństwie MŚP i infrastruktury krytycznej, a także o cyberhigienie, cyberzagrożeniach i budowaniu świadomości bezpieczeństwa w organizacji.

Każdy artykuł to praktyczna wiedza - bez żargonu i z konkretnymi wskazówkami do wdrożenia, które pomagają firmom skutecznie chronić dane, ludzi i ciągłość działania.