기술 자료: 875352 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

요약

DEP(데이터 실행 방지)는 악의적인 코드가 시스템에서 실행되는 것을 방지하기 위해 메모리를 추가로 확인하는 하드웨어 및 소프트웨어 기술입니다. Microsoft Windows XP 서비스 팩 2(SP2)와 Microsoft Windows XP Tablet PC Edition 2005에서는 DEP가 하드웨어와 소프트웨어에서 모두 적용됩니다.

DEP의 가장 큰 장점은 데이터 페이지에서 코드가 실행되지 않도록 하는 것입니다. 일반적으로 기본 힙과 스택에서는 코드가 실행되지 않습니다. 하드웨어 적용 DEP는 이러한 위치에서 실행되는 코드를 검색하고 예외를 발생시킵니다. 또한 소프트웨어 적용 DEP를 사용하면 악의적인 코드가 Windows의 예외 처리 메커니즘을 이용할 수 없도록 방지할 수 있습니다.

소개

이 문서에서는 Windows XP SP2와 Microsoft Windows Server 2003 서비스 팩1(SP1)의 DEP 기능 및 다음 항목을 설명합니다.

추가 정보

하드웨어 적용 DEP

하드웨어 적용 DEP는 해당 위치에 명시적으로 실행 코드가 포함되어 있는 경우를 제외하고 프로세스의 모든 메모리 위치에서 실행할 수 없도록 표시합니다. 실행할 수 없도록 표시된 메모리 위치에서 코드를 삽입하고 실행하려는 여러 가지 공격이 있으며 DEP는 공격을 차단하고 예외를 발생시키는 방법으로 이러한 공격을 방지합니다.

하드웨어 적용 DEP는 해당 메모리에서 코드를 실행할 수 없음을 나타내는 특성으로 메모리를 표시할 때 프로세서 하드웨어를 사용합니다. DEP는 가상 메모리 페이지 단위로 작동하며, 보통 PTE(Page Table Entry)의 비트를 변경하여 메모리 페이지를 표시합니다.

하드웨어에서 DEP가 구현되는 방법과 DEP가 가상 메모리 페이지를 표시하는 방법은 프로세서 아키텍처에 의해 결정됩니다. 그러나 하드웨어 적용 DEP를 지원하는 프로세서는 적절한 특성 집합으로 표시된 페이지에서 코드가 실행될 때 예외를 발생시킬 수 있습니다.

AMD(Advanced Micro Devices)와 Intel에서는 DEP와 호환되는 Windows 호환 아키텍처를 규정하여 제공하고 있습니다.

Windows XP SP2부터 32비트 버전의 Windows에서는 다음 중 하나를 사용하고 있습니다.
  • AMD에서 규정한 NX(No-eXecute page-protection) 프로세서 기능
  • Intel에서 규정한 XD(eXecute Disable bit) 기능
이러한 프로세서 기능을 사용하려면 해당 프로세서가 PAE(실제 주소 확장) 모드로 실행되고 있어야 합니다. 그러나 Windows에서는 자동으로 PAE 모드를 설정하여 DEP를 지원하므로 사용자가 /PAE 부팅 스위치를 사용하여 별도로 PAE를 설정할 필요가 없습니다.

참고 64비트 커널은 AWE(Address Windowing Extensions)를 인식하므로 64비트 버전의 Windows에는 별도의 PAE 커널이 없습니다.
Windows Server 2003의 PAE 및 AWE에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
283037 Windows 2000 및 Windows Server 2003에서 대형 메모리 지원 기능을 사용할 수 있다

소프트웨어 적용 DEP

Windows XP SP2에는 데이터 실행 방지 보안 검사 기능이 추가되었습니다. 이러한 보안 검사 기능은 소프트웨어 적용 DEP라고 하며, 악의적인 코드가 Windows의 예외 처리 메커니즘을 이용할 수 없도록 방지합니다. 소프트웨어 적용 DEP는 Windows XP SP2를 실행할 수 있는 모든 프로세서에서 실행됩니다. 기본적으로 소프트웨어 적용 DEP는 해당 프로세서의 하드웨어 적용 DEP 기능과 관계없이 일부 시스템 바이너리만 보호합니다.

장점

DEP의 가장 큰 장점은 기본 힙 페이지, 여러 스택 페이지 및 메모리 풀 페이지와 같은 데이터 페이지에서 코드가 실행되지 않도록 하는 것입니다. 일반적으로 기본 힙과 스택에서는 코드가 실행되지 않습니다. 하드웨어 적용 DEP는 이러한 위치에서 실행되는 코드를 검색하고 예외를 발생시킵니다. 예외가 처리되지 않으면 프로세스가 중지됩니다. 커널 모드의 보호된 메모리에서 코드를 실행하면 중지 오류가 발생합니다.

