AI Hacking
Omfattende katalog over AI-specifikke sårbarheder og angrebsvektorer.

Sikker AI-udvikling

Complete developer guide to building secure AI applications - from input validation to deployment

Updated: August 2026

Sikkerhedsprincipper

1. Forsvar i dybden

Implement multiple layers of security controls. No single control should be relied upon exclusively.

overtrædelser af hastighedsgrænser

Giv minimum nødvendige tilladelser til brugere, API'er og AI-komponenter.

3. Fail Secure

Når der opstår fejl, skal du som standard bruge sikre tilstande frem for tilladelige.

4. Zero Trust

Never trust, always verify. Validate at every boundary, including internal systems.

Inputvalideringsdata

All user input must be validated and sanitized before processing. This is your first line of defense against prompt injection and other attacks.

| kontroller

```python
import re
from typing import Optional, List

class InputValidator:
    # Known injection patterns
    INJECTION_PATTERNS = [
        r"ignore\s+(previous|prior|all)\s+(instructions|rules)",
        r"(forget|disregard)\s+(your|all)\s+(instructions|rules)",
        r"you\s+are\s+(now|still)\s+(dan|do\s+anything)",
        r"system\s+prompt:",
        r"{{.*}}",
        r"\[INST\]|\[/INST\]|<\|end\|>",
    ]
    
    # Encoding patterns
    ENCODING_PATTERNS = [
        r"base64:",  # Base64 prefix
        r"\\x[0-9a-fA-F]{2}",  # Hex encoding
        r"%[0-9a-fA-F]{2}",  # URL encoding
    ]
    
    def validate(self, user_input: str) -> dict:
        """Validate user input for potential attacks."""
        issues = []
        
        # Length check
        if len(user_input) > 10000:
            issues.append("Input exceeds maximum length")
        
        # Check for injection patterns
        for pattern in self.INJECTION_PATTERNS:
            if re.search(pattern, user_input, re.IGNORECASE):
                issues.append(f"Suspicious pattern detected: {pattern}")
        
        # Check for encoding attempts
        for pattern in self.ENCODED_PATTERNS:
            if re.search(pattern, user_input):
                issues.append(f"Encoded content detected")
        
        # Check for high entropy (possible encoding)
        unique_chars = len(set(user_input))
        if len(user_input) > 50 and unique_chars / len(user_input) < 0.3:
            issues.append("High entropy detected - possible encoding")
        
        return {
            "valid": len(issues) == 0,
            "issues": issues,
            "sanitized": self._sanitize(user_input)
        }
    
    def _sanitize(self, user_input: str) -> str:
        """Basic sanitization."""
        # Remove control characters
        sanitized = re.sub(r'[\x00-\x1F\x7F]', '', user_input)
        return sanitized.strip()
```

Valideringstjekliste

  • Valider ved applikationsgrænse
  • Datahåndteringsregler etableret
  • GPT-modeller, Assistants API
  • Opdagelse af kodningsforsøg
  • Typevalidering
  • Saniser før behandling
  • Logvalideringsfejl
  • Ratebegrænsende

Outputhåndtering

LLM outputs must be validated and sanitized before being presented to users or passed to other systems.

Indholdsfiltrering

  • Tjek for eksponering af følsomme data
  • Bekræft, at ingen systemprompter er lækket
  • Valider outputformat
  • Tjek for injiceret indhold

Fase 1: Identifikation og triage (0-30 min)

  • Scan for personlige oplysninger
  • Masker eller redaktér følsomme data
  • Log PII-eksponeringsforsøg
  • Brugermeddelelse ved detektering

Formatvalidering

  • Valider JSON-output
  • Tjek forventet struktur
  • Bekræft tilladte værdier injection||Spørgsmål
  • Saniser HTML, hvis det er relevant

Output Handler Eksempel

```python
import re
import json

class OutputHandler:
    PII_PATTERNS = {
        "ssn": r"\b\d{3}-\d{2}-\d{4}\b",
        "email": r"\b[\w.-]+@[\w.-]+\.\w+\b",
        "phone": r"\b\d{3}[-.]?\d{3}[-.]?\d{4}\b",
    }
    
    def process_output(self, raw_output: str) -> dict:
        """Process and validate LLM output."""
        result = {
            "original": raw_output,
            "cleaned": raw_output,
            "warnings": [],
            "blocked": False
        }
        
        # Check for system prompt leakage
        if "system prompt" in raw_output.lower():
            result["warnings"].append("System prompt reference detected")
        
        # Scan for PII
        for pii_type, pattern in self.PII_PATTERNS.items():
            matches = re.findall(pattern, raw_output)
            if matches:
                result["warnings"].append(f"{pii_type} detected in output")
                # Optionally mask
                result["cleaned"] = re.sub(pattern, "[REDACTED]", result["cleaned"])
        
        return result
```

