مختبر: اكتشاف GitHub Actions الخبيثة باستخدام التحليل الثابت

نظرة عامة تُعد GitHub Actions من الأطراف الثالثة واحدة من أكثر الميزات ملاءمة في نظام GitHub. باستخدام توجيه uses: واحد، يمكنك استيراد منطق بناء معقد، أو النشر على مزودي الخدمات السحابية، أو تشغيل أدوات الفحص الأمني. لكن هذه الراحة تأتي مع مقايضة حرجة: كل action من طرف ثالث تنفذ شيفرة برمجية في بيئة CI الخاصة بك مع إمكانية الوصول إلى أسرارك …

مختبر عملي: بناء حاويات قابلة للتكرار — Pinning و Verifying و Diffing للصور

نظرة عامة إذا قمت ببناء نفس ملف Dockerfile مرتين وحصلت على صور مختلفة، فلن تتمكن من التحقق من سلامة البناء. البناء غير القابل للتكرار يعني أنه لا توجد لديك طريقة للتأكد من أن العنصر البرمجي الذي يعمل في الإنتاج قد تم إنتاجه فعلاً من الكود المصدري الذي قمت بمراجعته. يمكن للمهاجمين استغلال هذا الغموض لحقن … اقرأ المزيد

تمرين عملي: اكتشاف التلاعب بالعناصر البرمجية — استبدال صور الحاويات في Registry

نظرة عامة وسوم صور الحاويات (tags) هي مؤشرات قابلة للتغيير. على عكس Git commit hash، فإن الوسم v1.0.0 ليس مرتبطاً تشفيرياً بصورة محددة — إنه مجرد تسمية يربطها registry بملخص manifest digest. يمكن لأي شخص لديه صلاحيات الدفع (push access) إلى المستودع الكتابة فوق هذا الربط في أي وقت، مستبدلاً الصورة خلف وسم موثوق بصمت … اقرأ المزيد

مختبر: استغلال والدفاع ضد Poisoned Pipeline Execution (PPE)

نظرة عامة يحتل Poisoned Pipeline Execution (PPE) المرتبة الثانية في قائمة OWASP CI/CD Security Top 10. وهو فئة من الهجمات حيث يتلاعب مهاجم خبيث بعملية البناء عن طريق حقن كود في تعريفات الـ pipeline أو سكربتات البناء، عادةً من خلال pull request. بمجرد أن يلتقط نظام CI التغيير، يتم تنفيذ كود المهاجم داخل بيئة البناء … اقرأ المزيد

مختبر عملي: إنشاء والتحقق من شهادات SLSA Provenance لصور الحاويات

نظرة عامة SLSA (Supply-chain Levels for Software Artifacts) provenance هو سجل قابل للتحقق يصف كيفية بناء artifact: مستودع المصدر، ومنصة البناء، ونقطة الدخول، والمواد المدخلة. عند إرفاقه بصورة حاوية، يتيح provenance للمستهلكين الإجابة على سؤال بالغ الأهمية قبل النشر: “هل تم بناء هذه الصورة فعلاً من المصدر الذي أتوقعه، على منصة أثق بها؟” في هذا … اقرأ المزيد

مختبر عملي: فرض سياسات نشر Kubernetes باستخدام OPA Conftest في CI/CD

نظرة عامة تُعدّ ملفات Kubernetes المُهيَّأة بشكل خاطئ من أبرز أسباب الحوادث الأمنية في بيئات الإنتاج. فحاوية تعمل بصلاحيات root، أو وسم صورة غير مُثبَّت، أو حدّ موارد مفقود، أو شبكة مضيف مكشوفة — كلّ واحدة من هذه قد تفتح الباب أمام تصعيد الصلاحيات أو استنزاف الموارد أو الحركة الجانبية داخل عنقودك. المشكلة أنّ هذه … اقرأ المزيد

مختبر: محاكاة هجوم Dependency Confusion في بيئة Sandbox

نظرة عامة يُعد dependency confusion هجومًا على سلسلة التوريد يستغل الطريقة التي تحل بها أدوات إدارة الحزم أسماء الحزم عند تكوين كل من السجلات الخاصة (الداخلية) والعامة. عندما ينشر مهاجم حزمة خبيثة على سجل عام باستخدام نفس اسم حزمة خاصة داخلية — ولكن برقم إصدار أعلى — قد يفضل مدير الحزم الإصدار العام، مما يؤدي … اقرأ المزيد

مختبر عملي: اكتشاف ومنع تسريب الأسرار في أنابيب CI/CD

نظرة عامة تسريب الأسرار في أنابيب CI/CD هو السبب الأول لاختراق الأنابيب. بيانات الاعتماد المكشوفة — مفاتيح API، وكلمات مرور قواعد البيانات، ورموز الوصول إلى السحابة — تمنح المهاجمين مساراً مباشراً إلى أنظمة الإنتاج. وفقاً لتقرير GitGuardian لعام 2025 حول حالة انتشار الأسرار، تم اكتشاف أكثر من 12 مليون سر جديد في عمليات commit العامة … اقرأ المزيد

تمرين عملي: تأمين خطوط أنابيب GitLab CI — Protected Variables و Runners و Environments

نظرة عامة يُعد GitLab CI ثاني أكثر منصات CI/CD استخدامًا في القطاع، حيث يُشغّل ملايين خطوط الأنابيب عبر مؤسسات بمختلف الأحجام. يجعل تكامله الوثيق مع نظام التحكم بالمصادر منه أداة مريحة للغاية — لكن هذا التكامل ذاته يُنشئ سطح هجوم واسعًا إذا لم يتم تقوية خطوط الأنابيب بشكل متعمد. في هذا التمرين العملي ستمر بستة … اقرأ المزيد

مقارنة أدوات فحص أمان CI/CD: Trivy مقابل Grype مقابل Snyk مقابل Checkov

مقدمة لم يعد تأمين خط أنابيب CI/CD أمرًا اختياريًا — بل أصبح متطلبًا أساسيًا لأي مؤسسة برمجية حديثة. مع تزايد هجمات سلسلة التوريد من حيث التكرار والتعقيد، فإن الأدوات التي تدمجها في خطوط أنابيب البناء والنشر تحدد بشكل مباشر وضعك الأمني. لكن مع تنامي منظومة أدوات الفحص، قد يكون اختيار الأداة المناسبة (أو التركيبة المناسبة) … اقرأ المزيد