AI Hacking
AI-beveiligingsbronnen

RAG-beveiliging: complete gids

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

Updated: August 2026 • Onderdeel van OWASP LLM08

Wat is 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. Gebruikersquery

Gebruiker dient een vraag of prompt in op het systeem

2. Insluiten

Query wordt geconverteerd naar vector-inbedding

3. Ophalen

Vergelijkbare documenten opgehaald uit vector-DB

4. Augmentatie

Opgehaalde context toegevoegd aan prompt

5. Generatie

LLM genereert een antwoord met behulp van context

De Trust Paradox

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.

Aanvalsvectoren

1. Documentvergiftiging

Het injecteren van schadelijke inhoud in documenten opgeslagen in de kennisbank.

Hoe het werkt
  • Aanvaller uploadt of injecteert schadelijke documenten
  • Documenten worden ingebed en opgeslagen in vector-DB
  • Als een relevante zoekopdracht wordt gedaan, wordt een vergiftigd document opgehaald
  • LLM neemt kwaadaardige context op in reactie
Impact
  • 90% success met slechts 5 vergiftigde documenten
  • Werkt zelfs in databases met miljoenen documenten
  • Kan schadelijke, bevooroordeelde of onjuiste resultaten veroorzaken
  • Moeilijk te detecteren na implementatie

2. Ophaalmanipulatie

Manipuleren welke documenten worden opgehaald om de uitvoer te beïnvloeden.

Hoe het werkt
  • De aanvaller stelt zoekopdrachten in om specifiek ophalen te activeren
  • Maakt misbruik van zwakke punten in het rangschikkingsalgoritme
  • Gebruikt semantische gelijkenis om het ophalen te kapen
  • Manipulatie tussen gebruikers in gedeelde systemen
Impact
  • Forceert het ophalen van door aanvallers gecontroleerde inhoud
  • Kan legitieme inhoud onderdrukken
  • Maakt gerichte manipulatie mogelijk
  • Breekt het vertrouwen in de ophaalkwaliteit

3. Inversie insluiten

Originele gegevens herstellen van vector inbedding.

Hoe het werkt
  • Aanvaller krijgt toegang tot vectordatabase
  • Maakt gebruik van inversietechnieken bij insluitingen
  • Reconstrueert originele tekst van vectoren
  • Herstelt gevoelige ingebedde gegevens
Impact
  • Recover 50-70% of input words
  • Gevoelige gegevens blootleggen in insluitingen
  • Privacyschendingen
  • Nalevingsproblemen (AVG, etc.)

4. Cross-Tenant-aanvallen

Het exploiteren van gedeelde RAG-infrastructuur in systemen met meerdere tenants.

Hoe het werkt
  • Aanvaller is één tenant van een gedeeld systeem
  • Injecteert inhoud die van invloed is op andere huurders
  • Exploiteert gedeelde vectordatabase
  • Haalt gegevens op van andere tenants
Impact
  • Gegevenslekken tussen tenants
  • Ongeoorloofde toegang tot gegevens van concurrenten
  • Overtredingen van de naleving
  • Reputatieschade

Real-World CVE's

Gedocumenteerde kwetsbaarheden in RAG-systemen.

CVE ID Product Beschrijving Ernst 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

Verdedigingsstrategieën

1. Beveiliging van de opnamefase

Documentvalidatie

  • Alle documenten scannen op malware
  • Valideer documentformaat en -structuur
  • Controleer op verdachte inhoudspatronen
  • Toegestane documenttypen

Inhoudsfiltering

  • Verwijder PII vóór insluiting
  • Filter gevoelige gegevenspatronen
  • Bekende kwaadaardige patronen blokkeren
  • Toegestane/blokkeerlijsten implementeren

Toegangscontroles

  • Valideren van de bron van documenten
  • RBAC implementeren voor opname
  • Audittraject voor alle uploads
  • Nieuwe documenten in quarantaine plaatsen

2. Beveiliging van de ophaalfase

Opschoning van query's

  • Valideren en opschonen van gebruikersquery's
  • Detecteer injectiepogingen
  • Beperk de complexiteit van zoekopdrachten
  • Snelheidsbeperking

Ophaalfilters

  • Reclassering van beveiliging implementeren
  • Kruisverwijzing met vertrouwde bronnen
  • Detecteer afwijkende ophaalpatronen
  • Beperk het aantal documenten

Multi-Tenancy-isolatie

  • Afzonderlijke vectornaamruimten
  • Strikte tenantgrenzen
  • Cross-tenant querypreventie
  • Versleuteling per tenant

3. Beveiliging van de generatiefase

Uitvoervalidatie

  • Valideren van LLM-uitvoer
  • Controleer op geïnjecteerde inhoud
  • Factcheck aan de hand van bronnen
  • Inhoudsfiltering

Contextverificatie

  • Verifieer de authenticiteit van opgehaalde inhoud
  • Detecteer manipulatiepogingen
  • Ongewone contextpatronen markeren
  • Log al het contextgebruik

Human-in-the-Loop

  • Bekijk gevoelige outputs
  • Acties met een hoog risico goedkeuren
  • Mogelijkheid voor handmatige overschrijving
  • Escalatiepaden

4. Gegevensbeveiliging

Encryptie

  • vectoren in rust versleutelen
  • TLS voor gegevens in transit
  • Best practices voor sleutelbeheer
  • Overweeg homomorfe encryptie

Vector DB-beveiliging

  • Sterke authenticatie
  • Netwerkisolatie
  • Regelmatige beveiligingsaudits
  • Patchbeheer

Privacybescherming

  • Gegevensminimalisatie
  • PII-detectie en -verwijdering
  • Retentiebeleid
  • Ondersteuning voor het recht op verwijdering

Testmethodologie

RAG-beveiligingstestchecklist

  • Documentinjectietests
  • Ophaalmanipulatietests
  • Inversiepogingen insluiten
  • Isolatietests voor meerdere tenants
  • PII-lektests
  • Context-overflow-tests
  • Manipulatietests rangschikken
  • Authenticatie-bypass-tests
  • API-injectietests
  • Denial of service-tests
  • Data-exfiltratietests
  • Compliance-audit

Testtools

Garak

LLM-kwetsbaarheidsscanner met RAG-specifieke tests

Bekijken →

Apache RAG

RAG-specifiek raamwerk voor beveiligingstests

Bekijken →

Vector DB-scanners

Hulpmiddelen voor het testen van de beveiliging van vectordatabases

Bekijken →

Codevoorbeelden

Voorbeeld van documentvalidatie

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