Oleg LOA wrote:

Ну а что теоретически мне помешает дампить память процесса?

И что ты в этом дампе хочешь увидеть?

Все данные, с которыми работает программа, лежат там. Кэш и dpb.

Ну вот и разбирай формироание DPB внутри виртуальной машины в ring0.

Формируется оно всё равно в непрерывный кусок памяти.

Далее тебе нужно будет защищить fetch, prepare и другие функции,
иначе встав на них можно данные брать построчно, либо даже
инициировать выполнение собственного запроса для утягивания
данных.

Ты сначала точки входа туда найди.

Хорошо, допустим все точки экпорта можно защитить автоматом,
но имея под рукой исходник нетрудно будет найти внутренние
функции Яап которые не экспортируются, но будут висеть
в адресном пространстве в исходном виде и будут найдены
по сигнатуре.

Ну и что? Кэш то лежит голый в памяти процесса, что конечно опять можно
закрыть вручную, но сколько ещё таких уязвимостей?

Лежит и что? У тебя это не простой процесс под отладчиком а несколько десятков 
потоков.
> Ты сначала отыщи эти страницы в памяти :-)

 Причём тут количество потоков? Адресное пространство для всех
потоков едино за исключением тлс.
 Если посмотреть на физическую структуру БД, то страницы искать
можно по типичным байтовым последовательностям выровненным на
границу страницы памяти. Плюс скорее всего кэш будет одним
непрерывным куском. Можно легко найти певую странцу БД.

Какие такие другие винсовместимые окружения? Он или винсовместимое и позволяет рабьотать
> с любым ПО работающим под виндой или оно ужне не винсовместимое - ты уж
> определись с терминологией.

 Совместимое - это чисто WinApi. Например эмулятор по Луниксом.

--
--- Home Page http://ok.novgorod.net/ap ---


Ответить