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

[ تمت الإجابة ]قراءة محتوى ال Malware Process

مغلق
بدأه Yousof في 18 مارس 2006 · 9 رد · 2,264 مشاهدة · في أرشيف قسم Windows APIs
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ..

لدي استفسار و أرجو التفاعل ... -_-

لو فرضنا أني ركبت تروجان في كمبيوتر (أ) اسمه trojan.exe، و أستطيع أن أتحكم به عن بعد من كمبيوتر (ب) باعطائه أوامر يقوم بتنفيذها، مثلا:

أمر ايجاد سعة الذاكره (RAM) و سرعة المعالج (CPU) و اسم الكمبيوتر و رقم ال IP للكمبيوتر (أ)

أمر رصد حركات مستخدم كمبيوتر (أ) من كتابه و طباعه (مثلا اسم المستخدم و رقمه السري) و استخدام البرامج و غيرها

أمر DoS (Denial of Servic) command عن طريق ال PING أو ال SYN FLOOD أو UDP FLOOD

باعتقادي أن التروجان trojan.exe سيقوم بالتفاعل مع الرجيستري لتنفيذ هذه الأوامر، مثلا لو قمت باعطائه أمر ايجاد سرعة المعالج سيقوم بالذهاب الى الرجستري و ايجاد هذا الرقم ثم ارساله الى كمبيوتر (ب)

السؤال هو:

هل أستطيع عن طريق دوال ال API معرفة المعلومات التي يسترجعها التروجان trojan.exe من الرجيستري؟

ان كان الجواب نعم، عن طريق أي داله؟

ان كان الجواب لا؟ هل هناك طريقه لرصد هذه المعلومات

B) ننتظر تفاعلكم ..

تم تعديل هذه المشاركة بواسطة Yousof في 18 مارس 2006 في 03:08

#2

أفا .. و لا رد :(

وين العباقره و المتخصصين *-)

#3

ما شاء الله ..

85 زياره و لا رد واحد :rolleyes:

#4
اقتباس
هل أستطيع عن طريق دوال ال API معرفة المعلومات التي يسترجعها التروجان trojan.exe من الرجيستري؟

ان كان الجواب نعم، عن طريق أي داله؟

عن طريق عمل hook لدوال التعامل مع الريجيستري

اقتباس
وين العباقره و المتخصصين

انتظرهم , ان شاء الله زمانهم جايين :D

#5

السلام عليكم ورحمة الله

أولا أخي يوسف عنوان الموضوع غير متوافق مع محتوى الموضوع تماما

ثانيا Registry ليست المكان الوحيد للحصول على المعلومات التي ذكرتها، و يمكن للبرنامج الحصول عليها بطرق أخرى

ثالثا لوبحثت في المنتدى لوجت أشياء كثيرة تفيدك فيما تريد...

رابعا...جرب المرفق، سيفيدك لو عرفت كيف تستعمله :D

وكما قال أخي Asm4All إنتظر..العباقرة...التي لديها وقت لفهم الأسئلة ثم الإجابة عليها

والسلام عليكم ورحمة الله

kerberos.zip

d4baa0.gif
#6

السلام عليكم شكرا لتفاعلكم مع الموضوع

Asm4all بالنسبة لدوال ال API فانا جديد عليها و قد قمت بقراءة بعض مواضيع المنتدى و خاصة موضوع الاخ الشمري

و هذه المراجع:

http://www.geocities.com/SiliconValley/2072/prgw32rg.htm

http://www.codersource.net/win32_registry_operations.html

http://www.functionx.com/win32/

http://www.hal-pc.org/~johnnie2/windows.html

http://www.winprog.org/tutorial/

لمعرفة المزيد و التعمق فيها

الأخ DeltaAziz بالنسبة لعنوان الموضوع فانا آسف على ذلك

أما بالنسبة الى:

DeltaAziz كتب:

ثانيا Registry ليست المكان الوحيد للحصول على المعلومات التي ذكرتها، و يمكن للبرنامج الحصول عليها بطرق أخرى

هل من الممكن التوضيح أكثر?

ماأردت معرفته هو هل بامكاني استخدام دوال ال API لمعرفة ما يقوم به التروجان او اي Process آخر قبل ان اتعمق كثيرا في هذه المواضيع

أيضا، انا لا اسعى الى طلب الحل وانما المناقشة فقط فربما هناك خفايا أجهلها و لا اضعها في الحسبان .. وقد قلت باعتقادي:

Yousof كتب:
باعتقادي أن التروجان trojan.exe سيقوم بالتفاعل مع الرجيستري لتنفيذ هذه الأوامر، مثلا لو قمت باعطائه أمر ايجاد سرعة المعالج سيقوم بالذهاب الى الرجستري و ايجاد هذا الرقم ثم ارساله الى كمبيوتر (ب)

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