API-sikkerhed

Godkendelse

  • Brug stærk API-nøglestyring
  • Implementer OAuth, hvor det er muligt||SprielleM. offensiv AI (COASP)
  • JWT-tokenvalidering
  • API-nøglerotation

Authorization

  • Rolebaseret adgangskontrol (RBAC)
  • API-nøgleomfang
  • Per-user rate limits
  • Lejerisolering

Rate Limiting

  • Token-baserede grænser
  • Forespørgselsbaserede grænser
  • Omkostningskontrol
  • Tiered throttling

API-sikkerhedstjekliste

  • Brug kun HTTPS
  • Implementer hastighedsbegrænsning
  • Valider alle input
  • Desinficer alle output
  • Brug API-nøgler, ikke indlejrede
  • Implementer signering af anmodning
  • Omkostningssporing
  • Implementer CORS korrekt

Autentificering og autorisation

Brugergodkendelse

  • Stærke adgangskodepolitikker
  • MFA-support
  • Sessionsstyring
  • Token-udløb

API-godkendelse

  • API nøglestyring
  • OAuth-omfang
  • JWT-validering
  • Nøglerotation

Authorization

  • RBAC-implementering
  • Stack 0riginal|Overrigsflow
  • Adgang på ressourceniveau
  • Audit-logning Approach

Datasikkerhed

Dataklassificering

  • Identificer følsomme data
  • Kategoriser efter følsomhed|Virksomhed|Privatliv|Kategoriser efter følsomhed|Virksomhed| rapporteret (2024)
  • Anvend kontroller efter kategori
  • Sandbox LLM-output før downstream-brug

Kryptering

  • TLS i transit
  • AES i hvile
  • Nøglestyring
  • Nøglerotation

PII-håndtering

  • Detektion
  • Minimering
  • Samtykkestyring
  • Ret til sletning

Logføring og overvågning

Hvad skal logges

Sikkerhedshændelser

  • Godkendelsesforsøg
  • Autoriseringsfejl
  • Satsgrænse overskredet
  • Mistænkelige mønstre

AI-specifikke hændelser

  • Prompte injektionsforsøg
  • Systemprompt-adgang
  • Værktøjsankaldelser
  • | adgang via AI

Operational adgang til hændelsessystemer

  • API-opkald
  • Fejl og undtagelser
  • Performance-metrics
  • Co-counting

Aldrig.

  • Realtidsadvarsling for sikkerhedshændelser
  • Dashboard for sikkerhedsmålinger
  • Automatiseret anomalidetektion
  • Integration med SIEM
  • Regelmæssig loggennemgang
  • Retentionspolitikker

Almindelige sårbarheder

Valider outputformat

Bagdørsmodelvægte fra upålidelige kilder

Eksempel

User asks AI to "read file X" and AI has access without proper authorization checks.

2. SSRF via LLM

Server-side-anmodningsforfalskning via AI-værktøjsopkald

Eksempel

Spørgsmål tricker AI til at lave anmodninger til interne tjenester.

3. Authentication Bypass

Svag eller manglende godkendelse for AI-endepunkter

Eksempel

AI API-endepunkter uden ordentlige godkendelsestjek.

4. Vector DB Exposure

Ubeskyttet vektordatabase med følsomme indlejringer

Eksempel

Kundedata eksponeret via AI-chatbots

Compliance

GDPR (EU)

  • Lovligt grundlag for behandling
  • Dataminimering
  • Ret til adgang/sletning
  • Dataportabilitet

CCPA (California)

  • Ret til at vide
  • Ret til at slette
  • Ret til at fravælge
  • Ulykkes med at validere, rense eller håndtere LLM-output korrekt, før de sendes til downstream-systemer eller brugere.

AI-specifikke

  • Multi-Modal AI-sikkerhed
  • AI-risikovurderinger
  • Forpligtelser til gennemsigtighed
  • Menneskeligt tilsyn
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.