Как отключить dep в windows server

Всем привет сегодня расскажу как отключить DEP в Windows. В этой инструкции поговорим о том, как отключить DEP (Data Execution Prevention, предотвращение выполнения данных) в Windows 7, 8 и 8.1. То же самое должно работать и в Windows 10. Отключение DEP возможно как для системы в целом, так и для отдельных программ, при запуске которых появляются ошибки Data Execution Prevention.

Обновлено 22.07.2016

Как отключить DEP в Windows

Как отключить DEP в Windows

Всем привет сегодня расскажу как отключить DEP в Windows.

В этой инструкции поговорим о том, как отключить DEP (Data Execution Prevention, предотвращение выполнения данных) в Windows 7, 8 и 8.1. То же самое должно работать и в Windows 10. Отключение DEP возможно как для системы в целом, так и для отдельных программ, при запуске которых появляются ошибки Data Execution Prevention.

Смысл технологии DEP заключается в том, что Windows, опираясь на аппаратную поддержку NX (No Execute, для процессоров AMD) или XD (Execute Disabled, для процессоров Intel) предотвращает выполнение исполняемого кода из тех областей памяти, которые помечены как не исполняемые. Если проще: блокирует один из векторов атаки вредоносного ПО.

Однако, для некоторого ПО включенная функция предотвращения выполнения данных может послужить причиной появления ошибок при запуске — встречается это и для прикладных программ, и для игр. Ошибки вида «Инструкция по адресу обратилась к памяти по адресу. Память не может быть read или written» тоже могут иметь своей причиной DEP.

Отключение DEP для Windows 7 и Windows 8.1 (для всей системы)

Первый способ позволяет отключить DEP для всех программ и служб Windows. Для этого откройте командную строку от имени Администратора — в Windows 8 и 8.1 это можно сделать с помощью меню, которое открывается правым кликом мыши по кнопке Пуск, в Windows 7 вы можете найти командную строку в стандартных программах, кликнуть по ней правой кнопкой мыши и выбрать «Запуск от имени Администратора».

В командной строке введите

bcdedit.exe /set {current} nx AlwaysOff

и нажмите Enter. После этого перезагрузите ваш компьютер: при следующем входе в данную систему DEP будет отключен.

Как отключить DEP в Windows-01

Как отключить DEP в Windows-01

Кстати, при желании, с помощью bcdedit вы можете создать в меню загрузки и выбора системы отдельную запись с отключенным DEP и использовать ее тогда, когда это требуется.

Примечание: для того, чтобы включить DEP в дальнейшем используйте ту же команду с атрибутомAlwaysOn вместо AlwaysOff.

Два способа отключить DEP для отдельных программ

Более разумным может быть отключение предотвращения выполнения данных для отдельных программ, вызывающих ошибки DEP. Сделать это можно двумя способами — через изменение дополнительных параметров системы в панели управления или с помощью редактора реестра.

В первом случае, зайдите в Панель управления — Система (можно также кликнуть по значку Мой компьютер правой кнопкой и выбрать Свойства). Выберите в списке справа пункт Дополнительные параметры системы, затем на вкладке Дополнительно нажмите кнопку Параметры в разделе Быстродействие.

Как отключить DEP в Windows-02

Как отключить DEP в Windows-02

Откройте вкладку «Предотвращение выполнения данных», отметьте пункт «Включить DEP для всех программ и служб, кроме выбранных ниже» и с помощью кнопки «Добавить» укажите пути к исполняемым файлам программ, для которых нужно отключить DEP. После этого желательно так же перезагрузить компьютер.

Как отключить DEP в Windows-03

Как отключить DEP в Windows-03

Отключение DEP для программ в редакторе реестра

По сути то же самое, что только что описывалось с применением элементов панели управления, можно сделать и посредство редактора реестра. Для его запуска нажмите клавиши Windows + R на клавиатуре и введите regedit после чего нажмите Enter или Ok.

Вот так вот просто легко отключить DEP в Windows.

Материал сайта pyatilistnik.org

Защита от выполнения данных (DEP) — это технология, встроенная в Windows, которая помогает защититься от запуска исполняемого кода из мест, в которые он не должен запускаться. DEP делает это, помечая некоторые области памяти компьютера как только для данных, и исполняемый код или приложения не будут разрешены для выполнения из этих областей памяти.

Это усложняет атаки, которые пытаются использовать переполнение буфера или другие методы для запуска вредоносных программ из тех частей памяти, которые обычно содержат только данные.

Несовершенная аналогия

Представьте, что у вас есть кафе, и в вашем магазине есть двери, которые предназначены для клиентов и другие двери для доставки. Чтобы гарантировать, что только утвержденные продукты продаются и используются в вашем магазине, вы требуете, чтобы все поставки должны поступать через двери доставки. 

Бариста проверяет свой телефон в кафе

Если сотрудник по доставке приходит через дверь, доступную только для клиента, которая считается подозрительной, и вы отказывается принять его доставку.

DEP не позволяет осуществлять доставку (исполняемый код) через дверь только для клиента (области памяти, помеченные только для данных).

Выключение или включение DEP

