Сейчас на форуме: Slinger (+6 невидимых)

 eXeL@B —› Основной форум —› брэйкпоинт с помощью DEP
Посл.ответ Сообщение

Ранг: 40.0 (посетитель), 1thx
Активность: 0.030
Статус: Участник

Создано: 19 января 2007 08:22
· Личное сообщение · #1

Давно ещё года 2 назад в процы добавили DEP - предотвращение выполнения данных. Т.е. если память помечена как недоступная для выполения, то будет исключение. Но что-то у меня не получается поймать передачу управления на секцию кода.. пробовал только VirtualProtect с аттрибутом PARE_READWRITE(флаг EXECUTE сбросил естесственно) - никаких исключений что-то не происходит. Подскажите как эту фичу задействовать вообще.. проц intel Core 2 duo естесственно всё это он поддерживает.



Ранг: 22.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 19 января 2007 08:44 · Поправил: wormking
· Личное сообщение · #2

во первых надо чтоб проц аппаратно поддерживал xd/nx бит (а коре 2 поддерживает), во вторых фича работает наскока помню только в PAE




Ранг: 120.6 (ветеран)
Активность: 0.090
Статус: Участник
rootkit developer

Создано: 19 января 2007 08:44
· Личное сообщение · #3

включи еще деп для процесса с помощью ZwSetInformationProcess(ProcessExecuteFlags

На самом деле, винда все страницы (в том числе и EXECUTE_READWRITE) помечает флагом NX, и по исключению либо сбрасывает этот флаг, либо передает исключение программе (зависит от установленого ProcessExecuteFlags и атрибутов страницы)

-----
Скажем дружно - нафиг нужно.





Ранг: 240.5 (наставник)
Активность: 0.190
Статус: Участник
Author of ACKiller

Создано: 19 января 2007 09:12
· Личное сообщение · #4

Ms-Rem пишет:
ProcessExecuteFlags

Гугл находит только -
www.securitylab.ru/analytics/263899.php - на русском
www.uninformed.org/?v=2&a=4&t=txt - то же самое , но на английском




Ранг: 120.6 (ветеран)
Активность: 0.090
Статус: Участник
rootkit developer

Создано: 19 января 2007 09:18
· Личное сообщение · #5

Ну читай, раз находит.

-----
Скажем дружно - нафиг нужно.




Ранг: 40.0 (посетитель), 1thx
Активность: 0.030
Статус: Участник

Создано: 19 января 2007 09:28
· Личное сообщение · #6

Ms-Rem пишет:
На самом деле, винда все страницы (в том числе и EXECUTE_READWRITE) помечает флагом NX, и по исключению либо сбрасывает этот флаг, либо передает исключение программе (зависит от установленого ProcessExecuteFlags и атрибутов страницы)


Мда очень умно сделано, производительность наверное вырастет от этого

По теме, так я не много протупил, при установке флага "использовать DEP для всех программ" и перезагрузке бряки заработали во всех прогах кроме одной которой надо Вот и буду разбираться что же там такое происходит..




Ранг: 120.6 (ветеран)
Активность: 0.090
Статус: Участник
rootkit developer

Создано: 19 января 2007 09:43
· Личное сообщение · #7

dragon пишет:
Мда очень умно сделано, производительность наверное вырастет от этого

Вообще то такое решение позволяет на ходу менять флаги DEP, не трогая атрибуты всех страниц процесса. А производительность оно садить не будет, так как исключение идет только на первом обращении к странице.

-----
Скажем дружно - нафиг нужно.



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


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