الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Process Detective V1.0

مغلق
بدأه GamingMasteR في 3 فبراير 2008 · 11 رد · 2,936 مشاهدة · في لغة Assembly لأنظمة 16, 32, 64 بت
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اقتباس
قمت بعمل هذا البرنامج قتلا للملل ... <_<

البرنامج به بعض الخصائص ليست مجتمعة في اداة اخرى واحدة , في الحقيقة اردت ان اضيف بعض الخواص الأخرى لكن لم استطع الصبر أكثر من ذلك .

إذا وجدت اي bug في البرنامج فأخبرني في هذا الموضوع كي يتم اصلاحه ...

البرنامج تم تصميمه وتجريبه على XP SP2 ويعمل بمستوى الـuser-mode فلا خوف منه على النظام .

برجاء عدم تغيير الكود ... اذا اردت اضافة شئ ما فاصبر حتى النسخة القادمة !

ملحوظة : الكود لا اقتباسات فيه , عدا دالتين تخص الـSubclassing اقتبستهم من Iczelion وقد اشرت الى ذلك في بداية كل منهم ... ايضا بعض دوال التحويل العددي من مكتبة masm32 مثل htodw-atodw غير ذلك فلا .

خواص البرنامج :

1-Terminate Process.
2-Debug Process.
3-Set Priority.
4-Enum Process Memory Region :
	1-Change Memory Region Protection Code.
	2-Zero Memory Region.
	3-Free Memory Region.
	4-Dump Memory Region into File.
	5-View Memory Region in Hex.
5-Enum Process Modules :
	1-Inject DLL.
	2-Unload DLL.
6-View Specified Memory Piece in hex.
7-Dump Specified Memory Piece into File.

صورة :

viewug1.png

أي استفسار عن جزئيات معينة من الكود فأنا تحت امركم .

سلام

Process_Detective_v1.0.rar

تم تعديل هذه المشاركة بواسطة GamingMasteR في 3 فبراير 2008 في 09:57

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#2

أكثر من رااااائع، أيه الاحتراف دا كله

رجعت زمن محترفين الاسمبلى تانى :)

Eng. Usama El-Mokadem

Nothing is impossible, the word impossible itself says that: I M - Possible

#3

كنت قد كتبت عن هذا الموضوع من فترة

/index.ph...980&hl=hook

يوم ترجمت المقال لم اكن اعرف اي شي عن الموضوع

أضاعوني وأي فتى أضاعـوا * * * ليـوم كــريهـة وســـداد ثغــــر

وخـــــلونـي ومعتـرك المنايـا * * * وقد شـــرعوا أسنــتهم لنحـري

كأني لم أكــــــن فيهـم وسيطـا * * * ولم تك نســبتي في آل عمــرو

أجرر في الجـــوامع كـل يـوم * * * ألا لله مظــــلمتـي وهـصـــري

عسى الملك المجيب لمن دعاه * * * سينجيني فيعلم كيــف شكـري

فأجـــزي بالكرامـة أهـل ودي * * * وأجزي بالضـغينة أهل ضري

منتديات الرياضيات العربية

#4

بالفعل قرأت مقالتك الرائعة منذ فترة , لكني لا استخدم أي hook , فقط دوال API

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#5

ما شاء الله يا GM لم أكن أعلم أنك كتبت هذا البرنامج -- يبدو أني بعيد عن الواقع تماماً :clapping:

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#6

GM. عند النقر على cancel في partial dump تظهر نافذة الحفظ أيضاً.

عمل رائع :)

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#7

برنامج جيد لكن لا أرى إضافات جديدة عما هو متواجد حالياً من البرامج .

الشئ الرائع هو أن الكود مكتوب كاملاً بالأسمبلي ..

أرجو ألا يفهم رائي هذا بانه نوع من التقليل بشأن الموضوع . فقط أردت رؤية شئ جديد خصوصاً أن ما في الكود تم ذكر جزء منه في مواضيع قديمة . أعني أنه يجب إضافة أشياء جديدة للبرنامج ليصبح مضاهيا للبرامج الموجودة على الساحة في هذا المجال ..

ملحوظات على الكود :