DEP включен по умолчанию, но если его нужно отключить (или снова включить), это можно сделать в приложении Безопасность Windows. Для защиты рекомендуется оставить его включенным.

  1. Нажмите клавишу Windows или кнопку Пуск альтернативный текст.

  2. Введите Безопасность Windows и выберите приложение Безопасность Windows, которое отображается в верхней части результатов поиска.

  3. Выберите App & элемент управления браузером, а затем — Защита от эксплойтов.

Защита от выполнения данных отображается на вкладке Параметры системы .

Важно: Если компьютер управляется вашей работой или учебным заведением, системный администратор не разрешает вносить изменения в этот параметр.

Подробнее

Более подробное объяснение см. в статье Защита от выполнения данных на learn.microsoft.com.

Нужна дополнительная помощь?

  • Remove From My Forums
  • Вопрос

  • как отключить DEP на виртуальном сервере (VPS)  на Windows Server 2012r2.Пытаюсь через командную строку bcdedit.exe /set {current} nx AlwaysOff,не получается пишет:Произошла ошибка при задании ,Значение защищено политикой безопасной
    загрузки и не может быть изменено или удалено…Помогите

Ответы

    • Изменено

      28 сентября 2013 г. 10:41

    • Предложено в качестве ответа
      Petko KrushevMicrosoft contingent staff, Moderator
      30 сентября 2013 г. 12:06
    • Помечено в качестве ответа
      Petko KrushevMicrosoft contingent staff, Moderator
      1 октября 2013 г. 6:09

kak otkluchit depОперационная система Windows предусматривает несколько уровней защиты от вирусов, чтобы даже рядовые пользователи могли не беспокоиться о заражении компьютера вредоносными программами. Одним из средств защиты является DEP (Data Execution Prevention) – завершение выполнения данных. Функция по умолчанию включена в Windows, и она необходима, чтобы автоматически закрывать программы, которые попытаются выполнить действия из областей оперативной памяти, обозначенных неисполняемыми.

Бывают ситуации, в которых функция DEP работает неправильно. Из-за нее пользователь не может запустить необходимое ему приложение или игру, поскольку на экране появляется ошибка «Инструкция по адресу обратилась к памяти по адресу». В такой ситуации можно отключить DEP для отдельной программы или деактивировать защитную функцию на уровне системы. Ниже будут рассмотрены оба варианта.

Как отключить DEP для всех программ в Windows

Важно: Отключая DEP для всех программ в Windows, повышается риск потери данных при заражении компьютера вирусом.

Чтобы выключить DEP на уровне операционной системы, тем самым полностью отменить функцию завершения выполнения данных, нужно воспользоваться командной строкой. Запустите командную строку от имени администратора и пропишите в ней команду:

bcdedit.exe /set {current} nx AlwaysOff

kak otkluchit dep windows

Далее нажмите Enter, чтобы команда исполнилась. Когда в командной строке отобразится, что DEP отключен, можно выполнять перезагрузку компьютера, и только после нее изменения вступят в силу.

Обратите внимание: Чтобы после отключения DEP через командную строку включить ее обратно, потребуется ввести и применить следующую команду:

bcdedit.exe /set {current} nx AlwaysOn

Как отключить DEP для отдельной программы

Поскольку отключение DEP для всех программ и служб в Windows опасно, рекомендуется деактивировать функцию завершения выполнения данных для отдельного приложения, которое выдает ошибку «Инструкция по адресу обратилась к памяти по адресу».  Сделать это можно двумя способами – через реестр или параметры быстродействия.

Отключение DEP через реестр

Реестр позволяет отключить работу функции DEP для отдельного приложения, установив запрет на конкретный исполнительный файл. Для этого необходимо:

  1. Нажать на клавиатуре сочетание клавиш Windows+R, чтобы запустить строку «Выполнить». Пропишите в ней regedit и нажмите Enter, после чего откроется редактор реестра;
  2. Далее в левой части меню нужно перейти по следующим разделам:
HKEY_LOCAL_MACHINE - SOFTWARE - Microsoft - Windows NT - CurrentVersion - AppCompatFlags –Layers

Обратите внимание: В некоторых версиях операционной системы Windows может отсутствовать конечный раздел Layers. В такой ситуации потребуется его создать самостоятельно. Для этого откройте раздел AppCompatFlags в левой части экрана и нажмите правой кнопкой мыши в списке его строковых параметров. Во всплывающем окне выберите «Создать» — «Раздел» и назовите его Layers. После этого в него можно заходить и продолжать выполнение инструкции.kak otkluchit dep windows

  1. В разделе Layers потребуется создать строковый параметр по имени пути exe-файла приложения, которому дается разрешение на работу без защиты функцией DEP. Для этого определитесь с точным названием исполнительного файла программы (узнать его можно в папке приложения). Далее нажмите правой кнопкой мыши в правой зоне раздела Layers и выберите «Создать» — «Строковый параметр». В качестве имени установите путь к exe-файлу программы, для которой отключается DEP, а в графе «Значение» потребуется прописать DisableNXShowUI.DisableNXShowUI

Когда изменения в реестре будут сохранены, нужно перезагрузить компьютер и можно пробовать запустить программу, для которой был отключен DEP.

