delphi4arab منتديات دلفي للعرب
Api Hook مثال بسيط, Hook للدالة TerminateProcess - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي التقنية (https://delphi4arab.net/forum/forumdisplay.php?fid=6)
+--- قسم : دلفي والتعامل مع النظام و الذاكرة (https://delphi4arab.net/forum/forumdisplay.php?fid=20)
+--- الموضوع : Api Hook مثال بسيط, Hook للدالة TerminateProcess (/showthread.php?tid=620)

الصفحات: 1 2 3


Api Hook مثال بسيط, Hook للدالة TerminateProcess - TF6M - 21-03-2009

dw -1 لم نقم بتعريفه هل هو إختصار لـ DWord ??
2- لما خصصنا البارامتر الأول للدالة ReadProcessMemory بـ dWord(-1) ؟


Api Hook مثال بسيط, Hook للدالة TerminateProcess - محمد عبد العزيز - 21-03-2009

إقتباس :مادا تعني (في داكرة برنامجنا ؟
عندما ينفذ البرنامج وكانه وحده وكل الذاكرة له وحده
القصد ان ما قمنا به من تعديل لا يؤثر على البرامج الاخرى التي تعمل بنفس الوقت

إقتباس :ما الفرق بين مقبض البرنامج و رقم التعريف id
تقصد Handle و PID
باختصار كلاهما مجرد رقم، PID يكون فريد مدى حياة الProcess
لكل شيئ Handle سواء نافذة او Process أو Thread او...
حتى تفهم اكثر طالع احذ كتب Win32
إقتباس : لمادا 6 ؟
حجم الاوامر المستخدمة للتغيير
5 bytes لامر Push
1 byte لامر Ret
المجموع يساوي 6


إقتباس :dw -1 لم نقم بتعريفه
معرف بالمثال المرفق باول مشاركة
PHP كود :
Dw  : Dword; 

إقتباس :لما خصصنا البارامتر الأول للدالة ReadProcessMemory بـ -1 ؟
يقراء نفسه


Api Hook مثال بسيط, Hook للدالة TerminateProcess - TF6M - 21-03-2009

شكرا ,,

1- إذا يمكننا أن نقوم بتتبع دوال الـ Api إنطلاقا من العنوان المحمل (loadlibrary مقبض) من الـ dll المصدر ؟؟

و بما اننا سنعترضها كالـ hook فبسهولة يمكن رصدها .

2- ألاحظ لما أستعمل فاحص للـ dll ما أنه يعطيني عنوان ثابت لمكان دالة ما (بداخل هدا الـ dll) ما تفسير دلك
لأنه عادة ؟ بكل تحميل او إعادة تحميل لتعليمة ما فإنه يأخذ Offset معين على حسب حالة الذاكرة؟؟


Api Hook مثال بسيط, Hook للدالة TerminateProcess - محمد عبد العزيز - 26-03-2009


1-
LoadLibrary تحمل المكتبة DLL لذاكرة البرنامج
GetProcAddress تعطي عنوان اي دالة من تلك المكتبة
2-
عند تحميل المكتبة للذاكرة قد يتم عمل relocations لتفهم اكثر كما قلت لك بردي السابق عليك بمعرفة بنية الملف التنفيذي Win32 PE وكيفية عمله
يمكن ان تبداء بروابط الرد #4 من موضوع كيف يتم ضغط الملفات التنفيدية ؟
والسلام عليكم



Api Hook مثال بسيط, Hook للدالة TerminateProcess - TF6M - 26-03-2009

شكرا ,,

هادا تعليق أحد الأخوى في منتدى آخر (ما رأيك؟؟):

تضع نقطة توقف على LoadLibrary ومن ثم تحفظ العنوان المسترجع في EAX (عنوان المكتبة بعد تحميلها الى الذاكرة) والذي سيحفظ في مكان ما, تقوم بوضع نقطة توقف عليه عند القراءة لانه سيستخدم فيما بعد مع GetProcAddress .

كنت أظن أنه يمكن دلك سواء بالدلفي أو بالأسمبلي ؟؟

+ في ما يخص المقال جاري المطالعة بارك الله فيك.


Api Hook مثال بسيط, Hook للدالة TerminateProcess - محمد عبد العزيز - 26-03-2009

إقتباس :تضع نقطة توقف على LoadLibrary ومن ثم تحفظ العنوان المسترجع في EAX (عنوان المكتبة بعد تحميلها الى الذاكرة) والذي سيحفظ في مكان ما, تقوم بوضع نقطة توقف عليه عند القراءة لانه سيستخدم فيما بعد مع GetProcAddress .
يتحدث عن تنقيح Debugging لمكتبة DLL
ما به ؟ او ما المشكل!


إقتباس :كنت أظن أنه يمكن دلك سواء بالدلفي أو بالأسمبلي ؟؟
يمكن عمل اي شيئ باي لغة


Api Hook مثال بسيط, Hook للدالة TerminateProcess - TF6M - 26-03-2009

شكرا تم تنفيذ الدرس بنجاح و بكل سهولة ,,

ممكن تضع سلسلة دروس في مجال برمجة الدريفر ؟؟ أو على أقل توضيحات أكثر .


Api Hook مثال بسيط, Hook للدالة TerminateProcess - khiro.alg - 03-08-2010

السلام عليكم
بارك الله فيك أخي عزيز
نادرةهي المواضيع مثل هاته
وأتمنى أن أرى المزيد
سأعيد المراجعةSmile


RE: Api Hook مثال بسيط, Hook للدالة TerminateProcess - mohamed49 - 12-05-2018

بارك الله فيك اخي وزادك علما حقيقة العالم العربي شحيح جدا من ناحية هذه المواضيع المماثلة بخصوص ردك هنا
تعمل Hook لعدد كبير من الدوال وعند استدعاءها اما تسمح بذلك او تمنعه حسب رغبة المستخدم
فقط فكر في الجملة 'استدعاء دالتي بدلا من دالة النظام' وانظر للافاق المتاحة
افهم من كلامك انك تستطيع مثلا ايقاف ملف عن نسخ نفسه الا بموافقة المستخدم هل يتم ذلك بعمل هوك على دالة معينة بحد ذاتها ام على البرنامج المسؤول وكيف تتم الطريقة
والسلام عليكم


RE: Api Hook مثال بسيط, Hook للدالة TerminateProcess - محمد عبد العزيز - 14-05-2018

(12-05-2018, 06:39 PM)mohamed49 كتب : تستطيع مثلا ايقاف ملف عن نسخ نفسه الا بموافقة المستخدم. هل يتم ذلك بعمل هوك على دالة  معينة بحد ذاتها ام على البرنامج المسؤول وكيف...

وعليكم السلام
يمكن عمل ذلك بأكثر من طريقة، لمعرفة اسهلها ابحث في الانترنت عن
Copy Hook Handlers