DEP는 다양한 보안 침입을 차단할 수 있습니다. 특히 바이러스 또는 다른 유형의 공격을 통해 프로세스에 추가 코드를 삽입한 다음, 이 코드를 실행하려고 하는 악의적인 프로그램을 차단하는 데 도움이 됩니다. DEP를 사용하는 시스템에서 삽입된 코드를 실행하면 예외가 발생합니다. 소프트웨어 적용 DEP는 Windows의 예외 처리 메커니즘을 이용하는 프로그램을 차단하는 데 도움이 됩니다.

시스템 전체 DEP 구성

시스템에 대한 DEP 구성은 Boot.ini 파일의 스위치를 통해 제어됩니다. 관리자로 로그온한 경우에는 제어판의 시스템 대화 상자를 사용하여 DEP 설정을 쉽게 구성할 수 있습니다.

Windows에서는 하드웨어 적용 DEP와 소프트웨어 적용 DEP 둘 다에 대해 시스템 전체에 적용되는 4가지 구성을 지원합니다.
표 축소표 확대
구성설명
OptIn이 설정이 기본 구성입니다. 하드웨어 적용 DEP를 구현할 수 있는 프로세서가 장착된 시스템에서는 "선택(opt-in)"한 일부 시스템 바이너리와 프로그램에 대해 기본적으로 DEP를 사용할 수 있도록 설정됩니다. 이 옵션을 사용하면 기본적으로 Windows 시스템 바이너리만 DEP를 통해 보호됩니다.
OptOut기본적으로 DEP는 모든 프로세스에 대해 사용할 수 있도록 설정됩니다. 제어판의 시스템 대화 상자를 사용하면 DEP가 적용되지 않는 특정 프로그램 목록을 수동으로 만들 수 있습니다. IT(정보 기술) 전문가는 Application Compatibility Toolkit를 사용하여 DEP 보호에서 하나 이상의 프로그램을 "제외(opt-out)"할 수 있습니다. DEP에 대한 시스템 호환성 수정 프로그램이나 보완 프로그램(shim)이 적용됩니다.
AlwaysOn이 설정을 사용하면 DEP가 전체 시스템을 보호하며 모든 프로세스가 항상 DEP가 적용된 상태로 실행됩니다. 또한 DEP 보호에서 특정 프로그램을 제외하기 위한 예외 목록을 사용할 수 없으며 DEP에 대한 시스템 호환성 수정 프로그램이 적용되지 않습니다. Application Compatibility Toolkit를 사용하여 제외된 프로그램도 DEP가 적용된 상태로 실행됩니다.
AlwaysOff이 설정을 사용하면 하드웨어 DEP 지원에 관계없이 DEP가 시스템 전체를 보호하지 않습니다. Boot.ini 파일에 /PAE 옵션이 없으면 프로세서가 PAE 모드로 실행되지 않습니다.
하드웨어 적용 DEP와 소프트웨어 적용 DEP는 같은 방식으로 구성됩니다. 시스템 전체 DEP 정책을 OptIn으로 설정하면 동일한 Windows 핵심 바이너리 및 프로그램이 하드웨어 적용 DEP와 소프트웨어 적용 DEP에서 모두 보호되고, 시스템에서 하드웨어 적용 DEP를 사용할 수 없으면 Windows 핵심 바이너리와 프로그램은 소프트웨어 적용 DEP에서만 보호됩니다.

마찬가지로 시스템 단위 DEP 정책을 OptOut으로 설정하면 DEP 보호에서 제외된 프로그램이 하드웨어 적용 DEP와 소프트웨어 적용 DEP에서도 모두 제외됩니다.

Boot.ini 파일 설정은 다음과 같습니다.
/noexecute=policy_level
참고 policy_level은 AlwaysOn, AlwaysOff, OptIn 또는 OptOut으로 정의됩니다.

Windows XP SP2를 설치해도 Boot.ini 파일의 기존 /noexecute 설정은 바뀌지 않습니다. 이러한 설정은 Windows 운영 체제 이미지를 하드웨어 적용 DEP 지원이 있거나 없는 컴퓨터 간에 이동할 때도 바뀌지 않습니다.

기본적으로 무인 설치에 다른 정책 수준을 지정한 경우가 아니면 Windows XP SP2 및 Windows Server 2003 SP1 이상 버전을 설치하는 동안 OptIn 정책 수준이 사용되도록 설정됩니다. DEP를 지원하는 Windows 버전에 대한 Boot.ini 파일에 /noexecute=policy_level 설정이 없어도 /noexecute=OptIn 설정이 포함된 경우와 동일하게 동작합니다.

