Обертка над int 2e, sysenter

Тема в разделе "WASM.WIN32", создана пользователем gloomyraven, 16 апр 2011.

  1. gloomyraven

    gloomyraven Руслан

    Публикаций:
    0
    Регистрация:
    16 апр 2006
    Сообщения:
    288
    Адрес:
    Москва
    Подскажите как сделать сабж для линейки win2k-win7 (x86-x64)
    Цель: вызов ZwQuerySystemInformation непосредственно через системный сервис.

    В windows 7 x64 вызываю ZwQuerySystemInformation: ZwXXX(0x33,
    SystemProcessesAndThreadsInformation,
    pBuffer, cbBuffer, NULL);

    Код (Text):
    1. __declspec(naked) NTSTATUS _cdecl ZwXXX(IN ULONG SdtNumber, ...)
    2. {
    3.     __asm
    4.     {
    5.         mov eax, [esp+4]
    6.         lea edx, [esp+8]
    7.         int 0x2e
    8.         ret
    9.     }
    10. }
    падает, access vialation.

    в win7_64 обертка ZwQuerySystemInformation выглядит так:
    Код (Text):
    1. ///////////////////////////////////////////////////////////////////////////////////
    2. // Системный вызов ZwQuerySystemInformation для Windows 7 x64
    3. __declspec(naked) NTSTATUS NTAPI Win7_64_ZwQuerySystemInformation(UINT, PVOID, ULONG, PULONG)
    4. {
    5.     __asm
    6.     {
    7.         mov     eax, 0x33 // NtQuerySystemInformation
    8.         xor     ecx, ecx
    9.         lea     edx, [esp+4]
    10.  
    11.         //call    large dword ptr fs:0x0C0
    12.         _emit 0x64
    13.         _emit 0xFF
    14.         _emit 0x15
    15.         _emit 0xC0
    16.         _emit 0x00
    17.         _emit 0x00
    18.         _emit 0x00
    19.        
    20.         add     esp, 4
    21.         retn    0x10
    22.     }
    23. }
    Возможно ли сделать универсальную обертку под всю линейку, включая x64?
     
  2. TSS

    TSS New Member

    Публикаций:
    0
    Регистрация:
    13 апр 2009
    Сообщения:
    494
    лол, какие int 0x2e в х64?
     
  3. gloomyraven

    gloomyraven Руслан

    Публикаций:
    0
    Регистрация:
    16 апр 2006
    Сообщения:
    288
    Адрес:
    Москва
    Действительно, ЛОЛ... разобрался )))
     
  4. d2k9

    d2k9 Алексей

    Публикаций:
    0
    Регистрация:
    14 сен 2008
    Сообщения:
    325
    ROFL

    и даже различия AMD/Intel теперь поняты?)