пятница, 6 августа 2010 г.

user32!apfnDispatch

а вот если кто не знал например - есть в природе такой способ перехвата в usermode PEB.KernelCallbackTable, причем насколько я знаю его мало кто детектит
Индексы функций можно посмотреть например тут
Соотв-но написал сегодня проверяльщик - ничего особенного, находит в user32.dll таблицу apfnDispatch и проверяет ее целостность и что PEB.KernelCallbackTable указывает именно на нее.
По ходу дела выяснилось что
  • начиная с windows 7 она живет в секции .rdata
  • можно обойтись без ассемблера - например получить TEB в своем процессе на чистом как слеза комсомолки Visual С++ можно так - под 32битами через __readfsdword(0x18), под 64битами - через __readgsqword(0x30)
  • получить PEB в чужом процессе - через NtQueryInformationProcess с классом ProcessBasicInformation

Комментариев нет:

Отправить комментарий