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.

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.

Checklista bezpiecznego wytwarzania oprogramowania dla firm SaaS i software house’ów

Secure SDLC pomaga firmom SaaS i software house’om wbudować bezpieczeństwo w cały cykl tworzenia oprogramowania: od wymagań i architektury, przez kodowanie, testy i CI/CD, po wydanie, monitoring, aktualizacje i obsługę podatności. Sprawdź praktyczną checklistę, która pomaga ograniczyć ryzyko, przygotować dowody i spełnić wymagania klientów oraz regulacji.

Opracowanie: Zespół redakcyjny CCyber

Odpowiedź w skrócie

Secure SDLC to bezpieczny cykl wytwarzania oprogramowania, czyli sposób pracy, w którym bezpieczeństwo jest obecne od wymagań i projektu architektury aż po wdrożenie, monitoring, aktualizacje i obsługę podatności. Firmy SaaS i software house’y powinny zacząć od checklisty obejmującej właściciela bezpieczeństwa produktu, wymagania bezpieczeństwa, modelowanie zagrożeń, standardy kodowania, przeglądy kodu, testy SAST, DAST i SCA, SBOM, bezpieczeństwo CI/CD, zarządzanie sekretami, podatnościami i dowodami.

Ostatnia aktualizacja

Lipiec 2026

Dla kogo jest ten artykuł

  • software house’y
  • firmy SaaS
  • firmy tworzące aplikacje webowe i mobilne
  • zespoły produktowe
  • CTO, Head of Engineering i liderzy techniczni
  • zespoły DevOps i DevSecOps
  • programiści i architekci
  • CISO i osoby odpowiedzialne za bezpieczeństwo aplikacji
  • product ownerzy i managerowie projektów
  • firmy przygotowujące się do CRA, ISO/IEC 27001, SOC 2, NIS2 lub wymagań klientów

Najważniejsze wnioski

  1. Secure SDLC nie jest jednorazowym testem bezpieczeństwa przed wydaniem. To sposób pracy przez cały cykl życia produktu.
  2. Największy efekt daje włączenie bezpieczeństwa wcześnie: w wymaganiach, architekturze, modelowaniu zagrożeń i standardach kodowania.
  3. Firmy SaaS powinny szczególnie kontrolować tożsamość, dostęp, dane klientów, API, środowiska chmurowe, CI/CD, zależności i monitoring.
  4. Software house’y powinny umieć pokazać klientom dowody: wyniki testów, przeglądy kodu, SBOM, procedurę podatności, politykę sekretów i raporty bezpieczeństwa.
  5. Najlepszy pierwszy krok to wdrożenie praktycznej checklisty na 30, 60 i 90 dni, zamiast budowania zbyt ciężkiego procesu od razu.

Czym jest Secure SDLC?

Secure SDLC to bezpieczny cykl wytwarzania oprogramowania. Oznacza włączenie bezpieczeństwa do każdego etapu tworzenia produktu: od pomysłu, wymagań i architektury, przez development, testy, wdrożenie, utrzymanie, aktualizacje i obsługę podatności.

W praktyce Secure SDLC odpowiada na pytania:

  • czy produkt ma wymagania bezpieczeństwa?
  • czy architektura była oceniona pod kątem ryzyka?
  • czy zespół wykonał modelowanie zagrożeń?
  • czy kod jest sprawdzany pod kątem bezpieczeństwa?
  • czy zależności i biblioteki są kontrolowane?
  • czy sekrety nie trafiają do repozytorium?
  • czy pipeline CI/CD jest zabezpieczony?
  • czy produkt ma SBOM?
  • czy podatności są obsługiwane po wydaniu?
  • czy firma ma dowody, które może pokazać klientowi lub audytorowi?

Secure SDLC nie musi oznaczać wolniejszego developmentu. Dobrze wdrożony proces usuwa część chaosu, ogranicza poprawki na końcu projektu i pomaga wykrywać problemy wcześniej, kiedy ich naprawa jest tańsza.

Dlaczego Secure SDLC jest szczególnie ważny dla SaaS i software house’ów?

Firmy SaaS i software house’y tworzą oprogramowanie, które często przetwarza dane klientów, integruje się z systemami zewnętrznymi, korzysta z chmury, API, komponentów open source i automatycznych wdrożeń. To oznacza dużą powierzchnię ataku.

Klienci coraz częściej oczekują nie tylko deklaracji „dbamy o bezpieczeństwo”, ale konkretnych dowodów:

  • czy aplikacja była testowana?
  • czy znane podatności są monitorowane?
  • czy dane klientów są odseparowane?
  • czy dostęp administracyjny jest kontrolowany?
  • czy istnieje proces zgłaszania podatności?
  • czy zespół wykonuje przeglądy kodu?
  • czy powstaje SBOM?
  • czy firma ma bezpieczny proces aktualizacji?

Secure SDLC jest też coraz ważniejszy regulacyjnie. Cyber Resilience Act wprowadza wymagania cyberbezpieczeństwa dla produktów z elementami cyfrowymi, a klienci objęci NIS2, DORA lub ISO/IEC 27001 mogą przenosić wymagania bezpieczeństwa na swoich dostawców technologii.

Secure SDLC checklist: 16 kroków dla SaaS i software house’ów

Krok 1: wyznacz właściciela bezpieczeństwa produktu

Bezpieczeństwo produktu nie może być „niczyje”. W firmie powinien istnieć właściciel procesu bezpieczeństwa aplikacji lub produktu. Nie musi to być osobny dział w małej firmie, ale odpowiedzialność musi być jasna.

Właściciel powinien koordynować:

  • wymagania bezpieczeństwa
  • modelowanie zagrożeń
  • standardy kodowania
  • testy bezpieczeństwa
  • obsługę podatności
  • komunikację z klientami i audytorami
  • dowody bezpieczeństwa produktu

Dowód do przygotowania: decyzja o właścicielu bezpieczeństwa produktu, zakres odpowiedzialności i lista osób wspierających.

Krok 2: zrób rejestr produktów, repozytoriów i komponentów

Nie da się zabezpieczyć produktu, którego zespół nie ma dobrze opisanego. Firmy SaaS i software house’y powinny mieć listę produktów, repozytoriów, aplikacji, API, usług, bibliotek, komponentów i środowisk.

Rejestr powinien obejmować:

  • nazwę produktu lub aplikacji
  • właściciela biznesowego
  • właściciela technicznego
  • repozytoria kodu
  • główne technologie
  • środowiska: development, test, staging, produkcja
  • integracje zewnętrzne
  • API
  • komponenty open source
  • dane przetwarzane przez system
  • klasyfikację krytyczności

Dowód do przygotowania: rejestr produktów i repozytoriów z właścicielami oraz klasyfikacją krytyczności.

Krok 3: zdefiniuj wymagania bezpieczeństwa

Bezpieczeństwo nie powinno być dodatkiem do funkcji. Powinno być częścią wymagań. Product owner, architekt, developer i security powinni wiedzieć, jakie wymagania bezpieczeństwa musi spełnić produkt.

Przykładowe wymagania:

  • uwierzytelnianie i MFA dla ról wysokiego ryzyka
  • kontrola uprawnień
  • separacja danych klientów
  • szyfrowanie danych w tranzycie i spoczynku
  • bezpieczna obsługa sesji
  • ochrona przed typowymi podatnościami aplikacyjnymi
  • logowanie zdarzeń bezpieczeństwa
  • bezpieczne resetowanie hasła
  • kontrola dostępu administracyjnego
  • wymagania dotyczące prywatności i retencji danych

