본문 바로가기

아이티 :D/Reversing

PE format 상세분석 안녕하세요 :) 저번 포스팅에서는 RVA to RAW 관련 개념들을 정리했었는데 이번 포스팅에선 PE file format을 상세분석 하도록 하겠습니다. 사실 이 포스팅이 먼저였어야 하는데 말이죠!ㅎㅎ 아직까지도 PE에 대해서 초보지만 PE 분석하는 프로그램을 만들면서 하나하나 파싱해나가니깐 그래도 좀 친숙하게 PE가 다가오더라구여 그래서 이번에도 자신감을 가지고 가보도록 하겠습니다. 1. PE란 무엇인가? -Portable Executable의 약자로 Win32 운영체제가 돌아가는 시스템이면 어디서든 실행이 가능한 파일을 말합니다. -PE 파일의 종 류는 아래와 같습니다. 드라이브: SYS, 오브젝트파일: OBJ, 라이브러리: DLL, OCX, 실행파일: EXE, SCR 2. PE구조 한눈에 보기! 출.. 더보기
RVA to RAW PE 분석글을 쓰기에 앞서 RVA, RAW, VA에 대해서 포스팅을 하겠습니다. 컴퓨터는 한가지의 작업만 하는게 아니기에 메모리나 디스크의 주소공간들은 연속해서 사용되어지지 않습니다. 때문에 사용가능한 주소공간들이 비연속적 (띄엄 띄엄) 존재하게 됩니다. 그래서 가상공간에 메모리를 만들어서 (32비트 환경에서는 4G의 크기를 가집니다) 거기서 연속된 주소공간을 재구성합니다. 1. VA (Virtual Address) 가상메모리상에서 연속된 주소공간을 가르킵니다. RVA + Imagebase 공식으로 구할 수 있습니다. - Imagebase 값 (400000) - RVA 값 (1000) - RVA + Imagebase = VA 값 (401000) 2. RVA (Relative Virtual Address).. 더보기