Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Silverseal — إطار عمل لمرحلة ما بعد الاستغلال على Linux مع UEFI bootkit يقوم بتحميل rootkit لوحدة kernel مكتوب بلغة Rust بشكل مستمر وخفي على أنظمة Linux الحديثة. | Kitploit
أدوات/GitHubGitHub/idov31/silverseal
آليات الاستمراريةالاستغلالما بعد الاستغلالتحليل البرمجيات الخبيثةالفريق الأحمرتطوير الحمولاتاستغلال الملفات الثنائية
GitHubidov31/silverseal

Silverseal

إطار عمل لمرحلة ما بعد الاستغلال على Linux مع UEFI bootkit يقوم بتحميل rootkit لوحدة kernel مكتوب بلغة Rust بشكل مستمر وخفي على أنظمة Linux الحديثة.

عرض المستودع
1711490منذ 18 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

Silverseal - إطار عمل Linux Bootkit و Rust Kernel Rootkit

Silverseal Logo

rust assembly linux

Silverseal هو إطار عمل مفتوح المصدر لأبحاث Linux bootkit مكتوب بلغة Rust. يوضح كيف يمكن لـ UEFI bootkit اعتراض عملية إقلاع نواة Linux المبكرة لتحميل rootkit على شكل وحدة نواة مبنية بـ Rust بشكل مستمر وخفي.

يستكشف المشروع تطوير UEFI bootkit، واعتراض سلسلة إقلاع نواة Linux، وتحميل rootkit، والاستمرارية قبل نظام التشغيل على أنظمة Linux الحديثة.

  • silverseal-bootkit: UEFI bootkit مُنفَّذ بلغة Rust يعترض عملية الإقلاع المبكرة لنواة Linux لتحميل وحدة rootkit.
  • silverseal-rootkit: وحدة نواة Linux مبنية بـ Rust.

التصميم

Silverseal Design Diagram

تثبيت التبعيات

Ubuntu

يثبّت الحزم اللازمة لبناء وحدات Rust-for-Linux الخارجية، ويثبّت rustup إذا لزم الأمر، ويبدّل سلسلة الأدوات الافتراضية إلى stable، ويضيف rust-src، ويثبّت bindgen-cli، ويحذّر إذا كانت النواة قيد التشغيل حالياً لا تُظهر CONFIG_RUST=y.

./scripts/install_dependencies.sh

WSL

[!IMPORTANT]
إذا كنت تستخدم WSL، فتأكد من إعداد WSL 2 وتثبيت Ubuntu. يبني هذا السكربت نواة WSL2 مخصصة مُفعَّلة بـ Rust، ويجهّز قرص VHDX للوحدات، ويمكنه اختيارياً كتابة إدخال في ملف .wslconfig على Windows يوجّه WSL إلى النواة المُنشأة.

./scripts/wsl_setup.sh

يقوم السكربت تلقائياً بتثبيت تبعيات البناء الخاصة بـ Ubuntu، ويستنسخ مصدر نواة Microsoft WSL2 المطابق، ويفعّل CONFIG_RUST، ويبني النواة باستخدام LLVM، ويربط /lib/modules/<release>/build لبناء الوحدات الخارجية.

لعرض الخيارات المدعومة:

./scripts/wsl_setup.sh --help

لبناء rootkit مقابل نواة الهدف المطلوبة، تحتاج إلى تشغيل السكربت التالي على جهاز البناء الخاص بك (سواء WSL أو جهاز Linux أصلي):

./scripts/ubuntu_target_setup.sh <uname -r of your target kernel>

يقوم هذا التدفق بتثبيت حزم linux-headers-<kernel> و linux-lib-rust-<kernel> المطابقة، ويثبّت سلسلة أدوات Rust 1.82 المُحزَّمة من Ubuntu والمستخدمة في تدفق generic-kernel، ويصلح /usr/src/linux-headers-<kernel>/rust إذا كان هذا الرابط الرمزي معطلاً، ويطبع أمر make الدقيق لاستخدامه بعد ذلك.

البناء

Rootkit

ابنِ rootkit باستخدام نظام بناء النواة. لا تستخدم Cargo لبناء الوحدة الحقيقية.