Отключение через параметры быстродействия

Некоторым пользователям удобнее работать с привычным интерфейсом Windows, чем с реестром. Для них компания Microsoft так же предусмотрела возможность отключения DEP. Выключить защитную функцию можно через параметры быстродействия:

  1. Нажмите правой кнопкой мыши на «Пуск» и выберите «Панель управления»;
  2. Далее установите режим просмотра «Крупные значки» и выберите пункт «Система»;kak otkluchit dep windows
  3. В левой части экрана нажмите «Дополнительные параметры системы»;
  4. Откроется новое окно, в котором требуется перейти на вкладку «Дополнительно»;
  5. Далее в пункте «Быстродействие» нажмите «Параметры»;kak otkluchit dep windows
  6. Перейдите на вкладку «Предотвращения выполнения данных» и установите галочку на варианте включения DEP для всех программ, кроме избранного списка;kak otkluchit dep windows
  7. Далее нажмите «Добавить» и введите пути до исполняемых файлов, после чего программа, для которой включен запрет на функцию DEP, появится в списке.kak otkluchit dep windows

Выполнив необходимые настройки, потребуется перезагрузить компьютер, чтобы изменения вступили в силу.

1 звезда2 звезды3 звезды4 звезды5 звезд (411 голос., средний: 4,58 из 5)

Загрузка…

Отключение предотвращения выполнения данных в WindowsВ этой инструкции поговорим о том, как отключить DEP (Data Execution Prevention, предотвращение выполнения данных) в Windows 7, 8 и 8.1. То же самое должно работать и в Windows 10. Отключение DEP возможно как для системы в целом, так и для отдельных программ, при запуске которых появляются ошибки Data Execution Prevention.

Смысл технологии DEP заключается в том, что Windows, опираясь на аппаратную поддержку NX (No Execute, для процессоров AMD) или XD (Execute Disabled, для процессоров Intel) предотвращает выполнение исполняемого кода из тех областей памяти, которые помечены как неисполняемые. Если проще: блокирует один из векторов атаки вредоносного ПО.

Однако, для некоторого ПО включенная функция предотвращения выполнения данных может послужить причиной появления ошибок при запуске — встречается это и для прикладных программ, и для игр. Ошибки вида «Инструкция по адресу обратилась к памяти по адресу. Память не может быть read или written» тоже могут иметь своей причиной DEP.

Отключение DEP для Windows 7 и Windows 8.1 (для всей системы)

Первый способ позволяет отключить DEP для всех программ и служб Windows. Для этого откройте командную строку от имени Администратора — в Windows 8 и 8.1 это можно сделать с помощью меню, которое открывается правым кликом мыши по кнопке «Пуск», в Windows 7 вы можете найти командную строку в стандартных программах, кликнуть по ней правой кнопкой мыши и выбрать «Запуск от имени Администратора».

В командной строке введите bcdedit.exe /set {current} nx AlwaysOff и нажмите Enter. После этого перезагрузите ваш компьютер: при следующем входе в данную систему DEP будет отключен.

Отключаем DEP в командной строке

Кстати, при желании, с помощью bcdedit вы можете создать в меню загрузки и выбора системы отдельную запись с отключенным DEP и использовать ее тогда, когда это требуется.

Примечание: для того, чтобы включить DEP в дальнейшем используйте ту же команду с атрибутом AlwaysOn вместо AlwaysOff.

Два способа отключить DEP для отдельных программ

Более разумным может быть отключение предотвращения выполнения данных для отдельных программ, вызывающих ошибки DEP. Сделать это можно двумя способами — через изменение дополнительных параметров системы в панели управления или с помощью редактора реестра.

В первом случае, зайдите в Панель управления — Система (можно также кликнуть по значку «Мой компьютер» правой кнопкой и выбрать «Свойства»). Выберите в списке справа пункт «Дополнительные параметры системы», затем на вкладке «Дополнительно» нажмите кнопку «Параметры» в разделе «Быстродействие».

Изменение дополнительных параметров системы

Откройте вкладку «Предотвращение выполнения данных», отметьте пункт «Включить DEP для всех программ и служб, кроме выбранных ниже» и с помощью кнопки «Добавить» укажите пути к исполняемым файлам программ, для которых нужно отключить DEP. После этого желательно так же перезагрузить компьютер.

Отключение DEP для программ и служб Windows

Отключение DEP для программ в редакторе реестра

По сути то же самое, что только что описывалось с применением элементов панели управления, можно сделать и посредство редактора реестра. Для его запуска нажмите клавиши Windows + R на клавиатуре и введите regedit после чего нажмите Enter или Ok.

В редакторе реестра перейдите к разделу (папки слева, если раздела Layers нет, создайте его) HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows NT CurrentVersion AppCompatFlags Layers

И для каждой программы, для которой требуется отключение DEP, создайте строковый параметр, имя которого соответствует пути к исполняемому файлу этой программы, а значение — DisableNXShowUI (см. пример на скриншоте).

Отключаем DEP в редакторе реестра

