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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
illusion-rs — Rusty Hypervisor - برنامج Hypervisor من النوع 1 بتقنية Blue Pill لـ UEFI على Windows مكتوب بلغة Rust (الاسم الرمزي: Illusion) | Kitploit
أدوات/GitHubGitHub/memn0ps/illusion-rs
أدوات دفاعيةتحليل الذاكرة الجنائيآليات الاستمراريةالهندسة العكسيةالمحاكاة الافتراضية للأمانتحليل البرمجيات الخبيثةأمن الأجهزةتحليل الملفات الثنائيةالأوراق والأبحاثالفريق الأحمرArchived
41360منذ 4 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
GitHub
memn0ps/illusion-rs

illusion-rs

Rusty Hypervisor - برنامج Hypervisor من النوع 1 بتقنية Blue Pill لـ UEFI على Windows مكتوب بلغة Rust (الاسم الرمزي: Illusion)

عرض المستودعالموقع الإلكتروني
مشاركة

Windows UEFI Blue Pill Type-1 Hypervisor in Rust (الاسم الرمزي: Illusion)

License Issues Forks Stars

المدونة: https://memn0ps.github.io/hypervisors-for-memory-introspection-and-reverse-engineering/

هايبرفايزر بحثي من النوع الأول (type-1) مكتوب بلغة Rust، خفيف الوزن وآمن من ناحية الذاكرة وسريع للغاية، مع خطافات (hooks) لمعمارية Intel VT-x، ويركز على دراسة المفاهيم الأساسية للمحاكاة الافتراضية (virtualization).

ملاحظة: إن Illusion hypervisor (Windows UEFI Blue Pill Type-1 Hypervisor in Rust) أكثر استقرارًا، ويدعم ميزات أكثر، وهو أفضل تصميمًا بشكل عام. أما Matrix hypervisor (Windows Kernel Blue Pill Type-2 Hypervisor in Rust) فهو نسخة أقدم وتجريبية وغير مخصصة للاستخدام الإنتاجي. كلا المشروعين يخدمان كقوالب لمساعدة الأشخاص على البدء في تطوير الهايبرفايزرات بلغة Rust.

الوصف

الترقيم الصفحي (Paging): ترجمة عناوين x64 الافتراضية إلى عناوين فيزيائية

يوضح هذا المخطط آلية ترجمة عناوين x64 الافتراضية إلى عناوين فيزيائية في أنظمة الترقيم الصفحي التقليدية. في معمارية x64، تتضمن هذه الترجمة أربعة مستويات من جداول الصفحات: PML4 وPDPT وPDT وPT (Page Map Level 4 وPage Directory Pointer Table وPage Directory Table وPage Table). يستخدم كل مستوى 9 بتات من العنوان الافتراضي للفهرسة في المستوى التالي، مما يشير في النهاية إلى عنوان فيزيائي محدد في ذاكرة الوصول العشوائي (RAM). تُدار هذه العملية بواسطة نظام التشغيل ووحدة إدارة الذاكرة (MMU)، التي تترجم العناوين الافتراضية المستخدمة من قبل البرمجيات إلى عناوين فيزيائية تستخدمها العتاد.

x64 Virtual Address Translation
الشكل 1: ترجمة عنوان x64 الافتراضي (جميع الحقوق: Guided Hacking)

جداول الصفحات الموسعة (EPT): ترجمة العناوين من المستوى الثاني (SLAT)

تُعد جداول الصفحات الموسعة (EPT) ميزة من ميزات تقنيات المحاكاة الافتراضية المدعومة بالعتاد مثل Intel VT-x وجداول الصفحات المتداخلة (NPT) الخاصة بـ AMD-V. تطبق EPT ترجمة العناوين من المستوى الثاني (SLAT)، المصممة خصيصًا للبيئات الافتراضية. بينما يترجم الترقيم الصفحي التقليدي العناوين الافتراضية إلى عناوين فيزيائية داخل نظام التشغيل الضيف (guest OS)، تضيف EPT طبقة إضافية عبر ترجمة العناوين الفيزيائية للضيف (المستخدمة من قبل نظام التشغيل الضيف) إلى العناوين الفيزيائية للمضيف (المستخدمة من قبل الهايبرفايزر). تُدار هذه الطبقة الثانية من الترجمة بواسطة الهايبرفايزر، مما يسمح لأنظمة التشغيل الضيفة بإدارة جداول صفحاتها الخاصة بشكل مستقل. تعمل SLAT على تحسين الأداء عبر تقليل الحاجة إلى مخارج الآلة الافتراضية (VM exits) أثناء عمليات الذاكرة، مما يقلل من الحمل الزائد ويعزز كفاءة المحاكاة الافتراضية.

يوضح المخطط أدناه كيفية تنفيذ خطافات EPT المخفية في Windows UEFI Blue Pill Type-1 Hypervisor (الاسم الرمزي: Illusion) المكتوب بلغة Rust.

EPT Hooks
الشكل 2: خطافات جداول الصفحات الموسعة (EPT) (Illusion)

الميزات

ميزات متوافقة مع PatchGuard

  • ✅ خطافات نداءات النظام (Syscall) المخفية عبر جدول واصفات خدمات النظام (SSDT).
  • ✅ خطافات النواة المضمّنة (Kernel Inline Hooks) المخفية.
  • ✅ خطافات السجلات الخاصة بالمعالج (MSR) المخفية.

ميزات خاصة بالمعالج

  • ✅ جداول الصفحات الموسعة (EPT).
  • ✅ سجلات نطاق نوع الذاكرة (MTRRs).
  • ❌ تتبع المعالج من Intel (PT).

