"фича" OllyDBG

Тема в разделе "WASM.ZEN", создана пользователем Cr4sh, 26 мар 2007.

  1. Cr4sh

    Cr4sh New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2006
    Сообщения:
    668
    сегодня случайно обнаружил интиресную штуку, которую можно использовать как простой антиотладочный приём:
    если из списков загруженых модулей процесса удалить инфу о главном модуле, то такой процесс становится невидимым для ольки, вобщем код лучше всяких слов =)

    Код (Text):
    1. #include <windows.h>
    2. #include "ntdll.h"
    3.  
    4. #pragma comment(linker,"/ENTRY:xWinMain")
    5.  
    6. PVOID GetPEB(void)
    7. {
    8.     PVOID PebBase = NULL;
    9.    
    10.     __asm
    11.     {
    12.         push    eax
    13.         mov     eax,FS:[0x30]
    14.         mov     PebBase,eax
    15.         pop     eax
    16.     }
    17.  
    18.     return PebBase;
    19. }
    20.  
    21. void CleanLoadModuleList(PLIST_ENTRY pModuleListHead)
    22. {
    23.     PLIST_ENTRY pModuleListPtr = pModuleListHead->Flink;
    24.  
    25.     (pModuleListPtr->Blink)->Flink = pModuleListPtr->Flink;
    26.     (pModuleListPtr->Flink)->Blink = pModuleListPtr->Blink;
    27. }
    28.  
    29. void FuckupPEB(void)
    30. {
    31.     PPEB pPeb = (PPEB)GetPEB();
    32.  
    33.     ZeroMemory(pPeb->ProcessParameters->CommandLine.Buffer, pPeb->ProcessParameters->CommandLine.Length);
    34.     ZeroMemory(pPeb->ProcessParameters->ImagePathName.Buffer, pPeb->ProcessParameters->ImagePathName.Length);
    35.  
    36.     CleanLoadModuleList(&pPeb->Ldr->ModuleListMemoryOrder);
    37.     CleanLoadModuleList(&pPeb->Ldr->ModuleListInitOrder);
    38.     CleanLoadModuleList(&pPeb->Ldr->ModuleListLoadOrder);
    39. }
    40.  
    41. int APIENTRY xWinMain(void)
    42. {
    43.     FuckupPEB();
    44.  
    45.     MessageBox(0, "try to attach to this process in OllyDBG", "hek =/", 0);
    46.  
    47.     return 0;
    48. }
    собраный бинарник
    http://cr4sh.0x48k.cc/olly_fun.exe

    UPD: не ругайте, если боян =)
     
  2. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    Cr4sh
    Вариант. Ещё интересен трюк с удалением потока из-под отладки.