Dowód do przygotowania: lista wymagań bezpieczeństwa produktu powiązana z backlogiem, ryzykiem i testami.

Krok 4: wykonuj modelowanie zagrożeń dla funkcji wysokiego ryzyka

Modelowanie zagrożeń pomaga zespołowi odpowiedzieć na pytanie: co może pójść źle i jak temu zapobiec? Nie trzeba modelować wszystkiego od razu. Zacznij od funkcji wysokiego ryzyka.

Modelowanie zagrożeń warto wykonać dla:

  • logowania i zarządzania kontami
  • panelu administratora
  • płatności
  • API
  • importu i eksportu danych
  • integracji z systemami klientów
  • funkcji przetwarzających dane wrażliwe
  • mechanizmów wielodostępności w SaaS
  • funkcji AI lub automatyzacji

Wynikiem modelowania powinny być konkretne wymagania, zadania w backlogu i testy.

Dowód do przygotowania: diagram przepływu danych, lista zagrożeń, decyzje o kontrolach i zadania naprawcze.

Krok 5: wdroż standard bezpiecznego kodowania

Standard bezpiecznego kodowania powinien być prosty, praktyczny i dopasowany do technologii używanych przez zespół. Nie może być dokumentem, którego nikt nie czyta.

Standard powinien obejmować:

  • walidację danych wejściowych
  • bezpieczną obsługę błędów
  • ochronę przed wstrzyknięciami
  • bezpieczne zarządzanie sesją
  • kontrolę uprawnień
  • bezpieczne operacje na plikach
  • szyfrowanie i użycie sprawdzonych bibliotek kryptograficznych
  • unikanie sekretów w kodzie
  • bezpieczne logowanie zdarzeń
  • zasady bezpiecznego korzystania z komponentów zewnętrznych

Dowód do przygotowania: standard kodowania, checklisty dla pull requestów i potwierdzenie szkolenia zespołu.

Krok 6: kontroluj sekrety, klucze i tokeny

Hasła, klucze API, tokeny, certyfikaty i inne sekrety nie powinny trafiać do repozytorium kodu, ticketów, dokumentacji, komunikatorów ani plików konfiguracyjnych bez ochrony.

Minimalne zasady:

  • sekrety są przechowywane w sejfie sekretów
  • sekrety nie trafiają do repozytoriów
  • repozytoria są skanowane pod kątem sekretów
  • sekrety są rotowane po incydencie lub zmianie dostawcy
  • dostęp do sekretów jest ograniczony rolami
  • sekrety produkcyjne nie są używane w środowiskach testowych

Dowód do przygotowania: polityka sekretów, konfiguracja sejfu, wyniki skanowania i rejestr rotacji sekretów.

Krok 7: zarządzaj zależnościami i komponentami open source

Nowoczesne aplikacje korzystają z wielu bibliotek i pakietów. To przyspiesza pracę, ale wprowadza ryzyko łańcucha dostaw oprogramowania.

Firma powinna wiedzieć:

  • jakie komponenty są używane
  • jakie mają wersje
  • czy mają znane podatności
  • czy są nadal utrzymywane
  • jakie mają licencje
  • czy pochodzą z zaufanych źródeł
  • jak szybko można je zaktualizować

Dowód do przygotowania: rejestr zależności, wyniki skanowania SCA i procedura aktualizacji podatnych komponentów.

Krok 8: przygotuj SBOM dla produktów

SBOM, czyli spis komponentów oprogramowania, pomaga pokazać, z czego składa się produkt. Jest ważny dla bezpieczeństwa łańcucha dostaw, CRA, rozmów z klientami i szybkiej reakcji na nowe podatności.

Dobry SBOM powinien być:

  • generowany automatycznie, jeśli to możliwe
  • powiązany z konkretną wersją produktu
  • aktualizowany przy zmianach zależności
  • przechowywany jako dowód wydania
  • możliwy do użycia przy analizie podatności

Dowód do przygotowania: SBOM dla głównego produktu i proces jego aktualizacji.

Krok 9: zabezpiecz repozytoria kodu

Repozytorium kodu jest jednym z najważniejszych zasobów firmy technologicznej. Przejęcie repozytorium może prowadzić do wycieku kodu, sekretów, manipulacji kodem albo ataku na klientów.

Minimum zabezpieczeń:

  • MFA dla wszystkich kont developerskich
  • szczególna ochrona kont administratorów repozytorium
  • przegląd uprawnień
  • ochrona głównych gałęzi kodu
  • wymagane przeglądy pull requestów
  • blokada bezpośrednich zmian na gałęzi produkcyjnej
  • skanowanie sekretów
  • logi dostępu i zmian

Dowód do przygotowania: konfiguracja repozytoriów, status MFA, zasady ochrony gałęzi i raport z przeglądu uprawnień.

Krok 10: zabezpiecz CI/CD i proces budowania

Pipeline CI/CD może stać się ścieżką ataku na produkt. Jeśli atakujący przejmie proces budowania lub wdrożenia, może wprowadzić złośliwy kod do legalnej wersji produktu.

Kontroluj:

  • kto może zmieniać pipeline
  • kto może uruchamiać wdrożenie na produkcję
  • gdzie przechowywane są sekrety CI/CD
  • czy buildy są powtarzalne i identyfikowalne
  • czy artefakty są podpisywane
  • czy zależności pochodzą z zaufanych źródeł
  • czy istnieje rozdzielenie środowisk
  • czy logi wdrożeń są dostępne do audytu

Dowód do przygotowania: dokumentacja pipeline, lista uprawnień, konfiguracja sekretów, logi wdrożeń i zasady zatwierdzania produkcji.

Krok 11: włącz SAST, DAST i SCA do procesu

Testy bezpieczeństwa powinny być częścią procesu wytwarzania, a nie tylko działaniem przed wydaniem. Dla firm SaaS i software house’ów minimum to połączenie kilku typów testów.

W praktyce:

  • SAST analizuje kod źródłowy lub kod pośredni
  • DAST testuje działającą aplikację
  • SCA sprawdza zależności i komponenty open source
  • skanowanie sekretów wykrywa przypadkowo ujawnione hasła i klucze
  • testy API sprawdzają bezpieczeństwo interfejsów
  • testy konfiguracji sprawdzają środowisko i chmurę

Nie każde ostrzeżenie z narzędzia jest krytyczne. Potrzebny jest proces triage, czyli oceny, które wyniki są rzeczywiście ważne i wymagają naprawy.

Dowód do przygotowania: wyniki testów SAST, DAST, SCA, skanowania sekretów, decyzje triage i status napraw.

Krok 12: testuj API i kontrolę dostępu

W produktach SaaS API jest często najważniejszą powierzchnią ataku. Błędy w autoryzacji, kontroli obiektów, limitach zapytań i separacji danych klientów mogą prowadzić do poważnych incydentów.

Testy API powinny obejmować:

  • uwierzytelnianie
  • autoryzację
  • dostęp do obiektów innego użytkownika lub klienta
  • limity zapytań
  • walidację danych wejściowych
  • obsługę błędów
  • logowanie zdarzeń bezpieczeństwa
  • bezpieczne zarządzanie tokenami

