Hackování AI
Zdroje zabezpečení AI

Zabezpečený vývoj umělé inteligence

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

Updated: August 2026

Zásady zabezpečení

1. Hloubková obrana

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

2. Nejmenší oprávnění

Udělte minimální potřebná oprávnění uživatelům, rozhraním API a komponentám AI.

3. Fail Secure

Když dojde k chybám, použije se výchozí stav zabezpečení, nikoli stav povolený.

4. Nulová důvěra

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

Ověřování vstupu

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

Třídu ověření vstupu| 2025

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

Kontrolní seznam ověření

  • Ověřit na hranici aplikace
  • Zkontrolujte délku vstupu
  • Shoda vzoru pro injekci
  • Detekce pokusů o kódování
  • Ověřování typu
  • Před zpracováním dezinfikovat
  • Selhání ověření protokolu
  • Omezení četnosti

Ošetření výstupu

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

Filtrování obsahu

  • Kontrola vystavení citlivých dat
  • Ověřte, že neunikly žádné systémové výzvy
  • Ověřit výstupní formát
  • Kontrola vloženého obsahu

Pokus o otravu nástrojem

  • Vyhledejte osobní informace
  • Maskovat nebo redigovat citlivá data
  • Protokol pokusů o vystavení PII
  • Upozornění uživatele, když je detekováno

Format Validation

  • Ověření výstupů JSON
  • Zkontrolujte očekávanou strukturu
  • Ověření povolených hodnot
  • Dezinfikujte HTML, pokud je to vhodné

Příklad obslužného programu výstupu

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

Zabezpečení API

Autentizace

  • Používejte silnou správu klíčů API
  • Implementace OAuth 2.0|LLAI, kde je to možné|| (COASP)
  • Ověření tokenu JWT
  • Střídání klíčů API

Authorization

  • Řízení přístupu založeného na rolích (RBAC)
  • Rozsah klíče API
  • limity četnosti na uživatele
  • Izolace tenantů

Omezení rychlosti

  • Omezení založená na tokenech
  • Limity založené na požadavcích
  • Kontrola nákladů
  • Vrstvené omezení

Kontrolní seznam zabezpečení API

  • Použít pouze HTTPS
  • Implementujte omezení rychlosti
  • Ověřit všechny vstupy
  • Dezinfikovat všechny výstupy
  • Používejte klíče API, nikoli vložené
  • Implementace podepisování požadavků
  • Přístup k protokolu API
  • Řádně implementujte CORS

Ověřování a autorizace

Ověření uživatele

  • Zásady silných hesel
  • Podpora MFA
  • Správa relací
  • Vypršení platnosti tokenu

Autentizace API||Vyčerpání zdrojů|Vyčerpání zdrojů|Securing Vyčerpání zdrojů|Vyčerpání zdrojů | 2026

  • Správa klíčů API
  • Obory OAuth
  • Ověření JWT
  • Střídání klíčů

Authorization

  • Implementace RBAC
  • Kontrola oprávnění Vývojář Survex5||0 zranitelnosti již nejsou zneužitelné
  • Přístup na úrovni zdrojů
  • Audit logging|

Zabezpečení dat

Klasifikace dat

  • Identifikujte citlivá data
  • Kontrolní seznam narušení ochrany před incidentem||2 nahlášeno porušení soukromí robota|2| Sanitizační vrstva
  • Použít ovládací prvky podle kategorie
  • Výstupy Sandbox LLM před následným použitím

Šifrování

  • TLS na cestě
  • AES v klidu
  • Správa klíčů
  • Střídání klíčů

Zpracování PII

  • Detekce
  • Minimalizace
  • Správa souhlasu
  • Právo na smazání

Protokolování a monitorování

Co protokolovat

Události zabezpečení

  • Pokusy o ověření
  • Selhání autorizace
  • Překročen limit rychlosti
  • Podezřelé vzory

Události specifické pro AI

  • Pokusy o okamžité vložení
  • Okamžitý přístup k systému
  • Vyvolání nástroje
  • Přístup k datům přes AI

O

  • Okamžitá volání rozhraní API
  • Chyby a výjimky
  • Metriky výkonu
  • Sledování nákladů

nera dodavatelský řetězec| Vulul

  • Upozorňování v reálném čase na události zabezpečení
  • Dashboard pro metriky zabezpečení
  • Automatická detekce anomálií
  • Integrace se SIEM
  • Pravidelná kontrola protokolu
  • Zásady uchovávání

Obvyklé chyby zabezpečení

1 IDOR v AI Funkce

Nezabezpečené přímé odkazy na objekt, když AI přistupuje ke zdrojům

Příklad

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

2. SSRF přes LLM

Padělání požadavků na straně serveru prostřednictvím volání nástrojů AI

Příklad

Výzvy přivádějí umělou inteligenci k odesílání požadavků na interní služby.

3. Vynechání ověřování

Slabá nebo chybějící autentizace pro koncové body AI

Příklad

Koncové body rozhraní AI API bez řádných kontrol ověřování.

4. Vector DB Exposure

Nechráněná vektorová databáze s citlivými vložkami

Příklad

Zákaznická data vystavena prostřednictvím chatbotů AI

Soulad

GDPR (EU)

  • Zákonný základ pro zpracování
  • Minimalizace dat
  • Právo na přístup/smazání
  • Přenositelnost dat

CCPA (California)

  • Právo vědět
  • Právo smazat
  • Právo na odhlášení
  • | ověřte, dezinfikujte nebo správně zpracujte výstupy LLM před jejich předáním následným systémům nebo uživatelům.

Specifické pro AI

  • | obsah
  • Posouzení rizik AI
  • Povinnosti týkající se transparentnosti
  • Lidský dohled
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.