k0nsult.cloud / ai-truth / ipIII / playbook-podatnosci
Playbook D · Podatności / CVE / misconfig
Procedura reagowania na podatności oprogramowania, aktywnie eksploatowane CVE oraz błędy konfiguracji (misconfiguration). Podatność niezałatana na systemie brzegowym jest jednym z głównych wektorów uzyskania pierwszego dostępu (initial access) — playbook przekłada wiedzę o podatności na czas i dowód usunięcia ryzyka.
Podatność bez SLA patchowania to otwarte drzwi z licznikiem czasu, którego nikt nie czyta.
Poziom 1 (cyber klasyczny). Priorytet domyślny P1, podbijany do P0 gdy CVE jest na liście CISA KEV (known exploited) lub gdy dotyczy systemu brzegowego z ekspozycją na Internet. Wyzwalane flagi: NIS2_RELEVANT, KSC_RELEVANT, warunkowo CRITICAL_INFRA.
Problem — podatności jako wektor pierwszego dostępu
Raporty branżowe (Verizon DBIR, ENISA Threat Landscape) od lat wskazują eksploatację podatności jako jeden z trzech dominujących wektorów uzyskania pierwszego dostępu — obok phishingu i wykradzionych poświadczeń. PUBLIC CLAIM Kluczowe okno ryzyka to czas między publikacją poprawki (i towarzyszącego jej opisu podatności) a jej wdrożeniem u odbiorcy — w tym oknie atakujący ma gotową mapę słabości.
- Systemy brzegowe — VPN, firewalle, serwery pocztowe, bramy aplikacyjne, urządzenia dostępowe. Najwyższe ryzyko: bezpośrednia ekspozycja + wysoka wartość dostępu.
- Zero-day i n-day — n-day (znana, załatana, ale niewdrożona) jest w praktyce częstszym źródłem incydentów niż zero-day, bo eksploit jest publiczny.
- Misconfiguration — otwarte panele administracyjne, domyślne poświadczenia, publiczne buckety/storage, brak nagłówków bezpieczeństwa, nadmiarowe uprawnienia. Podatność bez CVE, równie groźna.
- Dług podatnościowy — narastająca kolejka niezałatanych systemów bez SLA to systemowe ryzyko, nie pojedynczy incydent.
WYKRYCIE→TRIAGE / KEV?→PRIORYTET + SLA→ŁATA / MITYGACJA→WERYFIKACJA→DOWÓD→RAPORT→ODPORNOŚĆ +1
24–48h
SLA dla KEV / P0
known exploited · aktywna eksploatacja
72h
SLA Critical (CVSS 9.0+)
bez potwierdzonej eksploatacji
7d
SLA High (CVSS 7.0–8.9)
Medium 30d · Low backlog
8
Kroków playbooka
od wykrycia do walidacji
Rozwiązanie 1 — Vulnerability Management (zarządzanie podatnościami)
Ciągły proces, nie jednorazowy skan. Cel: żadna podatność nie „ginie" bez decyzji (łatam / mityguję / akceptuję ryzyko z uzasadnieniem).
- Skan cykliczny — cotygodniowy skan całego środowiska (authenticated scan tam, gdzie to możliwe — daje pełniejszy obraz niż skan sieciowy).
- Skan po deployu — każde wdrożenie na produkcję uruchamia skan różnicowy: czy nowa wersja / obraz nie wprowadził znanej podatności.
- Lista krytycznych CVE — utrzymywany rejestr podatności dotyczących stacku odbiorcy (technologie, biblioteki, urządzenia), z mapowaniem na konkretne aktywa.
- CISA KEV — codzienna synchronizacja z katalogiem Known Exploited Vulnerabilities. Każda pozycja z KEV obecna w środowisku = automatyczne podbicie do P0.
- Enrichment — łączenie CVSS z kontekstem: ekspozycja aktywa, krytyczność biznesowa, dostępność eksploita (EPSS jako sygnał prawdopodobieństwa eksploatacji).
- Właściciel aktywa — każda podatność ma przypisanego właściciela systemu odpowiedzialnego za łatę; brak właściciela = eskalacja do Admina.
Rozwiązanie 2 — SLA patchowania (zegar, nie intencja)
SLA nadaje podatności wymiar czasowy i rozliczalny. Zegar startuje w momencie wykrycia/publikacji, nie w momencie „gdy będzie okno serwisowe".
| Klasa | Kryterium | SLA wdrożenia łaty | Priorytet | Eskalacja przy przekroczeniu |
| P0 / KEV | Na liście CISA KEV lub potwierdzona aktywna eksploatacja | 24–48h | P0 | Admin + Legal (ocena NIS2/KSC) |
| Critical | CVSS 9.0–10.0, brak potwierdzonej eksploatacji | 72h | P1 | DevSecOps lead + właściciel aktywa |
| High | CVSS 7.0–8.9 | 7 dni | P1 | DevSecOps lead |
| Medium | CVSS 4.0–6.9 | 30 dni | P2 | Przegląd miesięczny |
| Low | CVSS < 4.0 | Backlog / okno serwisowe | P3 | Przegląd kwartalny |
Zasada: gdy łata nie może zostać wdrożona w SLA (zależność biznesowa, brak poprawki), obowiązkowa jest mitygacja kompensacyjna (WAF rule, blokada portu, segmentacja, wyłączenie funkcji) — udokumentowana i z terminem docelowego załatania. Akceptacja ryzyka to decyzja świadoma i podpisana, nie milczące pominięcie.
Rozwiązanie 3 — DevSecOps (shift-left, podatność wychwycona przed produkcją)
Najtańsza podatność to ta, która nigdy nie dotarła na produkcję. Kontrole wpięte w pipeline CI/CD:
SAST
Statyczna analiza kodu źródłowego — wykrywanie wzorców podatności (injection, niebezpieczne API) przy każdym merge/PR.
DAST
Dynamiczna analiza działającej aplikacji na środowisku testowym — realne żądania, wykrywanie podatności runtime.
SCA
Software Composition Analysis — skan zależności open-source pod kątem znanych CVE w bibliotekach.
Secret scanning
Wykrywanie kluczy API, haseł, tokenów w kodzie i historii repozytorium — blokada commita z sekretem.
Container scan
Skan obrazów kontenerów (warstwy bazowe, pakiety systemowe) przed pushem do rejestru i przy deployu.
IaC scan
Analiza Infrastructure-as-Code (Terraform, manifesty) pod kątem misconfiguration przed provisioningiem.
Dependency pinning
Przypięcie wersji zależności (lockfile, hash) — brak niekontrolowanego podciągnięcia podatnej wersji.
Gate w pipeline
Krytyczny wynik SAST/SCA blokuje deploy (fail the build) — podatność nie przechodzi do prod „na później".
Rozwiązanie 4 — Hardening (redukcja powierzchni ataku)
Utwardzenie konfiguracji domyka drogę, którą podatność mogłaby zostać wykorzystana. Lista kontrolna misconfiguration:
- Brak publicznych paneli administracyjnych — panele admin dostępne wyłącznie przez VPN / listę dozwolonych adresów, nigdy z otwartego Internetu.
- MFA — wieloskładnikowe uwierzytelnianie na wszystkich kontach uprzywilejowanych i dostępach zdalnych; MFA odporne na phishing dla admina.
- Least privilege — konta i usługi z minimalnym niezbędnym zakresem uprawnień; brak współdzielonych kont admin.
- Security headers —
Strict-Transport-Security, X-Content-Type-Options, X-Frame-Options, Referrer-Policy na wszystkich odpowiedziach.
- CSP — Content-Security-Policy (nonce + strict-dynamic) domykająca wektory XSS i wstrzyknięcia zasobów zewnętrznych.
- NOINDEX paneli — panele wewnętrzne i środowiska testowe oznaczone
noindex + wyłączone z wyszukiwarek, by nie stały się celem rekonesansu.
- Logi admin — pełne, niemodyfikowalne logowanie działań uprzywilejowanych (kto, kiedy, co), z retencją i alertowaniem na anomalie.
- Zamknięte porty i usługi — wyłączenie nieużywanych usług, zamknięcie zbędnych portów, domyślne poświadczenia zmienione i zweryfikowane.
Playbook operacyjny — 8 kroków
1. Wykrycie i identyfikacja — źródło sygnału (skan, advisory dostawcy, KEV, zgłoszenie). Ustal CVE/rodzaj misconfiguration, dotknięte aktywa, wersje, ekspozycję. Zabezpiecz zrzut wyniku skanu jako artefakt dowodowy (hash + znacznik czasu).
2. Triage i klasyfikacja — sprawdź obecność na CISA KEV, wylicz priorytet (CVSS + ekspozycja + krytyczność biznesowa + EPSS). Ustaw klasę SLA. KEV lub aktywna eksploatacja → podbij do P0.
3. Powstrzymanie / mitygacja tymczasowa — jeśli łata niedostępna w SLA: reguła WAF, blokada portu/usługi, segmentacja, wyłączenie podatnej funkcji. Cel: zamknąć okno eksploatacji zanim wdrożysz właściwą poprawkę.
4. Test łaty na środowisku nieprodukcyjnym — wdrożenie poprawki na staging, weryfikacja braku regresji funkcjonalnej. Dla P0/KEV dopuszczalna ścieżka przyspieszona z ograniczonym testem i planem wycofania (rollback).
5. Wdrożenie na produkcję — instalacja łaty / zmiana konfiguracji w oknie zgodnym z SLA. Rejestr: wersja przed/po, wykonawca, czas. Dla flotowych aktywów — kontrola pokrycia (ile % systemów załatanych).
6. Weryfikacja usunięcia podatności — ponowny skan potwierdzający, że podatność nie jest już wykrywalna. Sprawdzenie braku śladów wcześniejszej eksploatacji (jeśli okno było otwarte — przejdź do oceny incydentu / IR).
7. Ocena flag prawnych — jeśli podatność była eksploatowana i dotyczy usługi kluczowej:
NIS2_RELEVANT (zgłoszenie CSIRT 24h/72h/final),
KSC_RELEVANT. Jeśli doszło do dostępu do danych osobowych → uruchom
playbook wyciek-danych (RODO art. 33).
8. Walidacja, raport i aktualizacja odporności — kompletny ślad dowodowy, potwierdzenie zamknięcia SLA. Lessons learned: aktualizacja reguł skanera, dodanie kontroli do pipeline, korekta baseline hardeningu. Poziom odporności +1.
Powiązania systemowe
← Classification Engine
KEV + ekspozycja + CVSS wyznaczają priorytet i SLA. Silnik klasyfikacji.
← Evidence Layer
Wynik skanu przed/po, log wdrożenia łaty, hash artefaktu. Evidence Board.
→ Legal / Compliance
NIS2 / KSC gdy usługa kluczowa i eksploatacja. Compliance.
Uwaga metodyczna: odwołania do Verizon DBIR, ENISA i CISA KEV to publicznie znane źródła o krajobrazie zagrożeń (PUBLIC CLAIM), nie potwierdzone naruszenia w środowisku odbiorcy. Progi CVSS, klasy SLA i wektory to ramka metodyczna (norma/dobra praktyka), nie opis konkretnego incydentu. Wszelkie wartości liczbowe użyte przykładowo w tym playbooku należy traktować jako SYMULACJA (dane demonstracyjne), nie operacyjne.
Doktryna: podatność uznaje się za zamkniętą dopiero po weryfikującym skanie i kompletnym śladzie dowodowym — deklaracja „załatano" bez dowodu to GAP, nie zamknięcie.