Ну и наконец, отключать или не отключать DEP и насколько это опасно? В большинстве случаев, если программа, ради которой вы это проделываете загружена из надежного официального источника, это вполне безопасно. В остальных ситуациях — вы делаете это на свой страх и риск, хотя он и не слишком значителен.

Атаки, основанные на переполнении буфера, долгое время вызывали множество проблем и до сих пор являются одной из главных задач обеспечения безопасности в компьютерной индустрии. Первой атакой, основанной на переполнении буфера и распространяемой через Internet, стал червь Morris, нанесший серьезный ущерб в 1988 году.

Атаки, основанные на переполнении буфера, долгое время вызывали множество проблем и до сих пор являются одной из главных задач обеспечения безопасности в компьютерной индустрии. Первой атакой, основанной на переполнении буфера и распространяемой через Internet, стал червь Morris, нанесший серьезный ущерб в 1988 году. Особенно досадно, что создатели червя написали его из благих побуждений, а именно — для измерения масштабов Internet. Червь Morris взламывал несложные пароли и использовал известные уязвимые места программ для UNIX-платформ, таких как sendmail и Finger. Последние известные атаки, использующие переполнение буфера, черви CodeRed и SQL Slammer, перевели множество подключенных к Internet систем под управление хакеров. В 2001 году червь CodeRed взломал с помощью переполнения буфера сервер Microsoft Internet Information Services (IIS) 5.0 (версию Web-сервера IIS, поставляемую с системой Windows 2000), а в 2003 году червь SQL Slammer с помощью переполнения буфера проник на системы с установленным сервером баз данных Microsoft SQL Server 2000.

Можно противостоять атакам, использующим переполнение буфера, с помощью защитных механизмов, добавленных компанией Microsoft в системы Windows Vista и Windows Server 2008: Data Execution Prevention (DEP) и Address Space Layout Randomization (ASLR). Далее я объясню, почему эти механизмы так важны, и покажу, как выполняется их настройка и мониторинг.

Механизм переполнения буфера

Прежде чем более подробно рассматривать защитные механизмы систем Vista и Server 2008, стоит разобраться в процессе переполнения буфера и в том, каким рискам он подвергает ваши системы и данные.

Переполнение буфера возникает, когда вредоносная или просто плохо составленная программа сохраняет данные в память компьютера, превышая фиксированный размер буфера для данных. В результате такого переполнения данные перезаписывают соседние фрагменты памяти. Перезаписываемые данные могут содержать другие буферы, переменные, программную логику, которые искажают выходные результаты или приводят к аварийному завершению процесса. Еще большую угрозу представляют случаи, когда внедряемые данные содержат исполняемый код, который в итоге вынуждена выполнить атакованная программа. Этот код часто содержит основные механизмы атак, использующих переполнение буфера. Он используется для кражи или удаления данных, инициации отказов служб на основе состояния Denial of Service (DoS), изменения привилегий или распространения вредоносных программ на другие системы.

На рисунке приведен простой пример переполнения буфера. Программа определяет две переменные, которые сохраняются в соседних фрагментах памяти. Первая переменная — строка X длиной в 8 байт, вторая — целое число Y, размером 2 байт. Изначально строка X содержит только символы «0», а переменная Y — число 30. Представьте, что пользователь (случайно или умышленно) вводит строку OVERFLOW в эту программу. Программа пытается сохранить эту строку в память по адресу переменной Х и в конце записывает символ «0», чтобы обозначить конец строки. Алгоритм программы не проверяет длину строки и частично перезаписывает значение переменной Y. В результате, хотя программист не собирался менять значение Y, при вводе данных в переменную X значение переменной Y меняется с 30 на число, определяемое символом из строки, записываемой в память по адресу переменной X.

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

Это объясняет, почему многие разработчики аппаратных средств, приложений и операционных системы, в том числе Microsoft, разработали проактивные механизмы защиты, которые пытаются предотвратить развитие атак на основе переполнения буфера в некорректно написанном коде. Давайте познакомимся с механизмами DEP и ASLR, разработанными компанией Microsoft.

Защита исполняемых данных

Как упоминалось выше, атаки, основанные на переполнении буфера, часто прописывают вредоносный исполняемый код в буферы памяти других приложений, после чего вынуждают приложения выполнять разрушающие систему действия. Вы можете прервать исполнение внедренного кода с помощью технологии DEP. Она позволяет системе Windows помечать те сегменты памяти, которые должны только хранить данные, как «неисполняемые» (NX). Если приложение пытается выполнить код из сегмента памяти с меткой NX, механизм DEP запретит это действие.

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

Компания Microsoft добавила поддержку DEP не только в системы Vista и Server 2008, но и в пакеты Windows XP SP2, Windows Server 2003 SP1 и Windows 2003 R2. Механизм DEP реализован компанией Microsoft в двух вариантах: аппаратном и программном.

