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

Что такое функция DEP?

What Is Data Execution Prevention in Windows 10?

Data Execution Prevention

Data Execution Prevention or DEP is a Windows built-in tool that offers an extra layer of security for your Windows computer. It can help prevent your computer from virus attack or other security threats.

In detail, DEP tool utilizes a set of hardware and software technologies to conduct additional checks on Windows computer memory to prevent malicious code from loading on a system, and monitor your computer programs to use system memory safely.

To put it another way, there are some memory areas in Windows computer that don’t allow codes running. If some codes are running there, then they are usually malicious.

Therefore, if Data Execution Prevention finds some programs are using computer RAM in a malicious way, it will shut down them and notify you, thus, to protect the safety of your computer system, as well as the data and files on it.

Tip: MiniTool Power Data Recovery Free is specially designed to help you recover lost or deleted files from Windows 10/8/7 computer, external hard drive, SSD, USB, SD card, etc. 100% clean freeware.

Data Execution Prevention feature is included in Windows 10/8/7/Vista/XP. It is enabled by default for all Windows services and programs.

Generally you don’t need to disable DEP and it’s suggested not to do it since your computer may be at risk if you disable it.

However, some good programs sometimes might wrongly use those memory areas that DEP monitors. DEP will then shut down the program or make the program run abnormally.

Create Windows 10 Repair Disk/Recovery Drive/System Image to Repair Win 10

Windows 10 repair, recovery, reboot, reinstall, restore solutions. Learn how to create Windows 10 repair disk, recovery disk/USB drive/system image to repair Windows 10 OS issues.

Read More

Использование реестра

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

  1. Запустите реестр с помощью команды «regedit» в меню «Выполнить» (Win+R).
  2. Перейдите на ветку HKEY_LOCAL_MACHINE → SOFTWARE → Microsoft → Windows NT → CurrentVersion → AppCompatFlags → Если раздела «Layers» нет, создайте его самостоятельно.
  3. Создайте новый строковый параметр, задав ему имя, являющееся путем к исполнительному файлу программы, которую вы хотите добавить в список исключений.
  4. Задайте новому параметру значение «DisableNXShowUI».

После закрытия реестра приложение должно запускаться без ошибок из-за работы функции DEP.

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

Второй способ отключения защиты DEP для отдельной программы заключается в редактировании реестра. Необходимые для этого действия таковы:

  1. Нажмите одновременно кнопки WIN + R, в поисковом поле введите «regedit», нажмите «ОК»
  2. Запустится Редактор системного реестра. Найдите в нем ветку HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows NT > CurrentVersion > AppCompatFlags. Сделайте на нем правый клик мышью, выберите «Создать > Раздел»
  3. Назовите раздел «Layers»
  4. Далее действия будут повторяться для каждой программы, для которой необходимо отключить защиту DEP. В левой половине окна выделите только что созданный раздел Layers, в правой половине щелкните правой кнопкой мышки и создайте строковый параметр
  5. Назовите его именно так, как называется исполняемый файл приложения без расширения (например, для Internet Explorer это iexplore)
  6. Кликните по созданному параметру дважды. В поле «Значение» введите путь к указанному файлу (уже полностью, включая расширение) и нажмите «ОК»
  7. Эти действия требуется повторить для каждой программы, которой требуются исключения безопасности. Когда завершите процесс изменения реестра, перезагрузите компьютер.

Если программ, несовместимых с системой предотвращения исполнения кода, у вас много или среди них есть хотя бы одна 64-разрядная, придется отключать DEP полностью. Инструкция такова:

  1. Нажмите Пуск, в текстовое поле введите cmd . Сделайте на появившейся иконке командного интерпретатора правый клик и запустите его с правами администратора
  2. В открывшееся окно введите без кавычек текст bcdedit.exe /set nx AlwaysOff и нажмите ввод
  3. Если предыдущая операция была успешной, все что вам останется сделать для вступления изменений в силу — перезагрузить компьютер.

Выключение DEP для определенных прог

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

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

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

