
# Automatyczne mapowanie kontroli ISO 27001 wspomagane AI dla kwestionariuszy bezpieczeństwa

Kwestionariusze bezpieczeństwa są wąskim gardłem w ocenie ryzyka dostawców. Audytorzy często żądają dowodów, że dostawca SaaS spełnia wymogi [ISO 27001](https://www.iso.org/isoiec-27001-information-security.html), ale ręczna praca potrzebna do znalezienia właściwej kontroli, wyodrębnienia wspierającej polityki i sformułowania zwięzłej odpowiedzi może trwać dniami. Nowa generacja platform napędzanych AI zmienia ten paradygmat z **reaktywnych, intensywnie angażujących ludzi** procesów na **predykcyjne, zautomatyzowane** przepływy pracy.

W tym artykule prezentujemy **pierwszorzędny silnik**, który:

1. **Wczytuje cały zestaw kontroli ISO 27001** i mapuje każdą kontrolę na wewnętrzny repozytorium polityk organizacji.  
2. **Tworzy graf wiedzy** łączący kontrole, polityki, artefakty dowodowe i właścicieli interesariuszy.  
3. **Wykorzystuje pipeline Retrieval‑Augmented Generation (RAG)** do generowania odpowiedzi na kwestionariusze, które są *zgodne, kontekstowe i aktualne*.  
4. **Wykrywa odchylenia polityk w czasie rzeczywistym**, wywołując automatyczne ponowne generowanie, gdy źródłowa polityka kontroli ulegnie zmianie.  
5. **Udostępnia niskokodowy interfejs UI** dla audytorów do drobnego dostosowywania lub zatwierdzania wygenerowanych odpowiedzi przed ich przesłaniem.  

Poniżej poznasz elementy architektury, przepływ danych, zastosowane techniki AI oraz wymierne korzyści zaobserwowane w wczesnych pilotażach.

---

## 1. Dlaczego mapowanie kontroli ISO 27001 ma znaczenie

[ISO 27001](https://www.iso.org/isoiec-27001-information-security.html) dostarcza powszechnie akceptowane ramy zarządzania bezpieczeństwem informacji. Jej **Załącznik A** zawiera 114 kontroli, z podkontrolami i wytycznymi implementacyjnymi. Gdy kwestionariusz bezpieczeństwa trzeciej strony pyta, na przykład:

> „Opisz, jak zarządzacie cyklem życia kluczy kryptograficznych (Control A.10.1).”

zespół bezpieczeństwa musi odnaleźć odpowiednią politykę, wyodrębnić konkretny opis procesu i dostosować go do sformułowania w kwestionariuszu. Powtarzanie tego dla dziesiątek kontroli w wielu kwestionariuszach powoduje:

* **Powieloną pracę** – identyczne odpowiedzi są przepisywane przy każdym żądaniu.  
* **Niespójną terminologię** – subtelne zmiany w sformułowaniach mogą być odebrane jako luki.  
* **Przestarzałe dowody** – polityki ewoluują, ale projekty kwestionariuszy często pozostają niezmienione.  

Automatyzacja mapowania kontroli ISO 27001 na fragmenty odpowiedzi wielokrotnego użytku eliminuje te problemy w skali.

---

## 2. Główna koncepcja architektoniczna

Silnik opiera się na trzech filarach:

| Filar | Cel | Kluczowe technologie |
|-------|-----|----------------------|
| **Graf wiedzy Kontrola‑Polityka** | Normalizuje kontrole ISO 27001, wewnętrzne polityki, artefakty i właścicieli w zapytaniach grafowych. | Neo4j, RDF, Graph Neural Networks (GNN) |
| **Generowanie odpowiedzi RAG** | Pobiera najbardziej relewantny fragment polityki, wzbogaca go kontekstem i generuje dopracowaną odpowiedź. | Wyszukiwanie (BM25 + Vector Search), LLM (Claude‑3, Gemini‑Pro), Szablony Promptów |
| **Wykrywanie odchyleń polityk i automatyczna aktualizacja** | Monitoruje zmiany w politykach źródłowych, ponownie uruchamia generowanie i powiadamia interesariuszy. | Change Data Capture (CDC), Diff‑Auditing, Event‑Driven Pub/Sub (Kafka) |

Poniżej diagram Mermaid wizualizujący przepływ danych od ingestii po dostarczenie odpowiedzi.

```mermaid
graph LR
    A[ISO 27001 Control Catalog] -->|Import| KG[Control‑Policy Knowledge Graph]
    B[Internal Policy Store] -->|Sync| KG
    C[Evidence Repository] -->|Link| KG
    KG -->|Query| RAG[Retrieval‑Augmented Generation Engine]
    RAG -->|Generate| Answer[Questionnaire Answer Draft]
    D[Policy Change Feed] -->|Event| Drift[Policy Drift Detector]
    Drift -->|Trigger| RAG
    Answer -->|Review UI| UI[Security Analyst Dashboard]
    UI -->|Approve/Reject| Answer
```

*Wszystkie etykiety węzłów są ujęte w podwójnych cudzysłowach, co jest wymogiem składni Mermaid.*

---

## 3. Budowa grafu wiedzy Kontrola‑Polityka

### 3.1 Modelowanie danych

* **Węzły Kontroli** – Każda kontrola ISO 27001 (np. „A.10.1”) staje się węzłem z atrybutami: `title`, `description`, `reference`, `family`.  
* **Węzły Polityk** – Polityki wewnętrzne są importowane z plików Markdown, Confluence lub repozytoriów Git. Atrybuty obejmują `version`, `owner`, `last_modified`.  
* **Węzły Dowodów** – Odnośniki do logów audytowych, migawków konfiguracji lub certyfikatów stron trzecich.  
* **Krawędzie własności** – `MANAGES`, `EVIDENCE_FOR`, `DERIVES_FROM`.  

Schemat grafu umożliwia zapytania w stylu SPARQL, np.:

```cypher
MATCH (c:Control {id:"A.10.1"})-[:DERIVES_FROM]->(p:Policy)
RETURN p.title, p.content LIMIT 1
```

### 3.2 Wzbogacanie przy pomocy GNN

Sieć neuronowa Graph Neural Network jest trenowana na historycznych parach pytań‑odpowiedzi, aby nauczyć się **semantycznego współczynnika podobieństwa** pomiędzy kontrolami a fragmentami polityk. Ten wynik jest przechowywany jako własność krawędzi `relevance_score`, co znacząco podnosi precyzję wyszukiwania w porównaniu do prostego dopasowania słów kluczowych.

---

## 4. Pipeline Retrieval‑Augmented Generation

### 4.1 Etap wyszukiwania

1. **Wyszukiwanie słów kluczowych** – BM25 nad tekstem polityk.  
2. **Wyszukiwanie wektorowe** – Embeddingi (Sentence‑Transformers) dla semantycznego dopasowania.  
3. **Ranking hybrydowy** – Łączymy wyniki BM25 i `relevance_score` z GNN przy użyciu liniowego współczynnika (α = 0.6 dla semantyki, 0.4 dla leksykalnego).  

Top‑k (zwykle 3) fragmenty polityki są przekazywane do LLM razem z promptem kwestionariusza.

### 4.2 Inżynieria promptów

**Dynamiczny szablon promptu** dostosowuje się do rodziny kontroli:

```
You are a compliance assistant. Using the following policy excerpts, craft a concise answer (max 200 words) for ISO 27001 control "{{control_id}} – {{control_title}}". Maintain the tone of the source policy but tailor it to a third‑party security questionnaire. Cite each excerpt with a markdown footnote.
```

LLM wstawia placeholdery pobranymi fragmentami i tworzy **draft z przypisami**.

### 4.3 Post‑processing

* **Warstwa fakt‑check** – Drugi przebieg LLM weryfikuje, że wszystkie stwierdzenia są oparte na pobranych fragmentach.  
* **Filtr redakcyjny** – Wykrywa i maskuje poufne dane, które nie powinny być ujawniane.  
* **Moduł formatowania** – Konwertuje wynik do preferowanego formatu kwestionariusza (HTML, PDF lub tekst zwykły).

---

## 5. Wykrywanie odchyleń polityk w czasie rzeczywistym

Polityki rzadko pozostają niezmienione. **Connector Change Data Capture (CDC)** obserwuje repozytorium źródłowe pod kątem commitów, merge’ów i usunięć. Gdy zmiana dotknie węzła powiązanego z kontrolą ISO, detektor odchyleń:

1. Oblicza **hash różnicy** pomiędzy starą a nową wersją fragmentu polityki.  
2. Wysyła **zdarzenie odchylenia** na temat Kafka `policy.drift`.  
3. Uruchamia pipeline RAG w celu ponownego wygenerowania dotkniętych odpowiedzi.  
4. Wysyła **powiadomienie** do właściciela polityki oraz do panelu analitycznego w celu przeglądu.  

Ta zamknięta pętla zapewnia, że każda opublikowana odpowiedź w kwestionariuszu pozostaje zgodna z najnowszymi wewnętrznymi kontrolami.

---

## 6. Doświadczenie użytkownika: Panel analityka

Interfejs prezentuje **siatkę oczekujących pozycji kwestionariusza** z kolorowym kodowaniem statusu:

* **Zielony** – Odpowiedź wygenerowana, brak odchyleń, gotowa do eksportu.  
* **Żółty** – Niedawna zmiana polityki, generowanie w toku.  
* **Czerwony** – Wymagana weryfikacja ręczna (np. niejasna polityka lub znak maskujący).  

Funkcje obejmują:

* **Eksport jednym kliknięciem** do PDF lub CSV.  
* **Edycję w miejscu** dla wyjątkowych przypadków.  
* **Historia wersji** wyświetlająca dokładną wersję polityki użytej w każdej odpowiedzi.  

Krótki film demonstracyjny (osadzony w platformie) pokazuje typowy przebieg: wybranie kontroli, przegląd automatycznie wygenerowanej odpowiedzi, zatwierdzenie i eksport.

---

## 7. Zmierzony wpływ biznesowy

| Metryka | Przed automatyzacją | Po automatyzacji (pilot) |
|---------|---------------------|--------------------------|
| Średni czas tworzenia odpowiedzi | 45 min na kontrolę | 3 min na kontrolę |
| Czas realizacji pełnego kwestionariusza | 12 dni | 1,5 dni |
| Wskaźnik spójności odpowiedzi (audyt wewnętrzny) | 78 % | 96 % |
| Latency odchylenia polityki (czas do odświeżenia) | 7 dni (ręcznie) | < 2 godz. (automatycznie) |

Pilot przeprowadzony w średniej wielkości firmie SaaS (≈ 250 pracowników) zmniejszył tygodniowe obciążenie zespołu bezpieczeństwa o **≈ 30 godzin** i wyeliminował 4 ważne incydenty zgodności spowodowane przestarzałymi odpowiedziami.

---

## 8. Kwestie bezpieczeństwa i zarządzania

* **Rezydencja danych** – Cały graf wiedzy pozostaje w prywatnym VPC organizacji; inferencja LLM odbywa się na sprzęcie on‑premise lub dedykowanym prywatnym endpointcie chmurowym.  
* **Kontrola dostępu** – Uprawnienia oparte na rolach ograniczają, kto może edytować polityki, wyzwalać regenerację lub przeglądać wygenerowane odpowiedzi.  
* **Ścieżka audytu** – Każdy projekt odpowiedzi przechowuje kryptograficzny hash łączący go z dokładną wersją polityki, umożliwiając niezmienną weryfikację podczas audytów.  
* **Wyjaśnialność** – Panel pokazuje **widok śledzenia**, w którym wymienione są pobrane fragmenty polityki oraz współczynniki istotności, które przyczyniły się do powstania końcowej odpowiedzi, spełniając wymagania regulatorów co do odpowiedzialnego użycia AI.

---

## 9. Rozszerzenie silnika poza ISO 27001

Choć prototyp koncentruje się na ISO 27001, architektura jest **agnostyczna względem regulatora**:

* **[SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2) Trust Services Criteria** – Mapowanie do tego samego grafu przy użyciu innej rodziny kontroli.  
* **[HIPAA](https://www.hhs.gov/hipaa/index.html) Security Rule** – Import 18 standardów i powiązanie z politykami specyficznymi dla ochrony zdrowia.  
* **[PCI‑DSS](https://www.pcisecuritystandards.org/pci_security/)** – Połączenie z procedurami obsługi danych kart.  

Dodanie nowego zestawu wymaga jedynie załadowania jego katalogu kontroli i ustanowienia początkowych krawędzi do istniejących węzłów polityk. GNN adaptuje się automatycznie w miarę gromadzenia kolejnych par treningowych.

---

## 10. Poradnik startowy: lista kontrolna krok po kroku

1. **Zbierz katalog kontroli ISO 27001** (pobierz oficjalny Annex A w formacie CSV).  
2. **Wyeksportuj wewnętrzne polityki** do ustrukturyzowanego formatu (Markdown z nagłówkami front‑matter dla wersjonowania).  
3. **Uruchom graf wiedzy** (obraz Docker Neo4j z wstępnie skonfigurowanym schematem).  
4. **Zainstaluj serwis RAG** (kontener FastAPI w Pythonie z endpointem do LLM).  
5. **Skonfiguruj CDC** (hook Git lub obserwator systemu plików), aby zasilać detektor odchyleń.  
6. **Uruchom panel analityka** (frontend React, uwierzytelnianie OAuth2).  
7. **Przeprowadź pilotażowy kwestionariusz** i iteracyjnie dopracowuj szablony promptów.  

Realizując tę roadmapę, większość organizacji może osiągnąć **w pełni zautomatyzowany pipeline mapowania ISO 27001 w ciągu 4‑6 tygodni**.

---

## 11. Kierunki rozwoju

* **Uczenie federacyjne** – Udostępnianie anonimowych embeddingów kontrola‑polityka między partnerami, aby poprawić wyniki podobieństwa bez ujawniania własnych polityk.  
* **Dowody multimodalne** – Integracja diagramów, plików konfiguracyjnych i fragmentów logów przy użyciu Vision‑LLM, aby wzbogacić generowane odpowiedzi.  
* **Generatywne podręczniki zgodności** – Rozszerzenie od pojedynczych odpowiedzi do kompleksowych narracji zgodności, włączając tabele dowodów i oceny ryzyka.  

Zbieżność **grafów wiedzy, RAG oraz monitorowania odchyleń w czasie rzeczywistym** ma stać się nowym standardem automatyzacji wszystkich kwestionariuszy bezpieczeństwa. Wczesni adopci zyskają nie tylko szybkość, ale i pewność, że każda odpowiedź jest **śledzalna, aktualna i audytowalna**.

---

## Zobacz także
- [ISO 27001 – oficjalny Załącznik A Kontrole](https://www.iso.org/standard/54534.html)  
- [Mapowanie NIST SP 800‑53 na ISO 27001](https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final)  
- [Retrieval‑Augmented Generation: Przegląd technik i zastosowań](https://arxiv.org/abs/2302.01279)