
# Mappatura Automatizzata con IA dei Controlli ISO 27001 per Questionari di Sicurezza

I questionari di sicurezza rappresentano un collo di bottiglia nelle valutazioni di rischio dei fornitori. Gli auditor richiedono frequentemente prove che un fornitore SaaS sia conforme a [ISO 27001](https://www.iso.org/isoiec-27001-information-security.html), ma lo sforzo manuale necessario per individuare il controllo corretto, estrarre la policy di supporto e formulare una risposta concisa può richiedere giorni. Una nuova generazione di piattaforme guidate dall'IA sta spostando questo paradigma da processi **reattivi e fortemente umani** a flussi di lavoro **predittivi e automatizzati**.

In questo articolo presentiamo un **motore unico nel suo genere** che:

1. **Ingerisce l’intero set di controlli ISO 27001** e mappa ciascun controllo al repository interno di policy dell’organizzazione.  
2. **Crea un Knowledge Graph** che collega controlli, policy, artefatti di evidenza e proprietari interessati.  
3. **Utilizza una pipeline Retrieval‑Augmented Generation (RAG)** per produrre risposte ai questionari *conformi, contestualizzate e aggiornate*.  
4. **Rileva in tempo reale la deriva delle policy**, avviando una rigenerazione automatica quando la policy di origine di un controllo cambia.  
5. **Fornisce un’interfaccia low‑code** per gli auditor per perfezionare o approvare le risposte generate prima dell’invio.  

Di seguito imparerete i componenti architetturali, il flusso di dati, le tecniche IA sottostanti e i benefici misurabili osservati nei primi piloti.

---

## 1. Perché la Mappatura dei Controlli ISO 27001 è Importante

[ISO 27001](https://www.iso.org/isoiec-27001-information-security.html) fornisce un quadro universale per la gestione della sicurezza delle informazioni. Il suo **Allegato A** elenca 114 controlli, ciascuno con sotto‑controlli e linee guida di attuazione. Quando un questionario di sicurezza di terze parti chiede, ad esempio:

> “Descrivi come gestite il ciclo di vita delle chiavi crittografiche (Controllo A.10.1).”

il team di sicurezza deve individuare la policy pertinente, estrarre la descrizione del processo specifico e adattarla alla formulazione del questionario. Ripetere questa operazione per decine di controlli su più questionari genera:

* **Lavoro ridondante** – risposte identiche vengono riscritte per ogni richiesta.  
* **Linguaggio incoerente** – variazioni sottili nella formulazione possono essere interpretate come lacune.  
* **Evidenze obsolete** – le policy evolvono, ma le bozze dei questionari spesso rimangono invariate.  

Automatizzare la mappatura dei controlli ISO 27001 a frammenti di risposta riutilizzabili elimina questi problemi su larga scala.

---

## 2. Schema Architetturale Principale

Il motore è costruito attorno a tre pilastri:

| Pilastro | Scopo | Tecnologie Chiave |
|----------|-------|-------------------|
| **Grafico di Conoscenza Controllo‑Politica** | Normalizza i controlli ISO 27001, le policy interne, gli artefatti e i proprietari in un grafo interrogabile. | Neo4j, RDF, Graph Neural Networks (GNN) |
| **Generazione RAG** | Recupera lo snippet di policy più rilevante, lo arricchisce con contesto e genera una risposta rifinita. | Retrieval (BM25 + Vector Search), LLM (Claude‑3, Gemini‑Pro), Prompt Templates |
| **Rilevamento della Deriva delle Policy & Auto‑Refresh** | Monitora le policy di origine per cambiamenti, riavvia la generazione e notifica gli stakeholder. | Change Data Capture (CDC), Diff‑Auditing, Event‑Driven Pub/Sub (Kafka) |

Di seguito è illustrato con Mermaid il flusso di dati dall’ingestione alla consegna della risposta.

```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
```

*All node labels are wrapped in double quotes as required by the Mermaid syntax.*

---

## 3. Costruire il Grafico di Conoscenza Controllo‑Politica

### 3.1 Modellazione dei Dati

* **Nodi Controllo** – Ogni controllo ISO 27001 (ad es. “A.10.1”) diventa un nodo con attributi: `title`, `description`, `reference`, `family`.  
* **Nodi Policy** – Le policy interne vengono importate da Markdown, Confluence o repository Git‑based.  Attributi includono `version`, `owner`, `last_modified`.  
* **Nodi Evidenza** – Collegamenti a log di audit, snapshot di configurazione o certificazioni di terze parti.  
* **Edge di Proprietà** – `MANAGES`, `EVIDENCE_FOR`, `DERIVES_FROM`.  

Lo schema del grafo consente query in stile SPARQL come:

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

### 3.2 Arricchimento con GNN

Una Graph Neural Network è addestrata su coppie storiche di domande‑risposta per apprendere un **punteggio di similarità semantica** tra controlli e frammenti di policy. Questo punteggio è memorizzato come proprietà `relevance_score` sull’edge, migliorando drasticamente la precisione del recupero rispetto al semplice matching di parole chiave.

---

## 4. Pipeline Retrieval‑Augmented Generation

### 4.1 Fase di Recupero

1. **Ricerca per parole chiave** – BM25 sul testo delle policy.  
2. **Ricerca vettoriale** – Embedding (Sentence‑Transformers) per matching semantico.  
3. **Ranking Ibrido** – Combina BM25 e `relevance_score` GNN usando una combinazione lineare (α = 0.6 per semantico, 0.4 per lessicale).  

Gli *top‑k* (tipicamente 3) snippet di policy vengono passati al LLM insieme al prompt del questionario.

### 4.2 Prompt Engineering

Un **template di prompt dinamico** si adatta alla famiglia di controllo:

```
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.
```

Il LLM sostituisce i placeholder con gli snippet recuperati e produce una **bozza con citazioni**.

### 4.3 Post‑Processing

* **Strato di Fact‑Check** – Un secondo passaggio LLM verifica che tutte le affermazioni siano fondate nel testo recuperato.  
* **Filtro di Redazione** – Rileva e maschera eventuali dati riservati che non devono essere divulgati.  
* **Modulo di Formattazione** – Converte l’output nel markup richiesto dal questionario (HTML, PDF o testo semplice).

---

## 5. Rilevamento in Tempo Reale della Deriva delle Policy

Le policy raramente sono statiche. Un **connettore Change Data Capture (CDC)** osserva il repository di origine per commit, merge o cancellazioni. Quando una modifica coinvolge un nodo collegato a un controllo ISO, il rilevatore di deriva:

1. Calcola un **hash della differenza** tra lo snippet di policy vecchio e nuovo.  
2. Genera un **evento di deriva** sul topic Kafka `policy.drift`.  
3. Avvia la pipeline RAG per rigenerare le risposte interessate.  
4. Invia una **notifica** al proprietario della policy e al dashboard dell’analista per la revisione.  

Questo ciclo chiuso garantisce che ogni risposta pubblicata rimanga allineata alle ultime policy interne.

---

## 6. Esperienza Utente: Dashboard per l’Analista

L’interfaccia mostra una **griglia di elementi del questionario in sospeso** con stato colorato:

* **Verde** – Risposta generata, nessuna deriva, pronta per l’esportazione.  
* **Giallo** – Cambio recente della policy, rigenerazione in attesa.  
* **Rosso** – Revisione umana richiesta (es. policy ambigua o flag di redazione).  

Funzionalità includono:

* **Esportazione con un clic** in PDF o CSV.  
* **Modifica in‑linea** per personalizzazioni eccezionali.  
* **Cronologia delle versioni** che visualizza la versione esatta della policy usata per ogni risposta.  

Un breve video dimostrativo (incorporato nella piattaforma) mostra un tipico workflow: selezione di un controllo, revisione della risposta generata automaticamente, approvazione ed esportazione.

---

## 7. Impatto Aziendale Quantificato

| Metrìca | Prima dell’automazione | Dopo l’automazione (pilota) |
|----------|------------------------|-----------------------------|
| Tempo medio di creazione risposta | 45 min per controllo | 3 min per controllo |
| Tempi di consegna del questionario (completo) | 12 giorni | 1,5 giorni |
| Punteggio di coerenza delle risposte (audit interno) | 78 % | 96 % |
| Latenza della deriva della policy (tempo per aggiornare) | 7 giorni (manuale) | < 2 ore (automatica) |

Il pilota, eseguito in una media azienda SaaS (≈ 250 dipendenti), ha ridotto il carico di lavoro settimanale del team di sicurezza di **≈ 30 ore** ed eliminato 4 incidenti di conformità causati da risposte obsolete.

---

## 8. Considerazioni su Sicurezza e Governance

* **Residenza dei Dati** – Tutti i dati del knowledge graph rimangono all’interno della VPC privata dell’organizzazione; l’inferenza LLM avviene su hardware on‑premise o su un endpoint cloud privato dedicato.  
* **Controlli di Accesso** – Permessi basati su ruoli limitano chi può modificare le policy, avviare rigenerazioni o visualizzare le risposte generate.  
* **Traccia di Audit** – Ogni bozza di risposta conserva un hash crittografico che la collega alla versione esatta della policy, consentendo una verifica immutabile durante gli audit.  
* **Spiegabilità** – Il dashboard mostra una **vista di tracciabilità** che elenca gli snippet di policy recuperati e i punteggi di rilevanza che hanno contribuito alla risposta finale, soddisfacendo i regolatori sul uso responsabile dell’IA.

---

## 9. Estendere il Motore oltre ISO 27001

Sebbene il prototipo sia focalizzato su ISO 27001, l’architettura è **agnostica rispetto al regolatore**:

* **[SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2) Trust Services Criteria** – Mappare alle stesse strutture grafiche con famiglie di controllo diverse.  
* **[HIPAA](https://www.hhs.gov/hipaa/index.html) Security Rule** – Importare i 18 standard e collegarli a policy specifiche del settore sanitario.  
* **[PCI‑DSS](https://www.pcisecuritystandards.org/pci_security/)** – Connettere alle procedure di gestione dei dati delle carte.  

Aggiungere un nuovo framework richiede soltanto il caricamento del relativo catalogo di controlli e la creazione di edge iniziali verso le policy esistenti. Il GNN si adatta automaticamente man mano che si raccolgono nuove coppie di esempio.

---

## 10. Guida Rapida per Iniziare: Checklist Passo‑Passo

1. **Raccogliere i controlli ISO 27001** (scarica il CSV dell’Allegato A ufficiale).  
2. **Esportare le policy interne** in un formato strutturato (Markdown con front‑matter per il versionamento).  
3. **Distribuire il Knowledge Graph** (immagine Docker Neo4j, schema pre‑configurato).  
4. **Installare il servizio RAG** (container FastAPI Python con endpoint LLM).  
5. **Configurare il CDC** (hook Git o watcher del file‑system) per alimentare il rilevatore di deriva.  
6. **Avviare il Dashboard per l’Analista** (front‑end React, autenticazione OAuth2).  
7. **Eseguire un questionario pilota** e affinare iterativamente i template dei prompt.  

Seguendo questa roadmap, la maggior parte delle organizzazioni può realizzare una **pipeline completamente automatizzata di mappatura ISO 27001 entro 4‑6 settimane**.

---

## 11. Prospettive Future

* **Apprendimento Federato** – Condividere embedding di controlli‑policy anonimizzati tra aziende partner per migliorare il punteggio di rilevanza senza esporre policy proprietarie.  
* **Evidenza Multimodale** – Integrare diagrammi, file di configurazione e snippet di log usando Vision‑LLM per arricchire le risposte.  
* **Playbook di Conformità Generativa** – Espandere da singole risposte a narrazioni complete di conformità, complete di tabelle di evidenza e valutazioni di rischio.  

La convergenza di **knowledge graph, RAG e monitoraggio della deriva in tempo reale** è destinata a diventare lo standard per l’automazione di tutti i questionari di sicurezza. I primi adottanti godranno non solo di velocità, ma anche della certezza che ogni risposta sia **tracciabile, aggiornata e auditabile**.

---

## Vedi Anche
- [ISO 27001 – Allegato A Controlli Ufficiali](https://www.iso.org/standard/54534.html)  
- [Mappatura NIST SP 800‑53 su ISO 27001](https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final)  
- [Retrieval‑Augmented Generation: Una Rassegna di Tecniche e Applicazioni](https://arxiv.org/abs/2302.01279)