TuxTape، اقتراح جديد لـ LivePatch على Linux

توكس تيب

مفهوم «Livepatch ليس شيئًا جديدًا ولم يتم تنفيذه حتى في Linux لعدة سنوات، حيث أن Red Hat وOracle وCanonical وSUSE هي بعض من الشركات التي نفذت هذه التقنية في توزيعاتها.

وعلى الرغم من أنهم أثبتوا أنفسهم كحل ممتاز، إلا أن هذا يعتمد عادة على العمليات المغلقة في إنشاء الرقع، الحد من الشفافية والقدرة على التكيف. تميزت المشاريع مفتوحة المصدر السابقة، مثل elivepatch من Gentoo وlinux-livepatching من Debian، بفترات طويلة من عدم النشاط أو الركود في مراحل النموذج الأولي.

في مواجهة هذه السلسلة من المشاكل الذين ما زالوا يواجهون عملية إنشاء وتجميع ونشر وتثبيت تصحيحات نواة Linux النشطة، يقدم TuxTape نفسه كحل مستقل، مصمم ليكون قابلاً للتكيف مع أي إصدار من نواة Linux، دون أن يقتصر على الحزم الخاصة بكل توزيع.

TuxTape، حل للتصحيح المباشر في Linux

TuxTape هو الحل الجديد أن يسمح للمسؤولين من الأنظمة تنفيذ البنية التحتية الخاصة بك لإنشاء وتجميع ونشر التصحيحات المباشرة لنواة Linux.

الهدف الرئيسي من TuxTape هو العرض نظام شامل يقوم بأتمتة إنشاء وتسليم التصحيحات المباشرة. يسمح تصميمها بإنشاء تصحيحات متوافقة مع الأدوات الموجودة مثل Red Hat's kpatch و SUSE's kGraft و Oracle's Ksplice وغيرها من الحلول العالمية.

البقع يتم تنفيذها كوحدات نمطية للنواة تحل محل الوظائف الموجودة عن طريق استخدام نظام ftrace الفرعي، الذي يعيد توجيه التنفيذ إلى الوظائف الجديدة المضمنة في الوحدة النمطية. بالإضافة إلى ذلك، يتمتع TuxTape بالقدرة على تتبع تحديثات الثغرات الأمنية المنشورة على قائمة البريد الإلكتروني linux-cve-announce وفي مستودعات Git.

رقعة TuxTape الحية

باستخدام هذه المعلومات، يقوم النظام بتصنيف الثغرات الأمنية حسب شدتها، وتقييم مدى إمكانية تطبيق كل تصحيح من خلال تحليل مفصل لملف تعريف بناء النواة، وتجاهل تلك الإصلاحات التي لا تؤثر على البيئة المستهدفة. ويضمن هذا النهج الانتقائي تنفيذ التغييرات ذات الصلة فقط، مما يقلل المخاطر ويحسن الأداء.

مكونات المشروع والهندسة المعمارية

مجموعة TuxTape يتكون من أدوات متعددة متكاملة تتراوح من الكشف إلى التصحيح المباشر:

  • نظام تتبع الثغرات الأمنية: وهو المسؤول عن اكتشاف التهديدات الجديدة وتسجيلها في الوقت الحقيقي.
  • مولد قاعدة البيانات: وهي مسؤولة عن توفير المعلومات حول التصحيحات والثغرات الأمنية في قاعدة بيانات منظمة.
  • خادم البيانات الوصفية مع gRPC: إدارة الاتصالات وتنسيق الخدمات المتعلقة بإنشاء التصحيحات.
  • نظام الإرسال وبناء النواة: يسهل تجميع النواة على تكوينات محددة من خلال إنشاء ملف تعريف تجميع مفصل.
  • المولد وملف التصحيح: يقوم بتحويل التصحيحات العادية إلى وحدات نواة قابلة للتحميل ديناميكيًا.
  • العميل للمضيفين النهائيين: يسمح باستقبال وتطبيق التصحيحات على أنظمة الإنتاج.
  • الواجهة التفاعلية (لوحة التحكم):يوفر وحدة تحكم إدارية للمستخدم حيث يمكنه مراجعة وإدارة وإنشاء تصحيحات مباشرة استنادًا إلى المصادر المستلمة.

ومن الجدير بالذكر أن مشروع TuxTape وتطويره هو حاليًا في مرحلة النموذج الأولي التجريبي، لذلك في الوقت الحالي يوصى فقط بالاختبار الأولي مع مكوناته المختلفة.

بالنسبة لأولئك المهتمين باختبار المشروع، يوصى حاليًا بإجراء الاختبار فقط على أدوات محددة مثل:

  • محلل tuxtape-cve: يقوم بتحليل معلومات الثغرات الأمنية وإنشاء قاعدة بيانات التصحيحات.
  • خادم tuxtape: تنفيذ واجهة gRPC لتوليد التصحيحات وتوزيعها.
  • منشئ نواة tuxtape: فهو مسؤول عن بناء النواة بتكوين معين وإنشاء ملف التجميع المقابل.
  • لوحة تحكم شريط التكس:يوفر واجهة وحدة تحكم لمراجعة وإنشاء تصحيحات مباشرة استنادًا إلى تصحيحات المصدر المستلمة.

وأخيرًا، من المهم أن نذكر أن المشروع يتم تطويره بلغة Rust ويتم توزيعه بموجب ترخيص Apache 2.0. يمكنك استشارة المزيد من المعلومات أو الكود المصدر لهذا، من الرابط التالي.