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

كيف أراقب النضام

مغلق
بدأه mossa في 20 مارس 2005 · 7 رد · 798 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

عندي مشروع Anti Virus وأود أن أضع ميزة

المراقبة لملفات النظام

ومراقبة الريجستري

والمنافذ المفتوحة

أنا أسأل عن كيفية عمل ذلك

#2

كل أنواع المراقبة يجب أن تدخل بها دوال التزامن

مثل الدالة WaitForMultipleObjects

لها مئة إستخدام , وهنا شرحنا مثال لمراقبة القرص الصلب

/index.php?showtopic=57429

يمكن إستخدام أغلب دوال التزامن بنفس الطريقة

مثل الدالة WaitCommEvent

لمراقبة منافذ الجهاز ( مثل المودم وبقية منافذ الهاردوير )

أما عن مراقبة منافذ الشبكة فهنالك عدة طرق , مثلاً برنامج الزون الارم يستخدم دوال rpc

تجدها في ملف الهدر rpc.h

والطريقة الثانية إستخدام الحزم

أغلبها موضح هنا

/index.php?showtopic=58553

وبالتوفيق ,,,

1

http://www.jaascois.com

*************************************************

مجموعة مواضيع - إحتراف البرمجة -

ّ~~~~~~~~~~~~~~~~~~~~~~

البرمجة المتقدمة & الهندسة العكسية & برمجة وأمن الأنظمة

/index.php?showtopic=45002

آخر المواضيع :

+- تحليل جرائم الكمبيوتر -+

أنظمة اليونكس(Solaris,HP, AIX,SCO)وانواع المعالجات

ثغرة SMS لأجهزة الجوال Siemens 3568i !

أخطاء وثغرات البرامج العربية !!!

سلسلة مواضيع - أمن وحماية مواقع الويب -

E البرمجة المتقدمة X للملفات التنفيذية E

سلسلة مواضيع ثغرات الأنظمة وإختراق الأجهزة

**************************************************

<span style='font-size:14pt;line-height:100%'>الإرادة تحـــقق السيـــادة</span>

**************************************************

#3

أشكرك على هذا الرد القوي والسريع والدعم

على كذا أبشر بالمشاريع الجادة ان شاء الله

#4
اقتباس
مثل الدالة WaitCommEvent

لمراقبة منافذ الجهاز ( مثل المودم وبقية منافذ الهاردوير )

المشكلة هنا كما أعرف أننا نحتاج ل handle من نوع الجهاز نفسه لنستمع إليه , ولو كان مثلا الموديم يعمل وأردنا فتح الموديم بالدالة CreateFile لنحصل على Handle فلن يمكننا فعل ذلك حيث الموديم يقوم بفتح الجهاز بشكل حصري ولايمكن الحصول على Handle منه . وإلا لإستطعنا أن نحصل على البيانات التي تمر على الموديم بسهولة كبيرة .

هل يوجد حل لهذه المشكلة ؟

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#5

مثلا هذا الكود سيسبب مشكلة في حال كان المنفذ com1 مفتوحا !

#include <windows.h>
#include <assert.h>
#include <stdio.h>

void main( )
{
    HANDLE hCom;
    OVERLAPPED o;
    BOOL fSuccess;
    DWORD dwEvtMask;

    hCom = CreateFile( "COM1",
        GENERIC_READ | GENERIC_WRITE,
        0,    // exclusive access 
        NULL, // default security attributes 
        OPEN_EXISTING,
        FILE_FLAG_OVERLAPPED,
        NULL 
        );

    if (hCom == INVALID_HANDLE_VALUE) 
    {
        // Handle the error. 
        printf("CreateFile failed with error %d.\n", GetLastError());
        return;
    }

    // Set the event mask. 

    fSuccess = SetCommMask(hCom, EV_CTS | EV_DSR);

    if (!fSuccess) 
    {
        // Handle the error. 
        printf("SetCommMask failed with error %d.\n", GetLastError());
        return;
    }

    // Create an event object for use by WaitCommEvent. 

    o.hEvent = CreateEvent(
        NULL,   // default security attributes 
        FALSE,  // auto reset event 
        FALSE,  // not signaled 
        NULL    // no name
  );
    

    // Intialize the rest of the OVERLAPPED structure to zero.
    o.Internal = 0;
    o.InternalHigh = 0;
    o.Offset = 0;
    o.OffsetHigh = 0;

    assert(o.hEvent);

    if (WaitCommEvent(hCom, &dwEvtMask, &o)) 
    {
        if (dwEvtMask & EV_DSR) 
        {
             // To do.
        }

        if (dwEvtMask & EV_CTS) 
        {
            // To do. 
        }
    }
    else
    {
        DWORD dwRet = GetLastError();
        if( ERROR_IO_PENDING == dwRet)
        {
            printf("I/O is pending...\n");

            // To do.
        }
        else 
            printf("Wait failed with error %d.\n", GetLastError());
    }
}

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#6

