في منظمة RIPE NCC، تم مؤخراً نقل إحدى وحدات الأمان المادية* (Hardware Security Module أو HSM) التي تستخدم للتعامل مع المفاتيح في البنية التحتية للمفتاح العام للصلاحيات (Resource Public Key Infrastructure أو RPKI). في ما يلي نظرة عامة مفصلة عن الدور الذي تلعبه وحدات HSM في أنظمة RPKI الواسعة والخطوات التي تم إتخاذها لتنفيذ العملية.
تستخدم منظمة RIPE NCC وحدة الأمان المادية للتعامل مع المفاتيح في البنية التحتية للمفتاح العام للصلاحيات (RPKI). في الواقع، تستخدم المنظمة وحدات الأمان المادية لغرضين. أحدهما بشكل متصلة بالشبكة، والذي يتعامل مع العناصر التي تحتاج إلى الإنشاء بإستمرار، كأن يقوم أحد الأعضاء بإنشاء مرجع المصادقة** (Certification Authority أو CA)، أو عندما يتم إنشاء ترخيص أصل المسارات (Route Origin Authorisation أو ROA). والثاني هو إنشاء مرجع محور الثقة*** (Trust Anchor CA) بشكل منعزل عن الشبكة.
محور الثقة في شبكة RIPE NCC RPKI
يمكن تصوير البنية التحتية للمفتاح العام (PKI) كشجرة من الشهادات الموقعة على كل مستوى من مرجع المصادقة (CA). في جذر النظام (System Root)، تتواجد شهادة محور ثقة، وهي الشهادة الوحيدة المصدقة ذاتياً في المنظومة، دون الحاجة إلى التأكيد من أي شخص أو حساب أو برنامج آخر. يتم توزيع الشهادات الباقية على عدة مستويات أخرى، حيث يقوم مرجع المصادقة عند كل مستوى بتوقيع شهادة المصادقة للمستوى التالي، وكما يلي:
1- شهادة محور الثقة المستقلة (مع جميع الصلاحيات)
2- شهادة التشغيل (مع جميع الصلاحيات)
3- الصلاحيات المحدودة لأعضاء منظمة RIPE NCC (شهادات المصادقة المخصصة، مع جميع صلاحيات الأعضاء)
4- شهادات الأعضاء الإعتيادية (مع صلاحيات معينة لكل شخص)
يجب إنشاء تصاريح الصلاحيات في المستويات 2 و 3 و 4 من شهادات المصادقة بشكل مستمر، ويتم ذلك عن طريق “نواة RPKI” (تتوفر هذه الأداة على منصة github بإسم rpki-core). في المقابل، يقوم محور الثقة بالمصادقة على التصاريح كل ثلاثة أشهر للحفاظ على بيانها محدثاً. يتم إنشاء هذا الطلب بواسطة برنامج RPKI المتصل بالشبكة، وتتم المصادقة عليه من قبل محور الثقة (تتوفر هذه الأداة على منصة github بإسم rpki-ta0).
يتكون نظام محور الثقة (المستوى 1) من عنصرين ماديين رئيسيين. الأول هو جهاز مزود ببرنامج محور الثقة، يتم الإحتفاظ بهذا الجهاز بشكل آمن وغير متصل تماماً (بدون إتصال بالشبكة أو Bluetooth، ويتم إجراء جميع التحديثات من خلال الوسائط المادية). والثاني هو وحدة الأمان المادية (HSM)، وهي أيضاً جهاز مادي يستخدم لإدارة التصاريح بشكل آمن. يتم إستخدام هذه المكونات معاً في عملية تصديق على شهادات المصادقة بشكل لا يتطلب إتصال بالشبكة.
عملية التسجيل
عندما تتم عملية التسجيل بشكل غير متصل بالشبكة، يتم نقل جميع مدخلات ومخرجات النظام عبر الوسائط المادية. يشترك في هذه العملية ثلاث أشخاص:
- المهندس: يقوم بالجزء التقني من الحفل ويدخل الأوامر
- المراقب الموثوق: يتحقق من المدخلات والمخرجات، ويتأكد من بدء سجل التدقيق، ويتأكد من عمل نسخة إحتياطية. ويقوم بنقل رد التوقيع إلى المهندس بعد إكتمال العملية.
- مشغلي مراجع المصادقة (حاملي البطاقات الأمنية): يقوم كل حامل بطاقة بتنشيط مرجع المصادقة من خلال تقديم البطاقة الذكية وعبارة المرور الخاصة بهم. يجب تواجد ثلاثة (من أصل عشرة) حاملي بطاقات أمنية لتفعيل مفتاح شهادات المصادقة.
كيفية إستخدام وحدات الأمان المادية مع مراجع المصادقة غير المتصلة بالشبكة
إن وحدة الأمان المادية (HSM) هي جهاز يتم إستخدامه مع ما يسمى “برنامج الملف الأمني” على الجهاز المتصل به. يخزن هذا البرنامج الملف الأمني أو ملف الأمان على القرص، والذي يحتوي على مفاتيح مشفرة لا يمكن إستخدامها إلا بواسطة وحدة الأمان المادية الذي يعد حالياً جزءاً من “ملف الأمان” هذا.
يتم تشغيل وحدة الأمان المادية بإستخدام بطاقات الأمان المادية. هناك نوعان من مجموعات البطاقات، بطاقة مسؤول واحدة تم تعيينها لـ”ملف الأمان”، ومجموعات بطاقات المشغل (إختيارياً). تُستخدم بطاقات المسؤول والمشغل للسماح بالعمليات بإستخدام وحدة الأمان، مثل إستيراد ملف الأمان (مجموعة بطاقات المسؤول) أو تفعيل مفتاح معين للإستخدام (مجموعة بطاقة المشغل).
لتفويض العمليات، تتطلب وحدة الأمان عدداً قليلاً من هذه البطاقات. يعني ذلك أن العملية يمكن أن تتسامح مع فقدان أو تلف بطاقة واحدة أو أكثر دون التأثير على الإجراءات. هناك نوعان من البطاقات المستخدمة: بطاقات المسؤول وبطاقات المشغل. هذه البطاقات ليست قابلة للتبديل. إن مجموعة بطاقة المسؤول ضرورية للعمليات التي تؤثر على ملف الأمان بأكمله، مثل إستعادة المفاتيح (ترحيل المفاتيح إلى مجموعة بطاقة مشغل جديدة) أو إستبدال مجموعات البطاقات. كل بطاقة محمية بكلمة سر لا يعرفها إلا صاحب البطاقة.
كلتا مجموعتي البطاقات هذه لها متطلباتها. بالنسبة لمجموعة بطاقة المسؤول، يجب إدخال ثلاث من أصل خمس بطاقات (وكلمات مرور) لإجراء أي عملية أمنية. أما مجموعة بطاقات المشغل، يجب أن تتوفر ثلاثة عشرة لإجراء أي عملية أمنية. أما بالنسبة إلى مراجع المصادقة غير المتصلة، يستخدم في RIPE NCC مفتاحاً يحتاج إلى تصريح من بطاقة المشغل المحددة قبل أن يتمكن التطبيق من إستخدامه. يتم تحديد العدد الإجمالي للبطاقات والمتطلبات في سياسة حامل البطاقة الداخلية للمنظمة.
تسمح بطاقات المشغل بالوصول إلى مفاتيح التطبيق وتستخدم في عملية التسجيل. يلزم توفر المتطلبات لبطاقات المسؤول للمصادقة على إنشاء مجموعة بطاقة عامل، ويمكن لمجموعة واحدة فقط من بطاقات المشغل أن تكون نشطة لكل مفتاح. وبمجرد الموافقة على الإجراء، يمكن لحاملي بطاقات المشغل تقديم بطاقاتهم وإختيار كلمة مرور.
يتم تحديد حاملي البطاقات لكلا النوعين من البطاقات بناءً على سياسة RIPE NCC الداخلية، مع مراعاة النقاط التالية:
- يجب أن يكون موظفاً في RIPE NCC بعقد دائم.
- يجب أن يكون الممثل الوحيد لقسمه.
- يجب ألا يشارك تشغيلياً في فريق RPKI.
بالإضافة إلى ذلك، يجب أن يتمتع حاملو بطاقات المسؤول بسلطة كافية (مثل الإدارة أو كبار الموظفين الذين عملوا في RIPE NCC لأكثر من 5 سنوات)
الإنتقال إلى وحدة أمان مادية جديدة
كان الإنتقال من وحدة أمان إلى أخرى ضرورياً للحفاظ على بيئة محدثة عن طريق الإبتعاد عن الأجهزة القديمة إلى طراز حديث ومدعوم. قبل هذا الإنتقال، تم إستخدام nCipher nShield 6000E HSM في المنظومة الأمنية، وبعدها تم الإنتقال إلى nShield Edge HSM. لا تدعم وحدة الأمان الجديد نوع البطاقات الذكية المستخدمة في القديمة. في الوقت نفسه، لم يدعم إصدار البرنامج الثابت القديم نوع البطاقة الذكية التي يدعمها النظام الجديد.
نظراً لأن وحدة الأمان هي جوهر نظام RPKI، فقد تم إتخاذ قرار بتنفيذ التحديثات في بيئة منفصلة عن الإنتاج. يضمن ذلك عزل أي مشكلة قد تكون حدثت أثناء العملية بأكملها، حيث لا يمكن التراجع عن إصدارات البرامج الثابتة على وحدة الأمان.
نظراً لأن الإنتقال كان إلى نوع جهاز مختلف، فقد توجب التأكد من توفر إصدار البرنامج الصحيح لملف الأمان المتوافق مع الأجهزة الجديدة. للقيام بذلك، قرر المختصون في RIPE NCC إستخدام إعداد “الإنتقال”، حيث تم تطبيق الترقيات حتى وصلوا إلى إصدار مدعوم من قبل الجهاز الجديد. ستكون نتيجة هذا الترحيل إصداراً جديداً من ملف الأمان مدعوماً بواسطة nShield Edge HSM، والذي يتم نسخه بعد ذلك إلى البيئة الجديدة.
للوصول إلى إصدار مدعوم، وجب إجراء عدة ترقيات متتالية لبرنامج وحدة الأمان الثابت والبرمجيات وملف الأمان، متبوعاً بنسخة إحتياطية بعد كل ترقية، حيث يمكن أن تكون هناك تغييرات على الحالة في نظام الملفات. تمت العملية الكاملة كما يلي:
تم إجراء الإنتقال على جهاز منفصل مؤقت يحتوي على أجهزة مماثلة لنظام الأمان. تم تثبيت البرنامج عليه لتقليد بيئة الأمان ثم تم نسخ بيانات الأمان بحضور مراقب موثوق به ومستشار. لضمان عدم وجود مجال للفشل، تم الإنتقال عبر وحدة إحتياطية، وتم توفير وحدة أمان إحتياطية ثانوية.
تم إستخدام أحدث نسخة إحتياطية لبيانات الأمان كنقطة بداية للترحيل. تم نسخ البيانات إلى آلة النقل بإستخدام وسيط خارجي وتم تحميلها بعد الحصول على تصريح من بطاقات المسؤول. كانت هناك عدة ترقيات للإصدار مطلوبة على جهاز الترحيل هذا للوصول إلى إصدار متوافق مع الأجهزة الجديدة. بمجرد إكتمال ذلك، تم إعادة إصدار مجموعة بطاقة المسؤول إلى حاملي البطاقات المحددين حديثاً.
أثناء الترحيل، تم إستخدام بطاقة المسؤول المعينة على:
1- تهيئة وحدة الأمان المادية، بعد أن تمت ترقية البرنامج الثابت بمسحها.
2- إصدار بطاقة إدارة جديدة مضبوطة على نوع أحدث من البطاقات الذكية، متوافقة مع nShield Edge.
3- بدء وحدة الأمان الجديدة.
4- إنشاء مجموعة بطاقة المشغل الجديدة و”إسترداد” المفاتيح لها.
لإختبار نجاح الإنتقال إلى إصدار متوافق، تم إجراء عملية تسجيل تجريبية. بعد إكتمال ذلك بنجاح، تم عمل نسخة إحتياطية جديدة ونسخها إلى الأجهزة الجديدة، التي تم تثبيت برنامج ملف الأمان عليها مسبقاً. تم إدخال وحدة الأمان في ملف الأمان بعد أن تم تزويد الوحدة بمعلومات بطاقات المسؤول.
إنتقال مجموعة بطاقة المشغل
كانت الخطوة الأخيرة في عملية الإنتقال إنشاء مجموعة جديدة من بطاقات المشغل وتعيين حاملي بطاقات جدد لهم. تم إجراء ذلك في مرحلة لاحقة بسبب المدة غير المتوقعة للإنتقال الأول.
تم تنفيذ الإنتقال الثاني بحضور مهندسين ومراقبين موثوقين وحاملي بطاقات المسؤول وحاملي بطاقات المشغل العشرة الجدد. تمت الموافقة على العملية من خلال المتطلبات القانونية لبطاقات المسؤول وتم تنفيذها في البيئة الجديدة التي كانت نتيجة الترحيل السابق. تم نقل المفاتيح ضمن مجموعة بطاقات المشغل الجديدة وتمت إزالة مجموعة البطاقات القديمة من وحدة الأمان المادية.
لضمان إعداد كل شيء بشكل صحيح، تم عقد عملية تسجيل آخرى، هذه المرة مع حاملي بطاقات المشغل الجدد. كما هو الحال مع الإنتقال السابق، تم نسخ جميع الملفات المهمة إحتياطياً على وسيط مادي بمجرد إكتمال عملية التسجيل.
الخلاصة
أثناء عملية الإنتقال هذه، تمت إعادة إنشاء جهاز قديم لعملية الترحيل، وتم تثبيت وتهيئة بيئة جديدة، ونقل ملف الأمان والمفاتيح إلى وحدة الأمان الجديد.
الآن وقد تم تحديث محور الثقة بشكل معزول عن الشبكة، فإن المشروع التالي سيكون تحديث وحدات الأمان المادية عبر الشبكة. في حين أن الإنتقال إلى مراجع المصادقة غير المتصلة كان مباشراً نسبياً، فإن ترحيل مراجع المصادقة عبر الشبكة سيكون أكثر تعقيداً بسبب تضمين العديد من المفاتيح. يحتوي مشروع مراجع المصادقة عبر الإنترنت على آلاف المفاتيح، والتي يمكن إنشاؤها أو حذفها في أي وقت، ولكن أثناء الإنتقال إلى إصدار برنامج ثابت جديد، يجب نقل جميع المفاتيح الموجودة في وحدة الأمان هذه.
—
* وحدة الأمان المادية (HSM): هي جهاز حوسبة مادي يحمي المفاتيح الرقمية ويديرها، ويؤدي وظائف التشفير وفك التشفير للشهادات الرقمية (Digital Certificate) والمصادقة ووظائف التشفير الأخرى.
** مرجع المصادقة (CA): هو برنامج يقوم بتخزين الشهادات الرقمية وتوقيعها وإصدارها.
*** محور الثقة (TA): وهو برنامج موثوق يعد المصدر الرئيسي للثقة والصلاحيات، ولا يحتاج لأي برنامج أو مفتاح آخر للحصول على صلاحياته.