إنتقل إلى المحتوى الرئيسي

CBOM - قائمة مكوّنات التشفير

ينطبق على:
CycloneDX 1.7OWASPNISTPCI-DSSSOC2

نظرة عامة​

CBOM (قائمة مكوّنات التشفير) هي صيغة جرد متخصّصة لتوثيق جميع الأصول التشفيرية في تطبيقاتك وبنيتك التحتية. يولّد ماسح PQC مستندات CBOM متوافقة مع CycloneDX 1.7 يمكن:

قدرات CBOM

المشاركة مع فرق الأمانتزويد المدقّقين بجرد تشفيري قياسي
الاستيراد إلى إدارة الثغراتالتكامل مع أنظمة إدارة الثغرات
تقارير الامتثالأطر عمل NIST وPCI-DSS وSOC2
الجاهزية الكموميةتتبّع ترحيل الجاهزية الكمومية
خطوط أنابيب CI/CDأتمتة توليد CBOM في خطوط الأنابيب

مستكشف CBOM​

في Cockpit، يعرض مستكشف CBOM جرد CycloneDX كرسم بياني تفاعلي للأصول التشفيرية — يمكنك عزل الأوّليّات المعرّضة للمخاطر الكمومية، وفحص معرّفات المكوّن (BOM-Ref، وOID، ونوع/حجم المفتاح، والصيغة) ورؤية الترحيل الموصى به لكل خوارزمية مكسورة.

مستكشف CBOM — رسم بياني تفاعلي للأصول التشفيرية

ملاحظة
يعرض كل مكوّن تعرّضه الكمومي (على سبيل المثال مكسور كموميًا لـ ECDSA-256) والترحيل الموصى به، مثل "الترحيل إلى ML-DSA (Dilithium) أو SLH-DSA (SPHINCS+) وفق NIST FIPS 204/205".

ما هو CycloneDX؟​

CycloneDX هو معيار OWASP لقائمة مكوّنات البرمجيات (SBOM). قدّم الإصدار 1.7 دعمًا أصيلًا للأصول التشفيرية، مما جعله المعيار الفعلي لـ CBOM.

بداية سريعة​

توليد CBOM من نتائج المسح​

# 1. Run a scan
dke-scanner-agent agent --output scan-results.json

# 2. Generate CBOM
dke-scanner-agent cbom --input scan-results.json \
--app-name "Payment API" \
--app-version "2.1.0" \
--output payment-api-cbom.json

عرض ملخص CBOM​

# Generate with pretty printing
dke-scanner-agent cbom -i scan.json --pretty

# Output shows:
# CBOM generated successfully!
# Input: scan.json
# Output: scan-cbom.json
# Components: 47
# Dependencies: 12

حالات الاستخدام​

تدقيق الأمان والامتثال

توليد CBOM لعمليات تدقيق الأمان السنوية وتقارير الامتثال

التكامل مع CI/CD

أتمتة توليد CBOM في خطوط أنابيب النشر

تتبّع الجاهزية الكمومية

تتبّع تقدّم الترحيل من التشفير الكلاسيكي إلى ما بعد الكمومي

استبيان أمان المورّد

توليد CBOM لمراجعات أمان العملاء

مرجع واجهة سطر الأوامر​

صياغة الأمر​

dke-scanner-agent cbom [OPTIONS] --input <FILE>

الوسائط المطلوبة​

الوسيطالوصفمثال
-i, --input <FILE>ملف نتائج المسح (بصيغة JSON)scan-results.json

الوسائط الاختيارية​

الوسيطالمختصرالوصفالافتراضي
--output <FILE>-oمسار ملف مخرجات CBOM<input>-cbom.json
--app-name <NAME>اسم التطبيق للبيانات الوصفيةاسم المضيف من المسح
--app-version <VER>إصدار التطبيق"1.0"
--prettyتنسيق مخرجات JSON بشكل جميلfalse

الأمثلة​

توليد CBOM أساسي​

# Minimal command (auto-generate output name)
dke-scanner-agent cbom -i scan.json

# With custom output
dke-scanner-agent cbom -i scan.json -o crypto-inventory.json

# With pretty printing
dke-scanner-agent cbom -i scan.json --pretty

مع البيانات الوصفية للتطبيق​

# Specify application details
dke-scanner-agent cbom \
--input scan-results.json \
--app-name "E-Commerce Platform" \
--app-version "4.2.1" \
--output ecommerce-cbom.json \
--pretty