في الحقيقه قد نصبت احد البرامج - Trojan (مع برنامج Regmon لمعرفة ما يقوم به التروجان ) في كمبيوتر و اقوم بالتحكم به عن طريق كمبيوتر ثاني و قد لاحظت انه عند اعطائي اوامر للتروجان فانني ألاحظ تغييرا يحدث في ال Regmon و بما ان ال Regmon مسؤول عن Registry Monitoring فيعني ان التروجان يحدث تغييرات في ال Registry

ان كانت ملاحظاتي خاطئه فأرجو ارشادي و تصحيح الخطأ

شكرا مرة أخرى و أتمنى تفاعلكم

#7

حتى الأن لم أفهم ما تريد بالظبط

معرفة ماهي المعلومات التي يرسلها ؟

أم معرفة طريقة حصوله على المعلومات ؟

أم معرفة ما يقوم به البرنامج

d4baa0.gif
#8
DeltaAziz كتب:

حتى الأن لم أفهم ما تريد بالظبط

معرفة ماهي المعلومات التي يرسلها ؟

تقريبا، المعلومات التي قام باخذها من الرجستري

أم معرفة طريقة حصوله على المعلومات ؟

No, Not this

أم معرفة ما يقوم به البرنامج

Neither this also

الاخ DeltaAziz

اولا هل تتفق معي بأنه عند اعطاء ال Trojan امر البحث عن معلومات تخص الكمبيوتر, يقوم بأخذ معلومات من الكمبيوتر عن طريق البحث في الرجستري ثم يرسلها

أو كما تفضلت ان الرجستري ليس المكان الوحيد الذي يسترجع منه المعلومات ولكن لنفترض انه يقوم باسترجاع المعلومات من الرجستري, هل استطيع معرفة ما هي المعلومات التي استرجعها? و كيف?

مثال للتوضيح لو استخدمت برنامج ال Tcpdump فانك تستطيع معرفة المعلومات الخارجه من كل كمبيوتر في ال Local Area Network-LAN و لكن لا تستطيع معرفة ما يحدث في الكمبيوتر نفسه

فكرت باستخدام دوال ال API لمعرفة ما استرجعه ال Trojan من الرجستري و لكني لست متأكدا من ذلك

ارجو انني اوصلت المعلومه بشكل صحيح

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

#9

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

وللحصول مثلا على سرعة المعالج , يمكنك قياسها يدويا بهذا الشكل

#include <windows.h>
#include <iostream>
using namespace std;
inline unsigned long long GetCPUTick() {
  _asm rdtsc;
}
DWORD GetCPUSpeed(void) {
  const DWORD DELAYTIME = 125;
  unsigned long long Timer;
  DWORD PriorityClass = GetPriorityClass(GetCurrentProcess());
  int ThreadPriority = GetThreadPriority(GetCurrentThread());
  SetPriorityClass(GetCurrentProcess(), REALTIME_PRIORITY_CLASS);
  SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);
  Sleep(1);
  Timer = GetCPUTick();
  Sleep(DELAYTIME);
  Timer = GetCPUTick() - Timer;
  SetThreadPriority(GetCurrentThread(), ThreadPriority);
  SetPriorityClass(GetCurrentProcess(), PriorityClass);
  return Timer / (1000 * DELAYTIME);
}
void main(){
  cout << "  CPU Speed : " << GetCPUSpeed() << " MHz." << endl;
}

من ناحية اخرى , انا اقصد hooking API Functions اصطياد دوال الـ API وهي عملية ليست بسهولة استخدام دوال الـ API, صراحة المنتدى يفتقر الى هذا النوع من المعلومات , ولكن ان شاء الله في الفتره القادمة نتحدث في مثل هذه المواضيع بإسهاب

#10
Yousof كتب:
ولكن لنفترض انه يقوم باسترجاع المعلومات من الرجستري, هل استطيع معرفة ما هي المعلومات التي استرجعها? و كيف?

هناك عدة طرق، أسهلها RegMon

تقوم بحفظ التغييرات في Regmon و تحذف كل الأسطر غير المتعلقة ببرنامجك

و ا لناتج و اضح :P

طريقة أخرى هي النظر ل ImportTable

و تعرف الدوال المستوردة من طرف البرنامج

سواء تظع لها BreakPoint في برنامج التنقيح

أو تقوم بعمل DLL injection بحيث يستدعي البرنامج الدالة في مكتبتك و تتلقى كل براميتر بما فيها مكان مفتاح Registry المقروءة

طريق أخرى ربما تنفع هي البحث على كل String الموجودة بالملف،

فلربما تجد المفتاح :P من يدري

طبعا تفك ضغط الملف الذي حتما مشفر أو تعمل له attach

لا تنسى هناك طرق أخرى

وبالتوفيق

d4baa0.gif

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

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