Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • NX Bit(NX bit, Never eXecute bit, 실행 방지 비트)이란?
    • 프로세스 명령어나 코드 또는 데이터 자장을 저장을 위한 메모리 영역을 따로 분리하는 CPU의 기술입니다.
    • NX 특성으로 지정된 모든 메모리 구역은 데이터 저장을 위해서만 사용되며, 프로세서 명령어가 그 곳에 상주하지 않음으로써 실행되지 않도록 만들어 준다.
  • DEP(Data Execution Prevention)이란? 
    • 마이크로소프트 윈도우 운영 체제에 포함된 보안 기능이며, 악의적인 코드가 실행되는 것을 방지하기 위해 메모리를 추가로 확인하는 하드웨어 및 소프트웨어 기술입니다.
    • DEP는 두 가지 모드로 실행된다.
      • 하드웨어 DEP: 메모리에 명시적으로 실행 코드가 포함되어 있는 경우를 제외하고 프로세스의 모든 메모리 위치에서 실행할 수 없도록 표시합니다.
        • 대부분의 최신 프로세서는 하드웨어 적용 DEP를 지원합니다.
      • 소프트웨어 DEP: CPU가 하드웨어 DEP를 지원하지 않을 경우 사용합니다.
  • 예를 들어 공격자가 Heap, Stack 영역에 Shellcode를 저장해서 실행하기 위해서는 해당 영역에 실행권한이 있어야 합니다.
    • DEP가 적용되지 않았을 경우에는 쉘코드가 실행이 됩니다.
    • DEP가 적용된 경우에는 실행권한이 없으므로 쉘코드가 실행되지 않습니다.
      • 프로그램에서 해당 동작에 대한 예외처리 후 프로세스가 종료가 됩니다.

...