التكامل مع خط أنابيب CI/CD​

# GitLab CI example
dke-scanner-agent ci --source-path . --output scan.json
dke-scanner-agent cbom \
-i scan.json \
--app-name "${CI_PROJECT_NAME}" \
--app-version "${CI_COMMIT_SHA:0:8}" \
--output "${CI_PROJECT_NAME}-cbom.json"

بنية CBOM​

صيغة CycloneDX 1.7​

{
"bomFormat": "CycloneDX",
"specVersion": "1.7",
"serialNumber": "urn:uuid:3e671687-395b-41f5-a30f-a58921a69b79",
"version": 1,
"metadata": {
"timestamp": "2025-01-29T14:30:52Z",
"component": {
"type": "application",
"name": "Payment API",
"version": "2.1.0"
}
},
"components": [
{
"type": "cryptographic-asset",
"bom-ref": "crypto-asset-1",
"name": "RSA-2048",
"version": "1.0",
"cryptoProperties": {
"assetType": "algorithm",
"algorithmProperties": {
"primitive": "asymmetric",
"parameterSetIdentifier": "2048",
"executionEnvironment": "software-plain-ram",
"implementationPlatform": "x86_64",
"certificationLevel": ["none"],
"mode": "PKCS1",
"padding": "OAEP",
"cryptoFunctions": ["encrypt", "decrypt", "sign", "verify"],
"classicalSecurityLevel": 112,
"nistQuantumSecurityLevel": 0
}
},
"properties": [
{
"name": "quantum:vulnerable",
"value": "true"
},
{
"name": "quantum:risk_score",
"value": "8.5"
}
]
}
]
}

أنواع الأصول​

يولّد الماسح مدخلات CBOM لأنواع الأصول التشفيرية التالية:

تحليل CBOM​

استخراج بيانات الثغرات​

# Extract all quantum-vulnerable assets
jq '.components[] | select(.properties[] | select(.name == "quantum:vulnerable" and .value == "true")) | {name, type: .cryptoProperties.assetType}' crypto-bom.json

# Count assets by type
jq '.components | group_by(.cryptoProperties.assetType) | map({type: .[0].cryptoProperties.assetType, count: length})' crypto-bom.json

# Find high-risk algorithms (risk score > 7)
jq '.components[] | select(.properties[] | select(.name == "quantum:risk_score" and (.value | tonumber) > 7)) | .name' crypto-bom.json

تقارير الامتثال​

# Generate NIST compliance report
jq '{
total_assets: .components | length,
quantum_vulnerable: [.components[] | select(.properties[] | select(.name == "quantum:vulnerable" and .value == "true"))] | length,
quantum_safe: [.components[] | select(.properties[] | select(.name == "quantum:vulnerable" and .value == "false"))] | length,
by_type: .components | group_by(.cryptoProperties.assetType) | map({type: .[0].cryptoProperties.assetType, count: length})
}' crypto-bom.json

أمثلة التكامل​

مقارنة CBOM وتتبّع التغييرات​

تتبّع التغييرات عبر الزمن​

أفضل الممارسات​

أفضل ممارسات CBOM

ضع إصدارات لملفات CBOM

استخدم الإصدار الدلالي للتتبّع

التخزين مع الكود المصدري

احتفظ بملفات CBOM بجانب قاعدة الكود الخاصة بك

أتمتة عمليات المسح المنتظمة

جدولة توليد CBOM أسبوعيًا عبر cron

التضمين في الإصدارات

أضِف CBOM إلى مصنوعات الإصدار

المعايير والامتثال​

مواصفة CycloneDX 1.7​

يولّد ماسح PQC ملفات CBOM متوافقة مع:

  • OWASP CycloneDX 1.7 - المواصفة الكاملة
  • NIST SSDF - إطار عمل تطوير البرمجيات الآمن
  • إرشادات CISA لـ SBOM - متطلبات البنية التحتية الحيوية
  • الأمر التنفيذي 14028 - تحسين الأمن السيبراني للأمّة

معيار الخصائص التشفيرية​

يتبع امتدادات التشفير في CycloneDX:

الأقسام المدعومة

خصائص الخوارزميةالقسم 6.1
خصائص الشهادةالقسم 6.2
خصائص المواد التشفيرية ذات الصلةالقسم 6.3
خصائص البروتوكولالقسم 6.4

استكشاف الأخطاء وإصلاحها​



الدعم​

هل تحتاج مساعدة بخصوص CBOM؟