cd Silverseal/silverseal-rootkit
make

يتم تجهيز مخرجات الوحدة في silverseal-rootkit/target/ بعد البناء.

ابنِ rootkit لنواة هدف Ubuntu generic من WSL:

cd Silverseal/silverseal-rootkit
make clean
PATH=/usr/bin:/bin:$PATH \
RUST_LIB_SRC=/usr/src/rustc-1.82.0/library \
make RUST_MIN_TOOLCHAIN= \
KDIR=/usr/src/linux-headers-6.17.0-20-generic \
CC=x86_64-linux-gnu-gcc-13 \
RUSTC=rustc-1.82 \
RUSTDOC=rustdoc-1.82

يكتشف Makefile الخاص بالوحدة تلقائياً أهداف /usr/src/linux-headers-* ويمرّر cfg التوافق مع Rust عبر متغيرات أعلام Rust الخاصة بـ Kbuild بحيث يستخدم مخطط بيانات module! الأحدث في Ubuntu المفتاح authors بدلاً من المفتاح الأقدم author.

بعد البناء، تحقق من أن إصدار نواة الهدف قد تم تضمينه بشكل صحيح:

modinfo target/silverseal_rootkit.ko | grep vermagic

Bootkit

يتطلب بناء bootkit وجود nasm في PATH. الحزمة (crate) مُهيَّأة بالفعل لاستهداف x86_64-unknown-uefi، ويقوم سكربت البناء بتجميع كل من asm/x64/lkm_loader.asm و asm/x64/lkm_stager.asm إلى كتل ثنائية مسطحة مضمّنة في صورة EFI.

cd Silverseal/silverseal-bootkit
cargo build --release

يتم كتابة ملف EFI الثنائي الناتج إلى:

Silverseal/target/x86_64-unknown-uefi/release/silverseal-bootkit.efi

الاختبار

يتوقع سكربت النشر حالياً ملفاً باسم silverseal-bootkit.efi في جذر المستودع. بعد بناء bootkit، انسخ مخرج EFI إلى هناك ثم شغّل سكربت الإعداد من جذر المستودع.

cd Silverseal
cp target/x86_64-unknown-uefi/release/silverseal-bootkit.efi ./silverseal-bootkit.efi
sudo ./scripts/setup_silverseal.sh

يقوم السكربت بإجراء تبديل مباشر على قسم EFI:

  • ينقل /boot/efi/EFI/ubuntu/grubx64.efi إلى /boot/efi/EFI/ubuntu/grubx64.efi.original
  • ينقل ./silverseal-bootkit.efi إلى مكانه كـ /boot/efi/EFI/ubuntu/grubx64.efi

إزالة Silverseal

لإزالة Silverseal، استعد ملف GRUB الثنائي الأصلي من النسخة الاحتياطية .original:

cd Silverseal
sudo ./scripts/restore_silverseal.sh

إعداد تسجيل المنفذ التسلسلي

Linux

  • تحديد المنفذ التسلسلي:
ls -la /dev/ttyS*

المنافذ الشائعة: /dev/ttyS0 (COM1)، /dev/ttyS1 (COM2)

  • مراقبة المخرجات التسلسلية باستخدام minicom:
sudo minicom -D /dev/ttyS0 -b 115200

# Or with `screen`:
sudo screen /dev/ttyS0 115200

# Or with `picocom`:
sudo picocom -b 115200 /dev/ttyS0

Windows

  • نزّل وشغّل PuTTY
  • اختر نوع الاتصال "Serial"
  • أدخل الخط التسلسلي الذي أنشأته في الجهاز الافتراضي (مثلاً، \\.\pipe\com_1)
  • اضبط السرعة على 115200
  • ضمن Connection > Serial، اضبط "Flow control" على "None" و "Parity" على "None"
  • انقر على Open

يمكنك أيضاً استخدام السكربت المساعد، الذي يعيد توصيل PuTTY باستمرار بـ \\.\pipe\com_1 بسرعة 115200 باود:

powershell -ExecutionPolicy Bypass -File .\scripts\connect-vm.ps1

المصادر

  • UEFI Crate
  • Elixir Bootlin
  • memN0p's Bootkit
تنزيل الأداة