mov SystemInformation,FUNC(VirtualAlloc,NULL,10000h,MEM_COMMIT,PAGE_READWRITE)
	push NULL
	push 10000h
	push [SystemInformation]
	push SystemProcessesAndThreadsInformation
	call [ZwQuerySystemInformation]

انت تحجز حيز من الذاكرة قد يكون كبيراً جداً وبذا تبذر في الذاكرة :) وقد يكون صغيراً جداً لا يكفي لخزن المعلومات المراد الحصول عليها .

الطريقة الأفضل هي إستدعاء ZwQuerySystemInformation بحجز ذاكرة صغيرة(4byte مثلا ) و ارجاع حجم الذاكرة المراد الى العنصر الرابع في الدالة ومن ثم يتم حجز الحجم المطلوب بواسطة VirtualAlloc وبعدها يتم إستدعاء الدالة ZwQuerySystemInformation مرة أخرى .

أرى ان برنامجك لا يحصل على العملية ذات الإسم System Idle Process والتي PID لها هو 0 .

السبب :

من نظرة على الكود أعتقد أن السبب في هذا الكود :

add esi,[esi].NextEntryDelta

سأحاول التأكد من ذلك ..

هذا هي الملحوظات التي أنتبهت لها بعد تجربة سريعة للبرنامج وإطلاع على أجزاء من الكود ..

إن كان ستكون هناك مناقشة حول الكود او هنا فرصة للتطوير فيه فسأكون سعيداً بالمشاركة إن سمح لي بذلك ..

سبب التعديل : الأسطر الثلاثة الأخيرة كانت موضوعة ضمن سطر الكود

تم تعديل هذه المشاركة بواسطة cipher في 3 فبراير 2008 في 17:38

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#8
اقتباس
عند النقر على cancel في partial dump تظهر نافذة الحفظ أيضاً.

سيتم تصليح هذا ان شاء الله ...

اقتباس
برنامج جيد لكن لا أرى إضافات جديدة عما هو متواجد حالياً من البرامج

انا لما قلت "ليست مجتمعة في اداة اخرى واحدة" كنت اقصد ككود مفتوح المصدر وليس اداة , فهذه لا تضاهي اي من الادوات التي بالمجال .

اقتباس
انت تحجز حيز من الذاكرة قد يكون كبيراً جداً وبذا تبذر في الذاكرة ....

سأقوم بذلك , جزاك الله خيرا

اقتباس
أرى ان برنامجك لا يحصل على العملية ذات الإسم System Idle Process والتي PID لها هو 0 .

أعرف ذلك وهو عن قصد ! لأنه لا فائدة من هذه العملية الا اسمها فقط ,اقصد لا يمكن اجراء اشياء اخرى عليها .

-----------------------

اقوم الان بعمل تغييرات في الشكل واضيف خاصية جديدة ثم ساقوم بطرح التحديث ... شكرا على المساعدة والافكار :thumb_up:

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#9

الحمد لله أنه لم يفهم قصدي بصورة مغايرة لما أردت ..

بإمكانك إضافة بقية معلومات الـ process التي يوفرها Task Manager التابع للنظام ...

ماذا عن الحصول على Process CPU usage , ستجد الكثير من النقاشات حولها في النت ..

مرجع Windows NT/2000 Native API By Gary Nebbett سيفيدك كثيراً لإضافة الكثير من المميزات للبرنامج ..

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#10

السلام عليكم إخواني.

بالفعل عمل جيد أخي GamingMasteR بارك الله فيك, نادرا ما نجد مثل هذه الأعمال مفتوحة المصدر, مرة أخرى جزاك الله خيرا أخي الحبيب.

#11

السلام عليكم

نسخة جديدة Process Detective v1.1

تم عمل فورم لكل خاصية (Tapped Dialogs)

تم اصلاح بعض الاخطاء

تم اضافة خاصية Memory Hacker

فلاش لشرح كيفية استخدام الخاصية

برجاء ابلاغي باي خطأ او ميزة جديدة يمكن اضافتها

صورة البرنامج بالوجه الجديد :

showix4.png

Process_Detective.rar

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#12

شكراً لك أستاذي الكريم

و جزاك الله خيراً

هذا الموضوع مغلق.

مواضيع مشابهة