§5.6.1 Modellare le minacce ai sistemi
Il paragrafo richiama correttamente il threat modeling specifico per l’IA e rinvia alle Linee guida AGID su Secure/Privacy by Design, ma non declina in modo esplicito le peculiarità del threat modeling per sistemi di IA moderni, in particolare quelli agentici e basati su RAG descritti al capitolo 3. In tali sistemi, la superficie di attacco si caratterizza per la presenza simultanea di sorgenti di input con diverso livello di fiducia, quali prompt utente, documenti recuperati via RAG, output di tool o contenuti provenienti da fonti esterne, e di sink privilegiati, quali tool che invocano API, eseguono codice, modificano file o accedono a backend, collegati attraverso il contesto del modello. Un threat modeling condotto con le sole tecniche tradizionali rischia di non cogliere adeguatamente le catene sorgente-sink che attraversano il modello e di non orientare le scelte architetturali verso un’effettiva separazione tra input meno affidabili e capability più privilegiate.
Raccomandazione: integrare il §5.6.1 prevedendo esplicitamente che, nel threat modeling dei sistemi di IA, si proceda a: (a) mappare le sorgenti di input del sistema distinguendole per livello di fiducia, includendo i canali indiretti come i corpora RAG e gli output di tool e connettori; (b) mappare i sink privilegiati accessibili attraverso il modello, i tool e l’orchestratore, distinguendoli per criticità e reversibilità delle azioni prodotte; (c) identificare le catene sorgente-sink attraverso cui un input non fidato può influenzare un sink privilegiato, in particolare nelle architetture agentiche; (d) orientare le scelte architetturali verso una separazione di fiducia e privilegi proporzionata alle catene identificate, limitando le capacità esercitabili a valle di input a minore affidabilità.
§5.6.2 Analisi statica e dinamica del codice
SAST e DAST sono tecniche consolidate per il codice applicativo tradizionale e restano necessarie anche per i sistemi di IA, ma non intercettano da sole le classi di vulnerabilità specifiche del dominio IA, quali prompt injection diretta e indiretta, evasion, model extraction, abuso di tool nelle architetture agentiche o esfiltrazione via output. Tali vulnerabilità emergono infatti dal comportamento del modello e dalle interazioni tra modello, contesto, tool e orchestratore, e non risultano pienamente visibili all’analisi del codice sorgente o alle tecniche DAST convenzionali. Il paragrafo, inoltre, non introduce ancora in modo esplicito il concetto di regressione di sicurezza specifica per il dominio IA, essenziale in un contesto nel quale aggiornamenti del modello, modifiche del prompt di sistema, inserimento di nuovi tool o cambiamenti ai corpora RAG possono reintrodurre vulnerabilità già mitigate.
Raccomandazione: integrare il §5.6.2, oppure affiancare un sotto-paragrafo dedicato, prevedendo esplicitamente, in aggiunta a SAST e DAST: (a) il testing avversariale (ovvero, red-teaming) dei modelli e dei sistemi di IA come attività ricorrente, proporzionata al rischio e mirata almeno alle categorie di attacco richiamate al §5.5 e ai rischi specifici degli agenti al §5.4; (b) una suite di regressione di sicurezza specifica per il dominio IA, che raccolga in forma strutturata i test avversariali e i payload associati alle minacce identificate in sede di threat modeling, da rieseguire periodicamente e a ogni modifica significativa del sistema; (c) il testing end-to-end del sistema nel suo complesso lungo la catena input → modello → tool → sistemi di backend, anziché del solo modello isolato.
§5.7.1 Sviluppo sicuro, controllo “Validare e sanitizzare tutti gli input”
Il controllo è utile, ma, se letto isolatamente, può essere interpretato in termini troppo vicini alla sicurezza applicativa tradizionale, dove validazione e sanitizzazione su formati rigidamente strutturati sono efficaci. Nel caso generale dei modelli generativi, gli input in linguaggio naturale non ammettono una “sanitizzazione” deterministica paragonabile a quella di formati a grammatica chiusa. Lo stesso vale per gli input indiretti provenienti da documenti recuperati via RAG o dagli output di tool. Filtri di input e output, classificatori di prompt injection e policy engine possono costituire una difesa euristica in profondità, ma non dovrebbero essere letti come presidio sufficiente da soli contro prompt injection e manipolazione del contesto. Nel medesimo capitolo, peraltro, compaiono già controlli più strutturali, quali restrizioni sulle azioni, meccanismi esterni di fail-safe e principio del privilegio minimo.
Raccomandazione: riformulare il controllo chiarendo che: (a) per gli input in linguaggio naturale, filtri, classificatori di prompt injection e policy engine costituiscono una difesa euristica in profondità e non un controllo di sicurezza primario; (b) il controllo primario rispetto al prompt injection e al suo sfruttamento è anche architetturale, e consiste nel limitare le azioni consentite, applicare il principio del privilegio minimo e separare, per quanto possibile, i componenti esposti a input meno affidabili da quelli che dispongono di capability privilegiate; (c) analoghe considerazioni si applicano agli input indiretti provenienti da corpora RAG e da output di tool, che devono essere trattati come input non fidati a tutti gli effetti.
§5.3 Asset e §5.7 Buone pratiche per la PA
La classificazione degli asset al §5.3 è mutuata dalla tassonomia ENISA del 2020 e resta utile come quadro generale, ma non rende espliciti alcuni asset particolarmente rilevanti nei sistemi di IA generativa e agentici descritti al capitolo 3. In particolare, non sono nominati in modo espresso: (a) i corpora documentali, gli indici vettoriali e gli embedding utilizzati nelle architetture RAG; (b) i prompt di sistema, le configurazioni dell’orchestratore e le definizioni dei tool, che influenzano direttamente il comportamento del sistema; (c) le credenziali, i token e le chiavi API dei connettori e dei tool invocabili dal sistema; (d) i log di prompt, output e interazioni. Tali elementi possono in parte essere ricondotti alle categorie generali già presenti, ma la loro mancata esplicitazione ne riduce la visibilità come asset sensibili da proteggere e monitorare.
Raccomandazione: integrare il §5.3 estendendo, o almeno esemplificando in modo più puntuale, la categorizzazione degli asset con riferimento a corpora documentali, indici vettoriali ed embedding, prompt di sistema e configurazioni dell’orchestratore, definizioni dei tool e relative credenziali, log di prompt, output e interazioni. Integrare coerentemente il §5.7 prevedendo controlli specifici su tali asset, in particolare: protezione della riservatezza e dell’integrità degli indici vettoriali e degli embedding; versionamento e controllo di accesso ai prompt di sistema e alle configurazioni dell’orchestratore; gestione dedicata delle credenziali dei connettori e dei tool, con applicazione del principio del privilegio minimo anche alle capability esercitabili dal sistema di IA.
§5.7.3 Gestione e manutenzione sicura, controllo sui log
Il controllo tratta i log principalmente come strumento di detection. Nei sistemi di IA generativa, tuttavia, i log di prompt, output e interazioni costituiscono essi stessi un asset sensibile e una potenziale via di esfiltrazione: i prompt degli utenti possono contenere dati personali o informazioni riservate inserite inconsapevolmente; gli output del modello possono, in alcuni casi, contenere informazioni derivate da dati di addestramento, da contesti RAG o da documenti riservati recuperati in esecuzione. Una pipeline di logging non adeguatamente protetta può quindi trasformarsi in un canale di esposizione massiva di dati sensibili. Inoltre, proprio i log rappresentano la base informativa necessaria per il monitoraggio di anomalie AI-specifiche, quali pattern compatibili con prompt injection, model extraction, invocazione anomala di tool o esfiltrazione via output.
Raccomandazione: integrare il §5.7.3 prevedendo esplicitamente che i log di prompt, output e interazioni dei sistemi di IA siano trattati come asset sensibili, con almeno: (a) minimizzazione alla fonte e pseudonimizzazione ove compatibile con le finalità di sicurezza; (b) cifratura a riposo e in transito; (c) controllo di accesso stretto con principio del privilegio minimo, separazione dei ruoli tra gestione operativa e analisi di sicurezza, tracciamento degli accessi; (d) politiche di retention definite e coerenti con la normativa sulla protezione dei dati; (e) valutazione specifica della sicurezza delle pipeline di esportazione verso sistemi esterni di osservabilità; (f) uso dei log come base per il monitoraggio di anomalie specifiche dell’IA, integrato nei processi di gestione degli incidenti dell’Amministrazione.
§5.2 Gestione del rischio e §5.6 Obiettivi di sicurezza
Il capitolo 5 richiama già riferimenti rilevanti, tra cui NIST AI RMF, MITRE ATLAS, ENISA AI Cybersecurity Challenges, NIST AI 100-2 e le linee guida NCSC. Tuttavia, nei §5.2 e §5.6 i riferimenti guida espliciti nel corpo del testo sono soprattutto NIST AI RMF e NCSC, mentre altri riferimenti tecnico-metodologici rilevanti compaiono in nota o in paragrafi adiacenti e non risultano consolidati in un quadro unitario. Ne deriva una tracciabilità solo parziale delle prescrizioni e delle buone pratiche, specialmente per temi emersi con maggiore forza nei sistemi generativi e agentici, quali prompt injection, sicurezza del RAG, abuso di tool, model extraction via API e testing avversariale.
Raccomandazione: integrare il §5.2 e il §5.6 consolidando nel corpo del testo, oppure in un riquadro o sottoparagrafo dedicato ai riferimenti tecnico-metodologici, un insieme di fonti coerente con lo stato dell’arte, indicando almeno: NIST AI RMF 1.0, ossia NIST AI 100-1, e il relativo Generative AI Profile, NIST AI 600-1; NIST AI 100-2 come tassonomia di riferimento per gli attacchi adversarial; MITRE ATLAS come knowledge base di tattiche e tecniche avversarie; ENISA AI Cybersecurity Challenges e ENISA Multilayer Framework for Good Cybersecurity Practices for AI; OWASP Top 10 for Large Language Model Applications e OWASP AI Security and Privacy Guide; ISO/IEC 42001:2023 per il sistema di gestione dell’IA; ISO/IEC 23894:2023 per la gestione del rischio AI; ISO/IEC TR 24029-1:2021 per la valutazione della robustezza delle reti neurali. Il richiamo esplicito a tali fonti rafforzerebbe la tracciabilità delle prescrizioni e ne faciliterebbe la resa operativa da parte delle Amministrazioni.