관리자로 로그온하면 시스템 등록 정보데이터 실행 방지(DEP) 탭에서 OptIn 정책과 OptOut 정책 간에 전환하도록 DEP를 수동으로 구성할 수 있습니다. 다음 절차에서는 컴퓨터에서 수동으로 DEP를 구성하는 방법을 보여 줍니다.
  1. 시작, 실행을 차례로 누르고 sysdm.cpl을 입력한 다음 확인을 누릅니다.
  2. 고급 탭의 성능에서 설정을 누릅니다.
  3. 데이터 실행 방지(DEP) 탭에서 다음 절차 중 하나를 사용합니다.
    • OptIn 정책을 선택하려면 데이터 실행 방지(DEP)를 필수적인 Windows 프로그램 및 서비스에만 사용을 누릅니다.
    • OptOut 정책을 선택하려면 데이터 실행 방지(DEP)를 사용자가 직접 선택한 항목을 제외한 모든 프로그램 및 서비스에 사용을 누른 다음, 추가를 눌러 DEP 기능을 사용하지 않을 프로그램을 추가합니다.
  4. 확인을 차례로 두 번 누릅니다.
IT 전문가는 여러 가지 방법으로 시스템 전체 DEP 구성을 제어할 수 있습니다. Windows XP SP2에 포함되어 있는 Bootcfg.exe 도구 또는 스크립팅 메커니즘을 사용하여 직접 Boot.ini 파일을 수정할 수 있습니다.

Boot.ini 파일을 사용하여 AlwaysOn 정책으로 전환하도록 DEP를 구성하려면 다음과 같이 하십시오.
  1. 시작을 누르고 내 컴퓨터를 마우스 오른쪽 단추로 누른 다음 속성을 누릅니다.
  2. 고급 탭을 누른 다음 시작 및 복구 필드에서 설정을 누릅니다.
  3. 시스템 시작 필드에서 편집을 누릅니다. 그러면 Boot.ini 파일이 메모장에 열립니다.
  4. 메모장의 편집 메뉴에서 찾기를 누릅니다.
  5. 찾을 내용 상자에 /noexecute를 입력하고 다음 찾기를 누릅니다.
  6. 찾기 대화 상자에서 취소를 누릅니다.
  7. policy_levelAlwaysOn으로 바꿉니다.

    경고 텍스트를 정확하게 입력해야 합니다. 그러면 Boot.ini 파일 스위치가 다음과 같이 표시됩니다.
    /noexecute=AlwaysOn
  8. 메모장의 파일 메뉴에서 저장을 누릅니다.
  9. 확인을 차례로 두 번 누릅니다.
  10. 컴퓨터를 다시 시작합니다.
Windows XP SP2 이상 버전을 무인 설치하는 경우 Unattend.txt 파일을 사용하여 특정 DEP 구성을 미리 채울 수 있습니다. Unattend.txt 파일의 [Data] 섹션에 있는 OSLoadOptionsVar 항목을 사용하면 시스템 전체 DEP 구성을 지정할 수 있습니다.

프로그램별 DEP 구성

DEP가 OptOut 정책 수준으로 설정되어 있는 경우 프로그램 호환을 위해 개별 32비트 프로그램에 대해 선택적으로 DEP를 사용할 수 없도록 설정할 수 있습니다. 이렇게 하려면 시스템 등록 정보데이터 실행 방지(DEP) 탭을 사용하여 특정 프로그램에 대해 선택적으로 DEP를 사용할 수 없도록 설정하십시오. Windows XP SP2에는 IT 전문가를 위해 DisableNX라는 프로그램 호환성 수정 프로그램이 추가되었습니다. DisableNX 호환성 수정 프로그램은 이 수정 프로그램이 적용된 프로그램에 대해 데이터 실행 방지 기능을 사용할 수 없도록 설정합니다.

DisableNX 호환성 수정 프로그램은 Application Compatibility Toolkit를 사용하여 프로그램에 적용할 수 있습니다. Windows 응용 프로그램 호환성에 대한 자세한 내용은 다음 Microsoft 웹 사이트의 Windows 응용 프로그램 호환성을 참조하십시오.
http://www.microsoft.com/technet/prodtechnol/windows/appcompatibility/default.mspx(영문)
자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
912923 컴퓨터에서 하드웨어 DEP가 사용 가능하고 구성되어 있는지 확인하는 방법

참조

자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
899298 Windows Server 2003 서비스 팩 1의 "데이터 실행 방지 이해" 도움말 항목에 DEP 기본 설정에 대한 내용이 잘못 설명되어 있다




Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.

속성

기술 자료: 875352 - 마지막 검토: 2006년 11월 20일 월요일 - 수정: 14.1
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Windows Server 2003 Service Pack 1?을(를) 다음과 함께 사용했을 때
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows XP Professional Service Pack 2 (SP2)
  • Microsoft Windows XP Home Edition Service Pack 2 (SP2)
  • Microsoft Windows XP Media Center Edition Service Pack 2 (SP2)
  • Microsoft Windows XP Tablet PC Edition 2005
키워드:?
kbinfo kbtshoot KB875352

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com