Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Dop2Mop — مُجمِّع OpenGraph لـ BloodHound الذي يرسم خريطة مسارات الهجوم من البنية التحتية لـ DevOps إلى MLOps، ويجمع موارد خط أنابيب CI/CD، ومدير الخدمة، ومنصة ML لتحليل الحركة الجانبية. | Kitploit
أدوات/GitHubGitHub/h4wkst3r/dop2mop
أمن البنية التحتية السحابيةالاستطلاعأمن الحاوياتتحليل الثغرات الأمنيةجمع المعلوماتاختبار الاختراقأمن السحابةDevSecOpsإدارة الهوية والوصول (IAM)أمن سلسلة التوريدالفريق الأحمر
4123منذ 6 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
GitHubh4wkst3r/dop2mop

Dop2Mop

مُجمِّع OpenGraph لـ BloodHound الذي يرسم خريطة مسارات الهجوم من البنية التحتية لـ DevOps إلى MLOps، ويجمع موارد خط أنابيب CI/CD، ومدير الخدمة، ومنصة ML لتحليل الحركة الجانبية.

عرض المستودع
مشاركة

Dop2Mop

مجموعة أدوات إثبات المفهوم لجمع OpenGraph لـ BloodHound والتي ترسم مسارات الهجوم من DevOps إلى بنية MLOps.

استنادًا إلى Pipelines of Privilege: Attack Paths from DevOps to MLOps Infrastructure بقلم Brett Hawkins (@h4wkst3r).

جدول المحتويات

  • شكر وتقدير
  • نظرة عامة
    • المنصات المدعومة
    • حدود الثقة المعيّنة
  • التثبيت
    • التبعيات الاختيارية
  • بدء سريع
    • إنشاء بيانات تجريبية
    • إدخال البيانات إلى BloodHound
  • الإعدادات
    • ملف الإعدادات
    • التحقق من صحة بيانات الاعتماد
  • مرجع سطر الأوامر
    • نظرة عامة على الأوامر
    • الخيارات العامة
    • dop2mop collect
    • dop2mop demo
  • أمثلة استخدام سطر الأوامر
    • جمع أساسي
    • جمع منصة واحدة
    • جمع منصات متعددة
    • أمثلة جمع GitHub
    • أمثلة جمع Azure DevOps
    • أمثلة جمع Azure ML
    • أمثلة جمع AWS SageMaker
    • جمع البيئة الكاملة
  • متغيرات البيئة
  • أنواع العقد
    • عقد DevOps
    • عقد MLOps
    • عقد الهوية
    • عقد القطع الأثرية
  • أنواع الحواف
    • حواف مسار الهجوم
    • حواف هيكلية
  • استعلامات مثال
  • رموز مخصصة
    • تحميل الرموز إلى BloodHound
  • واجهة برمجة التطبيقات Python
    • استخدام المجمعات الفردية
    • بناء رسوم بيانية مخصصة
  • استكشاف الأخطاء وإصلاحها
    • مشكلات شائعة
  • الترخيص

شكر وتقدير

  • SpecterOps من أجل BloodHound وOpenGraph

نظرة عامة

Dop2Mop يجمع البيانات من منصات DevOps وMLOps لتحديد مسارات الهجوم التي تتيح الحركة الجانبية من خطوط أنابيب CI/CD إلى بنية التدريب على التعلم الآلي. ينتج JSON بتنسيق OpenGraph المتوافق مع BloodHound للتصور والتحليل.

المنصات المدعومة

منصات DevOpsمنصات MLOpsمزودو الهوية
GitHub (الإجراءات، المستودعات، الأسرار)Azure Machine Learningخدمة Azure AD الأساسية
Azure DevOps (خطوط الأنابيب، اتصالات الخدمة)Amazon SageMakerأدوار AWS IAM
هوية OIDC/متحدة

حدود الثقة المعيّنة

Dop2Mop يصمم حدود الثقة الخمسة الحرجة التي تم تحديدها في البحث:

  1. TB1: مستودع الكود إلى خط أنابيب CI/CD - تفعيل خطوط الأنابيب تلقائياً من التزامات الكود
  2. TB2: مصادقة الخدمة الأساسية - بيانات اعتماد NHI التي تستخدمها خطوط الأنابيب للوصول إلى منصات ML
  3. TB3: ثقة القطع الأثرية للحاوية - ثقة ضمنية في صور الحاوية من السجلات الداخلية
  4. TB4: تنفيذ تعريف المهمة - منصات ML تنفذ تعريفات المهام دون تحقق
  5. TB5: إلغاء تسلسل الكود - إلغاء تسلسل غير آمن لمجموعات البيانات (pickle, joblib)

