혜랑's STORY

[Lazenca] Protection Tech : NX bit 본문

2021 SISS 21기 활동/겨울방학 System

[Lazenca] Protection Tech : NX bit

hyerang0125 2021. 2. 7. 17:30

 

본 포스팅은 아래 사이트의 내용을 요약한 것이다.

 

 

01.NX Bit(MS : DEP) - TechNote - Lazenca.0x0

Excuse the ads! We need some help to keep our site up. List NX Bit(MS : DEP) NX Bit(NX bit, Never eXecute bit, 실행 방지 비트)이란?프로세스 명령어나 코드 또는 데이터 저장을 위한 메모리 영역을 따로 분리하는 CPU의 기

www.lazenca.net

 

1. NX bit(실행 방지 비트)이란?

프로세스 명령어나 코드 또는 데이터 저장을 위한 메모리 영역을 따로 분리하는 CPU의 기술이다. NX 특성으로 지정된 모든 메모리 구역은 데이터 저장을 위해서만 사용되며, 프로세서 명령어가 그곳에 상주하지 않음으로써 실행되지 않도록 만들어 준다.

 

2. DEP(Data Execution Prevention)이란?

마이크로소프트 윈도우 운영 체제에 포함된 보안 기능이며, 악의적인 코드가 실행되는 것을 방지하기 위해 메모리를 추가로 확인하는 하드웨어 및 소프트웨어 기술이다.

  • 하드웨어 DEP : 메모리에 명시적으로 실행 코드가 포함되어 있는 경우를 제외하고 프로세스의 모든 메모리 위치에서 실행할 수 없도록 표시한다.
  • 소프트웨어 DEP : CPU가 하드웨어 DEP를 지원하지 않을 경우 사용한다.

-> 예를 들어 공격자가 Heap, Stack 영역에 쉘코드를 저장해서 실행하기 위해서는 해당 영역에 싱행 권한이 있어야한다. 즉, DEP가 적용되지 않았을 경우에는 쉘코드가 실행되고, DEP가 적용된 경우레는 실행 권한이 없으므로 쉘코드가 실행되지 않는다.