Аппаратная реализация службы DEP. Аппаратная реализация DEP использует функцию процессора, которую в AMD называют защитой неисполняемых страниц (NX), а в Intel — использованием запрещающего бита (XD). На момент написания статьи компания AMD поддерживает функцию NX только в 64-разрядных процессорах, а Intel поддерживает функцию XD только в модельном ряду 64-разрядных машин Itanium и EM64 T, а также в некоторых 32-разрядных моделях процессоров Prescott. Компания Microsoft — не единственный поставщик операционных систем, применяющий процессорные функции NX и XD для защиты от переполнения буфера: программное обеспечение, использующее функции NX и XD, поддерживается и в других операционных системах, таких как Linux и UNIX BSD (дополнительную информацию можно найти по адресу en.wikipedia.org/wiki/Nx-bit).

Программная реализация службы DEP. Программная реализация DEP позволяет компании Microsoft предоставлять данную технологию пользователям 32-разрядных систем, не оборудованных процессором с функциями NX или XD. При использовании данного продукта возможности процессорных функций NX и XD реализуются с помощью множества специальных указателей, автоматически добавляемых операционной системой Windows для объектов, хранящихся в системной памяти.

Поддерживает ли ваша система аппаратную реализацию службы DEP, легко проверить, просмотрев настройки DEP. Чтобы просмотреть эти настройки, щелкните на ярлыке Advanced Settings в окне System панели управления Control Panel и выберите в открывшемся окне Advanced and Performance Settings.

В нижней части окна настроек конфигурации службы DEP указан тип реализации данной службы, поддерживаемый вашей системой. На экране 1 отображено окно настроек DEP в системе Vista. Об остальных параметрах конфигурации я расскажу далее. Внизу экрана читаем: Your computer’s processor supports hardware-based DEP.

Экран 1. Настройка DEP

Если ваша система поддерживает программную реализацию службы DEP (т. е. процессор компьютера не поддерживает функции NX или XD), вы увидите сообщение Your computer’s processor does not support hardware-based DEP. However, Windows can use DEP software to help prevent some types of attacks.

Другой способ проверить, поддерживает ли ваша система аппаратную или программную реализацию службы DEP, — задействовать команды из инструментария Windows Management Instrumentation (WMI). Эта процедура описана в статье Microsoft, опубликованной по адресу support.microsoft.com/kb/912923.

В системах XP SP2, Windows 2003 SP1 и более поздних системах Microsoft технология DEP активирована по умолчанию. Однако механизмы DEP не всегда защищают все программы, работающие в системе. Точный список программ, защищаемых службой DEP, определяется уровнем защиты. Служба DEP поддерживает два уровня защиты:

  1. Level 1. Первый уровень защищает только системный и исполняемый код платформы Windows и не распространяет механизм защиты DEP на остальные приложения компании Microsoft или независимых производителей;

  2. Level 2. Второй уровень защищает весь исполняемый код в системе. Механизмы DEP применяются и к системному коду Windows, и к приложениям компании или независимых производителей.

По умолчанию системы XP SP2 и Vista запускают службу DEP на первом уровне защиты, системы Windows Server 2003 SP1 и Windows Server 2008 — на втором.

Администраторы могут настраивать уровни защиты посредством конфигурационного экрана службы DEP, показанного на экране 2. В этом примере (изображающем настройку службы DEP «по умолчанию» в системе Vista) механизмы DEP активированы только для важнейших программ и служб системы Windows — первый уровень защиты. Для переключения службы DEP на уровень 2 можно использовать переключатель Turn on DEP for all programs and services except those I select. По умолчанию данный режим устанавливается в системах Windows Server 2003 SP1 и Windows Server 2008.

Экран 2. Проверка состояния DEP для конкретного процесса в Task Manager

Второй уровень защиты позволяет освободить определенные приложения от действия защитного механизма DEP. Эта возможность необходима, так как некоторые устаревшие приложения при включенном механизме DEP работают некорректно: например, в момент записи Microsoft Word автоматически освобождается от действия механизма DEP. Перед переключением на второй уровень защиты службы DEP требуется запустить для всех приложений тест совместимости и убедиться, что все приложения при включенном механизме DEP работают корректно. Чтобы освободить одно из приложений от действия DEP, можно добавить исполняемый файл приложения в список исключений на экране настройки с помощью кнопки Add.

Вы можете проверить, защищено ли данное приложение механизмом DEP, просмотрев столбец DEP в приложении Windows Task Manager для процесса, порожденного этим приложением (см. экран 2). Если столбец DEP в системе не отображается, можно добавить его с помощью пункта View, Select Columns службы Task Manager.

Освободить приложения от действия механизма DEP можно и другим способом — создать программную модификацию, распространяемую по вашим системам, которая будет автоматически отключать механизм DEP для выбранных в них приложений. В качестве примера компания Microsoft приводит такую программную модификацию, как слой DisableNX. Для создания этой модификации следует ознакомиться с инструментарием Microsoft Application Compatibility Toolkit (ACT), который, помимо прочего, включает в себя полезную в данном вопросе программу Compatibility Administrator (technet.microsoft.com/en-us/windowsvista/aa905078.aspx). Разработчики приложений могут применить и обратный подход — прописать поддержку механизма DEP в исполняемом коде приложений. Для этого они при компиляции используют параметр/NXCompat.

