Yapay Zeka Hacking
AI Güvenlik Kaynakları

Güvenli Yapay Zeka Geliştirme

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

Updated: August 2026

Güvenlik İlkeleri

1. Derinlemesine Savunma

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

2. En Az Ayrıcalık

Kullanıcılara, API'lere ve AI bileşenlerine gerekli minimum izinleri verin.

3. Başarısız Güvenli

Hatalar oluştuğunda varsayılan olarak izin verilen durumlar yerine güvenli durumları kullanın.

4. Sıfır Güven

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

Giriş Doğrulama

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

Giriş Doğrulama Sınıfı

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

Doğrulama Kontrol Listesi

  • Uygulama sınırında doğrulama
  • Giriş uzunluğunu kontrol edin
  • Enjeksiyon için kalıp eşleşmesi
  • Kodlama girişimlerini tespit edin
  • Tür doğrulama
  • İşlemeden önce sterilize etme
  • Doğrulama hatalarını günlüğe kaydedin
  • Hız sınırlama

Çıktı İşleme

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

İçerik Filtreleme

  • Hassas verilerin açığa çıkıp çıkmadığını kontrol edin
  • Hiçbir sistem isteminin sızdırılmadığını doğrulayın
  • Çıktı formatını doğrula
  • Enjekte edilen içeriği kontrol edin

PII Tespiti

  • Kişisel bilgileri tarayın
  • Hassas verileri maskeleyin veya düzeltin
  • PII ifşa girişimlerini günlüğe kaydet
  • Algılandığında kullanıcı bildirimi

Biçim Doğrulaması

  • JSON çıktılarını doğrulama
  • Beklenen yapıyı kontrol edin
  • İzin verilen değerleri doğrulama
  • Geçerliyse HTML'yi sterilize edin

Çıktı İşleyici Örneği

```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 Güvenliği

Kimlik Doğrulama

  • Güçlü API anahtar yönetimi kullanın
  • Mümkün olduğunda OAuth 2.0'ı uygulayın
  • JWT token doğrulama
  • API anahtar rotasyonu

Yetkilendirme

  • Rol tabanlı erişim kontrolü (RBAC)
  • API anahtar kapsamı
  • Kullanıcı başına oran sınırları
  • Kiracı izolasyonu

Hız Sınırlama

  • Token tabanlı sınırlar
  • İsteğe dayalı sınırlar
  • Maliyet kontrolleri
  • Kademeli azaltma

API Güvenlik Kontrol Listesi

  • Yalnızca HTTPS kullanın
  • Hız sınırlamayı uygulama
  • Tüm girdileri doğrulayın
  • Tüm çıktıları temizleyin
  • Yerleşik olmayan API anahtarlarını kullanın
  • İstek imzalamayı uygulayın
  • Günlük API erişimi
  • CORS'u düzgün bir şekilde uygulayın

Kimlik Doğrulama ve Yetkilendirme

Kullanıcı Kimlik Doğrulaması

  • Güçlü parola politikaları
  • MFA desteği
  • Oturum yönetimi
  • Belirteç son kullanma tarihi

API Kimlik Doğrulaması

  • API anahtar yönetimi
  • OAuth kapsamları
  • JWT doğrulama
  • Anahtar rotasyonu

Yetkilendirme

  • RBAC uygulaması
  • İzin kontrolleri
  • Kaynak düzeyinde erişim
  • Denetim günlüğü

Veri Güvenliği

Veri Sınıflandırma

  • Hassas verileri tanımlama
  • Hassasiyete göre sınıflandırma
  • Kontrolleri kategoriye göre uygulayın
  • Düzenli denetimler

Şifreleme

  • Transit halinde TLS
  • AES atıl durumda
  • Anahtar yönetimi
  • Anahtar rotasyonu

PII İşleme

  • Algılama
  • Küçültme
  • İzin yönetimi
  • Silme hakkı

Günlüğe Kaydetme ve İzleme

Neler Günlüğe Kaydedilmeli

Güvenlik Olayları

  • Kimlik doğrulama girişimleri
  • Yetkilendirme hataları
  • Oran sınırı aşıldı
  • Şüpheli modeller

AI'ya Özel Etkinlikler

  • Anında enjeksiyon girişimleri
  • Sistem istemi erişimi
  • Araç başlatmaları
  • Yapay zeka aracılığıyla veri erişimi

Operasyonel Olaylar

  • API çağrıları
  • Hatalar ve istisnalar
  • Performans ölçümleri
  • Maliyet takibi

En İyi Uygulamaları İzleme

  • Güvenlik olayları için gerçek zamanlı uyarı
  • Güvenlik ölçümleri için kontrol paneli
  • Otomatik anormallik tespiti
  • SIEM ile entegrasyon
  • Düzenli günlük incelemesi
  • Saklama politikaları

Genel Güvenlik Açıkları

1. Yapay Zeka Özelliklerinde IDOR

Yapay zeka kaynaklara eriştiğinde Güvenli Olmayan Doğrudan Nesne Referansı

Örnek

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

2. LLM aracılığıyla SSRF

Sunucu Tarafı İstek Sahteciliği Yapay zeka aracı çağrıları

Örnek

İstem yapay zekayı dahili hizmetlere istekte bulunurken kandırıyor.

3. Kimlik Doğrulama Atlaması

Yapay zeka uç noktaları için zayıf veya eksik kimlik doğrulaması

Örnek

Uygun kimlik doğrulama kontrolleri olmadan AI API uç noktaları.

4. Vector DB Exposure

Hassas yerleştirmelere sahip korumasız vektör veritabanı

Örnek

Gömülü duyarlılığa sahip, halka açık vektör veritabanı veriler.

Uyumluluk

GDPR (EU)

  • İşleme için yasal temel
  • Veri minimizasyonu
  • Erişim/silme hakkı
  • Veri taşınabilirliği

CCPA (California)

  • Bilme hakkı
  • Silme hakkı
  • Devre dışı bırakma hakkı
  • Ayrımcılık yapmama

Yapay Zekaya Özel

  • AB Yapay Zeka Yasası gereklilikleri
  • Yapay zeka risk değerlendirmeleri
  • Şeffaflık yükümlülükleri
  • İnsan gözetimi
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.