Tekoälyn hakkerointi
AI-tietoturvaresurssit

Suojattu tekoälykehitys

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

Updated: August 2026

Suojausperiaatteet

1. Puolustus perusteellisesti

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

Nopeusrajoituksen rikkomukset

Anna käyttäjille, API:ille ja tekoälykomponenteille tarvittavat vähimmäisoikeudet.

3. Fail Secure

Jos tapahtuu virheitä, käytä oletusarvoisesti suojattuja tiloja sallivien tilojen sijaan.

4. Zero Trust

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

Syötteen vahvistus

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

Syötteen vahvistusluokka

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

Vahvistuksen tarkistuslista

  • Tarkista sovelluksen rajalla
  • Tarkista syötteen pituus
  • Pattern match for injection
  • Tunnista koodausyritykset
  • Tyyppien vahvistus
  • Sennisoi ennen käsittelyä
  • Loki vahvistusvirheet
  • Nopeuden rajoitus

Tulosteiden käsittely

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

Sisällön suodatus

  • Tarkista arkaluontoisten tietojen altistuminen
  • Varmista, ettei järjestelmäkehotteita ole vuotanut
  • Tarkista tulostusmuoto
  • Tarkista lisätty sisältö

PII-tunnistus

  • Skannaa henkilökohtaisia ​​tietoja
  • Peitä tai poista arkaluontoiset tiedot
  • Kirjaa henkilökohtaisten tunnistetietojen altistumisyritykset
  • Käyttäjälle ilmoitus, kun se havaitaan|:||

Muotoilun vahvistus

  • Validoi JSON-lähdöt
  • Tarkista odotettu rakenne
  • Tarkista sallitut arvot
  • Puhdista HTML tarvittaessa

Tulostenkäsittelyesimerkki

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

Todennus

  • Käytä vahvaa API-avainten hallintaa
  • Ota käyttöön OAuth 2.0-asetuksissa. (COASP)
  • JWT-tunnuksen validointi
  • API-avainten kierto

Authorization

  • Roolipohjainen kulunvalvonta (RBAC)
  • API-avaimen kattavuus
  • Käyttäjäkohtaiset nopeusrajoitukset
  • Vuokralaisen eristäminen

Rate Limiting

  • Token-pohjaiset rajoitukset
  • Pyyntöpohjaiset rajoitukset
  • Kustannusten hallinta
  • porrastettu rajoitus

API-suojauksen tarkistuslista

  • Käytä vain HTTPS-protokollaa
  • Toteuta nopeuden rajoitus
  • Vahvista kaikki syötteet
  • Poista kaikki tuotokset
  • Käytä API-avaimia, ei upotettuja
  • Ota käyttöön pyynnön allekirjoitus
  • Loki API-käyttö
  • Ota CORS käyttöön oikein

Todennus ja valtuutus

Käyttäjän todennus

  • Vahvat salasanakäytännöt
  • MFA-tuki
  • Istunnon hallinta
  • Tunnusten vanheneminen

Skannausresurssit

  • API-avainten hallinta
  • OAuth-laajuudet
  • JWT-vahvistus
  • Avainten kierto

Authorization

  • RBAC-toteutus
  • Alkuperäisiä haavoittuvuuksia ei voi enää hyödyntää
  • Myrkylliset työkalumäärittelyt takaovilla
  • |Tarkista|

Data Security

Tietojen luokittelu

  • Tunnista arkaluontoiset tiedot
  • Luokittelu|C-hakuluettelo| raportoitu tietosuojaloukkaus (2024)
  • Käytä ohjaimia luokittain
  • Sandbox LLM -lähdöt ennen jatkokäyttöä

Salaus

  • TLS siirretty
  • AES levossa
  • Avainhallinta
  • Avainten kierto

PII-käsittely

  • Havaitseminen
  • Minimointi
  • Suostumusten hallinta
  • Oikeus poistaa

Kirjaus ja seuranta

Mitä kirjata

Turvatapahtumat

  • Todennusyritykset
  • Valtuutusvirheet
  • Nopeusraja ylitetty
  • Epäilyttävät kuviot

AI-spesifiset tapahtumat

  • Nopea injektioyritykset
  • Järjestelmän nopea käyttö
  • Työkalukutsut
  • Tietojen käyttö tekoälyn kautta

Operational Events

  • API-kutsut
  • Virheet ja poikkeukset
  • Suorituskykymittarit
  • Kustannusten seuranta

|Parhaiden käytäntöjen seuranta|

  • Reaaliaikainen varoitus tietoturvatapahtumista
  • Suojausmittareiden hallintapaneeli
  • Automaattinen poikkeamien havaitseminen
  • Integraatio SIEM:n kanssa
  • Säännöllinen lokitarkistus
  • Säilytyskäytännöt

Yleiset haavoittuvuudet

Vahvista tulostusmuoto

Turvallinen suora objektiviittaus, kun tekoäly käyttää resursseja

Esimerkki

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

2. SSRF LLM:n kautta

Palvelinpuolen pyyntöväärennös tekoälytyökalukutsujen avulla

Esimerkki

Tekoälytemppuja tekemään pyyntöjä sisäisille palveluille.

3. Todennuksen ohitus

Heikko tai puuttuu AI-päätepisteiden todennus

Esimerkki

AI-sovellusliittymän päätepisteet ilman asianmukaisia todennustarkistuksia.

4. Vector DB Exposure

Suojaamaton vektoritietokanta, jossa on herkät upotukset

Esimerkki

Julkinen vektoritietokanta, jossa on upotettuja arkaluontoisia tietoja.

Compliance

GDPR (EU)

  • Lakillinen peruste käsittelylle
  • Tietojen minimointi
  • Oikeus käyttää/poistaa
  • Tietojen siirrettävyys

CCPA (California)

  • Oikeus tietää
  • Oikeus poistaa
  • Oikeus kieltäytyä
  • LLM-tulosteiden validointi, puhdistaminen tai oikea käsittely epäonnistuminen ennen niiden välittämistä jatkojärjestelmille tai käyttäjille.

AI-kohtainen

  • |EU:n XAI-lain vaatimukset| sisältö
  • Tekoälyriskinarvioinnit
  • Läpinäkyvyysvelvollisuudet
  • Ihminen valvonta
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.