Dowód do przygotowania: plan testów API, wyniki testów, podatności i potwierdzenie napraw.

Krok 13: zabezpiecz środowiska i konfigurację

Błędy konfiguracji są jedną z najczęstszych przyczyn incydentów w usługach chmurowych i SaaS. Środowiska developerskie, testowe i produkcyjne powinny być oddzielone i zarządzane według jasnych zasad.

Sprawdź:

  • czy środowiska są oddzielone
  • czy dane produkcyjne nie trafiają niekontrolowanie do testów
  • czy konfiguracja jest wersjonowana
  • czy infrastruktura jako kod jest sprawdzana
  • czy dostęp do produkcji jest ograniczony
  • czy błędne konfiguracje chmury są wykrywane
  • czy istnieje proces zatwierdzania zmian produkcyjnych

Dowód do przygotowania: standard środowisk, wyniki przeglądu konfiguracji i raport z kontroli dostępu do produkcji.

Krok 14: loguj zdarzenia bezpieczeństwa i monitoruj produkt

Produkt powinien generować logi, które pomagają wykryć incydent, przeanalizować zdarzenie i udowodnić, co się stało. Brak logów oznacza brak widoczności.

Logować warto:

  • logowania i nieudane próby logowania
  • zmiany uprawnień
  • operacje administratorów
  • dostęp do danych wrażliwych
  • zmiany konfiguracji
  • błędy autoryzacji
  • podejrzane użycie API
  • działania wysokiego ryzyka

Logi muszą być chronione przed modyfikacją, dostępne do analizy i przechowywane zgodnie z zasadami firmy oraz wymaganiami klientów.

Dowód do przygotowania: lista logowanych zdarzeń, retencja logów, alerty i raport z monitoringu.

Krok 15: przygotuj proces zarządzania podatnościami

Podatności nie kończą się w dniu wydania produktu. Firma musi mieć proces przyjmowania zgłoszeń, oceny, naprawy, komunikacji i dokumentowania podatności.

Proces powinien obejmować:

  • kanał zgłaszania podatności
  • procedurę triage
  • ocenę ważności podatności
  • priorytety napraw
  • terminy napraw dla krytycznych problemów
  • komunikację z klientami
  • ponowną weryfikację po naprawie
  • rejestr podatności

Dowód do przygotowania: procedura zarządzania podatnościami, rejestr podatności, status napraw i raporty po retestach.

Krok 16: przygotuj dowody bezpieczeństwa dla klientów i audytów

Dobra checklista Secure SDLC kończy się dowodami. Klienci, audytorzy i regulatorzy coraz częściej pytają nie tylko o to, czy firma „robi bezpieczeństwo”, ale czy potrafi to wykazać.

Najważniejsze dowody:

  • polityka bezpiecznego wytwarzania oprogramowania
  • wymagania bezpieczeństwa produktu
  • wyniki modelowania zagrożeń
  • wyniki przeglądów kodu
  • wyniki testów SAST, DAST i SCA
  • SBOM
  • raporty z testów penetracyjnych
  • rejestr podatności
  • procedura zgłaszania podatności
  • dowody napraw i retestów
  • logi wdrożeń i zatwierdzeń produkcyjnych

Dowód do przygotowania: pakiet dowodów Secure SDLC gotowy do klienta, audytu lub oceny zgodności.

Plan wdrożenia Secure SDLC na 30, 60 i 90 dni

Pierwsze 30 dni

  • wyznacz właściciela bezpieczeństwa produktu
  • zrób rejestr produktów, repozytoriów i aplikacji
  • sprawdź dostęp do repozytoriów i CI/CD
  • włącz MFA dla developerów i administratorów
  • ustal podstawowe wymagania bezpieczeństwa
  • uruchom skanowanie sekretów
  • zacznij skanowanie zależności
  • wybierz produkt lub aplikację do pilotażu Secure SDLC

Dni 31 do 60

  • wykonaj modelowanie zagrożeń dla funkcji wysokiego ryzyka
  • przygotuj standard bezpiecznego kodowania
  • dodaj checklistę bezpieczeństwa do przeglądu pull requestów
  • włącz podstawowe testy SAST i SCA w CI/CD
  • przygotuj pierwszą wersję SBOM
  • sprawdź konfigurację środowisk
  • przygotuj proces zarządzania podatnościami

Dni 61 do 90

  • dodaj testy DAST lub testy API dla aplikacji pilotażowej
  • zdefiniuj minimalne logi bezpieczeństwa produktu
  • przygotuj procedurę zgłaszania podatności
  • przeprowadź szkolenie dla zespołu developerskiego
  • przygotuj pakiet dowodów dla klienta lub audytu
  • ustal metryki Secure SDLC
  • przygotuj plan rozszerzenia procesu na kolejne produkty

Minimalny pakiet dowodów Secure SDLC

Dokumenty governance

  • polityka bezpiecznego wytwarzania oprogramowania
  • role i odpowiedzialności
  • standard bezpiecznego kodowania
  • zasady zarządzania sekretami
  • zasady zarządzania zależnościami
  • proces obsługi podatności

Dowody techniczne

  • rejestr produktów i repozytoriów
  • SBOM
  • wyniki SAST
  • wyniki DAST
  • wyniki SCA
  • wyniki skanowania sekretów
  • raporty z testów API
  • raporty z przeglądu konfiguracji chmury

Dowody procesowe

  • modelowanie zagrożeń
  • zatwierdzone wymagania bezpieczeństwa
  • przeglądy kodu
  • zatwierdzenia wdrożeń produkcyjnych
  • rejestr podatności
  • dowody napraw
  • retesty
  • raporty po incydentach

Najczęstsze błędy przy wdrażaniu Secure SDLC

Błąd 1: test bezpieczeństwa dopiero przed produkcją

Jeśli bezpieczeństwo pojawia się dopiero na końcu, zespół ma mało czasu na naprawy, a koszty rosną. Bezpieczeństwo powinno być częścią wymagań, projektu i codziennej pracy.

Błąd 2: zbyt ciężki proces na start

Mały software house nie musi od razu tworzyć rozbudowanego programu jak duża korporacja. Lepiej zacząć od minimum, które działa, i stopniowo zwiększać dojrzałość.

Błąd 3: brak właściciela

Jeśli nikt nie odpowiada za Secure SDLC, zadania bezpieczeństwa będą odkładane. Właściciel nie musi wykonywać wszystkiego sam, ale musi koordynować proces.

Błąd 4: ignorowanie CI/CD

Współczesny proces wdrożeniowy jest krytycznym elementem bezpieczeństwa. Przejęcie pipeline może być równie groźne jak podatność w aplikacji.

Błąd 5: brak kontroli nad zależnościami

Aplikacja może być dobrze napisana, ale nadal podatna przez bibliotekę, pakiet lub komponent zewnętrzny. Dlatego SCA i SBOM są tak ważne.

Błąd 6: brak obsługi podatności po wydaniu

Produkt nie kończy życia w dniu wdrożenia. Podatności będą pojawiać się później, dlatego firma musi mieć proces wykrywania, oceny, naprawy i komunikacji.

Błąd 7: brak dowodów

Zespół może robić wiele dobrych rzeczy, ale jeśli nie ma dowodów, trudno pokazać dojrzałość klientowi, audytorowi lub regulatorowi.

Jak mierzyć Secure SDLC?

