Сейчас на форуме: asfa, bartolomeo (+7 невидимых)

 eXeL@B —› Вопросы новичков —› Загрузка драйвера
Посл.ответ Сообщение


Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 24 февраля 2012 10:28
· Личное сообщение · #1

Есть приложение, которое грузит драйвер для защиты себя от отладки.
Драйвер хучит инт1, инт3,
ntkrnlpa.exe-->NtOpenProcess, Type: Address change 0x83661A58-->A8362672 [I:\Windows\system32\CPS.sys]
ntkrnlpa.exe-->NtReadVirtualMemory, Type: Address change 0x836AF8EA-->A83626C6 [I:\Windows\system32\CPS.sys]
ntkrnlpa.exe-->NtWriteVirtualMemory, Type: Address change 0x836AF7DA-->A8362742 [I:\Windows\system32\CPS.sys]
Самого драйвера на диске нет.
Это не старфорс!
На интах ничего полезного в приложении нет.
При попытке анхука - летим в бсод.
При запуске в отладчике - летим в бсод.
Хочу попробовать не дать загрузить драйвер.
Какие апи смотреть для загрузки драйвера?




Ранг: 392.8 (мудрец), 108thx
Активность: 0.260.01
Статус: Участник
REVENGE сила, БеХоЦе могила

Создано: 24 февраля 2012 10:38 · Поправил: Maximus
· Личное сообщение · #2

В ольке галочка стоит, можно использовать железные бряки.
А так, например у темиды, я темиды я менял имя драйвера и антиотладка не работала.

только вот апи не помню на память загрузки ((

-----
StarForce и Themida ацтой!




Ранг: 301.4 (мудрец), 194thx
Активность: 0.170.01
Статус: Участник

Создано: 24 февраля 2012 10:39
· Личное сообщение · #3

Если стандартными средствами, то ковырять от ZwLoadDriver, либо работу с сервисами начиная с StartService




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 24 февраля 2012 10:49
· Личное сообщение · #4

StartService - у меня олька не знает такой апи. Или это стандартная процедура, а она вызывает апи?
Если да, то какие.
Кстати на ехе фима, но драйвер вроде не фимовский.
XGameGard.sys
Copyright ? 2009 久之游信息技术(上海)有限公司




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 24 февраля 2012 10:58
· Личное сообщение · #5

Nightshade
advapi32.StartServiceA/W

попробуй ловить CreateFileA/W создание файла драйвера

-----
[nice coder and reverser]





Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 24 февраля 2012 11:00 · Поправил: ARCHANGEL
· Личное сообщение · #6

Если дров установлен со Start параметром SERVICE_SYSTEM_START/SERVICE_BOOT_START/SERVICE_AUTO_START, то он будет подгружаться системой автоматически на этапе загрузки, и получается, что когда нужно начать сеанс отладки, то дров уже в памяти (как в Старфорсе). Тогда никакие ZwLoadDriver вызываться не будут. Т.е. будут, конечно, но бряк вы на них поставить не успеете. Также через реестр драйвер может входить в некую группу, тогда он может подгружаться при загрузке группы, либо другого драйвера из группы. На это будет указывать параметр lpLoadOrderGroup. Примером может служить запуск NTICE, если запускается IceExt.

The startup program uses load ordering groups to load groups of services in a specified order with respect to the other groups. The list of load ordering groups is contained in the following registry value:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ServiceGroupOrder


Т.е. это я к чему - вначале надо найти ключ в реестре, описывающий параметры установки и загрузки драйвера в систему.

The CreateService function creates a service object and installs it in the service control manager database by creating a key with the same name as the service under the following registry key:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services


Вот в этой ветке реестра надо искать. Исходя из тех данных, можно уже делать какие-либо выводы.

Хочу попробовать не дать загрузить драйвер.

Странная логика. По идее, софт с антиотладкой вообще не должен запуститься, если ему не удастся свой дров загрузить.

-----
Stuck to the plan, always think that we would stand up, never ran.





Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 24 февраля 2012 11:21 · Поправил: Nightshade
· Личное сообщение · #7

Я почти на 100% уверен, что дров - самопал без подписи. А значит на х64 он может и не загружаться.
Дров грузится после запуска и выгружается после закрытия проложения.
Можно еще DeviceIoControl похукать попробовать.
ZwLoadDriver, CreateProcess, ShellExecute - бсод
Бряки ставил на функи внутри нтдлл. Т е не на CreateProcess, а на ZwCreateUserProcess
Нашел на advapi32.StartServiceW
Виновника торжества прикрепил.
В дровах не шарю - может кто сказать как его запатчить, чтобы он не хукал ничего?

4b37_24.02.2012_EXELAB.rU.tgz - CPS.rar



Ранг: 65.4 (постоянный), 10thx
Активность: 0.020
Статус: Участник

Создано: 24 февраля 2012 11:51 · Поправил: V0ldemAr
· Личное сообщение · #8

Он вмпротом накрыт ...

PS: Ищи lidt sidt ( load idt / save idt ) инструкции поищи статьи как хучится IDT.
И да дров подписан тоесь скорей всего есть и 64 битная версия дрова но оно неможет хучит IDT из-за PathGuard-а




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 24 февраля 2012 11:56
· Личное сообщение · #9

А ты не думал, что бсод может быть не из-за того, что ты не туда тычешь бряк, а потому, что тычешь бряк в принципе, коль прерывания похуканы?
Тупо не грузить драйвер-это не дать исполниться StartService, ну фейкнув адрес возврата, если он проверяется. Если же дров реально нужен, дров смотреть и править надо, либо свой инструмент написать, проще с дровами.
З.Ы. Подпись там, кстати, есть.




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 24 февраля 2012 13:42
· Личное сообщение · #10

Мне удалось подменить deviceiocontrol. Процесс перестал исчезать из диспетчера. Но при старте ольки с дровом стронга - бсод. Полезных функций кроме скрытия процесса там нет. Как вариант - полностью эмулировать DeviceIoControl.


 eXeL@B —› Вопросы новичков —› Загрузка драйвера
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати