본문 바로가기
IT 보안

PE 포맷에서의 사용하는 확장자 및 섹션에 대한 설명

by 떠도리c 2024. 9. 23.
반응형

PE 포맷

PE(포터블 실행 파일) 포맷은 주로 윈도우 시스템에서 사용되는 실행 파일 포맷입니다.

윈도우의 PE(Portable Executable) 포맷은 다양한 종류의 바이너리 파일에 사용되며, 이에 따라 여러 가지 확장자를 가질 수 있습니다.

 

 

PE포맷의 확장자 종류

  1. .exe 파일: 실행 가능한 프로그램 파일입니다. 사용자가 직접 실행할 수 있으며, 일반적으로 애플리케이션의 메인 실행 파일로 사용됩니다.
  2. .dll 파일: Dynamic Link Library의 약자로, 여러 프로그램이 공유하여 사용할 수 있는 코드와 데이터를 포함하고 있습니다.
  3. .sys 파일: 운영체제의 시스템 파일 또는 드라이버 파일입니다. 주로 하드웨어 장치를 제어하는데 사용됩니다.
  4. .ocx 파일: ActiveX 컨트롤 파일입니다. 사용자 인터페이스 컴포넌트를 재사용 가능하게 만드는데 사용됩니다.
  5. .scr 파일: 스크린 세이버 파일입니다. 윈도우에서 스크린 세이버 기능을 제공하는데 사용됩니다.
  6. .cpl 파일: 제어판 확장 파일입니다. 윈도우의 제어판에 추가 기능을 제공하는데 사용됩니다.
  7. .drv 파일: 장치 드라이버 파일입니다. 특 하드웨어 장치를 제어하는데 사용되며, .sys 파일 유사한 역할을 합니다.

 

 

PE포맷의 섹션 정보

PE 포맷은 다양한 섹션으로 구성되어 있습니다.

다음은 PE포맷에서 사용되는 대표적인 섹션에 대한 설명입니다.

  1. .text 섹션: 이 섹션은 프로그램 코드가 포함되어 있습니다. 이는 CPU가 직접 실행하는 명령어 코드가 포함되어 있습니다.
  2. .data 섹션: 이 섹션은 초기화된 데이터를 포함하고 있습니다. 즉, 프로그램 시작 시 이미 값이 할당된 변수들의 정보가 여기에 저장됩니다.
  3. .rdata 섹션: 이 섹션은 읽기 전용 데이터를 포함하고 있습니다. 주로 상수 데이터나 문자열이 이 섹션에 위치합니다.
  4. .idata 섹션: 이 섹션은 Import Directory Table을 포함하고 있습니다. 이 테이블은 실행 파일이 참조하는 DLL과 그 안의 함수 정보를 가지고 있습니다.(섹션이 존재하지 않으면 Import 함수 정보는 .rdatadp 저장)
  5. .edata 섹션: 이 섹션은 Export Directory Table을 포함하고 있습니다. 이 테이블은 DLL이 제공하는 함수 정보를 가지고 있습니다. (섹션이 존재하지 않으면 Export 함수 정보는 .rdatadp 저장)
  6. .reloc 섹션: 이 섹션은 재배치 정보를 담고 있습니다. 실행 파일이 메모리에 로드될 때, 참조 주소를 동적으로 변경하기 위한 정보가 이 섹션에 저장됩니다.
  7. .rsrc 섹션: 이 섹션은 리소스 정보를 포함하고 있습니다. 프로그램 아이콘, 메뉴, 문자열 테이블 등의 리소스 정보가 이 섹션에 저장됩니다.
  8. .tls 섹션: 이 섹션은 Thread Local Storage(TLS)를 위한 섹션입니다. 각 스레드가 고유하게 가지는 데이터를 위한 공간을 정의합니다.

 

반응형