Metryki procesu

  • procent produktów z właścicielem bezpieczeństwa
  • procent produktów z wymaganiami bezpieczeństwa
  • liczba wykonanych modeli zagrożeń
  • procent repozytoriów z ochroną głównych gałęzi
  • procent pipeline’ów objętych testami bezpieczeństwa

Metryki podatności

  • liczba podatności krytycznych i wysokich
  • średni czas naprawy podatności
  • liczba podatności powracających
  • procent podatności naprawionych w terminie
  • liczba podatnych zależności

Metryki dowodów

  • liczba produktów z SBOM
  • liczba produktów z aktualną dokumentacją bezpieczeństwa
  • liczba przeglądów kodu z checklistą bezpieczeństwa
  • liczba raportów testów bezpieczeństwa
  • liczba produktów z procesem zgłaszania podatności

Przykład biznesowy

Firma SaaS rozwija platformę dla klientów B2B. Ma kilka zespołów developerskich, szybkie wdrożenia, wiele integracji API, środowisko chmurowe i rosnące wymagania klientów dotyczące bezpieczeństwa.

Do tej pory bezpieczeństwo polegało głównie na testach penetracyjnych raz w roku. Po każdym teście zespół dostawał długą listę podatności, które trzeba było naprawić pod presją czasu.

Po wdrożeniu podstaw Secure SDLC firma zmienia podejście. Wprowadza wymagania bezpieczeństwa do backlogu, robi modelowanie zagrożeń dla funkcji wysokiego ryzyka, dodaje skanowanie sekretów i zależności do CI/CD, przygotowuje SBOM i tworzy proces obsługi podatności.

Po 90 dniach firma nie jest „idealnie bezpieczna”, ale ma dużo lepszą kontrolę. Wie, które produkty są krytyczne, jakie podatności są otwarte, jakie zależności są używane i jakie dowody może pokazać klientowi.

Jak ccyber.io może pomóc?

ccyber.io pomaga firmom SaaS i software house’om wdrożyć Secure SDLC w sposób praktyczny, lekki i dopasowany do realnego sposobu pracy zespołów developerskich.

Możemy wesprzeć organizację w obszarach:

  • ocena dojrzałości Secure SDLC
  • analiza luk w procesie wytwarzania oprogramowania
  • modelowanie zagrożeń
  • przygotowanie wymagań bezpieczeństwa produktu
  • wdrożenie checklist bezpieczeństwa dla zespołów
  • przegląd CI/CD i repozytoriów
  • przygotowanie SBOM i procesu zarządzania zależnościami
  • proces zarządzania podatnościami
  • przygotowanie dowodów dla klientów, audytu lub CRA
  • szkolenie Secure SDLC dla developerów, DevOps i product ownerów

Najlepszym pierwszym krokiem jest krótki Secure SDLC assessment. Pozwala ustalić, które elementy procesu już działają, gdzie są największe luki i co warto wdrożyć w pierwszych 30, 60 i 90 dniach.

FAQ

Czy Secure SDLC jest tylko dla dużych firm?

Nie. Małe i średnie firmy również mogą wdrożyć Secure SDLC, ale powinny zacząć od prostych praktyk: wymagań bezpieczeństwa, przeglądów kodu, skanowania zależności, kontroli sekretów i procesu obsługi podatności.

Czy test penetracyjny wystarczy?

Nie. Test penetracyjny jest ważny, ale nie zastępuje bezpiecznego procesu wytwarzania. Secure SDLC pomaga wykrywać i usuwać problemy wcześniej, zanim trafią do produkcji.

Od czego zacząć Secure SDLC?

Najlepiej zacząć od rejestru produktów, właściciela bezpieczeństwa, wymagań bezpieczeństwa, kontroli repozytoriów, skanowania sekretów i zależności oraz pilotażu na jednym produkcie.

Czym różni się Secure SDLC od DevSecOps?

Secure SDLC opisuje cały bezpieczny cykl wytwarzania oprogramowania. DevSecOps jest sposobem praktycznego włączania bezpieczeństwa do pracy DevOps, automatyzacji, CI/CD, testów i wdrożeń.

Czy SBOM jest potrzebny każdej firmie SaaS?

SBOM jest coraz bardziej przydatny, szczególnie dla firm sprzedających oprogramowanie klientom B2B, przygotowujących się do CRA, obsługujących sektor regulowany lub zarządzających wieloma komponentami open source.

Czy Secure SDLC pomaga w Cyber Resilience Act?

Tak. Secure SDLC pomaga przygotować procesy i dowody potrzebne do bezpieczeństwa produktu: ocenę ryzyka, wymagania bezpieczeństwa, testy, zarządzanie podatnościami, SBOM, dokumentację i aktualizacje.

Jak często wykonywać modelowanie zagrożeń?

Modelowanie zagrożeń warto wykonywać przy nowych funkcjach wysokiego ryzyka, dużych zmianach architektury, nowych integracjach, nowych typach danych i zmianach wpływających na dostęp lub uprawnienia.

Jakie narzędzia są potrzebne na start?

Na start zwykle wystarczą narzędzia do skanowania sekretów, zależności, kodu, konfiguracji i aplikacji oraz proces przeglądu kodu i podatności. Narzędzia powinny wspierać proces, a nie zastępować myślenie o ryzyku.

Podsumowanie

Secure SDLC dla firm SaaS i software house’ów nie powinien być ciężkim, biurokratycznym procesem. Powinien być praktyczną checklistą działań, które pomagają tworzyć bezpieczniejsze produkty i szybciej odpowiadać na wymagania klientów, audytorów oraz regulacji.

Najważniejsze elementy to wymagania bezpieczeństwa, modelowanie zagrożeń, bezpieczne kodowanie, kontrola sekretów, zarządzanie zależnościami, SBOM, zabezpieczenie repozytoriów i CI/CD, testy bezpieczeństwa, zarządzanie podatnościami i dowody.

Firmy, które wdrożą Secure SDLC wcześnie, zmniejszają ryzyko techniczne, ograniczają koszt późnych poprawek i budują przewagę sprzedażową jako bardziej wiarygodny dostawca oprogramowania.

Źródła

  • NIST SP 800-218: Secure Software Development Framework - główne źródło metodologiczne dla artykułu. Wspiera praktyki bezpiecznego wytwarzania oprogramowania, ograniczania podatności, usuwania przyczyn podatności oraz budowania wspólnego języka między producentami i klientami oprogramowania.
  • OWASP SAMM: Software Assurance Maturity Model - źródło dla budowy i oceny dojrzałości programu bezpieczeństwa oprogramowania w obszarach governance, design, implementation, verification i operations.
  • OWASP ASVS: Application Security Verification Standard - źródło dla wymagań bezpieczeństwa aplikacji, kryteriów weryfikacji oraz praktycznych list kontrolnych dla zespołów developerskich i testerów.
  • OWASP Top 10 Web Application Security Risks - źródło dla typowych i krytycznych ryzyk bezpieczeństwa aplikacji webowych, przydatne przy szkoleniach, wymaganiach bezpieczeństwa i priorytetyzacji testów.
  • OWASP API Security Project - źródło dla bezpieczeństwa API, szczególnie ważne dla produktów SaaS, integracji B2B, aplikacji mobilnych i systemów zewnętrznych.
  • SLSA: Supply-chain Levels for Software Artifacts - źródło dla bezpieczeństwa łańcucha dostaw oprogramowania, integralności artefaktów, ochrony procesu budowania i zwiększania zaufania do procesu dostarczania oprogramowania.
  • SPDX: Software Package Data Exchange - źródło dla SBOM i standardowego opisu komponentów oprogramowania, licencji, zależności oraz informacji wspierających zarządzanie ryzykiem łańcucha dostaw.
  • Komisja Europejska: Cyber Resilience Act - źródło regulacyjne dla kontekstu produktów z elementami cyfrowymi, obowiązków producentów, bezpieczeństwa przez cały cykl życia produktu i wymagań dotyczących obsługi podatności.