Если вы использовали «Командную строку», то есть провели деактивацию сразу для всех утилит, активировать дополнительную защиту DEP через «Панель управления» у вас никак не получится, потому что тот самый раздел «Предотвращение выполнения данных» будет просто отсутствовать в окне. Что в этом случае предпринять?

Через «Панель управления»

Если вы отключали DEP для отдельных приложений в окне «Параметры быстродействия» и теперь хотите, чтобы функция работала для них снова, сделайте следующее:

В «Редакторе реестра»

Если вы создавали параметры для отдельных программ в «Редакторе реестра», процедура активации средства защиты DEP будет выглядеть следующим образом:

Функция DEP представляет собой «предохранитель» системы от запуска вирусов. В некоторых случаях она может по ошибке принимать безопасные программы, которыми пользуется клиент Windows 10, за вредоносное ПО. Если вы доверяете этим утилитам, поставьте их в качестве исключения в окне «Параметры безопасности» или же в «Редакторе реестра» — опция перестанет работать для них. Вы также вправе выключить функцию полностью через «Командную строку», однако в этом случае вы берете на себя ответственность за безопасность вашего компьютера: если вирусный код попадёт на ваше устройство, он запустится при выключенном DEP.

Что такое DEP? От английского Data Execution Prevention, что переводится как «Предотвращение выполнения данных». По сути, это функция безопасности, встроенная в различные операционные системы, включая Windows. Функция защищает систему от некоторых вирусов, троянов и прочих угроз безопасности, правда, путать с антивирусом или антивирусной утилитой ее ни в коем случае нельзя.

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

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

Преимущества DEP

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

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

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

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

What Is DEP & What Does It Do?

According to Microsoft, DEP is :

“…a set of hardware and software technologies that perform additional checks on memory to help prevent malicious code from running on a system.”  

Dell simplifies it a bit and tells us that DEP

“…can help protect your computer by monitoring your programs to make sure that they use system memory safely.”

What does that mean? There are certain areas in the computer’s memory which aren’t intended to have code running in them, but sometimes code does run there. 

Usually, the code that will run there is malicious. DEP will monitor those areas and if it sees something going on in those areas it will shut it down. If you want to get in-depth about how it works, read Microsoft’s detailed description of Data Execution Prevention.

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

Второй способ отключения защиты DEP для отдельной программы заключается в редактировании реестра. Необходимые для этого действия таковы:

Если программ, несовместимых с системой предотвращения исполнения кода, у вас много или среди них есть хотя бы одна 64-разрядная, придется отключать DEP полностью. Инструкция такова.

Всем привет сегодня расскажу как отключить 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 будет отключен.

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

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

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

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

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

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

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

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

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

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

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

Это очень важно для операционной системы

How to Enable/Disable DEP Windows 10 with Command Prompt

You should not disable Data Execution Protection on Windows 10 for computer safety. But if you do need to disable DEP Windows 10, you can easily realize it with Command Prompt.

Step 1. Open an elevated Command Prompt window. You can press Windows + R, type cmd, and press Ctrl + Shift + Enter to open Command Prompt Windows 10 and run it as administrator.

Step 2. Type the following command line in Command Prompt window and hit Enter to turn off DEP on Windows 10.

BCDEDIT /SET {CURRENT} NX ALWAYSOFF

Step 3. Then you can restart your Windows 10 computer, and DEP is completely disabled on Windows 10.

If you want to enable Data Execution Protection in Windows 10 again, you can follow the same way to enter into Command Prompt window, type the command line below and hit Enter, then restart your Windows 10 computer to turn on it.

BCDEDIT /SET {CURRENT} NX ALWAYSON

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

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

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

