Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
zero-touch-containment — Antigena (Darktrace) → جسر Aruba ClearPass CoA — حجز فوري للمستخدمين/الأجهزة يعتمد على النماذج. بدون نقرات من SOC. بنية سداسية، تغطية اختبار 82%. | Kitploit
أدوات/GitLabGitLab/lama-labs/zero-touch-containment
أدوات دفاعيةأمن الشبكاتالاستجابة للحوادث
GitLablama-labs/zero-touch-containment

zero-touch-containment

Antigena (Darktrace) → جسر Aruba ClearPass CoA — حجز فوري للمستخدمين/الأجهزة يعتمد على النماذج. بدون نقرات من SOC. بنية سداسية، تغطية اختبار 82%.

عرض المستودع
منذ 2 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

الاحتواء بدون لمس

pipeline status coverage report License: MIT Python 3.11+ Code style: ruff FastAPI

جسر Antigena (Darktrace) → Aruba ClearPass CoA — عزل فوري للمستخدمين/الأجهزة مدعوم بالنماذج. بدون نقرات من فريق SOC بين الكشف والاحتواء.

تنفيذ مرجعي مُطَهَّر لنمط تكامل NDR↔NAC إنتاجي تم تشغيله على نطاق قطاع مالي (آلاف نقاط النهاية، مركز عمليات أمنية 24/7). تم استبدال الأجزاء الخاصة بالعميل بإعدادات اصطناعية؛ البنية، تدفق القرار، والأنماط التشغيلية هي الحقيقية.


لماذا هذا موجود

وعد NDR (Darktrace, ExtraHop, Vectra) هو الكشف في ثوانٍ. لكن الواقع في معظم البنوك: الكشف في ثوانٍ، الاحتواء في ساعات — لأن تسليم المهمة من SOC إلى فرق NAC/جدار الحماية يدوي.

تسد هذه المجموعة الفجوة من خلال ربط Antigena (وحدة الاستجابة المستقلة من Darktrace) بـ Aruba ClearPass عبر REST API الخاص بـ ClearPass. عندما يتم تشغيل نموذج Darktrace فوق عتبة خطورة قابلة للتكوين، تقوم المجموعة بـ:

  1. تستقبل webhook من Antigena (مصدقة بـ HMAC).
  2. تخطط النموذج + مستوى الخطورة إلى إجراء احتواء عبر إعدادات YAML.
  3. تستدعي REST API لـ ClearPass لدفع دور جديد لنقطة النهاية (VLAN عزل)، قطع الجلسة، أو كليهما.
  4. تسجل كل قرار في سجل SQLite للتدقيق + الإصدار التلقائي.
  5. تخطر SOC عبر Slack/Teams.
  6. تعيد توجيه أحداث التدقيق المنظمة إلى SIEM (LogRhythm, Elastic).

متوسط زمن الاستجابة من طرف إلى طرف من إطلاق النموذج → تفعيل VLAN العزل: أقل من 5 ثوانٍ.


ما بالداخل

root@kitploit:~
zero-touch-containment/
├── README.md                       ← You are here
├── LICENSE
├── .gitignore
├── docs/
│   ├── architecture.md             ← Full architecture deep-dive + SOLID trace
│   └── lessons-learned.md          ← 10 lessons from running this in prod
│
├── webhook/                        ← Inbound HTTP layer (split by SRP)
│   ├── app.py                      ← FastAPI routes + lifespan only
│   ├── auth.py                     ← verify_hmac() — HMAC-SHA1 validation
│   ├── replay.py                   ← ReplayCache — LRU replay protection
│   └── models.py                   ← AntigenaEvent pydantic schema
│
├── engine/                         ← YAML-driven decision engine
│   ├── decision.py                 ← DecisionEngine (depends on QuarantineReader Protocol)
│   ├── rules.py                    ← YAML loaders for mapping + allowlist
│   └── models.py                   ← Action + MappingRule + ActionKind
│
├── clearpass/                      ← NAC adapter (implements CoAClient Protocol)
│   ├── client.py                   ← ClearPassClient — REST CoA-style ops
│   ├── ports.py                    ← CoAClient Protocol — port for any NAC backend
│   └── auth.py                     ← OAuth2 TokenCache
│
├── ledger/                         ← SQLite ledger (implements 5 ports — ISP applied)
│   ├── store.py                    ← SqliteLedger — all-in-one implementation
│   ├── ports.py                    ← EventStore + QuarantineWriter + QuarantineReader
│   │                                 + ReleaseManager + HealthChecker (segregated)
│   └── schema.py                   ← SQL DDL constant
│
├── cli/                            ← SOC operations CLI
│   └── soc.py                      ← `ztc release-expired` + planned commands
│
├── config/
│   ├── mapping.example.yaml        ← Severity → action mapping
│   └── allowlist.example.yaml      ← VIP / never-quarantine list
│
├── deploy/
│   ├── docker-compose.yml
│   ├── Dockerfile
│   └── .env.example
│
├── tests/                          ← 60 tests covering every layer
│   ├── test_decision.py
│   ├── test_ledger.py
│   ├── test_webhook_helpers.py
│   ├── test_clearpass_client.py
│   ├── test_protocols.py           ← Structural ISP/DIP compliance tests
│   └── fixtures/sample_event.json
│
├── requirements.txt
└── pyproject.toml

