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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
EfiGuard — تعطيل PatchGuard وDriver Signature Enforcement عند الإقلاع | Kitploit
أدوات/GitHubGitHub/mattiwatti/efiguard
أدوات دفاعيةالاستغلالالهندسة العكسيةتحليل الملفات الثنائية
GitHubmattiwatti/efiguard

EfiGuard

تعطيل PatchGuard وDriver Signature Enforcement عند الإقلاع

عرض المستودع
2.5k40932منذ 3 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

نظرة عامة

EfiGuard هو بوتكيت UEFI محمول بتقنية x64 يقوم بتصحيح مدير الإقلاع ومُحمل الإقلاع ونواة ويندوز أثناء الإقلاع لتعطيل PatchGuard و Driver Signature Enforcement (DSE).

إذا كنت تبحث فقط عن تجربة EfiGuard، انتقل إلى الاستخدام.

الميزات

  • يدعم حاليًا جميع إصدارات ويندوز x64 المتوافقة مع EFI التي تم إصدارها على الإطلاق، من Vista SP1 إلى Windows 11.

  • سهل الاستخدام: يمكن الإقلاع من USB أو من قسم EFI في ويندوز عبر مُحمل يقوم تلقائيًا بإيجاد وتشغيل ويندوز. يمكن أيضًا تحميل وتهيئة برنامج التشغيل يدويًا باستخدام إما UEFI shell أو المُحمل.

  • يستخدم مكتبة مفكك الشفرة Zydis بشكل مكثف لفك ترميز التعليمات السريع في وقت التشغيل لدعم تحليل أكثر قوة مما هو ممكن مع مطابقة التوقيعات، والتي غالبًا ما تتطلب تغييرات مع تحديثات النظام الجديدة.

  • يعمل بشكل سلبي: لا يقوم برنامج التشغيل بتحميل أو بدء تشغيل مدير إقلاع ويندوز. بدلاً من ذلك، يتفاعل مع تحميل bootmgfw.efi بواسطة مدير إقلاع البرامج الثابتة عبر قائمة اختيار الإقلاع أو تطبيق EFI مثل المُحمل. إذا تم إقلاع نظام تشغيل غير ويندوز، سيقوم برنامج التشغيل تلقائيًا بإلغاء تحميل نفسه.

  • يدعم التصحيح على أربع مراحل عندما يبدأ bootmgfw.efi تشغيل bootmgr.efi بدلاً من winload.efi. هذا هو الحال عند تحميل ملف WIM لتشغيل WinPE أو إعداد ويندوز أو وضع استرداد ويندوز.

  • استرداد سلس: في حالة فشل التصحيح، سيعرض برنامج التشغيل معلومات الخطأ ويطالب إما بمتابعة الإقلاع أو إعادة التشغيل بالضغط على ESC. هذا صحيح حتى مرحلة تصحيح النواة النهائية، لأن مرحلة التصحيح الأخيرة تحدث قبل استدعاء ExitBootServices. العديد من بوتكيتات UEFI لويندوز تقوم بربط OslArchTransferToKernel، والتي بالرغم من سهولة العثور عليها عبر مطابقة الأنماط، إلا أنها دالة تنفذ في الوضع المحمي بعد ExitBootServices. هذا يعني عدم توفر خدمات الإقلاع لإعلام المستخدم بوجود مشكلة. bsod

    محاكاة فشل التصحيح مع معلومات الخطأ

  • قابل للتصحيح: يمكنه إخراج الرسائل إلى مصحح النواة والشاشة (وإن كانت مخزنة مؤقتًا) أثناء مرحلة تصحيح النواة، وإلى منفذ تسلسلي أو الشاشة دون تخزين مؤقت أثناء مراحل تصحيح مدير الإقلاع ومُحمل الإقلاع. إذا تم تجميع برنامج التشغيل مع معلومات تصحيح PDB، فمن الممكن تحميل رموز التصحيح في أي نقطة بعد تهيئة HAL عن طريق تحديد قاعدة برنامج تشغيل DXE الافتراضي وتصحيحه كما تفعل مع برنامج تشغيل NT عادي.

  • تجاوزات DSE: متاحة إما كتعطيل DSE بنمط UPGDSED مباشر عند الإقلاع أو كخطاف على خدمة SetVariable() EFI runtime. هذا الأخير يعمل كباب خلفي لقراءة/كتابة في وضع النواة يمكن استدعاؤه من ويندوز باستخدام NtSetSystemEnvironmentValueEx ويسمح بتعيين g_CiEnabled/g_CiOptions إلى القيمة المطلوبة. يتم توفير تطبيق صغير بنمط DSEFix باسم EfiDSEFix.exe يمكن استخدامه لهذا الغرض. من الممكن أيضًا ترك DSE مفعلًا وتعطيل PatchGuard فقط. سيستخدم المُحمل طريقة خطاف SetVariable بشكل افتراضي، نظرًا لحقيقة أن بعض برامج مكافحة الغش ومكافحة الفيروسات لا تفهم الفرق بين الغش أو البرامج الضارة وبرامج التشغيل الموقعة ذاتيًا بشكل عام وتستهدف إصلاح UPGDSED.

  • يدعم النوى ومُحملي الإقلاع المعدلة على القرص عن طريق تصحيح ImgpValidateImageHash في كل مرحلة بالإضافة إلى ImgpFilterValidationFailure، والتي قد تقوم بإبلاغ بعض أنواع الانتهاكات بصمت إلى TPM أو ملف سجل SI.

  • يسمح بتشغيل Secure Boot مع ويندوز 7 (ليست مزحة!). ويندوز 7 نفسه غير مدرك لـ Secure Boot لأنه لا يدعمه، أو (رسميًا) حتى الإقلاع بدون CSM. هذا مفيد للأشخاص الذين يرغبون في استخدام ويندوز 7 على جهاز مقفل يتطلب WHQL Secure Boot. مقالة الويكي حول كيفية جعل هذا يعمل هنا. win7_secureboot

    WinObjEx64 على ويندوز 7 مع Secure Boot مفعل