И наконец, одно немаловажное замечание: если активирован второй уровень защиты механизма DEP, система будет работать немного медленнее, так как все дополнительные проверки проводятся на уровне процессора и системной памяти. Поэтому для систем, не имеющих доступа в Internet, стоит рассмотреть возможность полного отключения механизма DEP. Единственный способ отключить службу DEP в системе — добавить параметр/NoExecute=AlwaysOff в системный файл boot.ini.

Имейте в виду, что вы можете использовать тот же параметр/NoExecute= с другими значениями для активации механизма DEP и установки уровня защиты. В табл. 1 приведены все значения параметра/NoExecute.

Файл boot.ini доступен только в системах XP и Windows 2003, и вы можете редактировать его с помощью приложения Notepad или раздела Startup and Recovery в свойствах системы.

В системах Vista и Server 2008 файл boot.ini заменен на файл Boot Configuration Data (BCD). Для редактирования файла BCD компания Microsoft предоставляет утилиту командной строки bcdedit.exe.

При запуске приложения bcdedit без параметров оно отображает текущую загрузочную конфигурацию. На  экране 3 приведен результат действия приложения bcdedit в системе Vista. Обратите внимание на последнюю строку, содержащую конфигурацию механизма NX OptIn. Для перевода механизма NX в состояние «выключен всегда» нужно выполнить следующую команду:

bcdedit/set nx alwaysoff  

Значения, приведенные в табл. 1 для параметра/NoExecute= файла boot.ini, также могут быть использованы в параметре nx файла BCD.

Дополнительную информацию о механизме Microsoft DEP и методах его настройки можно найти в статье компании Microsoft по адресу support.microsoft.com/kb/875352/en-us.

Рандомизация размещения адресного пространства

Другой технологией, часто используемой при атаках, построенных на основе переполнения буфера, является внедрение в буфер приложения указателя, ссылающегося на точку размещения важной библиотеки DLL в системной памяти. После этого вирус обманом заставляет программу вызвать данный системный файл, что позволяет ему задействовать службы данной библиотеки без риска быть обнаруженным.

Этот тип атаки относительно легко провести, если операционная система всегда загружает определенные библиотеки в одни и те же сегменты памяти. Например, в системе XP точки размещения системных библиотек не меняются — они незначительно отличаются только в зависимости от установленной версии пакета обновлений. Новая служба ASLR в системах Vista и Server 2008 усложняет использование служб из системных библиотек путем рандомизации точек размещения библиотек DLL в памяти. В отличие от механизма DEP, служба ASLR в ранних версиях Windows недоступна.

Каждый раз при перезапуске систем Windows Vista и Windows Server 2008 служба ASLR случайно привязывает системный код (обычно системные библиотеки DLL и исполняемый код) к определенным точкам в системе. Это означает, что точки начала системного кода (адреса, используемые вирусом для вызова службы) невозможно определить заранее. В системах Windows Vista и Windows Server 2008 библиотеки DLL или исполняемый код могут быть загружены в любой из 256 регистров. Это означает, что хакер имеет шанс 1 к 256 на получение нужного адреса. Служба ASLR также усложняет хакерам процесс написания рекурсивного кода, например червей, целью которого являются идентичные ресурсы на нескольких машинах.

Вы можете увидеть эффект работы механизмов ASLR с помощью службы SysInternals, загрузить которую можно по адресу www.microsoft.com/technet/sysinternals/utilities/processexplorer.mspx. Для использования данного средства запустите службу Process Explorer и убедитесь, что в меню View отмечен параметр Show Lower Pane.

После этого выберите процесс explorer.exe в верхнем окне и зафиксируйте базовый адрес библиотеки ntdll.dll в столбце base нижнего окна. Если вы не видите столбец base, то можете добавить его с помощью пункта меню View, Select Columns — столбец Base добавляется из вкладки DLL.

Запишите базовый адрес и перезагрузите компьютер. В системе XP базовый адрес библиотеки ntdll.dll остается неизменным после перезагрузки (система XP не поддерживает технологию ASLR). В системе Vista после перезагрузки базовый адрес меняется (так как система Vista поддерживает технологию ASLR).

Экран 4. Наблюдение за работой ASLR с помощью Sysinternals Process Explorer

На экране 4 изображен интерфейс Process Explorer и базовый адрес библиотеки ntdll.dll. В табл. 2 приведены базовые адреса библиотек ntdll.dll и user32.dll, зафиксированные при запуске Process Explorer в системах XP SP2 и Vista.

Механизм ASLR можно использовать не только для рандомизации точек размещения в памяти системных файлов Windows, но и для рандомизации точек размещения исполняемого кода и библиотек DLL для любых приложений, работающих в системах Vista или Windows Server 2008. Для этого разработчики приложений должны провести компиляцию кода с использованием указателя/dynamicbase. Инструментарий Microsoft Visual Studio поддерживает такую возможность начиная с версии Visual Studio 2005 SP1.

Как и механизм DEP, ASLR не является разработкой исключительно компании Microsoft. Механизмы ASLR были реализованы задолго до появления систем Vista и Windows Server 2008, на таких платформах, как Linux и UNIX. Кроме того, определенные решения Host Intrusion Detection System (HIDS) поддерживали технологию ASLR в линейке систем Windows задолго до того, как системы Windows получили ее встроенную поддержку.

