استراتيجيات الدفاع

بناء نظام أمان مطالبات شامل

5 دقيقة للقراءة

لنجمع كل شيء في نظام أمان مطالبات جاهز للإنتاج. هذه البنية تحمي ضد الاستخراج والحقن والتسرب مع الحفاظ على قابلية الاستخدام.

بنية الأمان الكاملة

┌─────────────────────────────────────────────────────────────────┐
│                      تدفق الطلب                                  │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│                    1. بوابة الإدخال                              │
│  ┌─────────────┐ ┌─────────────┐ ┌─────────────┐               │
│  │محدد المعدل  │ │التحقق      │ │فحص التهديد  │               │
│  └─────────────┘ └─────────────┘ └─────────────┘               │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│                  2. بناء المطالبة                                │
│  ┌─────────────┐ ┌─────────────┐ ┌─────────────┐               │
│  │التسلسل     │ │تصنيف       │ │حقن الكناري │               │
│  │الهرمي      │ │البيانات    │ │             │               │
│  └─────────────┘ └─────────────┘ └─────────────┘               │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│                     3. معالجة LLM                               │
│  ┌─────────────────────────────────────────────────┐           │
│  │        Claude Sonnet 4.5 / Opus 4.5              │           │
│  └─────────────────────────────────────────────────┘           │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│                   4. التحقق من المخرجات                         │
│  ┌─────────────┐ ┌─────────────┐ ┌─────────────┐               │
│  │فحص الكناري │ │فحص المحتوى │ │بوابة       │               │
│  │            │ │            │ │الإجراءات  │               │
│  └─────────────┘ └─────────────┘ └─────────────┘               │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│                    5. تسليم الاستجابة                           │
│  ┌─────────────┐ ┌─────────────┐                               │
│  │  التسجيل   │ │  المقاييس  │                               │
│  └─────────────┘ └─────────────┘                               │
└─────────────────────────────────────────────────────────────────┘

التنفيذ

خدمة الأمان الأساسية

class SecureAIService:
    async def process_request(
        self,
        user_input: str,
        session_id: str,
        user_id: str,
        external_data: Optional[list] = None
    ) -> Dict[str, Any]:

        # 1. الحصول على سياق الأمان
        ctx = self.get_or_create_context(session_id, user_id)

        # 2. تحديد المعدل
        if not await self.rate_limiter.check(user_id):
            return {"error": "تجاوز حد المعدل"}

        # 3. كشف التهديدات
        threat_result = self.threat_detector.analyze(user_input)
        if threat_result["blocked"]:
            return {"error": "تم حظر الطلب"}

        # 4. بناء مطالبة آمنة
        prompt = self._build_secure_prompt(user_input, external_data, ctx)

        # 5. استدعاء LLM
        response = await self.client.messages.create(...)

        # 6. التحقق من المخرجات
        validation = self._validate_output(output_text, ctx)
        if not validation["safe"]:
            return {"error": "تم حظر الاستجابة"}

        return {"response": output_text}

باني المطالبة الآمنة

مطالبة نظامية تتضمن:

  • قواعد النظام الأساسية (غير قابلة للتجاوز)
  • رمز أمان الجلسة
  • قواعد التطبيق
  • معالجة البيانات مع Spotlighting

التحقق من المخرجات

def _validate_output(self, output: str, ctx: SecurityContext) -> dict:
    issues = []

    # فحص تسرب رمز الكناري
    if ctx.canary_token in output:
        issues.append({"type": "canary_leaked", "severity": "critical"})

    # فحص أجزاء المطالبة النظامية
    # فحص أنماط بيانات الاعتماد
    # فحص أنماط الكود الخطيرة

    return {"safe": len(critical_issues) == 0, "issues": issues}

كاشف التهديدات

class ThreatDetector:
    def analyze(self, input_text: str) -> dict:
        # فحص أنماط الاستخراج
        # فحص أنماط الحقن
        # فحص أنماط التلاعب
        # فحص أنماط التشفير

        return {
            "blocked": score >= 30,
            "suspicious": score >= 15,
            "score": score
        }

مقاييس لوحة المراقبة

  • إجمالي الطلبات المعالجة
  • التهديدات المكتشفة حسب الفئة
  • المخرجات المحظورة
  • محاولات تسرب الكناري
  • حدود المعدل المُفعَّلة
  • الجلسات ذات التهديد المرتفع

قائمة فحص النشر

العنصر الحالة ملاحظات
تكوين تحديد المعدل حدود لكل مستخدم وعامة
تمكين كشف التهديدات مطابقة الأنماط نشطة
دوران رموز الكناري دوران كل ساعة
تفعيل التحقق من المخرجات فحص جميع الاستجابات
تكوين التسجيل التقاط أحداث الأمان
تصدير المقاييس Prometheus/CloudWatch
تكوين التنبيهات الأحداث الحرجة تُخطر الفريق

رؤية رئيسية: الأمان ليس ميزة تضيفها—إنه عقلية تُضمِّنها. كل مكون يجب أن يفترض مدخلات معادية. كل مخرج يجب التحقق منه. كل شذوذ يجب تسجيله. الهدف ليس المنع التام (مستحيل)، بل الكشف السريع والمعالجة الرشيقة.

الوحدة التالية: اختبار أمان نظام الذكاء الاصطناعي الخاص بك بأدوات معيارية في الصناعة. :::

اختبار

الوحدة 4: استراتيجيات الدفاع

خذ الاختبار