Если вы использовали «Командную строку», то есть провели деактивацию сразу для всех утилит, активировать дополнительную защиту DEP через «Панель управления» у вас никак не получится, потому что тот самый раздел «Предотвращение выполнения данных» будет просто отсутствовать в окне. Что в этом случае предпринять?

  1. Зайдите снова в «Командную строку» через режим администратора, используя подробную инструкцию из раздела «Отключение для всех утилит» этой статьи.
  2. Вставьте скопированный заранее код bcdedit.exe/set {current} nxAlwaysOn. Как видите, он не сильно изменился: вместо Off мы просто поставили On.Вставьте код bcdedit.exe/set {current} nxAlwaysOn в чёрный редактор и нажмите на Enter
  3. После этого жмём сразу на Enter, чтобы система начала выполнять команду.
  4. Перезапустите устройство, чтобы все изменения окончательно вступили в силу. Теперь в окне «Параметры быстродействия» появится нужная вкладка. В ней вы уже сможете настроить работу опции только для основных программ либо деактивировать для каких-то определённых.

Через «Панель управления»

Если вы отключали DEP для отдельных приложений в окне «Параметры быстродействия» и теперь хотите, чтобы функция работала для них снова, сделайте следующее:

  1. Запустите окно «Параметры быстродействия», используя инструкцию из раздела «Деактивация отдельных приложений» этой статьи.
  2. Перейдите на большой раздел «Предотвращение выполнения данных». Вы увидите список утилит, для которых вы отключили ранее DEP.
  3. Выделите левой клавишей мышки утилиту, для которой вы хотите восстановить защиту. После этого щёлкаем по кнопке «Удалить», расположенную под перечнем рядом с кнопкой «Добавить».Выберите программу левой клавишей и нажмите на кнопку «Удалить»
  4. Повторите процедуру для всех остальных утилит. Если вы не хотите избавляться полностью от перечня приложений, вы можете просто установить круглую отметку слева от первого пункта, который позволяет активировать DEP только для главных утилит и служб Windows. При обратном переключении на второе значения, ваш список снова появится в окне ниже.Если вы хотите сохранить список на будущее, включите первый пункт во вкладке «Предотвращение выполнения данных»
  5. Теперь кликаем по ОК и перезапускаем обязательно систему, иначе внесённые изменения не вступят в силу.

В «Редакторе реестра»

Если вы создавали параметры для отдельных программ в «Редакторе реестра», процедура активации средства защиты DEP будет выглядеть следующим образом:

  1. Вызовите уже знакомую вам папку Layers в третьем главном блоке HKEY_LOCAL_MACHINE. Для этого воспользуйтесь инструкцией из раздела «Отключение с помощью «Редактора реестра».
  2. Найдите записи в перечне, соответствующие приложениям, для которых вы хотите включить DEP. Щёлкните по одной из них правой клавишей мышки и в небольшом сером меню выберите третью опцию «Удалить». Вы также можете выделить её левой клавишей, а затем на клавиатуре нажать на Delete.Кликните по опции «Удалить» в контекстном меню
  3. Подтвердите очистку, нажав на «Да» в окне с предупреждением.Кликните по «Да», чтоб подтвердить удаление
  4. Выполните те же шаги для всех остальных ненужных записей реестра и перезагрузите компьютер.

Функция DEP представляет собой «предохранитель» системы от запуска вирусов. В некоторых случаях она может по ошибке принимать безопасные программы, которыми пользуется клиент Windows 10, за вредоносное ПО. Если вы доверяете этим утилитам, поставьте их в качестве исключения в окне «Параметры безопасности» или же в «Редакторе реестра» — опция перестанет работать для них. Вы также вправе выключить функцию полностью через «Командную строку», однако в этом случае вы берете на себя ответственность за безопасность вашего компьютера: если вирусный код попадёт на ваше устройство, он запустится при выключенном DEP.

Екатерина Васильева

Как отключить DEP и когда этого делать не стоит

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

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

Для этого стоит воспользоваться любым антивирусным пакетом, поддерживающим работу «вне системы». Например, Dr.Web LiveDisk, представляющим собой полноценную систему, загружаемую с внешнего носителя из BIOS. Рекомендуем провести полную проверку компьютера без исключения системных разделов. Только в случае если система действительно не заражена, стоит прибегнуть к отключению DEP.

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