Cyber Resilience Act dla software house’ów: co trzeba przygotować w 2026 i 2027 roku?

Cyber Resilience Act zmienia cyberbezpieczeństwo produktów cyfrowych z dobrej praktyki w obowiązek regulacyjny. Firmy tworzące oprogramowanie powinny przygotować ocenę ryzyka produktu, bezpieczny cykl wytwarzania, zarządzanie podatnościami, dokumentację techniczną, SBOM, proces aktualizacji, zgłaszanie incydentów i plan zgodności na 2026 oraz 2027 rok.

Opracowanie: Zespół redakcyjny CCyber

Odpowiedź w skrócie

Software house powinien zacząć przygotowania do Cyber Resilience Act od sprawdzenia, czy tworzone oprogramowanie jest produktem z elementami cyfrowymi wprowadzanym na rynek UE oraz jaką rolę pełni firma: producenta, podwykonawcy, dostawcy komponentu czy dostawcy usługi. W 2026 roku trzeba przygotować przede wszystkim proces obsługi podatności i zgłoszeń, ocenę ryzyka produktu, bezpieczny cykl wytwarzania oprogramowania, dokumentację techniczną, SBOM, zasady aktualizacji oraz plan zgodności przed pełnym stosowaniem CRA w 2027 roku.

Ostatnia aktualizacja

Lipiec 2026

Dla kogo jest ten artykuł

  • software house’y
  • firmy SaaS
  • producenci aplikacji webowych i mobilnych
  • firmy tworzące oprogramowanie pod własną marką
  • firmy tworzące komponenty, biblioteki, SDK lub API
  • producenci IoT, systemów wbudowanych i sprzętu z oprogramowaniem
  • CTO, Head of Engineering i liderzy product security
  • zespoły DevOps, DevSecOps i security
  • zarządy firm technologicznych
  • firmy przygotowujące się do CRA, NIS2, ISO/IEC 27001 lub wymagań klientów

Najważniejsze wnioski

  1. CRA dotyczy produktów z elementami cyfrowymi, czyli między innymi oprogramowania i sprzętu z połączeniem logicznym lub fizycznym z urządzeniem albo siecią.
  2. Software house musi najpierw ustalić, czy jest producentem w rozumieniu CRA, czy tylko podwykonawcą tworzącym oprogramowanie na zlecenie innego podmiotu.
  3. Od 11 września 2026 roku zaczynają obowiązywać obowiązki raportowania aktywnie wykorzystywanych podatności i poważnych incydentów wpływających na bezpieczeństwo produktu.
  4. Od 11 grudnia 2027 roku zacznie obowiązywać większość wymagań CRA, w tym obowiązki dotyczące projektowania, rozwoju, dokumentacji, oceny zgodności, znaku CE i obsługi podatności.
  5. Najlepsze przygotowanie to wdrożenie bezpiecznego cyklu wytwarzania oprogramowania, zarządzania podatnościami, SBOM, testów bezpieczeństwa, procedury zgłaszania podatności i dokumentacji produktu.

Czym jest Cyber Resilience Act?

Cyber Resilience Act, czyli CRA, to unijne rozporządzenie wprowadzające wymagania cyberbezpieczeństwa dla produktów z elementami cyfrowymi. Jego celem jest zwiększenie bezpieczeństwa produktów dostępnych na rynku UE oraz zapewnienie, że podatności będą obsługiwane przez cały okres wsparcia produktu.

W praktyce CRA oznacza, że cyberbezpieczeństwo produktu cyfrowego nie może być dodatkiem na końcu projektu. Musi być uwzględnione w planowaniu, projektowaniu, tworzeniu, testowaniu, wydaniu, aktualizacjach, obsłudze podatności i komunikacji z użytkownikami.

Dla software house’ów CRA jest ważne, ponieważ wiele firm technologicznych nie sprzedaje już tylko „usługi programistycznej”. Tworzy aplikacje, komponenty, platformy, produkty SaaS, integracje, biblioteki, moduły, firmware, aplikacje mobilne, systemy IoT albo oprogramowanie wprowadzane na rynek pod własną marką lub marką klienta.

Czy software house podlega CRA?

Najpierw ustal rolę firmy

Najważniejsze pytanie nie brzmi „czy tworzymy software?”, ale „czy wprowadzamy produkt z elementami cyfrowymi na rynek UE pod własną nazwą lub znakiem towarowym?”.

Software house może występować w różnych rolach:

  • producent produktu cyfrowego pod własną marką
  • dostawca komponentu oprogramowania
  • podwykonawca tworzący produkt dla klienta
  • dostawca usługi utrzymania i rozwoju produktu
  • dostawca rozwiązania SaaS
  • dostawca biblioteki, SDK, API albo modułu
  • integrator łączący komponenty w produkt końcowy

Jeżeli firma tylko tworzy oprogramowanie na zamówienie klienta, a klient wprowadza produkt na rynek pod własną marką, obowiązki producenta mogą spoczywać głównie na kliencie. To nie oznacza jednak, że software house może ignorować CRA. Klient prawdopodobnie przeniesie część wymagań na dostawcę przez umowę, proces wytwarzania, dokumentację, testy, obsługę podatności i dowody bezpieczeństwa.

Sprawdź, czy produkt jest produktem z elementami cyfrowymi

CRA obejmuje produkty z elementami cyfrowymi, czyli oprogramowanie lub sprzęt oraz powiązane z nimi rozwiązania zdalnego przetwarzania danych, jeśli produkt jest udostępniany na rynku UE i jego przewidywane użycie obejmuje połączenie z urządzeniem albo siecią.

Przykłady, które mogą wymagać analizy pod CRA:

  • aplikacja desktopowa
  • aplikacja mobilna
  • oprogramowanie instalowane lokalnie
  • firmware
  • urządzenie IoT z oprogramowaniem
  • komponent lub biblioteka wprowadzana na rynek oddzielnie
  • system operacyjny lub narzędzie administracyjne
  • rozwiązanie chmurowe powiązane z funkcją produktu cyfrowego
  • produkt SaaS, jeśli jest powiązany z produktem z elementami cyfrowymi lub spełnia przesłanki objęcia zakresem CRA

Sam fakt, że firma tworzy oprogramowanie, nie zawsze oznacza automatyczne objęcie CRA. Każdy przypadek trzeba ocenić na podstawie modelu biznesowego, sposobu udostępniania produktu, roli firmy, rodzaju produktu i umów z klientami.

Najważniejsze daty: 2026 i 2027

11 czerwca 2026 roku

Od tej daty stosowane są przepisy dotyczące jednostek oceniających zgodność. Dla software house’u ma to znaczenie głównie wtedy, gdy produkt będzie wymagał udziału jednostki notyfikowanej albo będzie należał do kategorii ważnych lub krytycznych produktów.

