데이터 實行 防止
(Data Execution Prevention, DEP)는 現代의
마이크로소프트 윈도우
運營 體制
에 包含된 保安 機能이며, 實行 防止 메모리 領域의 實行 코드에서
應用 프로그램
이나 서비스가 實行되지 못하게 막기 위해 考案된 것이다. 이를테면
버퍼 오버플로
를 통한 코드를 貯藏하는 특정한 利用을 막을 수 있다.
DEP는 두 가지 모드로 實行된다.:
- CPU
를 위한 하드웨어 强化 DEP: 메모리 페이지를 實行 不可能 狀態로 標示한다.
- 소프트웨어 强化 DEP: CPU가 하드웨어的으로 데이터 實行 防止를 支援하지 못하는 境遇 이를 使用한다.
소프트웨어 强化 DEP는 데이터 페이지의 코드 實行을 막지는 못하지만, 다른 形態의 種類 (SEH 덮어쓰기)는 막을 수 있다.
DEP는
윈도우 XP
서비스팩 2에 導入되었으며 윈도우 XP 태블릿 PC 에디션 2005,
윈도우 서버 2003
서비스팩 1,
윈도우 비스타
에 包含되어 있다. 나중에 나오는 運營 體制들은 이 機能을 如前히 支援하고 있다.
設定 方法
[
編輯
]
프로그램 例外 處理
[
編輯
]
"데이터 實行 防止"의 例外 處理를 위해서는 다음과 같은 過程을 使用하여 構成할 수 있다.
- 윈도우 XP ~ 윈도우 2003의 境遇
: 制御瓣→시스템→高級→性能의 설정→데이터 實行 防止(DEP) 탭
- 윈도우 비스타 以上의 境遇
: 制御瓣→시스템→高級 시스템 設定→性能의 설정→데이터 實行 防止(DEP) 탭
政策 水準 設定
[
編輯
]
政策 水準은 다음과 같이 나뉜다.
- OptIn: 윈도우 XP의 基本 構成값이다. 하드웨어 强化 DEP 機能이 있는 프로세서를 使用한다면, DEP는 基本的으로 使用된다.
- OptOut: 윈도우 2003 서비스팩 1의 基本 構成값이다. DEP에 對한 시스템 互換性 解決은 效力을 發揮하지 않는다.
- AlwaysOn: 모든 시스템에 DEP를 使用하는 設定값이다. 모든 過程은 언제나 DEP에 適用된다. DEP 保護에 例外 프로그램으로 指定된 目錄이 있다 할지라도 이는 無視된다. DEP에 對한 시스템 互換性도 效力을 發揮하지 않는다.
- AlwaysOff: 어느 시스템에서도 DEP를 使用하지 않게 만드는 設定값이다.
윈도우 XP ~ 윈도우 2003
[
編輯
]
- 始作→實行에 들어가서 msconfig라고 入力한다.
- 부팅 탭을 눌러 boot.ini 編輯에 들어가서 /noexecute="政策 水準"을 指定한다. 政策 水準은 위에 나온 값 가운데 하나를 골라 넣으면 된다. (이를테면, 데이터 實行 防止를 完全히 끄려면 /noexecute=AlwaysOff)
윈도우 비스타 以上의 境遇
[
編輯
]
윈도우 비스타 以上에서는 boot.ini가 存在하지 않기 때문에 다음과 같은 過程을 使用하여 機能을 變更할 수 있다.
[1]
- 始作
단추를 누르고
모든 프로그램
→
補助 프로그램
로 들어간다.
- 命令 프롬프트
에서 마우스 오른쪽 단추를 누르고
管理者 權限으로 實行
을 누른다.
- 接近 權限을 물을 때
許容
을 누른다.
- 다음과 같이 入力한다.
bcdedit.exe /set {current} nx 政策 水準
여기서 政策 水準은 위에 나온 값 가운데 하나를 골라 넣으면 된다. (이를테면, 데이터 實行 防止를 完全히 끄려면 "bcdedit.exe /set {current} nx AlwaysOff")
參照
[
編輯
]
같이 보기
[
編輯
]
外部 링크
[
編輯
]