من خلال Top 10 CI/CD Security Risks (v1.0، 2022) فهرست OWASP Foundation بشكل منهجي الثغرات الأمنية النموذجية لبيئات البناء والنشر: «Insufficient Flow Control Mechanisms» (CICD-SEC-1)، و«Inadequate Identity and Access Management» (CICD-SEC-2)، و«Dependency Chain Abuse» (CICD-SEC-3)، و«Poisoned Pipeline Execution» (CICD-SEC-4)، و«Insufficient PBAC (Pipeline-Based Access Controls)» (CICD-SEC-5)، و«Insufficient Credential Hygiene» (CICD-SEC-6)، و«Insecure System Configuration» (CICD-SEC-7)، و«Ungoverned Usage of 3rd Party Services» (CICD-SEC-8)، و«Improper Artifact Integrity Validation» (CICD-SEC-9)، و«Insufficient Logging and Visibility» (CICD-SEC-10). ويصلح هذا الكتالوج إطارًا للفحص في تقييم منظّم لمنظومة خطوط الإنتاج الخاصة بكم – بصرف النظر عمّا إذا كنتم تستخدمون GitHub Actions أو GitLab CI/CD أو Jenkins.
الأمن لخط CI/CD الخاص بكم
لماذا تُعدّ خطوط البناء والنشر من أكثر الأنظمة حساسية في بيئة تقنية المعلومات لديكم – وكيف يمكنكم تأمينها بشكل منظّم وفق OWASP Top 10 CI/CD Security Risks وSLSA.
يُؤتمت خط CI/CD الطريق من الشيفرة المصدرية إلى بيئة الإنتاج – ويجمع لهذا الغرض صلاحيات واسعة على مستودعات الشيفرة وسجلات الحزم والبيئات السحابية. وهذا تحديدًا ما يجعله هدفًا جذابًا للهجوم: فمن يخترق عملية البناء يخترق محتملًا كل مخرَج يتم تسليمه، كما أظهرت الحوادث لدى SolarWinds وCodecov و3CX. ومن خلال Top 10 CI/CD Security Risks نظّمت OWASP Foundation الثغرات الأمنية النموذجية لهذه البيئات؛ ويترجم إطار SLSA الإجراءات المضادة إلى مستويات نضج قابلة للتحقق. يقدم هذا المقال نظرة عامة على أهم التهديدات وإجراءات التحصين التي أثبتت فعاليتها عمليًا.
أهم النقاط في لمحة
ستة محاور موضوعية — انقروا للتوسيع.
من Poisoned Pipelines إلى SLSA: نقاط التحكم الحاسمة
خمسة مجالات موضوعية من المقال — اضغطوا على علامة التبويب للاطلاع على المخاطر والإجراءات المضادة.
- يتلاعب مهاجم لديه وصول إلى نظام الشيفرة المصدرية بعملية البناء، دون الحاجة إلى اختراق بيئة البناء نفسها.
- تميّز OWASP بين ثلاثة متغيرات: Direct PPE (D-PPE) يعدّل ملف إعدادات CI مباشرة، وIndirect PPE (I-PPE) يدسّ الشيفرة في ملفات مُشار إليها مثل Makefiles أو نصوص الاختبار البرمجية، وPublic PPE (3PE) يستغل طلبات السحب (Pull Requests) من مساهمين مجهولين في المستودعات العامة.
- الإجراءات المضادة: تنفيذ الشيفرة غير المُراجَعة على مُشغّلات (Runners) معزولة فقط دون وصول إلى الأسرار (Secrets)، وعدم تشغيل خطوط المساهمين الخارجيين إلا بعد موافقة يدوية، وتحميل إعدادات CI من فروع محمية.
- يجمع «Dependency Chain Abuse» الهجمات عبر سلسلة توريد الحزم: Dependency Confusion وDependency Hijacking وTyposquatting وBrandjacking.
- في Dependency Confusion ينشر المهاجم في سجل عام حزمة تحمل اسم حزمة داخلية برقم إصدار أعلى. وقد أثبت Alex Birsan هذه التقنية في عام 2021 في أنظمة البناء لدى أكثر من 35 مؤسسة، من بينها Apple وMicrosoft وPayPal.
- الإجراءات المضادة: وسيط سجل داخلي (Registry-Proxy) كمصدر وحيد للحصول على الحزم، وملفات القفل (Lock Files) مع التحقق من المجاميع الاختبارية والتوقيعات، ونطاقات المؤسسة للحزم الخاصة، وتشغيل نصوص التثبيت في سياقات معزولة دون وصول إلى الأسرار.
- يصف «Insufficient Credential Hygiene» الأسرار طويلة الأمد وواسعة الصلاحيات التي قد ينتهي بها المطاف في السجلات أو المخرجات أو المستودعات المتفرعة.
- عبر OpenID Connect (OIDC) تُصدر منصة CI لكل مهمة رمز هوية موقّعًا؛ ويتحقق منه مزوّد الخدمة السحابية مقابل علاقة ثقة محددة مسبقًا، ويستبدله برمز وصول قصير الأمد يسري لهذه المهمة وحدها وتنتهي صلاحيته تلقائيًا.
- وبذلك يُستغنى إلى حد كبير عن بيانات الاعتماد السحابية المخزنة بشكل ثابت وعن التدوير اليدوي؛ ويظل فحص الأسرار (Secret Scanning) والإدارة المركزية للأسرار ضروريين كإجراءات مساندة.
- ينبغي أن تحصل المُشغّلات لكل خط على الحد الأدنى الضروري من الصلاحيات فقط، وأن تُشغَّل بشكل مؤقت (Ephemeral) في الحالة المثلى — أي يُتخلّص منها بعد كل مهمة.
- تُبقي قواعد حماية الفروع (Branch Protection) مع المراجعات الإلزامية وفحوصات الحالة التغييراتِ غير المُراجَعة — بما في ذلك إعدادات CI المُتلاعب بها — بعيدةً عن الفرع الرئيسي؛ وتضمن الإيداعات الموقّعة (Signed Commits) إثبات المصدر.
- تُثبت المخرجات الموقّعة وشهادات المنشأ (Provenance Attestations) تشفيريًا أن المخرَج صادر عن خط الإنتاج المتوقع — ومع Sigstore/Cosign أيضًا بأسلوب «keyless» عبر شهادات قصيرة الأمد مرتبطة بهوية OIDC وسجل الشفافية العام Rekor.
- يحدد Build Track المستويات من L1 إلى L3: منشأ (Provenance) مُولَّد تلقائيًا (L1)، ومنشأ موقّع من منصة بناء مستضافة (L2)، وعمليات بناء محصّنة ومعزولة عن بعضها مع مادة توقيع يتعذر الوصول إليها من خطوات البناء التي يحددها المستخدم (L3).
- يضيف الإصدار الحالي 1.2 (الحالة «Approved»، 11/2025) لأول مرة Source Track يتناول سلامة إدارة الشيفرة المصدرية.
- يقدم NIST SP 800-204D (02/2024) إرشادات تنفيذ تكميلية.
المعايير والمصادر
يستند محتوى هذه الصفحة إلى الأدلة والدراسات التالية المتاحة للعموم.
مخاطر أمن CI/CD العشرة الأولى وفق OWASP (OWASP Top 10 CI/CD Security Risks) (v1.0)
كتالوج مرجعي من CICD-SEC-1 حتى CICD-SEC-10 مع نواقل الهجوم والإجراءات المضادة؛ وهو أساس تسميات المخاطر المستخدمة هنا.
SLSA Specification v1.2
الإصدار الحالي المصنّف «Approved» (الوسم v1.2 بتاريخ 24 نوفمبر 2025)؛ Build Track من L0 إلى L3 وSource Track المُستحدث.
NIST SP 800-204D: Strategies for the Integration of Software Supply Chain Security in DevSecOps CI/CD Pipelines
النسخة النهائية 02/2024؛ تصف دمج المنشأ (Provenance) والشهادات وSBOM وSLSA في خطوط CI/CD للتطبيقات السحابية الأصلية.
OpenID Connect (وثائق GitHub Actions: Concepts – Security)
وثائق الشركة المصنِّعة المحدَّثة باستمرار (الوضع 07/2026، سابقًا «About security hardening with OpenID Connect») حول اتحاد OIDC في GitHub Actions: رموز قصيرة الأمد تُصدر لكل مهمة بدلًا من الأسرار السحابية طويلة الأمد.
وثائق Sigstore: نظرة عامة
أساسيات Cosign والتوقيع بأسلوب Keyless باستخدام شهادات قصيرة الأمد وهويات OIDC وسجل الشفافية Rekor (الوضع 07/2026).
Dependency Confusion: How I Hacked Into Apple, Microsoft and Dozens of Other Companies
التقرير الأصلي حول تقنية Dependency Confusion؛ أثبت وجود الثغرة لدى أكثر من 35 مؤسسة.
ما مدى صمود خط البناء لديكم؟
تجدون تفاصيل تنفيذ أعمق في أوراقنا البيضاء حول أمن خطوط CI/CD وأمن الذكاء الاصطناعي في خطوط CI/CD. ويسعدنا أن نحدد معكم في محادثة أولية دون أي التزام الوضع الحالي لخطوط الإنتاج لديكم.