День добрый. Ставим бряк, к примеру, на NtCreateFile следующим образом: Код (Text): kd> bp NtCreateFile "$$>< c:\\scr" где c:\scr файл следующего содержания: Код (Text): r $t0 = poi(@esp + 0xc); .printf "%msu \n", @@c++( ((nt!_OBJECT_ATTRIBUTES*) (@$t0))->ObjectName ); g; Но, увы, он выводит далеко не все файлы которые попадают в NtCreateFile, отсуда вполне логичный вопрос, почему так происходит?
rain привет скрипты под windbg это интересно, есть ссылки на литературу? а как определяешь что не все? если + которые в драйверах открываются интересуют то сразу bp nt!NtCreateFile а еще файлы открываются и через NtOpenFile
касательно литературы: хелп по debugging tools канечно + гугл находит пару примеров проверял очень просто вызывая с NtCreateFile, единственное что приходит в голову путного по сабжу это что во время выполнения срабатывает какая-то ошибка в скрипте, например обращение в подкачиваемую память, но данные об ошибке почему-то не выводятся
rainты не понял ты пока не задащь префикс !nt явно, ставишь бряк на ntdll!NtCreateFile ты ловишь все юзермодные вызовы, речь про пул тут причем? потом эти ядерные функции открытия файлов работают на ПАССИВ_ЛЕВЕЛ, подкачиваемый тут не причем если бы нарушение доступа к памяти тут еще было бы подумать где останов был бы и был бы ли вообще
Great в принципе проверить легко насколька интелектуальна обработка скриптов в WinDBg, типа @$t0 = 0; )
0x56 топик в разделе кернела, причём тут юзермод вообще, это раз? Код (Text): kd> bp NtCreateFile kd> bl 0 e 8056d14c 0001 (0001) nt!NtCreateFile если у тебя ставится на ntdll то ясное дело что нада указывать nt. windbg не видет память которая в данный момент выгруженна он показывает знаки вопроса, это два. Great мб мб, мож ты чё подскажешь как заставить windbg погрузить подкачиваемую память если мы уже находимся в нужном АП процесса? способ обратится к ней не предлагать, нада средствами windbg. Я конечно подозреваю что никак, но всегда же лучше уточнить
кстати попутно ещё вопрос, можно ли как-то сделать так чтобы отладчик ставил 0xcc бряк в юзермодное приложение в системной билиотеке с использованием copy on write?