لا أعلم

ولكن أعني بالمنافذ المنافذ التي تستخدمها trojan

يعني أقوم بعرض المنافذ والبرامج التي قامت بفتحها

بحيث يكون عندي قائمة بالمنافذ وأسماء trojan ويمكنني إغلاق المنافذ

لكن كيف أعلم أن برنامجا معين قام بطلب إتصال؟

وكيف أحمي الجهاز قبل تنزيل المرفقات؟ (قد أعرف إذا راقبت القرص الصلب من حيث إنشاء الملفات)

#7
اقتباس
فلن يمكننا فعل ذلك حيث الموديم يقوم بفتح الجهاز بشكل حصري ولايمكن الحصول على Handle منه . وإلا لإستطعنا أن نحصل على البيانات التي تمر على الموديم بسهولة كبيرة .

هل يوجد حل لهذه المشكلة ؟

يوجد أكثر من حل ؟!

الحل المستخدم في برامج مراقبة المنافذ هو كالتالي :

كتابة ملف يعمل في مستوى النظام - ملفات ذات الإمتداد sys أو vxd

هذا الملف وضيفتة مراقبة أو قرائة مخزن البيانات للبرنامج المسؤل عن تشغيل المودم

والشغلة بسيطة وليست معقدة ,, فقط تحتاج لصلاحيات الوصول لمخزن البيانات

سأبحث عن كود أو مثال يتحدث عن هذا الموضوع ,,

الحل الثاني:

اقتباس
مثلا هذا الكود سيسبب مشكلة في حال كان المنفذ com1 مفتوحا

هذا هو الحل ,, الكود الذي كتبت , ولكن تحتاج إقاف البرنامج الحالي الذي يستخدم المنفذ

والطريقة هي بتغير القيم في الريجستري لتحدد أنت البرنامج المسؤل عن كل أحداث المودم

وفي هذة الحالة ستضطر لكتابة برنامج ضخم يتحكم في كل الأحداث

ولذلك تجد هذا الحل مستبعد في برامج المراقبة - ويطبق في برامج تطوير الإتصالات

-

اقتباس
لكن كيف أعلم أن برنامجا معين قام بطلب إتصال؟

تقصد فتح منفذ ,, لا أعتقد أنة توجد طريقة غير توابع RPC المستخدمة في الزون آلارم وغيرة

أما إذا أردت البحث عن المنافذ المفتوحة

أسهل طريقة هي الدالة listen ويمرر لها رقم المنفذ - إذا أعادت خطأ يعني مشغول أو مفتوح

-

-

http://www.jaascois.com

*************************************************

مجموعة مواضيع - إحتراف البرمجة -

ّ~~~~~~~~~~~~~~~~~~~~~~

البرمجة المتقدمة & الهندسة العكسية & برمجة وأمن الأنظمة

/index.php?showtopic=45002

آخر المواضيع :

+- تحليل جرائم الكمبيوتر -+

أنظمة اليونكس(Solaris,HP, AIX,SCO)وانواع المعالجات

ثغرة SMS لأجهزة الجوال Siemens 3568i !

أخطاء وثغرات البرامج العربية !!!

سلسلة مواضيع - أمن وحماية مواقع الويب -

E البرمجة المتقدمة X للملفات التنفيذية E

سلسلة مواضيع ثغرات الأنظمة وإختراق الأجهزة

**************************************************

<span style='font-size:14pt;line-height:100%'>الإرادة تحـــقق السيـــادة</span>

**************************************************

#8

أشكرك على مجهودك الكبير في خدمة هذا المنتدى

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

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