تعريف GHAS وأهمية ميزاته المتكاملة
في هذه الوحدة سنغطي:
- المسح السري
- مسح التعليمات البرمجية
- Dependabot
- إنشاء دورة حياة أكثر أمانا لتطوير البرامج مع الميزات الرئيسية
لنبدأ بمراجعة سريعة ل GHAS.
ما هو GHAS؟
GitHub Advanced Security (أو GHAS) هو حل أمان للتطبيقات يساعد المطورين على تأمين التعليمات البرمجية الخاصة بهم وإدارة المخاطر دون تعطيل سير عملهم.
يتضمن GHAS إمكانات متوفرة الآن كمنتجين متميزين: GitHub Secret Protection و GitHub Code Security. يسمح هذا الفصل للمؤسسات بتمكين الميزات التي تتوافق بشكل أفضل مع أولويات الأمان والترخيص الخاصة بها.
يتم تضمين الأمان المتقدم مباشرة في سير العمل الخاص بك للمساعدة في منع الثغرات الأمنية وتسرب بيانات الاعتماد دون إبطاء التطوير. يشبه GitHub Advanced Security أن يقوم مستشار الأمان الشخصي بمراجعة كل سطر من التعليمات البرمجية مع رؤى من خبراء الأمان من جميع أنحاء العالم.
لم يكن ضمان أمان التطبيقات وسلسلة توريد البرامج أكثر أهمية من أي يوم. تتوقع غارتنر أن 45٪ من المنظمات العالمية ستتأثر بهجمات سلسلة التوريد بحلول عام 2025. وفقا لتقرير التحقيق في خرق بيانات Verizon لعام 2022، تستمر التطبيقات في أن تكون أكبر متجه للهجوم وهي في مركز أكثر من 40٪ من جميع خروقات البيانات.
قد يبدو دمج الأمان في عملية تطوير البرامج الخاصة بك عملية شاقة، لذلك دعونا ننتقل إلى 3 ميزات رئيسية من GHAS وكيف تساعد فريقك على البقاء على اطلاع بأحدث التهديدات الأمنية: مسح البيانات السرية ومسح التعليمات البرمجية و Dependabot.
المسح السري
يعد الفحص السري ميزة أمان مهمة في GitHub تحدد وتساعد على منع التعرض العرضي للمعلومات الحساسة، مثل مفاتيح واجهة برمجة التطبيقات والرموز المميزة داخل التعليمات البرمجية المصدر الخاصة بك. يتوفر الفحص السري لجميع المستودعات العامة مجانا، ويمكن أيضا تمكينه للمستودعات الخاصة بترخيص GitHub Advanced Security (GHAS).
يساعد هذا في منع الوصول غير المصرح به ويحمي البيانات السرية. يعمل المسح السري من خلال البحث عن أنماط وتوقيعات محددة مسبقا تشير إلى معلومات حساسة، ما يضمن معالجة المخاطر الأمنية المحتملة على الفور. بشكل افتراضي، يبحث الفحص السري عن أنماط عالية الدقة تم توفيرها بواسطة شريك GitHub. ومع ذلك، يمكن إنشاء أنماط مخصصة لحالات الاستخدام الأخرى.
يتضمن مسح البيانات السرية ما يلي:
- تمنع الحماية من الدفع بشكل استباقي تسرب البيانات السرية عن طريق مسح التعليمات البرمجية عند التثبيت وحظر الدفع إذا كان هناك سر.
- القدرة على عرض التنبيهات بسهولة ومعالجتها دون الحاجة إلى مغادرة GitHub.
في دورة حياة تطوير البرامج الآمنة، يكتشف الفحص السري الأسرار المكشوفة، مما يسمح للفرق بإبطالها أو تدويرها في أقرب وقت ممكن - غالبا قبل استخدامها لأغراض ضارة، مما يقلل من مخاطر خروقات البيانات ويحافظ على السرية طوال فترة التطوير.
بعد ذلك، دعونا نراجع فحص التعليمات البرمجية.
مسح التعليمات البرمجية
فحص التعليمات البرمجية هو ميزة متكاملة من GHAS التي تحلل التعليمات البرمجية المصدر للثغرات الأمنية وأخطاء الترميز. ويستخدم تقنيات تحليل ثابتة لتحديد المشكلات المحتملة مثل حقن SQL والبرمجة النصية عبر المواقع وتجاوز المخزن المؤقت. من خلال تقديم ملاحظات تلقائية مباشرة ضمن سير عمل طلب السحب، يمكن فحص التعليمات البرمجية المطورين من معالجة الثغرات الأمنية في وقت مبكر من عملية التطوير.
يعمل مسح التعليمات البرمجية على تحسين جودة التعليمات البرمجية ويساعد على تقليل التهديدات الأمنية من خلال تحديد المشكلات ومعالجتها في وقت مبكر من دورة حياة التطوير. نظرا لتحديث قواعد المسح باستمرار ، يمكن لفحص التعليمات البرمجية أيضا اكتشاف الثغرات الأمنية التي قد تكون موجودة بالفعل في الإنتاج.
Dependabot
Dependabot هي أداة تلقائية لإدارة التبعية، مسؤولة عن الحفاظ على تبعيات المشروع محدثة. يتحقق بانتظام من وجود تحديثات للمكتبات وأطر العمل المستخدمة في المشروع ويفتح طلبات السحب تلقائيا لتحديث التبعيات إلى أحدث إصداراتها الآمنة.
يتضمن Dependabot:
- تنبيهات للثغرات الأمنية المعروفة
- تحديثات الأمان للحزم المعرضة للخطر
- تحديثات الإصدار للحفاظ على التبعيات الحالية
يعمل Dependabot عن كثب مع الرسم البياني للتبعية لتحديد التبعيات المستخدمة والإشارة إليها مقابل قاعدة البيانات الاستشارية GitHub للكشف عن الثغرات الأمنية.
مع GitHub Advanced Security ، يتم تحسين قدرات Dependabot من خلال مراجعة التبعية ، مما يتيح لك معاينة أي حزم ضعيفة تم تقديمها في طلب سحب ومنع إضافة تبعيات غير آمنة قبل الدمج.
مكان تمكين مسح البيانات السرية وفحص التعليمات البرمجية وتنبيهات Dependabot
لتمكين أي من التنبيهات من مستوى المستودع، انتقل أولا إلى علامة تبويب الأمان الخاصة بالمستودع.
بعد ذلك، قم بتمكين التنبيهات في نظرة عامة على الأمان.
الآن بعد أن قمنا بمراجعة وتمكين جميع الميزات الثلاثة المتكاملة ل GHAS، دعنا نتحدث عن كيفية تنفيذها جميعا لإنشاء دورة حياة أكثر أمانا لتطوير البرامج.
إنشاء دورة حياة أكثر أمانا لتطوير البرامج مع جميع الميزات الثلاثة
يساهم مسح البيانات السرية ومسح التعليمات البرمجية و Dependabot بشكل جماعي في إنشاء دورة حياة تطوير برامج أكثر أمانا. يمنع مسح البيانات السرية التعرض غير المقصود للمعلومات الحساسة. يحدد فحص التعليمات البرمجية الثغرات الأمنية في قاعدة التعليمات البرمجية ويعالجها. ويأتمت Dependabot إدارة التبعية.
من خلال دمج هذه الميزات، يمكن لفرق التطوير معالجة المخاوف الأمنية بشكل استباقي في كل مرحلة من مراحل دورة حياة التطوير. يقلل هذا النهج الاستباقي من احتمالية وصول الحوادث الأمنية إلى الإنتاج، ما يؤدي إلى عملية تطوير برامج أكثر مرونة وأمانا وكفاءة.
يضمن التأثير المشترك لهذه الميزات المتكاملة أن الأمان ليس اعتبارا مستقلا ولكنه جزء لا يتجزأ من سير عمل التطوير بأكمله.
ميزات الأمان لمشاريع مصدر مفتوح
تستفيد المشاريع العامة على GitHub من بعض ميزات الأمان الافتراضية، مثل مسح البيانات السرية والرسوم البيانية للتبعية. يقوم GitHub تلقائيا بفحص المستودعات العامة بحثا عن أنماط الشركاء ويوفر تنبيهات لمسؤولي المستودع. يمكن للمشاريع العامة أيضا اختيار تمكين مسح التعليمات البرمجية و Dependabot و Dependency Review دون ترخيص GitHub Advanced Security.
ومع ذلك، فإن هذه الميزات أساسية وقد لا توفر عمق الحماية اللازمة للمشاريع أو بيئات المؤسسة الأكثر تعقيدا.
عند إقران GitHub Advanced Security (GHAS) مع GitHub Enterprise Cloud (GHEC)، تصبح المجموعة الشاملة من ميزات الأمان متاحة للمشاريع الداخلية والخاصة أيضا:
- فحص التعليمات البرمجية - ابحث عن الثغرات الأمنية المحتملة وأخطاء الترميز في التعليمات البرمجية الخاصة بك.
- مسح البيانات السرية - الكشف عن الأسرار، على سبيل المثال، المفاتيح والرموز المميزة، التي تم فحصها في مستودعات خاصة. تتوفر تنبيهات مسح البيانات السرية للمستخدمين والشركاء مجانا للمستودعات العامة على GitHub.com. إذا تم تمكين حماية الدفع، فإنه يكتشف أيضا الأسرار عند دفعها إلى المستودع الخاص بك.
- مراجعة التبعية - إظهار التأثير الكامل للتغييرات على التبعيات والاطلاع على تفاصيل أي إصدارات ضعيفة قبل دمج طلب سحب.
يلخص الجدول أدناه توفر ميزات GitHub Advanced Security للمستودعات العامة والخاصة.
| ميزة | المستودع العام | مستودع خاص بدون أمان متقدم | مستودع خاص مع أمان متقدم |
|---|---|---|---|
| مسح التعليمات البرمجية | ✅ | ❌ | ✅ |
| المسح السري | ✅ | ❌ | ✅ |
| مراجعة التبعية | ✅ | ❌ | ✅ |