11 września 2026 roku

Od tej daty zaczynają obowiązywać przepisy dotyczące zgłaszania aktywnie wykorzystywanych podatności i poważnych incydentów mających wpływ na bezpieczeństwo produktu z elementami cyfrowymi.

W praktyce oznacza to, że producent powinien mieć przygotowany proces:

  • wykrywania podatności
  • przyjmowania zgłoszeń od badaczy i klientów
  • oceny, czy podatność jest aktywnie wykorzystywana
  • oceny, czy incydent jest poważny
  • zgłaszania przez platformę SRP
  • komunikacji z CSIRT i ENISA
  • dokumentowania decyzji i terminów

11 grudnia 2027 roku

Od tej daty zacznie obowiązywać większość wymagań CRA. Produkty objęte CRA będą musiały spełniać wymagania cyberbezpieczeństwa, przejść odpowiednią ocenę zgodności, mieć dokumentację techniczną, deklarację zgodności UE, oznakowanie CE oraz określony okres wsparcia.

Co trzeba przygotować w 2026 roku?

1. Mapę produktów i odpowiedzialności

Software house powinien zacząć od mapy produktów i ról. Bez tego trudno określić, które obowiązki dotyczą firmy bezpośrednio, a które będą wynikały z umów z klientami.

Sprawdź:

  • które produkty firma sprzedaje pod własną marką
  • które produkty tworzy dla klientów
  • które komponenty udostępnia oddzielnie
  • które produkty są dostępne na rynku UE
  • które produkty mają połączenie z urządzeniem albo siecią
  • które produkty zawierają komponenty open source
  • które produkty mają funkcje bezpieczeństwa
  • które produkty mogą należeć do kategorii ważnych lub krytycznych

Dowód do przygotowania: rejestr produktów, właściciel produktu, rola firmy, rynek, typ produktu, model udostępniania i wstępna kwalifikacja pod CRA.

2. Ocenę ryzyka cyberbezpieczeństwa produktu

CRA wymaga podejścia opartego na ryzyku. Producent powinien ocenić ryzyka cyberbezpieczeństwa produktu i wykorzystać wynik tej oceny przy projektowaniu, rozwoju, dostarczeniu i utrzymaniu produktu.

Ocena ryzyka powinna obejmować:

  • architekturę produktu
  • dane przetwarzane przez produkt
  • użytkowników i role
  • dostępy administracyjne
  • integracje
  • komponenty zewnętrzne
  • powierzchnię ataku
  • możliwe skutki kompromitacji
  • ryzyka dla użytkowników i klientów
  • okres wsparcia i aktualizacji

Dowód do przygotowania: raport oceny ryzyka produktu i lista wymagań bezpieczeństwa wynikających z tej oceny.

3. Bezpieczny cykl wytwarzania oprogramowania

Software house powinien uporządkować proces tworzenia oprogramowania tak, aby bezpieczeństwo było częścią codziennej pracy zespołu, a nie jednorazowym testem przed wydaniem.

Bezpieczny cykl wytwarzania powinien obejmować:

  • wymagania bezpieczeństwa na etapie analizy
  • modelowanie zagrożeń dla funkcji wysokiego ryzyka
  • bezpieczne standardy kodowania
  • przegląd kodu pod kątem bezpieczeństwa
  • automatyczne testy bezpieczeństwa w procesie CI/CD
  • zarządzanie zależnościami
  • testy aplikacji i API
  • kontrolę sekretów i kluczy
  • bezpieczne wydania
  • monitorowanie podatności po wydaniu

Dowód do przygotowania: opis procesu bezpiecznego wytwarzania oprogramowania, procedury, checklisty i wyniki testów.

4. Proces zarządzania podatnościami

CRA wzmacnia obowiązki producentów w zakresie obsługi podatności. Firma musi mieć proces, który pozwala wykrywać, analizować, priorytetyzować, naprawiać i komunikować podatności.

Proces powinien określać:

  • skąd przyjmowane są zgłoszenia podatności
  • kto je analizuje
  • jak oceniana jest ważność podatności
  • jak ustalany jest priorytet naprawy
  • kto podejmuje decyzję o aktualizacji
  • jak informowani są użytkownicy
  • kiedy podatność podlega zgłoszeniu zgodnie z CRA
  • jak dokumentowane są działania

Dowód do przygotowania: procedura zarządzania podatnościami, rejestr podatności, status napraw i decyzje o zgłoszeniach.

5. Proces odpowiedzialnego zgłaszania podatności

Firma powinna umożliwić klientom, badaczom bezpieczeństwa i użytkownikom zgłaszanie podatności w kontrolowany sposób. W praktyce oznacza to przygotowanie jasnego kanału kontaktu, zasad obsługi zgłoszeń i odpowiedzialności po stronie zespołu.

Warto przygotować:

  • adres e-mail do zgłaszania podatności
  • stronę security.txt
  • politykę odpowiedzialnego zgłaszania podatności
  • proces potwierdzania zgłoszeń
  • wewnętrzny system obsługi zgłoszeń
  • zasady komunikacji z badaczem
  • proces publikowania informacji o poprawkach

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

6. SBOM i kontrolę komponentów

SBOM, czyli spis komponentów oprogramowania, pomaga ustalić, z jakich bibliotek, pakietów i komponentów składa się produkt. Jest ważny dla zarządzania podatnościami, bezpieczeństwa łańcucha dostaw i szybkiej reakcji na nowe podatności w komponentach.

Software house powinien wiedzieć:

  • jakie komponenty są używane w produkcie
  • jakie mają wersje
  • jakie mają licencje
  • czy zawierają znane podatności
  • czy są utrzymywane
  • czy mają krytyczne zależności
  • jak szybko można sprawdzić wpływ nowej podatności na produkt

Dowód do przygotowania: SBOM dla produktu, proces aktualizacji SBOM i powiązanie z zarządzaniem podatnościami.

7. Dokumentację techniczną produktu

Dokumentacja techniczna jest jednym z najważniejszych elementów przygotowania do CRA. Powinna pokazywać, że produkt spełnia wymagania cyberbezpieczeństwa, a firma potrafi to udowodnić.

Dokumentacja może obejmować:

  • opis produktu
  • architekturę
  • model zagrożeń
  • ocenę ryzyka cyberbezpieczeństwa
  • wymagania bezpieczeństwa
  • zastosowane kontrole
  • wyniki testów
  • proces aktualizacji
  • proces zarządzania podatnościami
  • okres wsparcia
  • informacje dla użytkownika
  • deklarację zgodności UE, jeśli dotyczy

Dowód do przygotowania: komplet dokumentacji technicznej produktu zgodny z wymaganiami CRA i gotowy do okazania organom nadzoru rynku.

8. Proces zgłaszania podatności i incydentów

Od 11 września 2026 roku producenci będą musieli zgłaszać aktywnie wykorzystywane podatności i poważne incydenty wpływające na bezpieczeństwo produktów z elementami cyfrowymi.

Firma powinna mieć proces pozwalający odpowiedzieć na pytania:

  • kto ocenia, czy podatność jest aktywnie wykorzystywana?
  • kto ocenia, czy incydent jest poważny?
  • kto odpowiada za zgłoszenie?
  • gdzie zbierane są informacje techniczne?
  • jak pilnowane są terminy 24 godzin, 72 godzin i raportu końcowego?
  • kto komunikuje się z klientami?
  • kto zatwierdza komunikaty?

