تعترف المزيد والمزيد من الشركات بأهمية SBOM المحدث كجزء من كل منتج وإصدار جديد. وكالة الأمن القومي حتى نشرت ورقة تشجيع الشركات على اعتماد هذه الأداة لزيادة الوعي السيبراني وحماية سلاسل توريد البرمجيات الخاصة بها بشكل أفضل. حتى لو خلصت إلى أن إنشاء SBOM هو الشيء الصحيح الذي يجب القيام به، فقد لا تكون متأكدًا من كيفية القيام بذلك، أو الأدوات التي يجب استخدامها، أو كيفية تنفيذها. هناك العديد من أدوات إنشاء SBOM في السوق، بعضها خاص، وبعضها مجاني، وبعضها أدوات مفتوحة المصدر. في هذه المقالة، سنغطي الميزات الأساسية التي يجب أن تتمتع بها أداة إنشاء SBOM الخاصة بك لجعلها الأداة المناسبة لاحتياجاتك.
تنسيقات سبوم
هناك نوعان من التخصص تنسيقات سبوم المستخدمة في السوق اليوم: SPDX وCycloneDX.
تبادل بيانات حزمة البرامج (SPDX) هو مشروع SBOM مفتوح المصدر وقابل للقراءة آليًا من قبل مؤسسة Linux. تم تصميم أحدث إصدار من SPDX بما يتماشى مع معيار NTIA لـ "الحد الأدنى من العناصر لفاتورة المواد البرمجية.' فهو يسرد المكونات وحقوق النشر والتراخيص والمراجع الأمنية لأحد البرامج.
إعصار دي إكس (CDX) هو أيضًا تنسيق SBOM مفتوح المصدر وقابل للقراءة آليًا تم تطويره بواسطة مجتمع Open Web Application Security Project (OWASP). باعتباره تنسيقًا لقائمة مكونات الصنف (BOM)، فإن CycloneDX لديه تطبيقات أخرى تتجاوز إعداد قوائم المواد البرمجية. ويمكن استخدامه أيضًا لتجميع المكونات ونقاط الضعف وخدمات الأجهزة والأنظمة السحابية.
قبل البدء في التحقق من الأدوات المختلفة، فكر في التنسيق الذي سيخدم احتياجاتك على أفضل وجه. من الأفضل ألا تأخذ في الاعتبار الوقت الحالي فحسب، بل أيضًا احتياجاتك المستقبلية، لأنه بمجرد الالتزام بتنسيق معين، ربما تجد أنه من الأسهل الالتزام به. ضع في اعتبارك الاستخدامات التي ستشاهدها SBOMs والأدوات التي ستستخدمها لتحليل البيانات. إذا لم تكن متأكدًا من التنسيق الذي ستختاره، فابحث عن أداة يمكنها إنشاء كلا التنسيقين.
الميزات الرئيسية لأدوات SBOM
فيما يلي بعض الميزات التي يجب أن تبحث عنها في أداة إنشاء SBOM الجيدة:
مجموعة SBOM من كل من SCM والمنتج النهائي - يعد الحصول على التغطية الكاملة لمنتجك أمرًا أساسيًا للحصول على SBOM جيد. من المعروف أنه في مرحلة التطوير، لا تقوم دائمًا بسحب جميع التبعيات ودمجها في المشروع - وهذا شيء يتم إجراؤه عادةً فقط في التجميع النهائي في نهاية مسار CI/CD الخاص بك. يتيح لك الحصول على SBOM من SCM ومنتجك النهائي مقارنة الاثنين والتأكد أيضًا من عدم إجراء أي تغييرات غير مرغوب فيها على أي ملفات أو مجلدات في المراحل بينهما. يمكن إجراء مقارنة الملفات والمجلدات بين SBOMs عن طريق مقارنة قيم التجزئة المحسوبة لكل منها. إن امتلاك أداة يمكنها القيام بذلك تلقائيًا سيوفر عليك الكثير من الوقت والقلق.
تحليل سبوم - SBOM هو ملف يحتوي على الكثير من البيانات. من الأفضل أن يكون لديك برنامج مصمم لتحليلها للحصول على الرؤى التي ترغب في تلقيها. بالطبع، يعد إنشاء مثل هذا البرنامج بنفسك أمرًا بطيئًا ويستغرق وقتًا طويلاً، لذا من الأفضل بكثير الحصول على أداة تتضمن بالفعل برنامج التحليل حتى تتمكن من التحقق من التقارير الناتجة بدلاً من محاولة إنشاء رؤوس أو ذيل لملف SBOM متعدد الآلاف من الأسطر . بعض التقارير التي قد ترغب في أخذها في الاعتبار هي تقارير الثغرات الأمنية الشاملة لجميع التبعيات، وتقرير عن أي مكون قديم مستخدم في برنامجك، وتقرير عن جميع تراخيص المصادر المفتوحة المستخدمة، وتقرير عن السلامة النسبية للبرامج المفتوحة المصدر. مكونات المصدر المستخدمة يمكن لهذا الأخير استخدام عناصر مثل بطاقة قياس أداء OpenSSF لإعطاء درجة محايدة لكل حزمة المستخدمة.
أتمتة SBOM والتخزين الآمن - جزء من مبادئ إطار عمل أمان SLSA هو جعل كل ميزة أمان تلقائية ويصعب التعامل معها قدر الإمكان. والفكرة هي أن السماح للأشخاص بالتلاعب بنتائج ميزات الأمان من شأنه أن يترك مجالًا لإلغاء هذه الميزة أو التلاعب بها عند الحاجة. وكجزء من هذا المفهوم، يمكنك البحث عن أداة SBOM التي يمكن أن تكون مؤتمتة بالكامل للتشغيل بشكل مستقل على كل خط أنابيب CI/CD أو تشغيل تجميعي دون الحاجة إلى أي تدخل للعامل البشري. بالإضافة إلى ذلك، ابحث عن أداة SBOM التي تخزن الأدلة في مكان آمن بحيث لا يتمكن من الوصول إليها إلا الأشخاص الذين تم التحقق من صحتهم بشكل صحيح. وهذا من شأنه أن يضمن عدم التلاعب بأدلة SBOM أو حذفها بغض النظر عن الظروف.
تحليل SBOM المستمر - هناك ميزة أخرى محتملة لتخزين SBOMs الخاصة بك من قبل طرف ثالث وهي السماح لهذا الطرف الثالث بفحصها باستمرار بحثًا عن نقاط الضعف الجديدة. يتم اكتشاف الثغرات الأمنية الجديدة والإبلاغ عنها باستمرار، وحتى الحزمة المعروفة بأنها نظيفة اليوم قد لا تظل كذلك غدًا. إن وجود ميزة SBOM التي تفحص باستمرار جميع وحدات SBOM الخاصة بك وتبحث عن نقاط الضعف الجديدة، وإخطارك بأي اكتشافات، سيضمن أنه حتى إذا لم تقم بإنشاء SBOM جديد كل يوم أو أسبوع أو شهر، فلن يتم اكتشافك على حين غرة ثغرة أمنية جديدة في حزمة نظيفة مسبقًا قمت بتضمينها في منتجك.
SBOM المشاركة الذكية - أحد الأسباب الرئيسية للحصول على SBOM جيد، بخلاف وجود مصدر للتحقق من مشكلات سلسلة توريد البرامج المحتملة، هو مشاركته مع الآخرين. قد ترغب في مشاركة المعلومات مع فرق داخلية أخرى، أو مع العملاء، أو المقاولين الخارجيين، أو المدققين. بالطبع، يمكنك دائمًا إرسال ملف SBOM بالبريد الإلكتروني إلى طرف مهتم، ولكن مع الأخذ في الاعتبار تحديثات البرامج المتكررة وبالتالي SBOM الجديد المتكرر، قد يصبح هذا أمرًا مملاً للغاية بسرعة كبيرة. من الأفضل بكثير أن يكون لديك أداة تحتوي على إمكانية مشاركة مضمنة حتى تتمكن من تحديد قائمة المشتركين وستتم مشاركة SBOMs الجدد مع أو بدون التقارير المصاحبة لهم تلقائيًا بناءً على المشروع والمشتركين فيه ومستوى اهتمامهم وما إلى ذلك. .
نصائح SBOM - كما ذكرنا سابقًا، قد يتضمن SBOM آلاف التبعيات. إن توقع شهادة صحية نظيفة – صفر نقاط ضعف – ليس أمراً واقعياً. سيكون لديك دائمًا نقاط ضعف. والسؤال الكبير هو هل يمكن استغلال نقاط الضعف هذه في التكوين الدقيق لمنتجك؟ يمكن للمطورين فقط الإجابة على هذا السؤال ولكن يجب عليك التأكد من أن أداة SBOM الخاصة بك تحتوي على ميزة تمكنك من مشاركة هذه النتائج. لا تريد أن تضطر إلى الإجابة على نفس سؤال الضعف 1000 مرة. إن امتلاك القدرة على إضافة نصائح إلى SBOM الخاص بك مع الإشارة إلى الحالة الدقيقة لكل ثغرة تم العثور عليها سيسمح لك بإظهار وجودك على الكرة لعملائك وشركائك ومشاركة النتائج بمجرد أن يتحقق المطورون لديك من وجود ثغرة أمنية معينة. ليس قابلة للاستغلال في منتجك.
من أين تبدأ باستخدام أداة إنشاء SBOM الخاصة بك
هناك العديد من الميزات الأخرى التي قد تبحث عنها وتجدها في أداة إنشاء SBOM ولكن أعتقد أن قائمة الميزات لدينا توضح أن أداة SBOM الجيدة هي أكثر من مجرد عنصر منفرد. من الأفضل العثور على نظام كامل يشتمل على إنشاء SBOM والتحليل (سواء الفوري أو المستمر) والتقارير والمشاركة.
وبالنظر إلى الاهتمام المتزايد من العناصر التنظيمية في الولايات المتحدة، يبدو أنه لن يمر وقت طويل قبل أن يصبح SBOM المصاحب معيارًا لكل إصدار برنامج جديد. عندما يحدث ذلك، فأنت تريد بالفعل تحديد أفضل أداة ودمجها في SDLC الخاص بك. أود أيضًا أن أشير إلى أن SBOM لا يمكنه انتهاك عنوان IP الخاص بك - فهو لا "ينظر" إلى أي رمز ويقوم فقط بفحص أسماء الملفات والإصدارات وما شابه. وهذا يعني أن مشاركة SBOMs أو تخزينها في مكان آمن بواسطة طرف ثالث موثوق به لا يعرض أمانك أو عنوان IP الخاص بك للخطر بأي حال من الأحوال.
يمكن لخدمات مثل منصة Scribe Security أن تقدم لك جميع الميزات المشمولة في هذه المقالة مع إضافة المزيد من الميزات طوال الوقت. لا تتردد في الاطلاع على منصتنا ومعرفة الميزات الأخرى التي تتضمنها أداة إنشاء SBOM الخاصة بنا والتي يمكن أن تفيدك أنت ومؤسستك.