Подробный анализ использования Microsoft ASLR в системе Vista приведен в статье компании Symantec по адресу: www.symantec.com/avcenter/reference/Address_Space_Layout_Randomization.pdf. В отличие от службы DEP, компания Microsoft не предлагает специализированного шаблона настройки для оптимального использования технологий ASLR.

Основные механизмы проактивной защиты

Механизмы проактивной защиты от переполнения буфера, предлагаемые технологиями ASLR и DEP, несколько отличаются друг от друга. В то время как служба ASLR усложняет поиск вирусом нужного кода, механизм DEP не дает вирусу выполнить код по найденному адресу. Обе технологии можно применять одновременно, а также использовать их в виртуальных системах, таких как продукты семейств Microsoft Virtual PC и VMware.

С точки зрения поддержки приложений важно помнить, что необходимо тестировать приложения на совместимость с механизмом DEP, прежде чем использовать их в системах с активированной службой DEP. Действие механизма DEP может привести к нарушению работы некоторых приложений или даже к их аварийному завершению.

Важно понимать, что службы DEP и ASLR не решают проблемы переполнения буфера. Обе технологии мешают вирусам использовать эту лазейку в своих целях. Например, служба ASLR усложняет процесс поиска системного кода вирусом, но не в состоянии его предотвратить. В большинстве случаев службы ASLR и DEP эффективно противостоят атакам, основанным на переполнении буфера.

Жан де Клерк (jan.declerq@hp.com) — член Security Office корпорации HP. Специализируется на проблемах управления идентичностью и вопросах безопасности продуктов Microsoft

Рисунок. Простой пример работы механизма переполнения буфера

Экран 3. Пример работы bcdedit в Windows Vista

Таблица 1. Значения параметра NoExecute= в boot.ini и пояснения

Таблица 2. Воздействие ASLR на базовый адрес DLL

WindowsСовременные операционные системы и современные процессоры реализуют на программном и аппаратном уровнях функцию предотвращения выполнения данных (англ. Data Execution Prevention) известную как DEP. Данная функция не позволяет приложениям выполнять код из отдельных областей памяти. DEP стало ответом вредоносным программам, сохраняющих свой код в таких областях, например, посредством переполнения буфера.

Аппаратная реализация DEP

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

Программная реализация DEP

Программно функция предотвращения выполнения данных реализована во всех основных десктопных операционных системах (Windows, Linux, macOS), доступна она также в Android.  В системах Windows DEP появилась в Windows XP SP 2 и Windows Server 2003 SP 1. Начиная с Windows Vista эта функция является встроенной в систему.

В Windows 7 при срабатывании DEP можно увидеть следующее сообщение: Для обеспечения защиты вашего компьютера служба предотвращения выполнения данных закрыла [имя программы]. По умолчанию эта функция включена только для основных программ и служб операционной системы, но её можно распространить и на все программы и службы. Отключить DEP в Windows полностью через графический интерфейс не представляется возможным, но это можно сделать путем редактирования загрузчика Windows.

Чтобы попасть в настройки DEP в Windows 7 откройте свойства системы (ПускПанель управленияСистема). Далее откройте Дополнительные параметры системы, там найдите пункт Быстродействие и нажмите Параметры.

Предотвращение выполнения данных в Windows: что такое DEP

Далее нужно выбрать вкладку, которая так и называется — Предотвращение выполнения данных.

Предотвращение выполнения данных в Windows: что такое DEP

Здесь можно выбрать, включать ли DEP для всех программ и служб или только основных, а также задать исключения.

Отключение функции DEP в Windows

Если Вы хотите совсем отключить DEP в Windows, придется редактировать загрузчик ОС. В современных версиях Windows делается это через утилиту bcdedit.

Запустите командную строку с правами администратора и вбейте следующий текст:

bcdedit.exe /set {current} nx AlwaysOff

После этого нужно перезагрузить компьютер.

Обратно включить функцию DEP можно командой

bcdedit.exe /set {current} nx OptIn

После этого нужно также перезагрузить ПК.

Как отключить предотвращение выполнения данных в Windows 10 и как включить DEP

Компьютер постоянно подвержен риску заражения вредоносными ПО и другим угрозам безопасности. Для защиты системы разработчики внедрили функцию DEP, которая предотвращает запуск проблемных утилит или программ, уведомляя при этом пользователя. Иногда, из-за блокировки запуска, возникают проблемы или ошибки, поэтому пользователи ищут ответ на вопрос, как отключить DEP в ОС Windows 10. Пошаговая инструкция приведена ниже.

Что такое DEP и для чего он нужен?

Сокращение «DEP» обозначает в переводе–«предотвращение выполнения данных». Представляет собой комплекс аппаратных, программных компонентов, обеспечивающих параллельную защиту цифровой техники. Функция выполняет задачи антивирусного программного обеспечения, но не является таковым.

скриншот_1

Процесс работы заключается в сканировании оперативной памяти ПК. При попадании вредоносной программы в ОЗУ гаджета она пытается создать собственные коды. Защитная опция ПВД (предотвращение выполнения данных) сразу обнаруживает сторонний софт в области памяти, которая должна использоваться только оперативкой. В результате функция срабатывает, блокируя вирус, при этом владельца ПК оповещает системным сообщением.

Опция блокировки вирусов способна выявить множественные атаки вредоносных ПО. Но она не может полноценно работать вместо антивирусной программы. Если специальная программа не обнаружила вирус в ОС, включается ПВД.

скриншот_2

Как отключить DEP на Windows 10?

Защиту отключают в случае установленного качественного антивируса, который эффективно справляется со своей работой. В некоторых ситуациях DEP срабатывает ложно, если ей кажется, что программа носит вредоносный характер. Так могут блокироваться игры, приложения и другие утилиты. Функция может спровоцировать появление синего «экрана смерти», например, при аварийном выключении устройства. В подобных случаях юзеры отключают ПВД для всех или конкретных утилит.

скриншот_3

Через командную строку

Выключить полностью технологию не удастся, она отвечает за безопасность ПК. Для изменения настроек потребуется строка запроса.

Для выполнения операции нужно следовать инструкции:

  • Вызвать меню «Пуск».
  • Ввести запрос: «командная».
  • Нажать по появившемуся пункту.

скриншот_4

  • Выбрать «Запуск от имени Администратора».

скриншот_5

  • Подтвердить действие.
  • В редакторе набрать: bcdedit.exe/set {current} nx AlwaysOff.
  • Нажать Enter.

скриншот_6

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

Редактирование BCD — файла

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

Для редактирования параметров потребуется скачивание дополнительной утилиты Bootice.

скриншот_7

Далее потребуется следовать инструкции:

  1. Запустить утилиту.
  2. Найти вкладку «Правка».
  3. Выбрать параметр «BCD текущей системы».

скриншот_8

  1. Нажать на «Простой режим».
  2. Откроется окно, в котором выбрать «NX».
  3. Подобрать подходящее значение из списка.
  4. Нажать на кнопку «Сохранить».
  5. Закрыть программу.
  6. Перезапустить компьютер.

скриншот_10

В настройках изначально установлен режим «Optln», который обозначает, что для некоторых утилит предотвращение выполнения данных не работает. Остальные значения показывают включение/выключение опции.

Отключение для конкретной программы с помощью настроек системы

Полная остановка работы опции приведет в высокому риску проникновения вирусных ПО. Поэтому способ выборочного отключения станет оптимальным вариантом для софта, работающего в нормальном режиме, при том, что DEP блокирует его.

Для настройки потребуется следовать инструкции:

  • Запустить Виндовс 10.
  • Вызвать Панель управления.

скриншот_11

  • Откроется меню, где выбрать «Система». Тапнуть по нему.

скриншот_12

  • Выбрать «Дополнительные параметры».

скриншот_13

  • Кликнуть по вкладке «Дополнительно».
  • Найти блок «Быстродействие».
  • Нажать на «Параметры».

скриншот_14

  • Выбрать «Предотвращение выполнения данных».
  • Маркер изначально находится на первом пункте.
  • Переставить маркер к надписи «Для всех программ и служб, кроме выбранных ниже».
  • Нажать «Добавить».

скриншот_15

  • Указать путь к выбранным утилитам, для которых требуется отключение ПВД.
  • Подтвердить действие, нажав «Ok».

Деактивировать защиту получится не для всех программ. Если отключить параметр невозможно, система оповестит об этом. Желательно эту утилиту просканировать установленным антивирусом.

скриншот_16

Выключение для отдельного приложения с помощью редактора реестра

Этот способ подразумевает создание списка утилит, которые ПВД будет игнорировать.

Пользователю нужно:

  • Нажать одновременно: Win+R.
  • Ввести в строку: «regedit».
  • Нажать Enter.

скриншот_17

  • Тапнуть по кнопке «Да», позволив редактору менять параметры.
  • Перейти по пути: HKLMSOFTWAREMicrosoftWindowsNT CurrentVersionAppCompatFlagsLayers.

скриншот_18

  • Если «Layers» не найден, создать его. Нажать на название предыдущего пункта, выбрать «Создать», после «Раздел». Дать наименование.

скриншот_19

  • В новой папке создать строковый параметр, где именем будет путь к выбранной программе, например, D:ProgramsLinXLinX.exe.

скриншот_20

  • Щелкнуть дважды по созданному параметру. Ввести в поле значение: DisableNXShowUI.

скриншот_21

Запуск вирусных ПО не сработает, если на компьютере будет включена функция DEP. В некоторых ситуациях технология ПВД воспринимает утилиты ошибочно, блокируя их работу. Поэтому пользователи вынуждены отключать данную опцию. Главное, что нужно помнить: отключать DEP по отношению к таким утилитам стоит, если пользователь уверен в их безопасности. В противном случае высока вероятность попадания в систему вируса, который повлечет за собой серьезные проблемы.

Понравилась статья? Поделить с друзьями:
  • Как отключить dep в windows 10 64 bit
  • Как отключить defender windows 10 навсегда 2021
  • Как отключить deep sleep mode windows 10
  • Как отключить anti malware service executable windows 10 полностью
  • Как отключить ctrl shift в windows