Dowód do przygotowania: procedura zgłoszeń CRA, role, wzory notatek, ścieżka eskalacji i rejestr zgłoszeń.

Co trzeba przygotować w 2027 roku?

1. Pełną gotowość produktu do wymagań CRA

W 2027 roku firma powinna przejść od planowania do pełnej gotowości. Produkt powinien mieć wdrożone wymagania bezpieczeństwa, proces aktualizacji, dokumentację techniczną i dowody testów.

Najważniejsze elementy gotowości:

  • ocena ryzyka produktu
  • wdrożone wymagania bezpieczeństwa
  • testy bezpieczeństwa
  • obsługa podatności
  • SBOM
  • dokumentacja techniczna
  • instrukcje dla użytkownika
  • okres wsparcia
  • proces aktualizacji
  • proces zgłoszeń

2. Ocenę zgodności

Przed wprowadzeniem produktu na rynek producent powinien wykonać odpowiednią ocenę zgodności. Dla wielu produktów może być możliwa samoocena, ale dla niektórych kategorii ważnych lub krytycznych produktów może być wymagany bardziej rygorystyczny tryb, w tym udział jednostki notyfikowanej.

Software house powinien sprawdzić:

  • do jakiej kategorii należy produkt
  • czy możliwa jest samoocena
  • czy trzeba zastosować normy zharmonizowane
  • czy wymagany jest udział jednostki notyfikowanej
  • jakie dowody trzeba przygotować
  • kto zatwierdza deklarację zgodności

3. Deklarację zgodności i oznakowanie CE

Dla produktów objętych CRA producent powinien przygotować deklarację zgodności UE i umieścić oznakowanie CE, jeśli produkt spełnia wymagania. To wymaga wcześniejszego zebrania dokumentacji, testów, oceny ryzyka i dowodów spełnienia wymagań.

4. Gotowość operacyjną po wydaniu produktu

CRA nie kończy się w dniu wydania produktu. Producent musi obsługiwać podatności i aktualizacje w okresie wsparcia. To wymaga ludzi, procesu, narzędzi i budżetu.

W 2027 roku firma powinna mieć gotowe:

  • zespół odpowiedzialny za product security
  • proces aktualizacji bezpieczeństwa
  • monitoring podatności komponentów
  • kanał zgłaszania podatności
  • procedurę komunikacji z użytkownikami
  • rejestr podatności i incydentów
  • metryki reakcji i napraw

Plan przygotowania na 30, 60 i 90 dni

Pierwsze 30 dni

  • wyznacz właściciela przygotowania do CRA
  • zrób listę produktów i komponentów
  • ustal rolę firmy dla każdego produktu
  • sprawdź, które produkty mogą być objęte CRA
  • zidentyfikuj produkty wysokiego ryzyka
  • sprawdź, czy istnieje proces obsługi podatności
  • sprawdź, czy powstaje SBOM dla produktu
  • zaplanuj analizę luk CRA

Dni 31 do 60

  • wykonaj ocenę ryzyka dla kluczowych produktów
  • przygotuj mapę wymagań bezpieczeństwa
  • uruchom proces odpowiedzialnego zgłaszania podatności
  • zacznij tworzyć dokumentację techniczną
  • sprawdź zależności i komponenty zewnętrzne
  • zdefiniuj proces aktualizacji bezpieczeństwa
  • sprawdź wymagania umów z klientami
  • ustal, czy produkt wymaga szczególnej oceny zgodności

Dni 61 do 90

  • wdroż testy bezpieczeństwa w procesie wytwarzania
  • przygotuj wzór raportu ryzyka produktu
  • przygotuj wzór dokumentacji technicznej
  • przygotuj procedurę zgłoszeń CRA
  • przetestuj proces obsługi podatności
  • przygotuj plan działań na 2027 rok
  • przeszkol zespoły produktowe, deweloperskie i support
  • przygotuj raport dla zarządu

Checklista CRA dla software house’u

Zakres i rola

  • czy mamy listę produktów cyfrowych?
  • czy wiemy, które produkty są udostępniane na rynku UE?
  • czy wiemy, gdzie jesteśmy producentem, a gdzie podwykonawcą?
  • czy znamy obowiązki wynikające z umów z klientami?
  • czy wiemy, które produkty mogą być ważne lub krytyczne?

Bezpieczne wytwarzanie

  • czy mamy wymagania bezpieczeństwa dla produktu?
  • czy robimy modelowanie zagrożeń?
  • czy wykonujemy przeglądy kodu?
  • czy testujemy aplikacje i API?
  • czy sprawdzamy sekrety w kodzie?
  • czy monitorujemy podatności zależności?
  • czy bezpieczeństwo jest częścią procesu CI/CD?

Podatności i aktualizacje

  • czy mamy proces przyjmowania zgłoszeń podatności?
  • czy mamy rejestr podatności?
  • czy wiemy, jak priorytetyzować podatności?
  • czy mamy proces wydawania poprawek bezpieczeństwa?
  • czy użytkownicy otrzymują informacje o aktualizacjach?
  • czy znamy okres wsparcia produktu?

Dokumentacja i dowody

  • czy mamy ocenę ryzyka produktu?
  • czy mamy dokumentację techniczną?
  • czy mamy SBOM?
  • czy mamy wyniki testów bezpieczeństwa?
  • czy mamy dowody spełnienia wymagań bezpieczeństwa?
  • czy mamy instrukcje dla użytkowników?
  • czy mamy proces oceny zgodności?

Najczęstsze błędy software house’ów przy CRA

Błąd 1: czekanie do 2027 roku

Pełne stosowanie większości obowiązków zacznie się w 2027 roku, ale obowiązki raportowania pojawiają się wcześniej. Dodatkowo przygotowanie procesów, dokumentacji i testów może zająć wiele miesięcy.

Błąd 2: traktowanie CRA jako tematu prawnego

CRA ma skutki prawne, ale problem jest także techniczny i organizacyjny. Prawnicy mogą pomóc w interpretacji, ale zespoły produktowe, techniczne i bezpieczeństwa muszą wdrożyć procesy.

Błąd 3: brak jasnej roli w projekcie klienta

Jeżeli software house tworzy produkt dla klienta, trzeba jasno ustalić, kto odpowiada za ocenę ryzyka, dokumentację techniczną, testy, SBOM, obsługę podatności i zgodność produktu.

Błąd 4: brak SBOM i kontroli zależności

Nowoczesne produkty cyfrowe korzystają z wielu bibliotek i komponentów zewnętrznych. Bez SBOM trudno szybko ocenić, czy nowa podatność dotyczy produktu.

Błąd 5: testy bezpieczeństwa tylko na końcu projektu

Jeżeli test bezpieczeństwa pojawia się dopiero przed wydaniem, naprawa błędów jest droższa i trudniejsza. Bezpieczeństwo powinno być częścią całego cyklu tworzenia produktu.

Błąd 6: brak procesu po wydaniu produktu

Produkt trzeba utrzymywać po wydaniu. Potrzebne są aktualizacje, obsługa zgłoszeń, monitorowanie podatności, komunikacja z użytkownikami i dokumentowanie działań.

Błąd 7: brak dowodów

