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

ما هو 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:
الأقسام المدعومة
استكشاف الأخطاء وإصلاحها
الدعم
هل تحتاج مساعدة بخصوص CBOM؟
- التوثيق: https://docs.duokey.com/dke-scanner-agent/cbom
- المجتمع: https://community.duokey.com/t/cbom
- المشكلات: https://github.com/duokey/dke-scanner-agent/issues
- البريد الإلكتروني: [email protected]