AI Hacking
Risorse per la sicurezza AI

Sicurezza RAG: guida completa

Securing Retrieval-Augmented Generation systems against document poisoning, retrieval manipulation, and embedding attacks

Updated: August 2026 • Parte di OWASP LLM08

Cos'è RAG?

Retrieval-Augmented Generation (RAG) is an AI architecture that combines large language models with external knowledge retrieval. Enterprise LLM deployments now use RAG extensively, making its security critical.

1. Query dell'utente

L'utente invia una domanda o un prompt al sistema

2. Incorporamento

La query viene convertita in incorporamento di vettori

3. Recupero

Documenti simili recuperati dal DB vettoriale

4. Aumento

Contesto recuperato aggiunto al prompt

5. Generazione

LLM genera una risposta utilizzando il contesto

Il paradosso della fiducia

RAG systems have a fundamental security flaw: user queries are treated as untrusted input, but retrieved context is implicitly trusted - even though both enter the same prompt. This creates a significant attack surface that traditional security doesn't address.

Vettore di attacco

1. Avvelenamento da documenti

Inserimento di contenuti dannosi documenti archiviati nella base di conoscenza.

Come funziona
  • L'autore dell'attacco carica o inserisce documenti dannosi
  • I documenti sono incorporati e archiviati nel database vettoriale
  • Quando viene effettuata una query pertinente, viene recuperato il documento avvelenato
  • LLM incorpora un contesto dannoso nella risposta
Impatto
  • 90% success con soli 5 documenti avvelenati
  • Funziona anche in database con milioni di documenti
  • Può causare output dannosi, distorti o errati
  • Difficile da rilevare dopo la distribuzione

2. Manipolazione del recupero

Manipolazione dei documenti recuperati per influenzare gli output.

Come funziona
  • L'aggressore crea query per attivare il recupero specifico
  • Sfrutta i punti deboli dell'algoritmo di classificazione
  • Utilizza la somiglianza semantica per il recupero degli hijack
  • Manipolazione tra utenti in sistemi condivisi
Impatto
  • Forza il recupero di contenuti controllati dagli aggressori
  • Può sopprimere contenuti legittimi
  • Consente la manipolazione mirata
  • Diminuisce la fiducia nella qualità del recupero

3. Incorporamento dell'inversione

Recuperare i dati originali da incorporamenti di vettori.

Come funziona
  • L'attaccante ottiene l'accesso al database vettoriale
  • Utilizza tecniche di inversione sugli incorporamenti
  • Ricostruisce il testo originale da vettori
  • Recupera dati sensibili incorporati
Impatto
  • Recover 50-70% of input words
  • Esporre dati sensibili negli incorporamenti
  • Violazioni della privacy
  • Problemi di conformità (GDPR, ecc.)

4. Attacchi tra tenant

Sfruttare l'infrastruttura RAG condivisa in sistemi multi-tenant.

Come funziona
  • L'aggressore è un tenant del sistema condiviso
  • Inserisce contenuti che colpiscono altri tenant
  • Sfrutta il database vettoriale condiviso
  • Recupera i dati da altri tenant
Impatto
  • Perdita di dati tra tenant
  • Accesso non autorizzato ai dati della concorrenza
  • Violazioni di conformità
  • Danno alla reputazione

CVE reali

Vulnerabilità documentate nei sistemi RAG.

ID CVE Prodotto Descrizione Gravità CVSS
CVE-2025-68700 RAGFlow RCE via Canvas CodeExec component - untrusted data parsed with eval() Critical 9.1
CVE-2025-69286 RAGFlow Insecure API key generation allows mutual token derivation (authentication bypass) Critical 8.9
CVE-2025-25282 RAGFlow IDOR vulnerability allowing cross-tenant access and unauthorized user addition High 8.1
CVE-2025-69286 RAGFlow Token generation using same URLSafeTimedSerializer for API keys High 8.9
GHSA-8xw3-v6c2-j84j RAGFlow RCE via stdout parsing in CodeExec component High 8.5

Strategie di difesa

1. Sicurezza della fase di acquisizione

Convalida dei documenti

  • Scansiona tutti i documenti per individuare malware
  • Convalida del formato e della struttura del documento
  • Verifica la presenza di modelli di contenuti sospetti
  • Limita tipi di documenti consentiti

Filtro dei contenuti

  • Rimuovi le informazioni personali prima dell'incorporamento
  • Filtra modelli di dati sensibili
  • Blocca modelli dannosi noti
  • Implementare elenchi di autorizzazione/blocco