Nawet jeśli zespół wykonuje dobre praktyki, musi umieć je pokazać. Brak dokumentacji, rejestrów i wyników testów osłabia gotowość do oceny zgodności, rozmów z klientami i kontroli.

Jakie dokumenty i dowody warto przygotować?

Dokumenty produktu

  • opis produktu
  • architektura produktu
  • lista funkcji bezpieczeństwa
  • model zagrożeń
  • ocena ryzyka cyberbezpieczeństwa
  • wymagania bezpieczeństwa
  • okres wsparcia
  • instrukcje dla użytkownika

Dokumenty procesu wytwarzania

  • polityka bezpiecznego tworzenia oprogramowania
  • procedura przeglądu kodu
  • procedura testów bezpieczeństwa
  • procedura zarządzania zależnościami
  • procedura zarządzania sekretami
  • proces wydania i aktualizacji
  • proces akceptacji ryzyka

Dokumenty obsługi podatności

  • polityka odpowiedzialnego zgłaszania podatności
  • rejestr podatności
  • procedura triage
  • procedura eskalacji
  • procedura komunikacji z użytkownikami
  • procedura zgłoszeń CRA
  • szablony komunikatów bezpieczeństwa

Dowody techniczne

  • SBOM
  • wyniki skanów zależności
  • wyniki testów aplikacji
  • wyniki testów API
  • wyniki przeglądów kodu
  • raporty z testów penetracyjnych
  • dowody usunięcia podatności
  • historia aktualizacji bezpieczeństwa

Przykład biznesowy

Software house rozwija platformę SaaS dla klientów z sektora B2B. Produkt ma aplikację webową, API, integracje z systemami klientów, aplikację mobilną i komponent instalowany u klienta. Firma do tej pory koncentrowała się na funkcjach i czasie wdrożenia, a bezpieczeństwo sprawdzała głównie przez okresowe testy penetracyjne.

Po wstępnej analizie CRA okazuje się, że firma musi uporządkować znacznie więcej niż sam test bezpieczeństwa. Potrzebuje rejestru produktów, oceny ryzyka, modelowania zagrożeń, SBOM, procesu obsługi podatności, procedury zgłoszeń, dokumentacji technicznej i zasad aktualizacji.

Największą zmianą nie jest zakup nowego narzędzia. Największą zmianą jest przejście od podejścia „testujemy przed wydaniem” do podejścia „bezpieczeństwo jest częścią całego cyklu życia produktu”.

W ciągu 90 dni firma może przygotować fundament: mapę produktów, ocenę ryzyka, proces zgłaszania podatności, SBOM dla głównego produktu, podstawową dokumentację techniczną i plan działań na 2027 rok.

Jak ccyber.io może pomóc?

ccyber.io pomaga software house’om i firmom produktowym przygotować się do Cyber Resilience Act w sposób praktyczny, techniczny i biznesowy. Nie ograniczamy się do interpretacji regulacji. Pomagamy przełożyć CRA na procesy, dokumentację, testy i dowody.

Możemy wesprzeć organizację w obszarach:

  • ocena gotowości do CRA
  • analiza luk dla produktu cyfrowego
  • mapowanie produktów i ról producenta
  • ocena ryzyka cyberbezpieczeństwa produktu
  • modelowanie zagrożeń
  • wdrożenie bezpiecznego cyklu wytwarzania oprogramowania
  • przygotowanie procesu obsługi podatności
  • przygotowanie SBOM i kontroli zależności
  • przegląd dokumentacji technicznej
  • szkolenia dla zespołów deweloperskich i produktowych
  • plan przygotowania do 2026 i 2027 roku

Najlepszym pierwszym krokiem jest krótki warsztat CRA readiness. Pozwala ustalić, które produkty mogą być objęte CRA, jakie role pełni firma, jakie dowody już istnieją i które działania trzeba wykonać przed terminami w 2026 oraz 2027 roku.

FAQ

Czy CRA dotyczy software house’ów?

Może dotyczyć. Jeśli software house wprowadza na rynek UE produkt z elementami cyfrowymi pod własną marką, może pełnić rolę producenta. Jeśli tworzy produkt dla klienta, wymagania mogą zostać przeniesione umownie przez klienta.

Czy CRA dotyczy SaaS?

To zależy od modelu produktu i sposobu świadczenia usługi. CRA może obejmować powiązane rozwiązania zdalnego przetwarzania danych, jeśli są niezbędne dla funkcji produktu z elementami cyfrowymi. Każdy przypadek SaaS warto ocenić indywidualnie.

Czy oprogramowanie open source podlega CRA?

CRA ma szczególne podejście do wolnego i otwartego oprogramowania. Niekomercyjne udostępnianie open source co do zasady jest traktowane inaczej niż produkt wprowadzany na rynek w ramach działalności komercyjnej. Jeżeli firma monetyzuje produkt open source lub wprowadza go na rynek, trzeba przeprowadzić analizę zakresu.

Co trzeba zrobić do 11 września 2026 roku?

Najważniejsze jest przygotowanie procesu zgłaszania aktywnie wykorzystywanych podatności i poważnych incydentów wpływających na bezpieczeństwo produktu. Firma powinna ustalić role, terminy, kanały zgłoszeń i sposób dokumentowania decyzji.

Co trzeba przygotować do 11 grudnia 2027 roku?

Trzeba przygotować pełną gotowość do głównych wymagań CRA: ocenę ryzyka produktu, bezpieczny cykl wytwarzania, obsługę podatności, dokumentację techniczną, ocenę zgodności, deklarację zgodności, oznakowanie CE, okres wsparcia i informacje dla użytkowników.

Czy SBOM jest obowiązkowy?

CRA wzmacnia znaczenie znajomości komponentów i zarządzania podatnościami. W praktyce SBOM jest jednym z najważniejszych narzędzi do wykazania kontroli nad komponentami, zależnościami i ryzykiem łańcucha dostaw oprogramowania.

Czy wystarczy test penetracyjny?

Nie. Test penetracyjny jest ważny, ale nie wystarcza. CRA wymaga podejścia obejmującego cały cykl życia produktu: ocenę ryzyka, projektowanie, development, testy, dokumentację, aktualizacje, obsługę podatności i wsparcie po wydaniu.

Od czego zacząć przygotowanie do CRA?

Najlepiej zacząć od mapy produktów i ról, analizy zakresu CRA, oceny luk oraz planu działań na 2026 i 2027 rok. Następnie trzeba uporządkować bezpieczny cykl wytwarzania, podatności, SBOM i dokumentację.

Podsumowanie

Cyber Resilience Act zmienia sposób, w jaki firmy technologiczne powinny myśleć o bezpieczeństwie produktu. Bezpieczeństwo nie jest już tylko dobrą praktyką, przewagą sprzedażową albo wymaganiem większego klienta. Staje się elementem zgodności, dokumentacji, oceny ryzyka i odpowiedzialności producenta.

Software house’y powinny wykorzystać 2026 rok na przygotowanie fundamentów: mapy produktów, procesu obsługi podatności, oceny ryzyka, bezpiecznego cyklu wytwarzania, SBOM, dokumentacji technicznej i procedur zgłoszeniowych.

W 2027 roku organizacja powinna przejść do pełnej gotowości: oceny zgodności, dowodów spełnienia wymagań, informacji dla użytkowników, okresu wsparcia, deklaracji zgodności i procesu utrzymania bezpieczeństwa produktu po wydaniu.

Źródła

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.