DEP: Sysinternals Process Explorer! = Статический анализ! = BinScope

440
stackoverflowwww

У меня работает исполняемый файл ("heidisql.exe"). Sysinternals Process Explorer показывает "DEP (permanent)"в колонке DEP.

Я проверял двоичный файл статически (среди прочего, используя pestudio ). Все результаты статического анализа говорят о том, что DEP не поддерживается, то есть IMAGE_DLLCHARACTERISTICS_NX_COMPATбит не установлен.

Почему Process Explorer показывает DEP (permanent)тогда?

Чтобы сделать его еще более странным: BinScope (бесплатный инструмент от Microsoft) вообще не перечисляет результат « NXCOMPAT check», ни в «Неудачных проверках», «Не проверенных чеках» или «Пропущенных проверках». Что это должно означать?

0
Это x86 или x64 исполняемый файл? PetSerAl 7 лет назад 0
Это 64-битное приложение для Windows. См. Http://www.heidisql.com/download.php?download=installer. stackoverflowwww 7 лет назад 0
AFAIK, DEP принудительно используется для процессов x64, так как изначально это не был устаревший код DEP, не знающий x64. PetSerAl 7 лет назад 0
Я гуглил, но не смог найти четкого источника для этого. У тебя есть один? Самое близкое, что я смог найти, это: «Это означает, что все 64-разрядные процессы всегда защищены. Единственный способ предотвратить защиту 64-разрядного приложения в DEP - это полностью отключить его». См. Http://www.online-tech-tips.com/windows-xp/disable-turn-off-dep-windows/ stackoverflowwww 7 лет назад 0
У меня нет ссылки прямо сейчас. Я постараюсь найти тот, когда получу более удобное устройство, чем сейчас. PetSerAl 7 лет назад 0
Спасибо! Я прочитал, что DEP включен в 64-битных системах по умолчанию. Но я не смог найти четкого утверждения, что это принудительно для процессов x64. stackoverflowwww 7 лет назад 0
Вы нашли время, чтобы выкопать ссылку? stackoverflowwww 7 лет назад 0
* DEP «всегда включен» для 64-разрядных процессов в 64-разрядных версиях Windows и не может быть отключен. * [Ссылка] (https://blogs.technet.microsoft.com/srd/2009/06/12/understanding-dep- как-смягчения-технология-часть-1) PetSerAl 7 лет назад 1
@PetSerAl спасибо за ссылку. Ты хочешь превратить это в ответ, чтобы я мог проголосовать? stackoverflowwww 7 лет назад 0

1 ответ на вопрос

1
PetSerAl

This blog post says:

DEP is “always on” for 64bit processes on 64bit versions of Windows and it cannot be disabled.

Also, this Microsoft documentation says this:

On 64-bit versions of Windows, if hardware-enforced DEP is available it is always applied to 64-bit processes and kernel memory spaces and there are no system configuration settings to disable it.

and this:

Per-application DEP configuration
For the purposes of application compatibility when DEP is set to the OptOut policy level, it is possible to selectively disable DEP for individual 32-bit applications. However, DEP is always enabled for 64-bit applications.

Похожие вопросы