المشكلات والقيود

  • لا يمكن لـ EfiGuard تعطيل Hypervisor-enforced Code Integrity (HVCI أو HyperGuard) لأن HVCI تعمل بمستوى امتياز أعلى. يمكن لـ EfiGuard أن يتعايش مع HVCI وحتى تعطيل PatchGuard بنجاح في النواة العادية، لكن هذا غير مفيد عمليًا لأن HVCI ستلتقط ما كان PatchGuard يفعله سابقًا. كلا النوعين من تجاوز DSE يُصبحان عديمي الفائدة بواسطة HVCI: تصحيح وقت الإقلاع ليس له تأثير لأن النواة تحيل إلى النواة الآمنة لفحوصات التكامل، وخطاف SetVariable سيسبب خطأ SECURE_KERNEL_ERROR إذا تم استخدامه للكتابة إلى g_CiOptions.
  • النوى المفحوصة (Checked kernels) غير مدعومة بسبب الاختلافات في كود تهيئة PatchGuard و DSE الناتجة عن تعطيل التحسينات وإضافة التأكيدات، بالإضافة إلى تغييرات إضافية في PatchGuard في النوى المفحوصة. لا ينبغي أن تكون هذه مشكلة لأن النوى المفحوصة ليست مفيدة بشكل عام بدون مصحح نواة متصل، مما يعطل PatchGuard.

الاستخدام

هناك طريقتان لاستخدام EfiGuard: الإقلاع باستخدام تطبيق المُحمل، الذي سيقوم بتحميل برنامج التشغيل وتشغيل ويندوز نيابة عنك، أو تثبيت برنامج التشغيل كإدخال UEFI driver ليتم تحميله تلقائيًا بواسطة البرامج الثابتة.

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

الموقعالتثبيتقابلية التخطي؟أي نظام تشغيل يتم إقلاعه؟
UEFI Driver Entryيجب أن يكون على ESPعبر UEFI Shell❌نفس السابق
Loaderفي أي مكانغير مطلوب✔️ويندوز

مقارنة المُحمل مقابل UEFI driver entry

إقلاع المُحمل

  1. قم بتنزيل EfiGuard وأعد تسمية EFI/Boot/Loader.efi إلى bootx64.efi.
  2. ضع الملفات على محرك إقلاع مثل USB مهيأ بنظام FAT32 (للأجهزة الفعلية) أو قرص ISO/ظاهري (للأجهزة الافتراضية). بافتراض أن محرك الأقراص X:، يجب أن تكون مسارات الملفين الآن X:/EFI/Boot/{bootx64|EfiGuardDxe}.efi
  3. قم بإقلاع الجهاز من محرك الأقراص الذي استخدمته في الخطوة 2. توفر معظم البرامج الثابتة قائمة إقلاع للقيام بذلك عبر F8/F10/F11/F12. إذا لم يكن الأمر كذلك، فستحتاج إلى تكوين BIOS للإقلاع من محرك الأقراص الجديد.
  4. يجب أن يقوم ويندوز الآن بالإقلاع، ويجب أن ترى رسائل EfiGuard أثناء الإقلاع.
  5. إذا أقلعت باستخدام خطاف SetVariable (الافتراضي)، قم بتشغيل EfiDSEFix.exe -d من موجه أوامر المسؤول بعد الإقلاع لتعطيل DSE، أو قم بتشغيل EfiDSEFix.exe لرؤية القائمة الكاملة للخيارات.

لاحظ أنك لا تحتاج إلى استخدام محرك أقراص منفصل للمُحمل. إذا كان مفضلاً، يمكنك تثبيت EfiGuard على ESP المثبت عليه ويندوز بالفعل. ومع ذلك، هذا أكثر تعقيدًا إلى حد ما حيث ستحتاج إلى إضافة إدخال إقلاع UEFI للمُحمل.

للقيام بذلك، قم بتثبيت ESP عند X: باستخدام mountvol X: /S واتبع الخطوات أعلاه، لكن لا تقم بإعادة تسمية المُحمل وانسخ كلا الملفين ببساطة إلى X:/EFI/Boot. بعد ذلك، ستحتاج إلى إضافة إدخال إقلاع UEFI يدويًا من UEFI Shell باستخدام bcfg boot addp 0 Loader.efi "EfiGuard"، أو بدلاً من ذلك باستخدام efibootmgr (لينكس)، أو EasyUEFI (ويندوز)، أو ما شابه ذلك.

تثبيت برنامج التشغيل

  1. قم بتثبيت ESP عند X: باستخدام mountvol X: /S.
  2. انسخ EfiGuardDxe.efi إلى X:/EFI/Boot/EfiGuardDxe.efi.
  3. أقلع إلى UEFI Shell وأضف إدخال UEFI driver: bcfg driver add 0 EfiGuardDxe.efi "EfiGuardDxe".
  4. يجب أن يقوم ويندوز الآن بالإقلاع، ويجب أن ترى رسائل EfiGuard أثناء الإقلاع.
  5. إذا أقلعت باستخدام خطاف SetVariable (الافتراضي)، قم بتشغيل EfiDSEFix.exe -d من موجه أوامر المسؤول بعد الإقلاع لتعطيل DSE، أو قم بتشغيل EfiDSEFix.exe لرؤية القائمة الكاملة للخيارات.

ملاحظة: اعتمادًا على البرامج الثابتة الخاصة بك، قد تحتاج إلى استخدام "addp" في الخطوة 3 بدلاً من "add". يُعرف أن VirtualBox يتطلب ذلك، وربما بعض البرامج الثابتة للوحات الأم أيضًا.

تنزيل الأداة