هذا المشروع هو وسيلة لإظهار بيئة تطوير Kernel Linux بسرعة وسهولة ، دون استخدام أدوات مثل QEMU أو إنشاء مجموعة أدوات ومجد. يتم ذلك عن طريق بناء نواة من الحزمة المذكورة ديبيان واستخدامها مع توزيع Debian.
يتضمن المشروع أيضًا Khack ، وهي أداة لإنشاء بعض التخمينات من عملية اختراق النواة بالإضافة إلى العمل كدليل للقادمين الجدد ، كبديل لقراءة الكثير من المواد عبر الإنترنت ومحاولة التعلم من خلال التجربة والخطأ.
vagrant plugin install vagrant-vbguest ). قم بتشغيل vagrant up حيث قمت باستنساخ الريبو (حيث يكون Vagrantfile ) لإنشاء VM جديد لامع مع كل ما تحتاجه.
هذا سوف يستغرق بعض الوقت.
بمجرد الانتهاء من ذلك ، قم بتشغيل vagrant ssh لدخول الجهاز ومن هناك ، اعتمادًا على مستوى الألفة مع تطوير kernel ، إما:
khack للحصول على شرح لما يمكنك القيام به هنا (WIP) ،khack --help للحصول على قائمة بالبرامج النصية المفيدة ،أو فقط تجاهل Khack بالكامل وافعل الشيء الخاص بك.
داخل دليل VM Home ، سيكون هناك:
linux-source : مصادر Kernel Linux جاهزة لتجميعها مع الحد الأدنى من التكوين من linux-config .khack : الأداة المساعدة Khack.module : رمز السقالة لوحدة kernel.linux-config : تكوينات kernel premade.system-config : ملفات التكوين لبرامج مختلفة متعلقة بالنظام ، عادة ما تكون هناك حاجة لمس هذا الأمر.boot-backup : نسخة احتياطية من /boot ، فقط في حالة. يتم إعداد khack و module و linux-config لمشاركتها مع نظام التشغيل المضيف ، بحيث يمكنك استخدام المحرر المفضل لديك لتحرير الملفات فيها.
لتحرير مصدر kernel ، انظر أدناه. يمكن القيام بكل شيء آخر بالطريقة التقليدية (تجميع وتثبيت kernel ، إلخ) أو باستخدام Khack للراحة.
نكشف عن المصدر عبر SMB/CIFS ، لتجنب المشكلات المتعلقة ببناء kernel على دليل مشترك في VirtualBox. إلى جبل:
عبر المحطة:
sudo apt install cifs-utils
sudo mount -t cifs //localhost/kernel-source WHERE_TO_MOUNT -o port=10139,username=vagrant,password=vagrant,uid=$USER,gid=$USER
عبر Nautilus:
smb://vagrant:vagrant@localhost:10139/kernel-source/
عبر المحطة:
sudo mount -t smbfs '//vagrant:vagrant@localhost:10139/kernel-source' WHERE_TO_MOUNT
عبر الباحث:
استخدم الاتصال بالخادم (CMD+K) مع عنوان URL smb://vagrant:vagrant@localhost:10139/ .
يهدف Khack إلى تبسيط القرصنة على kernel وتعليم القادمين الجدد الذين يعملون فعليًا ، كما تعلمون ، يوضحون أنهم يعملون فعليًا ، وإنقاذ المتعلمين من إحباط محاولة ضبط التعويذات من برنامج تعليمي عبر الإنترنت قبل عشر سنوات.
مصدره متاح تحت khack ويمكن استخدامه ببساطة khack داخل VM لأنه يتم ربطه في المكان الصحيح (انظر setup_vm.sh ).
على سبيل المثال:
khack kernel make يبني kernel في ~linux-source .khack kernel install تثبيت kernel المبني بحيث يتم تشغيله عند إعادة تشغيل VM.khack kernel running بتقديم تقرير ما إذا كانت أحدث kernel المترجمة تعمل بالفعل.تجربة واستمتع ،
فريق Kerneltlv