Controlli di accesso

  • Convalida l'origine dei documenti
  • Implementa RBAC per l'acquisizione
  • Traccia di controllo per tutti i caricamenti
  • Metti in quarantena i nuovi documenti

2. Sicurezza della fase di recupero

Sanitizzazione delle query

  • Convalida e disinfetta le query degli utenti
  • Rilevare tentativi di iniezione
  • Limita la complessità delle query
  • Limitazione della velocità

Filtro di recupero

  • Implementa la riclassificazione della sicurezza
  • Riferimento incrociato con fonti attendibili
  • Rileva modelli di recupero anomali
  • Limitare il numero di documenti

Isolamento multi-tenancy

  • Spazi dei nomi vettoriali separati
  • Confini rigorosi dei tenant
  • Prevenzione delle query tra tenant
  • Crittografia per tenant

3. Sicurezza in fase di generazione

Convalida dell'output

  • Convalida gli output LLM
  • Verifica la presenza di contenuti inseriti
  • Verifica dei fatti rispetto alle fonti
  • Filtraggio dei contenuti

Verifica del contesto

  • Verifica l'autenticità del contenuto recuperato
  • Rileva tentativi di manipolazione
  • Segnala modelli di contesto insoliti
  • Registra tutto l'utilizzo del contesto

Human-in-the-Loop

  • Esamina gli output sensibili
  • Approvare azioni ad alto rischio
  • Funzionalità di override manuale
  • Percorsi di escalation

4. Sicurezza dei dati

Crittografia

  • Crittografa i vettori a riposo
  • TLS per i dati in transito
  • Best practice per la gestione delle chiavi
  • Considera la crittografia omomorfica

Sicurezza DB vettoriale

  • Autenticazione forte
  • Isolamento della rete
  • Controlli di sicurezza regolari
  • Gestione delle patch

Protezione della privacy

  • Minimizzazione dei dati
  • Rilevamento e rimozione PII
  • Politiche di conservazione
  • Supporto per il diritto di cancellazione

Metodologia di prova

Elenco di controllo del test di sicurezza RAG

  • Test di inserimento di documenti
  • Test di manipolazione del recupero
  • Incorporamento di tentativi di inversione
  • Test di isolamento tra tenant
  • Test di perdita PII
  • Test di overflow del contesto
  • Classifica dei test di manipolazione
  • Test di bypass dell'autenticazione
  • Test di iniezione API
  • Test di Denial of Service
  • Test di esfiltrazione dei dati
  • Verifica di conformità

Strumenti di test

Garak

Scansione di vulnerabilità LLM con sonde specifiche per RAG

Visualizza →

Apache RAG

Framework di test di sicurezza specifico per RAG

Visualizza →

Scanner DB vettoriali

Strumenti per testare la sicurezza del database vettoriale

Visualizza →

Esempi di codici

Esempio di convalida del documento

```python
import re
from typing import List

class RAGDocumentValidator:
    SUSPICIOUS_PATTERNS = [
        r"ignore previous instructions",
        r"system prompt:",
        r"{{.*}}",
        r"you are now dan",
    ]
    
    PII_PATTERNS = [
        r"\b\d{3}-\d{2}-\d{4}\b",  # SSN
        r"\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b",  # Email
        r"\b\d{16}\b",  # Credit card
    ]
    
    def validate_document(self, content: str) -> dict:
        """Validate document before embedding."""
        warnings = []
        blocked = False
        
        # Check for suspicious patterns
        for pattern in self.SUSPICIOUS_PATTERNS:
            if re.search(pattern, content, re.IGNORECASE):
                warnings.append(f"Suspicious pattern: {pattern}")
                blocked = True
        
        # Check for PII
        for pattern in self.PII_PATTERNS:
            if re.search(pattern, content):
                warnings.append(f"PII detected: {pattern}")
        
        return {
            "valid": not blocked,
            "warnings": warnings,
            "pii_detected": len([w for w in warnings if "PII" in w]) > 0
        }
```
AH
AI Hacking Team

The AI Hacking team researches and documents AI/LLM security vulnerabilities, red teaming techniques, and defensive strategies. Our guides are based on real-world pentesting experience and continuous monitoring of the AI security landscape.

Stay Ahead of AI Security

Get the latest AI/LLM security research, OWASP updates, and new vulnerabilities delivered straight to your inbox.