خروجی پردازش‌ها

اصولا فرمت خروجي جعبه شن پارسا سازگار با زبان C++ و کاملا منطبق با طريقه فراخواني اين توابع مي‌باشد. به عبارتي مي‌توان گفت اين جعبه شن قادر به نمايش کد سطح بالاي برنامه تحت تحليل مي‌باشد. در زير توابعي که در خروجي پردازش‌ها نمايش داده مي‌شود، به همراه معنا و پارامتر‌هاي آن ارائه شده است. خواندن اين بخش براي کساني که آشنايي کافي با برنامه‌نويسي Visual C++ (Win32) ندارند، الزامي است.

  1. فرمت خروجي تابع LoadLibrary: از اين تابع براي بارگذاري يک کتابخانه در حافظه مجازي پردازش مورد استفاده قرار مي‌گيرد. به عنوان مثال خروجي زير نشان مي‌دهد که برنامه تحت تحليل کتابخانه cabcatq.dll را بارگذاري کرده است.

    //PID=5652,TID=6524,Time=81365387314
    LoadLibrary(L"C:\\Windows\\System32\\clbcatq.dll");

    براي کسب اطلاعات بيشتر راجع به اين تابع مراجعه کنيد به:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms684175%28v=vs.85%29.aspx

  2. فرمت خروجي تابع StartService: از اين تابع براي شروع يک سرويس در ويندوز استفاده مي‌شود. همانطور که مي‌دانيد سرويس در ويندوز، پردازش يا درايوري است که در پس زمينه، و بدون توجه به لاگين بودن کاربر اجرا مي‌گردد. به عنوان مثال خروجي زير نشان مي‌دهد که يک درايور که در مسير C:\MyDriver1.sys وجود دارد، در سيستم بارگذاري شده است.

    //PID=0,TID=3928,Time=82870555166
    StartService(hService,0,NULL); //hSerivce points to: C:\MyDriver1.sys

    با توجه به اينکه مديريت سرويس‌ها در داخل خود هسته، و به کمک پردازش Services.exe انجام مي‌گيرد، اين تابع محدود به يک پردازش خاص نيست، لذا ممکن است برنامه تحت تحليل اين درايور را بارگذاري نکرده باشد، و برنامه‌هاي ديگر اين کار را کرده باشند. البته اين تابع علاوه بر بخش تحليل پردازش‌ها، در بخش تحليل با استفاده از تزريق کتابخانه نيز ارائه مي‌گردد.

    جهت کسب اطلاعات بيشتر راجع به اين تابع، مراجعه کنيد به:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms686321%28v=vs.85%29.aspx

  3. فرمت خروجي تابع CreateThread: از اين تابع براي ساخت يک نخ جديد استفاده مي‌شود. به عنوان مثال خروجي زير نشان مي‌دهد پردازش داراي شماره شناسه 3516، يک نخ جديد با شماره شناسه 5352 ساخته است.

    //PID=3516,TID=6256,Time=11126593862
    CreateThread(?,?,?,?,&ThreadId); //ThreadId=5352

    براي اطلاعات بيشتر راجع به اين تابع مراجعه کنيد به:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms682453%28v=vs.85%29.aspx

  4. فرمت خروجي تابع ExitThread: اين تابع براي بستن يک نخ استفاده مي‌شود. به عنوان مثال خروجي زير نشان مي‌دهد که نخ با شماره شناسه 6892 متعلق به پردازش 3516 بسته شده است.

    //PID=3516,TID=6892,Time=11399266486
    ExitThread(?);

    براي کسب اطلاعات بيشتر راجع به اين تابع مراجعه کنيد به:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms682659%28v=vs.85%29.aspx

  5. فرمت خروجي تابع CreateRemoteThread: با استفاده از اين تابع مي‌توان يک نخ در درون يک پردازش ديگر ساخت. خروجي زير نشان مي‌دهد که پردازش تحت تحليل يک نخ جديد با شماره شناسه 7160 در درون پردازش Comodo.exe ساخته است.

    //PID=3344,TID=6568,Time=12146897070
    CreateRemoteThread(hProc,?,?,?,?,?,&hThread); //hProc Points to: C:\Comodo.exe, hThread Points to thread id: 7160

    اطلاعات بيشتر راجع به اين تابع در لينک زير موجود است:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms682437%28v=vs.85%29.aspx

  6. فرمت خروجي تابع CreateProcess: از اين تابع براي ساخت يک پردازش جديد استفاده مي‌شود. به عنوان مثال خروجي زير نشان مي‌دهد که برنامه تحت تحليل پردازش notepad.exe را اجرا کرده است.

    //PID=1872,TID=4896,Time=12688407403
    CreateProcess(NULL,L"C:\\Windows\\notepad.exe",?,?,?,?,?,?,&si,&pi); //pi.dwProcessId=7076

    جهت کسب اطلاعات بيشتر راجع به اين تابع مراجعه کنيد به:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms682425%28v=vs.85%29.aspx

  7. فرمت خروجي تابع ExitProcess: از اين تابع براي خروج از پردازش استفاده مي‌شود. به عنوان مثال خروجي زير نشان مي‌دهد که پردازش 5228 که يکي از پردازش‌هاي برنامه تحت تحليل مي‌باشد، بسته شده است.

    //PID=5228,TID=6224,Time=14943516523
    ExitProcess(?);

    اطلاعات بيشتر راجع به اين تابع در لينک زير موجود است:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms682658%28v=vs.85%29.aspx

  8. فرمت خروجي تابع DuplicateHandle: از اين تابع براي کپي کردن يک دستگيره استفاده مي‌شود. به عنوان مثال خروجي زير نشان مي‌دهد که پردازش test.exe دستگيره‌اي به پردازش explorer.exe را از پردازش test2.exe کپي زده است.

    //PID=7848,TID=6704,Time=17801756386
    DuplicateHandle(hSrcProc, hSrcHandle, hTarProc, &hTarHandle, PROCESS_ALL_ACCESS,?,?); //hSrcProc points to C:\test2.exe, hSrcHandle points to C:\Windows\explorer.exe, hTarProc points to C:\test.exe

    جهت کسب اطلاعات بيشتر راجع به اين تابع مراجعه کنيد به:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms724251%28v=vs.85%29.aspx

  9. فرمت خروجي تابع OpenProcess: از اين تابع براي باز کردن يک پردازش و گرفتن دستگيره‌اي به آن استفاده مي‌شود. به عنوان مثال، خروجي زير نشان مي‌دهد که برنامه تحت تحليل پردازش explorer.exe را با دسترسي PROCESS_ALL_ACCESS باز کرده است.

    //PID=6004,TID=1980,Time=15762652729
    OpenProcess(PROCESS_ALL_ACCESS,?,3796); //Process Id 3796 points to: C:\Windows\explorer.exe

    جهت کسب اطلاعات بيشتر راجع به اين تابع مراجعه کنيد به:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms684320%28v=vs.85%29.aspx

  10. فرمت خروجي تابع OpenThread: از اين تابع براي باز کردن يک نخ استفاده مي‌شود. معمولا هدف از باز کردن يک نخ، دريافت اطلاعاتي درباره آن، تغيير Context، يا بستن آن مي‌باشد. به عنوان مثال خروجي زير نشان مي‌دهد که برنامه تحت تحليل نخي با شناسه 7080 را با دسترسي THREAD_ALL_ACCESS‌ باز کرده است.

    //PID=1872,TID=4896,Time=12688407879
    OpenThread(THREAD_ALL_ACCESS,?,7080);

    جهت کسب اطلاعات بيشتر راجع به تابع مراجعه کنيد به:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms684335%28v=vs.85%29.aspx

نمی‌توانید پاسخی پیدا کنید؟ آیا به دنبال مقاله خاصی هستید که در سؤالات عمومی قرار دارد؟ فقط پوشه ها و دسته بندی های مختلف مربوطه را مرور کنید و سپس مقاله مورد نظر خود را پیدا خواهید کرد.
تمامی حقوق مادی و معنوی این سایت متعلق به شرکت مهندسی دنیای فناوری امن ویرا می‌باشد.