يعتمد تطوير Software بشكل كبير على الاستفادة من مكوّنات الطرف الثالث المبنية مسبقاً لتبسيط العمليات، وبعضها مفتوح المصدر. هذه المكوّنات هي اللبنات الأساسية لتطبيقات الويب الحديثة، ولكنها يمكن أن تُدخل أيضاً نقاط ضعف توفر لمجرمي الإنترنت نقاط دخول محتملة إلى نظامك.
للحصول على رؤية واضحة للمكونات وإدارة الثغرات الأمنية التبعية التي تتألف منها برمجياتك، فإن الاحتفاظ بقائمة تسمى SBOM (قائمة مواد البرمجيات) أمر ضروري لتعزيز أمن تطبيقك وإدارة المخاطر والامتثال.
ما هو SBOM؟
A Software Bill of Materials (SBOM) عبارة عن قائمة جرد مفصلة لجميع المكونات والمكتبات والتبعيات المغلقة والمفتوحة المصدر المستخدمة في التطبيق. بعبارات أبسط، كما أن المنتج المادي قد يأتي مع قائمة بالأجزاء والمواد المكونة له، فإن البرمجيات لها مكوناتها أيضًا.
كثيراً ما يقوم المطورون والبائعون ببناء البرمجيات من خلال الجمع بين التعليمات البرمجية مفتوحة المصدر والتعليمات البرمجية التجارية. وتفصّل SBOM هذه المكونات بشكل منهجي لضمان الشفافية وإمكانية تتبع مكونات التعليمات البرمجية الأساسية في منتجات البرمجيات، مما يساعد على تسهيل أمن سلسلة التوريد وضمان الامتثال للوائح.
ما هي فوائد SBOM؟
يوفر نظام SBOM في جوهره ثلاث فوائد أساسية:

الشفافية
فهو يقدم رؤية واضحة لتكوين البرمجيات، مما يتيح لأصحاب المصلحة - سواء كانوا مطورين أو مدققين أو مستخدمين نهائيين - فهم المكونات التي تدخل في حزمة برمجياتهم.

Vulnerability Management
يعد الأمن أحد أكثر الاهتمامات إلحاحًا في تطوير البرمجيات. يمكن لـ SBOM تحديد المكونات في منتج برمجي بسرعة - مما يسهل تحديد الثغرات الأمنية ومعالجتها وإصلاحها.
عندما يتم إصدار إرشادات أمنية، فإنها عادةً ما تحتوي على معلومات محدثة حول الثغرات الأمنية في مكونات البرمجيات. من خلال مضاهاة قائمة SBOM مع أحدث الإرشادات الأمنية، يمكن للمؤسسات أن تحدد بسرعة ما إذا كانت تطبيقاتها معرضة للخطر وتتخذ خطوات التخفيف اللازمة لضمان تأمينها بشكل صحيح.

