semen Посмотрите в wrk файлы, имеющие отношение к WMI events (Ntwmi.h, Callouts.c), похоже это то, что вам нужно.
semen Можно и через msr, просто тут на форуме видел заметку, что такой перехват может конфликтовать с программами которые сами модифицируют msr,...
А вообще, не совсем понятно, что имеется ввиду под фразой "Код может быть любой и потенциальный шеллкод может юзать напрямую int xx\sysenter для...
Как вариант можно не хачить ядро(во избежании проблем с patchguard'ом), а загрузив свой модуль защиты и указав защищаемое приложение, поставить DR...
>По современным представлениям, только около 4,4 % массы Вселенной составляет обычная барионная материя....
Физики, эксперименты, опыты... теже физики ни в зуб ногой что такое темная материя, темная энергия, и почему все что мы видим своими глазами/с...
В seh-обработчике через изменение структуры context. Шагнуть он может(int 3 => IDT => ядерный диспетчер исключений=> коллбек ядерного отладчика),...
Наверное потому, что подсчет ссылок для длл нужен для концепции неизменных разделяемых данных(при изменении соот-но данные дублируются, через...
Вобщем как я понял, ТС хочет реализовать чтото типа sandbox'a. Вариантов не много: виртуализация, виртуальная машина, хуки системных ф-ций......
semen Изменить DR регистры можно и без GetThreadContext\SetThreadContext.
А хотя достаточно убрать ключ /GS.
Ну можно именно MSVCR90.dll прописать, это не важно )
Вобщем решение - /NODEFAULTLIB и убрать ключ /GS
Вобщем даже в релиз конфигурации компилер пихает в импорт MSVCR90.dll, а затем вызывает: .text:0040119F call...
MirrorBlack [опять гадаю] Сопоставить можно так - проект собран с дебаг конфигурацией(в ней в твою ф-цию компилятор насовал различных проверок, в...
:D Приаттач проект сюда, так гадать можно долго просто.
MirrorBlack Возможно toolhelp api завязано на рантайме, который ты отключил переопределив точку входа.
MirrorBlack >Забыл сказать что студийный манифест я похерил. Вот поэтому и >при запуске EXE винда плачет, что нет MSVCR90.dll
Прочитай что делает GetFileSize, и посмотри как ты её используешь.
Отключаешь RTL так: #pragma comment ( linker, "/ENTRY:EntryPoint" ) Далее пишешь на классическом С, для создания классов используешь функции для...
Имена участников (разделяйте запятой).