CreateToolhelp32Snapshot(TH32CS_SNAPMODULE,...) vs ZwQuerySystemInf

Тема в разделе "WASM.WIN32", создана пользователем UTeX, 20 ноя 2007.

  1. RamMerLabs

    RamMerLabs Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 сен 2006
    Сообщения:
    1.426
    да ну?
     
  2. nester7

    nester7 New Member

    Публикаций:
    0
    Регистрация:
    5 дек 2003
    Сообщения:
    720
    Адрес:
    Russia
    Ога, оч интересно почему это очень не надежный способ, учитывая что именно им
    виндовый загрузчик и проверяет не загружен ли модуль уже в процесс перед его
    загрузкой, по крайней мере под win2k (См. LdrpCheckForLoadedDll), но сомневаюсь,
    что в XP, Vista что-то координально изменилось.
     
  3. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Стоит изменить PEB.Ldr и всё накроется, особенно для чужих процессов.
     
  4. nester7

    nester7 New Member

    Публикаций:
    0
    Регистрация:
    5 дек 2003
    Сообщения:
    720
    Адрес:
    Russia
    Ипть. Предлагаешь кодить на голом WinAPI? )
    Ничего не измениться, просто в программы добавиться проверка на GetVesionEx()
    и всё, как было есть и будет с ядрами, которые меняются гораздо чаще ntdll-прослойка,
    о чем и говорил volodya в упаковщиках, говоря о разных уровнях недокументированности.

    Короче, не сгущай краски, всё ок :)
     
  5. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Я сторонник голого, чистого, базонезависимого NativeAPI.
    К примеру функция LdrLockLoaderLock вводит загрузчик в критическую секцию, поток, который затем вызовет LdrLoadDll(ламерский LoadLibrary) зависнет...
    Кстати ZwFreeVirtualMemory с адресом PEB.Ldr - класно!
     
  6. nester7

    nester7 New Member

    Публикаций:
    0
    Регистрация:
    5 дек 2003
    Сообщения:
    720
    Адрес:
    Russia
    Код (Text):
    1. функция LdrLockLoaderLock вводит загрузчик в критическую секцию, поток, который затем вызовет LdrLoadDll(ламерский LoadLibrary) зависнет
    Если сделать вот так: MessageBoxA(NULL, "Yo!", NULL, MB_OK), то окошко появится :)
    Тыачом?
     
  7. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Я об действиях в чужих процессах.
     
  8. nester7

    nester7 New Member

    Публикаций:
    0
    Регистрация:
    5 дек 2003
    Сообщения:
    720
    Адрес:
    Russia
    А в своих в туда очень редко кто лезет руками.
    Лана, будем считать, что разобрались )
     
  9. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    А... Так вы об своих? Со своими просто, так не интересно.