التكامل في SDLCSoftware دورة حياة تطويرSoftware )
مع تقدم البرمجيات عبر مسار التطوير، يتم تحديثها باستمرار، بدءًا من وضع المفاهيم والتصميم إلى التثبيت والصيانة. تعمل SBOM كسجل ديناميكي يضمن وجود صورة واضحة لمكونات البرنامج وتبعياته وعلاقاته في كل مرحلة من مراحل دورة حياة البرمجيات التطويرية.
من يحتاج إلى SBOM؟
وبصفة عامة، يمكن أن يكون مستهلك البرمجيات أي كيان، سواء كان تجارياً أو غير تجاري، يحصل على مكوناته من طرف ثالث ومرافق برمجيات الطرف الثالث من الموردين. ويمتد هؤلاء الموردون على نطاق واسع:
- ناشرو البرمجيات التجارية
- مطورو البرمجيات التعاقدية الذين يقدمون مكونات البرمجيات
- موردو Software الحرة والمفتوحة المصدر (FOSS) إدارة التعليمات البرمجية في المستودعات المفتوحة أو مدير الحزم
والجدير بالذكر أن هؤلاء الموردين يرتدون قبعات متعددة. فيمكن أن يكونوا مصنعين أو مطورين أو مشرفين أو مزودين. من الناحية المثالية، يجب أن تقوم هذه الكيانات أيضًا برعاية قائمة SBOMs لقدراتها البرمجية. هناك تمييز فريد يجب تذكره هو أن معظم الموردين هم مستهلكون أيضًا. ومع ذلك، فإن المورد الذي لا يحتوي على أي مكونات أولية يتم تصنيفه بشكل عام ككيان جذري.
هيئة الرقابة على الصادرات والواردات في القطاع العام
تلعب الوكالات الفيدرالية دورًا محوريًا في اعتماد وإنفاذ معايير SBOM. ولا تقتصر رقابتها على وضع المعايير فحسب، بل ضمان الامتثال لهذه المعايير من أجل المصلحة العامة الأوسع نطاقًا. صدر الأمر التنفيذي الأمريكي رقم 14028 في مايو من عام 2021، وهو أمر تنفيذي أمريكي صدر في مايو من عام 2021، ويكلف العديد من الوكالات ذات الاختصاصات الواسعة، بما في ذلك المعهد الوطني للمعايير والتكنولوجيا، بتعزيز الأمن السيبراني من خلال مجموعة متنوعة من المبادرات المتعلقة بأمن وسلامة سلسلة توريد البرمجيات.
يعرّف القسم 10 (ي) من الأمر التنفيذي 14028 "مذكرة تبادل المعلومات" على أنها "سجل رسمي يحتوي على تفاصيل وعلاقات سلسلة التوريد لمختلف المكونات المستخدمة في بناء البرمجيات". تنطوي هذه السجلات على إمكانية توفير المزيد من الشفافية والمصدر والسرعة التي يمكن من خلالها تحديد نقاط الضعف ومعالجتها من قبل الإدارات والوكالات الفيدرالية.
أنواع وتعريفات SBOM
اعتمادًا على مرحلة تطوير البرمجيات وتثبيتها، يتم إنشاء أنواع مختلفة من وثائق SBOMs، يخدم كل منها غرضًا فريدًا ويقدم رؤى متميزة حول مكونات البرمجيات. فيما يلي ستة أنواع شائعة من مستندات SBOM.
التصميم
في مرحلة تطوير التطبيق هذه، قد لا تكون بعض المكونات موجودة بعد. وعادةً ما يتم اشتقاق هذا النوع من SBOM من مواصفات التصميم أو طلب تقديم العروض (طلب تقديم العروض) أو مفهوم أولي.
المصدر
يتم تشكيلها مباشرةً من بيئة التطوير، وهي تقدم رؤى حول الملفات المصدرية والتبعيات المطلوبة لبناء قطعة أثرية للمنتج. يتم إنشاؤها عادةً من أدوات تحليل تكوين البرمجيات (SCA)، وتحتاج أحيانًا إلى توضيحات يدوية.
الإنشاء
يتم إنتاجها كجزء من عملية بناء البرمجيات، وهي تدمج البيانات من ملفات المصدر والمكونات المبنية والتبعيات الأخرى. وهذا أمر ذو قيمة خاصة لأنه يتم إنشاؤه أثناء إنشاء قطعة برمجية قابلة للإصدار.
تحليل
يُشتق نموذج SBOM هذا من تحليل ما بعد الإنشاء لقطع البرمجيات مثل الملفات التنفيذية أو صور الآلة الافتراضية. وهي تنطوي على أساليب استدلالية متنوعة وتسمى أحيانًا "نموذج SBOM "الطرف الثالث.
تم التثبيت
جرد شامل للبرمجيات الموجودة على النظام. يتم إنشاؤه من خلال توثيق قائمة حصر البرمجيات المثبتة على الأنظمة، ويقدم نظرة ثاقبة على التثبيت الفعلي للبرمجيات.
ما هي عناصر SBOM؟
وفقًا للإدارة الوطنية للاتصالات والمعلومات (NTIA) فإن الحد الأدنى من عناصر قائمة بيانات SBOM يتضمن اسم مورد البرنامج ومكوناته وإصداراته ومعرفاته الفريدة وعلاقة التبعيات ومؤلف بيانات SBOM والطابع الزمني. بالإضافة إلى ذلك، يجب أن تحتوي بيانات SBOM على العناصر التالية لتكون فعالة وشاملة:
- حقول البيانات: يجب أن تحتوي على حقول بيانات محددة بوضوح تفصّل اسم مكون البرنامج وإصداراته وسماته. ويضمن ذلك أن يفهم كل صاحب مصلحة بدقة تركيبة البرنامج.
- دعم الأتمتة: نظرًا للطبيعة الديناميكية لتطوير البرمجيات، يجب أن تكون قائمة برمجيات SBOM قادرة على التحديث التلقائي ودمجها في عمليات تطوير البرمجيات وتثبيتها. وهذا يضمن الدقة والكفاءة في الوقت الحقيقي.
- الممارسات والعمليات: بالإضافة إلى مجرد وضع قائمة بالمكونات، يجب أن تكون قائمة مكونات قائمة مكوّنات قائمة المواد الأساسية ضمن أفضل الممارسات والعمليات التي تحكم إنشاءها وصيانتها واستخدامها.
تنسيقات SBOM
تتضمن تنسيقات SBOM الشائعة ما يلي:
- SPDXSoftware تبادل بيانات حزمSoftware ) - تم تطويره من قبل مؤسسة لينكس
- CycloneDX-شائع الاستخدام لأمن التطبيقات
- SWIDSoftware وسم تعريفSoftware ) - معرف من قبل ISO/IEC 19770-2
من خلال فهرسة كل مكوّن، تسمح قائمة SBOM للمؤسسات بتحديد التراخيص المرتبطة بكل جزء من البرمجيات بوضوح، مما يضمن التزامها بشروط الترخيص وتجنب المزالق القانونية المحتملة.
حافظ على الامتثال و Secure في SDLC الخاص بك
بسبب تزايد الهجمات على سلسلة التوريد، تدرك الحكومة الفيدرالية والقطاع الخاص أهمية تحديد هوية البرمجيات. تُعدّ قائمة SBOM حاسمة في تفصيل مكونات البرمجيات، وخاصة مكونات الطرف الثالث. تساعد بيانات SBOM في منع الثغرات الأمنية وتضمن الشفافية في إنشاء SBOM. يجب أن تشتمل كل برمجية على قائمة شاملة لمكونات SBOM لتعزيز التدابير الأمنية.
من خلال فهرسة كل مكوّن، تسمح قائمة SBOM للمؤسسات بتحديد التراخيص المرتبطة بكل جزء من البرمجيات بوضوح، مما يضمن التزامها بشروط الترخيص وتجنب المزالق القانونية المحتملة.
باستخدام OPSWAT SBOM، يمكن للمطورين تحديد الثغرات المعروفة والتحقق من صحة التراخيص وإنشاء مخزون مكونات برمجيات المصدر المفتوح (البرمجيات مفتوحة المصدر) وتوابع الطرف الثالث والحاويات. لمعرفة المزيد حول تأمين سلسلة توريد البرمجيات الخاصة بك باستخدام حلول SBOM القوية، تفضل بزيارة حل أمنSupply Chain Software منOPSWAT.