الاختبار الديناميكي وأمان وقت التشغيل

الحماية الذاتية للتطبيقات أثناء التشغيل (RASP)

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

RASP يحمي التطبيقات من الداخل أثناء التشغيل. على عكس WAFs التي تجلس أمام تطبيقك، RASP يجهز التطبيق نفسه لاكتشاف الهجمات وحظرها.

كيف يعمل RASP

WAF التقليدي:
┌─────────┐     ┌─────────┐     ┌─────────────┐
│ الطلب   │ ──▶ │   WAF   │ ──▶ │  التطبيق   │
└─────────┘     └─────────┘     └─────────────┘
              (مطابقة الأنماط)

RASP:
┌─────────┐     ┌───────────────────────────────┐
│ الطلب   │ ──▶ │ التطبيق                       │
└─────────┘     │  ┌─────────────────────────┐  │
                │  │ وكيل RASP (مدمج)        │  │
                │  │ • يراقب التنفيذ         │  │
                │  │ • يحظر الهجمات          │  │
                │  │ • لديه سياق وقت التشغيل │  │
                │  └─────────────────────────┘  │
                └───────────────────────────────┘

RASP مقابل WAF

الجانبWAFRASP
الموضعمحيط الشبكةداخل التطبيق
السياقطبقة HTTP فقطسياق وقت التشغيل الكامل
الإيجابيات الخاطئةأعلىأقل
مقاومة التجاوزأقلأعلى
تأثير الأداءمنخفضمتوسط
النشرتكوين الشبكةتكامل الكود/الوكيل
الرؤيةمحدودةكاملة

ما يحمي منه RASP

نوع الهجومكيف يكتشفه RASP
SQL Injectionيراقب استدعاءات برنامج تشغيل قاعدة البيانات للـ SQL المحقون
Command Injectionيعترض استدعاءات exec النظام مع مدخلات ملوثة
اجتياز المساريتتبع عمليات الملفات مع مسارات يتحكم فيها المستخدم
XXEيراقب محلل XML لتحميل الكيانات الخارجية
إلغاء التسلسليحظر إنشاء الفئات الخطرة
SSRFيتحقق من استدعاءات عميل HTTP ضد القائمة البيضاء

حلول RASP

مفتوح المصدر

الأداةاللغةالنوع
OpenRASP (Baidu)Java، PHP، Node.jsقائم على الوكيل
Sqreen (مستحوذ)Python، Node.js، RubySaaS + وكيل
ModSecurity (مع CRS)أي (reverse proxy)هجين WAF/RASP

تجاري

الأداةاللغاتالميزات
Contrast SecurityJava، .NET، Node، Python، Go، RubyRASP كامل + IAST
Imperva RASPJava، .NETمقياس المؤسسات
Signal Sciences (Fastly)أي (وحدة)WAF + RASP
Dynatrace AppSecJava، .NET، Node، PHP، GoAPM + الأمان

تنفيذ RASP: مثال OpenRASP

تثبيت وكيل Java

# تنزيل OpenRASP
wget https://github.com/baidu/openrasp/releases/download/v1.3.7/rasp-java.tar.gz
tar -xzf rasp-java.tar.gz

# التثبيت لتطبيق Java
java -jar RaspInstall.jar -install /path/to/tomcat

التكوين

# openrasp/conf/openrasp.yml
security:
  sql:
    # مراقبة جميع استعلامات SQL
    policy: log  # log, block
  command:
    # حظر حقن الأوامر
    policy: block
  file:
    # مراقبة عمليات الملفات
    policy: log
  xxe:
    # حظر هجمات XXE
    policy: block

# القائمة البيضاء للعمليات الموثوقة
whitelist:
  sql:
    - "SELECT * FROM users WHERE id = ?"

RASP في بيئات الحاويات

نمط Sidecar في Kubernetes

# deployment.yaml مع sidecar RASP
apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
spec:
  template:
    spec:
      containers:
        - name: app
          image: my-app:latest
          env:
            - name: JAVA_TOOL_OPTIONS
              value: "-javaagent:/rasp/rasp.jar"
          volumeMounts:
            - name: rasp-agent
              mountPath: /rasp

      initContainers:
        - name: rasp-init
          image: rasp-agent:latest
          command: ['cp', '/agent/rasp.jar', '/rasp/']
          volumeMounts:
            - name: rasp-agent
              mountPath: /rasp

      volumes:
        - name: rasp-agent
          emptyDir: {}

مراقبة وتنبيهات RASP

# التنبيه على حظر RASP
apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule
metadata:
  name: rasp-alerts
spec:
  groups:
    - name: rasp
      rules:
        - alert: RASPAttackBlocked
          expr: increase(rasp_attacks_blocked_total[5m]) > 10
          for: 1m
          labels:
            severity: warning
          annotations:
            summary: "عدد كبير من الهجمات المحظورة بواسطة RASP"

متى تستخدم RASP

السيناريوالتوصية
تطبيقات عالية القيمةاستخدم RASP + WAF
الامتثال التنظيميRASP يوفر رؤية عميقة
التطبيقات القديمةWAF قد يكون أسهل
الخدمات المصغرةفكر في service mesh + RASP
التطوير/التجهيزاستخدم في وضع المراقبة
الإنتاجابدأ بالتسجيل، تدرج إلى الحظر

أفضل الممارسات

  1. ابدأ في وضع المراقبة: سجل الهجمات قبل الحظر
  2. اضبط لتطبيقك: أضف الأنماط الشرعية للقائمة البيضاء
  3. راقب الأداء: RASP يضيف حمل (~2-5% CPU)
  4. ادمج مع SIEM: غذِّ سجلات RASP لمراقبة الأمان
  5. طبق دفاعات متعددة: استخدم RASP جنباً إلى جنب مع WAF، ليس بدلاً منه

في الوحدة التالية، سنتناول إدارة الأسرار وأمان البنية التحتية. :::

مراجعة سريعة: كيف تجد هذا الدرس؟

اختبار

الوحدة 4: الاختبار الديناميكي وأمان وقت التشغيل

خذ الاختبار
نشرة أسبوعية مجانية

ابقَ على مسار النيرد

بريد واحد أسبوعياً — دورات، مقالات معمّقة، أدوات، وتجارب ذكاء اصطناعي.

بدون إزعاج. إلغاء الاشتراك في أي وقت.