نظرة عامة على البنية
بنية ماسح DuoKey PQC
نظرة شاملة على بنية ماسح DuoKey PQC ومكوّناته وأوضاع تشغيله
مقدمة
ماسح DuoKey PQC هو أداة شاملة لتقييم الجاهزية للتشفير ما بعد الكمومي (PQC) مبنية بلغة Rust من أجل اكتشاف الأصول التشفيرية وتحليلها بأداء عالٍ وعبر منصات متعددة.
البنية عالية المستوى
بنية ماسح PQC
واجهة CLI عالية الأداء مبنية على Rust لاكتشاف التشفير ما بعد الكمي وتقييم المخاطر
ماسحات البنية التحتية
إدخال/إخراج غير متزامنالماسحات المتقدمة
قابل للتوسيعتقييم الجاهزية لـ PQC
جرد تشفيري كامل مع تسجيل درجات الضعف الكمي وخارطة طريق للترحيل
تدفّق البنية
نقطة دخول واجهة سطر الأوامر (Clap 4.5)
يحلّل أحد الأوامر الفرعية العشرة (filesystem، domain، agent، network، serve، ci، sourcecode، compliance، servicenow، cbom). يتحقّق من صحة المدخلات ويُرسِلها إلى الماسح المقابل.
تنفيذ الماسح
يجمع الماسح المحدَّد البيانات التشفيرية الخام -- مصافحات TLS، وملفات الشهادات، وأنماط الكود المصدري، والبيانات الوصفية لخدمة KMS السحابية، أو مفاتيح مضيفي SSH. تستخدم الماسحات Tokio للإدخال/الإخراج غير المتزامن وRayon لاجتياز الملفات على التوازي عبر المعالج.
طبقة المحلِّل (PEM / DER / PKCS#12)
تُغذَّى البيانات الخام إلى محلِّلات خاصة بكل صيغة تستخرج البيانات الوصفية للشهادات وخوارزميات المفاتيح وأنظمة التوقيع باستخدام صندوقَي x509-parser وschannel.
تسجيل المخاطر (0-10)
يمرّ كل اكتشاف مُحلَّل عبر مُسجِّل المخاطر، الذي يُسنِد درجة مخاطر كمومية من 0 إلى 10، ويربطها بمستوى خطورة (من حرِج إلى معلوماتي)، ويُسنِد أولوية (P0-P4)، ويولّد توصيات.
تنسيق المخرجات
يُسلسَل ScanResult المُسجَّل بواسطة مُنسِّق المخرجات المختار -- JSON أو YAML أو HTML أو طرفية ANSI أو CBOM بصيغة CycloneDX 1.7 -- ويُكتَب إلى ملف أو إلى المخرج القياسي.
الحزمة التقنية
Rust (المستقر، أحدث إصدار)
- أمان الذاكرة دون جمع المهملات
- تجريدات عديمة التكلفة
- تزامن بلا مخاوف
- دعم عبر المنصات (Linux، macOS، Windows)
الماسح مبنيّ على مجموعة من مكتبات Rust الراسخة، مصنَّفة حسب الدور الذي تؤدّيه:
| المجال | المكتبات | الغرض |
|---|---|---|
| TLS والتشفير | rustls, x509-parser, der, pem | تنفيذ TLS 1.2/1.3 بلغة Rust بحتة، وتحليل شهادات X.509، وفك ترميز DER/PEM |
| وقت التشغيل غير المتزامن | tokio | إدخال/إخراج غير متزامن للشبكة والمسح المتزامن |
| واجهة سطر الأوامر والتسلسل | clap, serde, serde_json, serde_yaml | تحليل سطر الأوامر والتسلسل بصيغة JSON/YAML |
| التسجيل ومعالجة الأخطاء | tracing, tracing-subscriber, anyhow, thiserror | تسجيل مُهيكَل وأنواع أخطاء مرنة للتطبيق والمكتبة |
| نظام الملفات والتوازي | walkdir, rayon | اجتياز الأدلة بشكل تكراري مع توازي البيانات |
| التقاط حزم الشبكة | pcap, pnet | التقاط الحزم المستند إلى libpcap وتحليل الحزم |
| الإشارة إلى التقدّم | indicatif, ratatui | أشرطة التقدّم وواجهة الطرفية المستخدمة في وضع الشبكة |
بنية الوحدات
يُنظَّم الماسح في مجالات وظيفية متمايزة، لكلٍّ منها مسؤولية محدّدة:
| المجال | المسؤولية |
|---|---|
| واجهة سطر الأوامر | تحليل سطر الأوامر وإرسال الأوامر |
| الأساسي | اكتشاف الخوارزميات التشفيرية، وتسجيل المخاطر الكمومية، وعمليات X.509، وقاعدة بيانات الخوارزميات التشفيرية |
| الماسحات | أوضاع المسح الأربعة -- وكيل النظام، ونظام الملفات، وTLS/النطاق، والتقاط حزم الشبكة |
| المحلِّلات | محلِّلات الصيغ لـ JKS وPKCS#12 وPEM وDER وملفات إعداد nginx/apache |
| المخرجات | مُنسِّقات المخرجات -- JSON وYAML وSARIF (لـ CI/CD) والطرفية |
| الأدوات المساعدة | التسجيل، ومعالجة الأخطاء، والمساعِدات الخاصة بنظام التشغيل |
أوضاع المسح الأربعة
يعمل الماسح في أربعة أوضاع متمايزة، كلٌّ منها مُحسَّن لسيناريوهات اكتشاف محدّدة:
1. وضع الوكيل - ماسح النظام
اكتشاف شامل للأصول التشفيرية على مستوى النظام على المضيف المحلي. يمسح مخازن الشهادات، ويكتشف مخازن المفاتيح، ويفحص العمليات قيد التشغيل. يتطلب امتيازات مرتفعة.
2. وضع نظام الملفات - ماسح الملفات ومخازن المفاتيح
بحث تكراري عن الشهادات ومخازن المفاتيح في الأدلة المحدَّدة. يدعم JKS وPKCS#12 وPEM وDER وملفات الإعداد. معالجة متوازية باستخدام Rayon.
3. وضع النطاق - ماسح TLS/SSL
تحليل اتصال TLS الخارجي للنطاقات وعناوين IP. اختبار TLS متعدد الإصدارات، واستخراج سلسلة الشهادات، وتعداد مجموعات التشفير.
4. وضع الشبكة - التقاط الحزم السلبي
تحليل سلبي لحركة الشبكة لفحص مصافحة TLS. التقاط مستند إلى libpcap، وإعادة تجميع تدفّق TCP، وإحصائيات فورية مع واجهة طرفية.
خوارزمية تسجيل المخاطر الكمومية
يستخدم الماسح نظام تسجيل متعدد المعايير يمزج عدة عوامل مرجّحة في درجة نهائية من 0 إلى 100، تُربَط بعدها بمستوى أولوية. العوامل وأوزانها هي:
| العامل | الوزن |
|---|---|
| المخاطر الكمومية | 30% |
| الأهمية التجارية | 25% |
| حساسية البيانات | 20% |
| التعرّض | 10% |
| الامتثال | 10% |
| تعقيد الترحيل | 3% |
| تكلفة الترحيل | 2% |
تُربَط الدرجة الناتجة بأحد مستويات الأولوية الخمسة:
| الأولوية | المعنى | الإجراء الموصى به |
|---|---|---|
| P0 | حرِج | مطلوب إجراء فوري |
| P1 | عالٍ | إجراء خلال 3 أشهر |
| P2 | متوسط | إجراء خلال 6 أشهر |
| P3 | منخفض | إجراء خلال 12 شهرًا |
| P4 | معلوماتي | المراقبة |
الخوارزميات المعرّضة للمخاطر المكتشَفة
| الخوارزمية | حجم المفتاح | درجة المخاطر الكمومية | الخطورة |
|---|---|---|---|
| RSA | < 2048-bit | 10/10 | حرِج |
| RSA | 2048-bit | 8/10 | عالٍ |
| RSA | 3072-bit | 6/10 | متوسط |
| RSA | 4096-bit | 4/10 | متوسط |
| ECDSA | P-256 | 8/10 | عالٍ |
| ECDSA | P-384 | 7/10 | عالٍ |
| ECDSA | P-521 | 6/10 | متوسط |
| DSA | أي | 9/10 | حرِج |
| 3DES | غير منطبق | 10/10 | حرِج |
| RC4 | غير منطبق | 10/10 | حرِج |
صيغ المخرجات
يدعم الماسح صيغ مخرجات متعددة لحالات استخدام مختلفة:
الصيغة الافتراضية القابلة للقراءة آليًا. يحتوي كل تقرير JSON على البيانات الوصفية للمسح، وقائمة الاكتشافات، وملخص المخاطر، ومجموعة من التوصيات.
خصائص الأداء
قابلية التوسّع
- نقاط نهاية TLS: يمكنه مسح الآلاف في الساعة
- نظام الملفات: يعالج أكثر من 100 ألف ملف بكفاءة مع المسح المتوازي
- الذاكرة: بصمة ذاكرة منخفضة (أقل من 100 ميغابايت عادةً)
- المعالج: متعدد الخيوط للأداء الأمثل
معايير القياس
مسح نظام الملفات عالي الكفاءة: في معايير القياس الداخلية، يعالج الماسح نحو 1000 شهادة PEM في حوالي 50 مللي ثانية.
الدعم عبر المنصات
| المنصة | الحالة | ملاحظات |
|---|---|---|
| Linux | دعم كامل | المنصة المفضّلة، جميع الميزات |
| macOS | دعم كامل | Intel وApple Silicon |
| Windows | دعم كامل | Windows 10/11، Server 2019+ |
قدرات التكامل
يمكن تضمين الماسح كمكتبة. يهيّئ المُستدعِي مسحًا -- باختيار الوضع (مثل النطاق)، والأهداف، وصيغة المخرجات -- ثم يشغّله، ويقرأ النتائج، بما في ذلك درجة الجاهزية الإجمالية لـ PQC.
اعتبارات الأمان
متطلبات الامتيازات
| الوضع | الامتياز المطلوب |
|---|---|
| وضع الوكيل | يتطلب root/admin للوصول الكامل إلى النظام |
| وضع الشبكة | يتطلب CAP_NET_RAW أو ما يعادله |
| وضع نظام الملفات | امتيازات المستخدم القياسية كافية |
| وضع النطاق | امتيازات المستخدم القياسية كافية |
حماية البيانات
لا تُستخرَج المفاتيح الخاصة أبدًا ولا تُصدَّر. تُجمَع البيانات الوصفية والمعلومات العامة فقط. جميع اتصالات الشبكة مشفّرة (TLS 1.3). تسجيل التدقيق مفعّل لجميع العمليات.