Не рекомендуем прибегать к этому методу, если случаи сбоев являются единичными – лучше перейти к следующему пункту и отключить надстройку для определённых приложений. Не стоит забывать о том, что это всё же какой-никакой, а барьер защиты от вирусов. Если же сбои являются действительно глобальными, то для отключения нужно выполнить буквально несколько шагов.

Полностью отключим службу DEP одной командой.

  1. Откроем «Командную строку» любым удобным способом, найдя утилиту через меню «Поиск» либо выбрав соответствующий пункт в выпадающем списке, который появляется по нажатию правой кнопки мыши на «Пуск». Альтернативой также будет активация команды «cmd» в утилите «Выполнить».
  2. В новом окне вставим строчку «bcdedit.exe /set {current} nx AlwaysOff» и нажмём на Enter.

Службы DEP будут полностью отключены на используемой системе. Для повторной активации достаточно использовать команду «bcdedit.exe /set {current} nx AlwaysOn». Не рекомендуем использовать этот способ в случаях, если служба не нарушает работу системы.

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

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

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

  1. Запустим «Панель управления» любым удобным способом: через панель «Пуск», поиск или вводом команды «control» в «Командной строке».
  2. Перейдём в раздел «Система и безопасность», нажав на соответствующую плитку, и нажмём на ссылку «Система» в новом меню. Другим подходом будет запуск через «Проводник» – откроем главное окно «Этого компьютера», нажмём правой кнопкой мыши на пустом пространстве и выберем пункт «Свойства» в выпадающем списке.
  3. Вне зависимости от метода запуска мы попадём в меню со свойствами нашей системы. Обратимся к левой панели и нажмём на ссылку «Дополнительные параметры системы».
  4. В новом окне обратимся к разделу «Быстродействие» на вкладке «Дополнительно» и нажмём на кнопку «Параметры».
  5. В окне «Параметры быстродействия» перейдём к вкладке «Предотвращение выполнения данных». Поставим галочку у параметра «Включить DEP для всех программ и служб, кроме выбранных ниже».
  6. Нажмём на кнопку добавить и укажем путь к исполняемым файлам нужных нам приложений – на них обычно ссылаются ярлыки, с которых происходит запуск. После нажмём на кнопки «Применить» и «ОК», затем перезагрузим систему.

Альтернативным решением будет внесение изменений в реестр для конкретных приложений. Для этого:

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

  1. Запустим «Редактор реестра» любым удобным способом – найдя эту утилиту через меню «Поиск», либо введя команду «regedit» в утилите «Выполнить» или «Командной строке».
  2. Обратимся к левой панели – здесь представлена файловая система реестра. Перейдём по следующему пути: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers. Если последний раздел по каким-то причинам не существует – создадим его вручную, указав это имя в новой папке.
  3. В открытой директории создадим строковые параметры, содержащие в своём названии полный путь к исполняемому файлу нужной нам программы, со значением «DisableNXShowUI» – мы можем увидеть пример на скриншоте перед инструкцией. Для каждого приложения потребуется создать отдельный параметр.

To be continued…

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

Английская аббревиатура DEP расшифровывается как Data Execution Prevention. В переводе на русский — «Предотвращение выполнения данных». Это специальный набор как аппаратных, так и программных средств, цель которых — обеспечить компьютер дополнительной защитой от опасных вредоносных программ.

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

DEP защищает компьютер от вирусов, блокируя их запуск в системной памяти ПК

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

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

Твой первый ROP или ret2libc

В классическом 32-битном случае ret2libc требует создания фейкового стека со всеми необходимыми параметрами для вызова функции из libc. Например, можно вызвать функцию и передать ей строку .

Как ты помнишь из предыдущей статьи, в 64-битной системе первые шесть параметров передаются через регистры , , , , и . Все остальные параметры передаются через стек. Таким образом, для того чтобы вызвать функцию из libc, нам сначала необходимо присвoить регистрам нужные значения. Для этого мы и будем использовать ROP.