بداية سريعة

root@kitploit:~
git clone https://gitlab.com/zimlama/zero-touch-containment.git
cd zero-touch-containment

python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt

cp config/mapping.example.yaml config/mapping.yaml
cp config/allowlist.example.yaml config/allowlist.yaml
cp deploy/.env.example .env  # fill in CLEARPASS_HOST, OAUTH creds, HMAC secret

# Run the webhook receiver
uvicorn webhook.app:app --host 0.0.0.0 --port 8080

# In another shell: replay a sample event
curl -X POST http://localhost:8080/antigena \
  -H "Content-Type: application/json" \
  -H "X-Darktrace-Signature: sha1=$(echo -n @tests/fixtures/sample_event.json | openssl dgst -sha1 -hmac "$HMAC_SECRET" | awk '{print $2}')" \
  --data @tests/fixtures/sample_event.json

يقوم الـ webhook بالتحقق من HMAC-SHA1، ويشغل محرك القرار مقابل mapping.yaml، ويقوم إما بـ:

  • وضع الاختبار الجاف (الافتراضي في بيئة التطوير) → يسجل الإجراء الذي كان سيتخذ
  • الوضع المباشر → يستدعي REST API لـ ClearPass للتنفيذ

المعمارية (عرض شاشة واحدة)

root@kitploit:~
┌──────────────┐   1. webhook    ┌──────────────────┐   2. validate    ┌──────────────────┐
│  Darktrace   │ ──────────────▶ │  Webhook         │ ───────────────▶ │  Decision        │
│  Antigena    │  HMAC-SHA1      │  receiver        │  parse + auth    │  engine          │
│  fires model │                 │  (FastAPI)       │                  │  (YAML-driven)   │
└──────────────┘                 └──────────────────┘                  └─────────┬────────┘
                                                                                  │
                                                                                  ▼
                                                                       3. resolve action
                                                                       (allowlist + rate limit)
                                                                                  │
                                  ┌───────────────────────┬───────────────────────┼────────────────────────┐
                                  ▼                       ▼                       ▼                        ▼
                          ┌──────────────┐       ┌────────────────┐      ┌──────────────┐         ┌─────────────┐
                          │ ClearPass    │       │ SQLite         │      │ Slack/Teams  │         │ SIEM        │
                          │ REST API     │       │ ledger         │      │ notification │         │ (structured │
                          │ - role swap  │       │ - state        │      │              │         │  logs)      │
                          │ - disconnect │       │ - auto-release │      │              │         │             │
                          └──────────────┘       └────────────────┘      └──────────────┘         └─────────────┘

انظر docs/architecture.md للتفصيل الكامل.


مجموعة التقنيات


ما هذا ليس

  • ❌ ليس بديلاً عن Darktrace — يستهلك مخرجات Antigena، لا ينتجها.
  • ❌ ليس بديلاً عن ClearPass — طبقة تنسيق رقيقة فوق REST API الخاص بـ ClearPass.
  • ❌ ليس SIEM — يرسل أحداثًا منظمة إلى SIEM الخاص بك، لا يستعلم أو يرتبط.
  • ❌ ليس للجميع — مفيد فقط إذا كنت تدير كلاً من Darktrace NDR و Aruba ClearPass NAC. خاص بالبائعين حسب التصميم.

سياق العالم الحقيقي

جاءت الأنماط هنا من مشاركة متعددة السنوات لـ NDR + NAC في مؤسسة مالية من المستوى الأول في أمريكا اللاتينية:

  • آلاف نقاط النهاية تحت تغطية مشتركة لـ NAC + NDR
  • أكثر من 500 مستشعر افتراضي عبر الفروع ومركز البيانات الأساسي وبيئات نقاط النهاية المؤسسية
  • 6 فئات تهديد من MITRE ATT&CK تحت الاستجابة المستقلة: اتصالات C2، الحركة الجانبية، تسرب البيانات، شذوذ UEBA، الأجهزة المارقة، هجمات البروتوكول
  • تخفيض MTTR بنسبة 60% عبر هذا الجسر ثنائي الاتجاه (مقابل التسليم اليدوي من SOC)
  • تخفيض بنسبة 40% في الحوادث الأمنية عبر تغطية الاستجابة المستقلة

المجموعة هي النسخة المقطرة والمطهّرة من ذلك التكامل. تم استبدال أسماء النماذج، معرفات المستأجر، نقاط نهاية ClearPass، وخطط IP بمكافئات اصطناعية.


ما ستتعلمه من docs/lessons-learned.md

10 أشياء كنت أتمنى أن يخبرني بها أحد قبل اليوم الأول من نشر Antigena↔ClearPass في الإنتاج — تغطي موثوقية webhook، خصائص REST API لـ ClearPass، الفرق بين تبديل الدور وقطع الجلسة، عواصف الاحتواء الناتجة عن الإيجابيات الخاطئة، وتصميم تسليم المشغل.


المعمارية (متوافقة مع SOLID)

طبقات سداسية ذات منافذ Protocol صريحة بين المحولات الملموسة ورمز التنسيق:

انظر docs/architecture.md للتفصيل الكامل.

تشغيل مجموعة الاختبارات

root@kitploit:~
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[test]"
HMAC_SECRET=test-secret python -m pytest tests/ -v

60 اختبارًا تغطي محرك القرار، سجل SQLite، التحقق من HMAC، ذاكرة التخزين المؤقت لإعادة التشغيل، عميل ClearPass (غير متزامن، محاكى بـ respx)، والامتثال الهيكلي للبروتوكول.

خارطة الطريق

  • مستقبل webhook + التحقق من HMAC
  • محرك قرار مدعوم بـ YAML
  • عميل ClearPass REST (تبديل الدور + قطع الجلسة)
  • سجل SQLite + الإصدار التلقائي
  • منافذ البروتوكول + إعادة هيكلة التوافق مع SOLID
  • مجموعة اختبارات مكونة من 60 اختبارًا تغطي كل طبقة
  • CLI لعمليات SOC — list، release، quarantine، audit (المستوى الثاني)
  • طبقة إشعارات Slack/Teams (المستوى الثاني)
  • معيد توجيه SIEM منظم (المستوى الثاني)

عن المؤلف

Leonardo Mejía — مهندس أول للأمن السيبراني و SD‑WAN · أكثر من 15 عامًا الثقة الصفرية · السحابة الهجينة · NDR · SD‑WAN للمؤسسات

  • LinkedIn: linkedin.com/in/leonardomejia
  • GitHub: github.com/zimlama
  • مستودع المحفظة الشقي: sdwan-automation-toolkit

الترخيص

MIT — انظر LICENSE.

الأنماط في هذا المستودع هي تجريدات مطهّرة، وليس كود عميل مملوك. استخدم بحرية؛ التقدير محل تقدير.

تنزيل الأداة
الطبقةالأدوات
اللغةPython 3.11+
الويبFastAPI + Uvicorn (مستقبل webhook)
عميل HTTPhttpx (غير متزامن) + tenacity (إعادة المحاولة مع التباطؤ)
المصادقةHMAC-SHA1 وارد (Darktrace) · OAuth2 client_credentials صادر (ClearPass)
الإعداداتYAML — تخطيط الخطورة → الإجراء + قائمة السماح
الحالةSQLite + WAL — سجل العزل + الإصدار التلقائي
التسجيلstructlog — إخراج JSON لاستيعاب SIEM
الاختبارpytest + respx (محاكاة httpx) + إعدادات مسجلة
النشرDocker Compose، ملائم لجهاز افتراضي واحد
المبدأالتنفيذ
SRPwebhook/ مقسم إلى auth + replay + models + التوجيه. clearpass/ مقسم إلى client + auth + ports. ledger/ مقسم إلى store + ports + schema.
OCPالواجهات الخلفية الجديدة لـ NAC تنفذ بروتوكول CoAClient — لا تغييرات على webhook أو المحرك.
LSPتستخدم الاختبارات نماذج وهمية في الذاكرة تلبي نفس البروتوكولات. سلوك خط الأنابيب لم يتغير.
ISPالسجل مقسم إلى 5 منافذ منفصلة (EventStore، QuarantineWriter، QuarantineReader، ReleaseManager، HealthChecker). يعتمد webhook فقط على الأولين؛ المحرك يعتمد فقط على QuarantineReader.
DIPwebhook/app.py و engine/decision.py يعتمدان على البروتوكولات، وليس على الفئات الملموسة أبدًا.