التثبيت```bash

git clone https://github.com/h4wkst3r/dop2mop.git cd dop2mop pip install -r requirements.txt pip install -e .

## ما يتم جمعه

يقوم كل جامع بجمع الموارد الخاصة بالمنصة ورسم خرائط لحدود الثقة بينها:

| جامع | الموارد التي تم جمعها |
|-----------|-------------------|
| **GitHub** | Organizations, repositories, workflows, secrets, branch protection rules, OIDC configurations, container image references, S3 bucket references |
| **Azure DevOps** | Organizations, projects, pipelines (YAML), service connections (with scope details), variable groups, agent pools, repositories |
| **Azure ML** | Workspaces, compute clusters/instances, datastores, ML environments, registered models, jobs/experiments, online & batch endpoints |
| **SageMaker** | Training jobs, models, endpoints, domains, notebook instances, IAM execution roles (with policy analysis), ECR repositories/images, S3 buckets (filtered to ML-relevant) |

## بداية سريعة

### إنشاء بيانات تجريبية

أسرع طريقة لرؤية Dop2Mop وهي تعمل هي إنشاء بيانات تجريبية تعرض سيناريوهات الهجوم من البحث:```bash
dop2mop demo -o demo.json

الاستيراد إلى BloodHound

  1. افتح BloodHound CE (v8.0+)
  2. انتقل إلى الإدارة ← استيراد الملفات
  3. قم برفع ملف JSON المُنشأ
  4. الاستعلام باستخدام Cypher:```cypher // Azure DevOps to Azure ML Lateral Movement MATCH p=(repo)-[:TriggersPipeline]->(pipeline)-[:UsesServiceConnection]->(svcconn)-[:AuthenticatesAs]->(workspace)-[:CodeExecution]->(compute) RETURN p

// Container Image Poisoning (Supply Chain Attack) MATCH p=(workflow)-[:CanPoisonImage]->(image)<-[:PullsImage]-(job) RETURN p

// OIDC/Federated Identity Abuse (confirmed edges) MATCH p=(workflow)-[:OIDCTrust]->(oidc)-[:CanAssumeRole]->(role)-[:SubmitsJob]->(job) RETURN p

// OIDC abuse including inferred paths MATCH p=(workflow)-[:OIDCTrust]->(oidc)-[:InferredCanAssumeRole]->(role) RETURN p

// Dataset Poisoning via Pickle Deserialization MATCH p=(workflow)-[:CanPoisonDataset]->(dataset)<-[:LoadsDataset]-(job) RETURN p

// Find repos with weak/no branch protection (TB1 exploitable) MATCH (repo)-[:BypassesProtection]->(repo) RETURN repo.name, repo.default_branch

// Find overprivileged SageMaker IAM roles MATCH (role:IAMRole) WHERE role.is_admin = true OR role.has_s3_full_access = true RETURN role.name, role.attached_policies

// Find SageMaker notebooks with root + internet access MATCH (nb:SMNotebook) WHERE nb.root_access = 'Enabled' AND nb.direct_internet_access = 'Enabled' RETURN nb.name, nb.status

// Find self-hosted ADO agent pools MATCH (agent:ADOAgent) WHERE agent.is_hosted = false RETURN agent.name, agent.pool_type

---

## التهيئة

### ملف التهيئة

بدلاً من تمرير بيانات الاعتماد في كل تشغيل، يمكنك حفظها في ملف تهيئة. انسخ المثال المرفق واملأ القيم الخاصة بك:```bash
cp dop2mop.yaml.example dop2mop.yaml
# Edit dop2mop.yaml with your credentials

يتحقق Dop2Mop من هذه المواقع بالترتيب:

  1. المسار المحدد بواسطة --config
  2. dop2mop.yaml / dop2mop.yml / .dop2mop.yaml في الدليل الحالي
  3. ~/.dop2mop.yaml

ملاحظة: dop2mop.yaml موجود في .gitignore لمنع إضافة بيانات الاعتماد عن طريق الخطأ. الملف النموذجي (dop2mop.yaml.example) آمن للإضافة.

انظر dop2mop.yaml.example لجميع الخيارات المتاحة مع التعليقات.

ترتيب الأولوية: وسيطات سطر الأوامر > ملف الإعداد > متغيرات البيئة.

التحقق من بيانات الاعتماد

اختبر بيانات الاعتماد قبل تشغيل مجموعة كاملة:```bash

Validate all configured collectors

dop2mop collect --validate -v

Validate specific collectors

dop2mop collect --validate --collectors github,sagemaker -v

يؤدي ذلك إلى إجراء استدعاء API خفيف لكل منصة للتحقق من صحة الرموز قبل بدء الجمع.

### أسماء مستعارة للمجمعين

يمكنك استخدام أسماء قصيرة بدلاً من أسماء الفئات الكاملة باستخدام `--collectors`:

| الاسم المستعار | المجمع |
|-------|-----------|
| `github`, `gh` | GitHubCollector |
| `ado`, `azuredevops`, `azure-devops` | AzureDevOpsCollector |
| `azureml`, `azure-ml` | AzureMLCollector |
| `sagemaker`, `sm` | SageMakerCollector |```bash
# These are equivalent:
dop2mop collect --collectors GitHubCollector,SageMakerCollector
dop2mop collect --collectors github,sagemaker
dop2mop collect --collectors gh,sm

مرجع واجهة سطر الأوامر

نظرة عامة على الأوامر```

dop2mop [options]

Commands: collect Collect data from DevOps/MLOps platforms demo Generate demo data with attack scenarios

### الخيارات العامة
تنزيل الأداة