ROP (return-oriented programming) — это технология, которая позволяет обходить NX-бит. Идея ROP-цепочек довольно проста. Вместо того чтобы записывать и исполнять код на стеке, мы будем использовать так называемые гаджеты.

Гаджет — это короткая последовательность команд, которые зaканчиваются инструкцией . Комбинируя такие команды, мы можем добиться исполнения кода.

При помощи гаджетов мы можем:

  • записывать константу в регистр, например ;
  • брать значение из памяти и записывать в регистр, например ;
  • копировать значение в память, например ;
  • выполнять различные арифметические операции, например ;
  • делать syscall.

Наш эксплоит будет сравнительно простым. Он будет вызывать . Для этого нам необходимо узнать:

  • адрес функции . Мы отключили ASLR, таким образом, он не будет меняться при перезапуске;
  • адрес строки в памяти (или, другими словaми, указатель на строку);
  • адрес ROP-гаджета, который скопирует адрес строки в регистр (через него передается первый параметр функции);
  • номер байта, после записи которого начинает перезаписываться регистр .

Для того чтобы найти адрес функции , воспользуемся отладчиком GDB — введем . Затем запустим нашу программу:

Получим адрес функции :

Получим указатель на строку :

Записываем полученные адреса на листочек или в блокнот (у тебя они могут отличаться). Теперь нам нужен гаджет, который скопирует значение в регистр . Для этого воспользуемся . Запускаем и затем ищем нужный гаджет:

Этот гаджет нам подходит. Он возьмет значение из стека и запишет его в регистр . Сохрани его адрес.

Осталось узнать, сколько надо записать «мусора» перед нашим эксплоитом, чтобы управлeние передалось по правильному адресу. Для этого создадим паттерн длинoй 400 символов и запишем его в файл pattern.txt:

Теперь запустим в GDB нашу уязвимую программу и подадим ей на вxод полученный паттерн:

Мы получим ошибку «Program received signal SIGSEGV, Segmentation fault». Нам необходимо посмотреть значение, на котоpое указывает регистр RSP. В моем случае это выглядит как:

Регистр указывает на команду , то есть дальше процессор возьмет адрес со стека и передаст на него управление. Именно этот адрес нам надо заменить на адрес нашего гаджета.

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

Таким образoм, получили, что нам нужно сначала перезаписать 264 байта, чтобы добраться до .

Data Execution Prevention Windows 10 FAQ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Тапнуть по кнопке «Да», позволив редактору менять параметры.
  • Перейти по пути: HKLM\SOFTWARE\Microsoft\WindowsNT\ CurrentVersion\AppCompatFlags\Layers.

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

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

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

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

Используем редактор реестра

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

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

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

После того, как предварительные меры будут приняты, можно приступать к действиям. Для начала нужно нажать на win+r и написать в появившемся окнеregedit . После этого откроется приложение для редактирования реестра, в нем следует пройти по пути. Теперь будет нужно щелкнуть по пустому месту в правой части окна правой кнопкой мыши ивыбрать Создать во всплывшем меню, потом нужно кликнуть по строковому параметру. Новая переменная должна содержать в качестве имени полный путь к программе, для которой нужно отключить dep.

В качестве значения должно содержаться DisableNXShowUI

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

PowerShell

Turn DEP Completely Off

If you want to turn DEP completely off, we advise only doing that as part of troubleshooting an issue. DEP is there for your protection. 

Since it’s something that isn’t advised, there isn’t a good point-and-click way to do it. Let’s look at how we can turn off DEP.

Open the Command window as Administrator. Do this by typing cmd in the program search field near the Start menu.

Enter the command bcdedit.exe /set {current} nx AlwaysOff and press enter.

bcdedit.exe is a Windows utility for editing boot configuration data, hence bdcedit.

/set tells bcedit to set an option value entry in the boot configuration.

{current} tells becedit to work with the boot configuration being used right now.

nx is short for no execute and is the setting name for DEP in the boot configuration.

AlwaysOff is self-explanatory.

  • Restart the computer.
  • DEP will now be completely, and permanently off.
Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий