يعد Detoursnt مشروعًا بسيطًا بهدف واحد - اجعل التفاف يعتمد فقط على NTDLL.DLL دون أي تعديلات على الكود الأصلي.
NTDLL.DLLلقد أرفق هذا المستودع مستودع GIT الأصلي للالتفافات من Microsoft كوحدة فرعية. لذلك ، لم يتم لمس الرمز الأصلي بأي شكل من الأشكال.
تم تحقيق التبعية NTDLL فقط عن /FI إنشاء ملف CALTERSNT هذا الرأس يسخر من وظائف KERNEL32.DLL للتنفيذ المخصص المحدد في adulsnt.cpp.
أود أن أشكر مؤلفي المشاريع التالية:
KERNEL32.DLLNTDLL.DLLنظرًا لأن رمز مصدر التحويلات الأصلي يتم إرفاقه كوحدة فرعية GIT ، يجب ألا تنسى جلبها:
git clone --recurse-submodules https://github.com/wbenny/DetoursNT
بعد ذلك ، تم تضمين تجميع chotoursnt باستخدام Visual Studio 2017. ملف الحل. لا يلزم تبعيات أخرى.
بعد أن تضغط على F7 في Visual Studio وتجميع كل شيء ، يمكنك التحقق من أن SampleHookDLL.dll يعتمد بالفعل فقط على NTDLL.DLL :

هذا التثقيف DLL فقط هو الخطافات NtTestAlert وظيفة لأغراض توضيحية. في هذا المستودع يوجد أيضًا Sample مشروع. الغرض فقط هو استدعاء LoadLibrary(TEXT("SampleHookDLL.dll")) و NtTestAlert() و FreeLibrary() لإظهار أن الخطاف يعمل.

هذا البرنامج مفتوح المصدر بموجب ترخيص معهد ماساتشوستس للتكنولوجيا. انظر ملف الترخيص. txt في هذا المستودع.
تم ترخيص التفاف بموجب ترخيص معهد ماساتشوستس للتكنولوجيا (يتم تضمين نسخة من الترخيص في وحدة فرعية منفصلة GIT)
إذا وجدت هذا المشروع مثيرًا للاهتمام ، يمكنك شراء قهوة لي
BTC 3GwZMNGvLCZMi7mjL8K6iyj6qGbhkVMNMF
LTC MQn5YC7bZd4KSsaj8snSg4TetmdKDkeCYk