ميزات متوافقة مع Microsoft Hyper-V

  • ❌ دعم العمل كهايبرفايزر متداخل تحت Microsoft Hyper-V (النوع الثاني) مع تمكين الأمان القائم على المحاكاة الافتراضية (VBS).
  • ❌ دعم العمل كهايبرفايزر أساسي فوق Microsoft Hyper-V (النوع الأول) مع تمكين الأمان القائم على المحاكاة الافتراضية (VBS).

معالجة مخارج الآلة الافتراضية (VM Exit)

  • ✅ معالجة مخارج الآلة الافتراضية: ExceptionOrNmi (#GP, #PF, #BP, #UD) (0)، InitSignal (3)، StartupIpi (4)، Cpuid (10)، Getsec (11)، Hlt (12)، Invd (13)، Vmcall (18)، Vmclear (19)، Vmlaunch (20)، Vmptrld (21)، Vmptrst (22)، Vmresume (24)، Vmxon (27)، Vmxoff (26)، ControlRegisterAccesses (28)، Rdmsr (31)، Wrmsr (32)، MonitorTrapFlag (37)، Rdtsc (49)، EptViolation (48)، EptMisconfiguration (50)، Invept (53)، Invvpid (55)، Xsetbv (55).

كشف الهايبرفايزر

  • ✅ إخفاء ذاكرة الهايبرفايزر عن الضيف باستخدام EPT (إعادة توجيه ذاكرة الضيف التي تشير إلى ذاكرة المضيف إلى صفحة وهمية مملوءة بـ 0xFFs).
  • ✅ تجاوز كشف الهايبرفايزر القائم على جداول الصفحات المخصصة (يوفر العزل والأمان من الضيف، بما في ذلك إتلاف CR3).
  • ✅ تجاوز كشف الهايبرفايزر القائم على GDT وIDT المخصصين (يضمن العزل والأمان من الضيف).
  • ✅ تجاوز كشف الهايبرفايزر القائم على CPUID (إلغاء تعيين HypervisorPresent وإزالة توقيع معرّف البائع لمعلومات الميزات وبائع الهايبرفايزر).
  • ✅ تجاوز كشف الهايبرفايزر القائم على MSR (حقن #GP لمخارج Hyper-V MSR vmexits غير الصالحة وغير المدعومة والمحجوزة).
  • ✅ تجاوز كشف الهايبرفايزر القائم على CR (تظليل CR0 وCR4 لإخفاء البتات الخاصة بالهايبرفايزر).
  • ✅ تجاوز كشف الهايبرفايزر القائم على XSETBV (حقن #GP لمخارج XSETBV vmexits غير الصالحة أو غير المدعومة).
  • ✅ تجاوز كشف الهايبرفايزر القائم على VMCALL (حقن #GP لمخارج VMCALL vmexits غير الصالحة أو غير المدعومة).
  • ✅ تجاوز كشف الهايبرفايزر القائم على ExceptionOrNMI (حقن #GP و#PF و#BP و#UD لمخارج الاستثناءات المحددة).
  • ✅ مخارج الآلة الافتراضية غير المشروطة (حقن #UD لمخارج الآلة الافتراضية غير المشروطة، ولكن بالنسبة لـ Vmxon، حقن #UD إذا لم يكن يحتوي على VMXE؛ وإلا، حقن #GP إذا كان يحتوي على VMXE).
  • ❌ تجاوز كشف الهايبرفايزر القائم على EPT (فحص الكتابة، وفحص التوقيت، وفحص الخيوط).
  • ❌ تجاوز كشف الهايبرفايزر القائم على RDTSC.
  • ✅ إزالة ذاكرة الهايبرفايزر من خريطة/جدول ذاكرة UEFI (تحديد مناطق الذاكرة التي يشغلها الهايبرفايزر وتعديل خريطة ذاكرة UEFI لتمييز تلك المناطق على أنها UNUSABLE).

العزل والأمان

  • ✅ تطبيقات مخصصة لجدول واصفات العموميات (GDT) وجدول واصفات المقاطعات (IDT) وجداول الصفحات لتعزيز أمان وعزل الهايبرفايزر.

العتاد المدعوم

  • ✅ معالجات Intel مع دعم VT-x وجداول الصفحات الموسعة (EPT).
  • ❌ معالجات AMD مع دعم AMD-V (SVM) وجداول الصفحات المتداخلة (NPT).

المنصات المدعومة

  • ✅ Windows 10 - Windows 11، x64 فقط.

التثبيت

  • ثبّت Rust من هنا.
  • ثبّت cargo-make: cargo install cargo-make.

بناء المشروع

  • وضع التصحيح (Debug): cargo make build-debug.
  • وضع الإصدار (Release): cargo make build-release.

تشغيل المشروع

  • وضع التصحيح (Debug): cargo make run-debug.
  • وضع الإصدار (Release): cargo make run-release.

تصحيح الأخطاء (Debugging)

  • تسجيل المنفذ التسلسلي (Serial Port Logging): استخدم مسجّل منفذ تسلسلي لالتقاط السجلات من الهايبرفايزر.

تمكين أوضاع التصحيح

  • وضع الاختبار (Test Mode): فعّل توقيع الاختبار باستخدام bcdedit.exe /set testsigning on.
  • تصحيح أخطاء Windows: اتبع الخطوات الواردة في دليل Microsoft هذا.
bcdedit.exe /bootdebug {bootmgr} on
bcdedit.exe /bootdebug on
bcdedit.exe /debug on

تصحيح أخطاء الشبكة باستخدام Windbg

  • الإعداد: bcdedit.exe /dbgsettings net hostip:w.x.y.z port:n.

الاستخدام

يعمل برنامج UEFI blue-pill hypervisor في ظل الشروط التالية:

تنزيل الأداة