
DockSec v2026.8.19
ماسح أمان Docker مدعوم بالذكاء الاصطناعي يشرح الثغرات الأمنية بلغة إنجليزية بسيطة. مشروع معملي من OWASP.
ما هو DockSec؟
DockSec هو مشروع مختبري ضمن OWASP يسد الفجوة بين نتائج الفحص الأمني المعقدة والإصلاحات العملية التي ينفذها المطور. يدمج أدوات الفحص المعيارية في المجال (Trivy وHadolint وDocker Scout) مع الذكاء الاصطناعي لتقديم تحليل أمني مدرك للسياق.
بدلاً من إغراقك بقائمة تضم أكثر من 200 ثغرة CVE، يقوم DockSec بما يلي:
- يرتب الأولويات لما يؤثر فعلاً على إعداد الحاوية الخاص بك.
- يشرح الثغرات بلغة واضحة، وليس فقط بالمصطلحات الأمنية المتخصصة.
- يقترح إصلاحات محددة لملف Dockerfile الخاص بك.
- ينشئ تقارير أمنية احترافية وتفاعلية لفريقك.
كل شيء يُفحص محلياً؛ والشيء الوحيد الذي يغادر جهازك هو محتوى الملف (بعد حجب البيانات السرية) المُرسل إلى مزود الذكاء الاصطناعي الذي تختاره - ومع نموذج محلي أو وضع الفحص فقط، لا يغادر أي شيء على الإطلاق. راجع تدفق البيانات والخصوصية.
كيف يعمل
سير عمل DockSec: من الفحص إلى رؤى قابلة للتنفيذ
يتبع DockSec خط أنابيب من خمس مراحل:
- الفحص: يشغّل Trivy (ثغرات الصورة وسوء إعدادات Dockerfile)، وHadolint، وDocker Scout محلياً على بيئتك.
- ترتيب الأولويات: يرتب كل نتيجة CVE حسب الخطورة مقترنةً باحتمالية استغلالها وفق EPSS، بحيث تكون القائمة مرتبة حسب ما يجب إصلاحه أولاً وليس حسب ما تم اكتشافه أولاً.
- الربط: يكتشف سلاسل الاستغلال حيث تتحد نتائج منفصلة في مسار هجوم واحد - فقاعدة بيانات تحمل بيانات اعتماد يمكن لخدمة مواجهة للإنترنت الوصول إليها تُعد سلسلة، وليست نتيجتين غير مترابطتين. ومع وجود مفتاح API، تمرّ عملية ذكاء اصطناعي على كامل مخرجات الفحص لترتيب ذلك وشرحه وتوسيعه.
- التوصية: ينتج أوامر إصلاح جاهزة للنسخ والتشغيل وتغييرات ملموسة في Dockerfile أو compose، ويوضح عدد النتائج التي تحلها.
- التقرير: يصدّر النتائج القابلة للتنفيذ بصيغ HTML وPDF وJSON وCSV وMarkdown وSARIF وCycloneDX SBOM.
البدء
1. المتطلبات الأساسية
يقوم DockSec بتنسيق أدوات الفحص المحلية، لذا يحتاج إلى:
| المتطلب | مطلوب من أجل | التثبيت |
|---|---|---|
| Python 3.12+ | DockSec نفسه | python.org |
| Trivy | جميع عمليات الفحص (مطلوب) | brew install trivy أو وثائق Trivy |
| Hadolint | فحص Dockerfile | brew install hadolint أو وثائق Hadolint |
| Docker | فحص الصور (-i) | وثائق Docker |
أو دع DockSec يثبّت Trivy وHadolint نيابةً عنك:```bash python -m docksec.setup_external_tools
### 2. تثبيت DockSec```bash
# Full install with AI analysis support (recommended)
pip install "docksec[ai]"
# Or the slim, scan-only core (no LLM dependencies, no API key needed)
pip install docksec
3. قم بتشغيل أول فحص لك
لا حاجة لمفتاح API للفحص المحلي:```bash docksec Dockerfile --scan-only
كل فحص ينتهي بملخص للنتائج: جدول درجات الخطورة، ودرجة أمان من 0 إلى 100 مع
تقييم، وكتلة إجراء "Quick take"، والتقارير المُنشأة (المحفوظة افتراضيًا في
`~/.docksec/results/`)، وأمر مقترح للتالي.
### 4. تفعيل تحليل الذكاء الاصطناعي
يشرح تحليل الذكاء الاصطناعي النتائج ويقترح إصلاحات. اختر مزوّدًا، وعيّن مفتاح API الخاص به، ثم شغّل:```bash
# OpenAI (default provider)
export OPENAI_API_KEY="sk-..."
docksec Dockerfile
# Anthropic Claude
export ANTHROPIC_API_KEY="sk-ant-..."
docksec Dockerfile --ai-only --provider anthropic --model claude-sonnet-5
# Google Gemini
export GOOGLE_API_KEY="..."
docksec Dockerfile --ai-only --provider google
# Ollama (fully local, no API key, data never leaves your machine)
docksec Dockerfile --ai-only --provider ollama --model llama3.1
كل مزود لديه نموذج افتراضي مناسب (OpenAI: gpt-4o، Anthropic:
claude-haiku-4-5، Google: gemini-1.5-pro، Ollama: llama3.1)، لذا فإن --model
اختياري. لتجنب تكرار الأعلام، قم بتعيين متغيرات البيئة (أو ضعها في ملف .env
في الدليل الذي تشغّل منه - يقوم DockSec بتحميله تلقائيًا):```bash
export LLM_PROVIDER=anthropic
export LLM_MODEL=claude-sonnet-5
docksec Dockerfile
قبل إرسال أي محتوى إلى مزوّد الذكاء الاصطناعي، تُقنَّع القيم التي تبدو كأسرار (كلمات المرور، الرموز،
مفاتيح API، كتل المفاتيح الخاصة) تلقائيًا. راجع
[تدفق البيانات والخصوصية](#data-flow-and-privacy).
### 5. أو شغّل صورة الحاوية (لا شيء لتثبيته)