OS/Windows(2)
-
PE File Format Header 요약
[PE_File_Format] 1. VA = Virtual Address는 프로세스 가상 메모리의 절대주소. 2. RVA = RelativeVirtual Address는 어느 기준 위치(ImageBase)에서부터의 상대주소. 2.1. RVA + ImageBase = VA 3. DOS Header. 3.1. PE Header의 제일 앞부분. 3.2. IMAGE_DOS_HEADER 구조체가 존재. * e_magic = DOS Signature(MZ - 4D5A) * e_lfanew = NT Header의 옵셋을 표시(파일에 따라 가변적인 값을 가짐) 4. DOS Stub = DOS Header 밑에 존재. 5. NT Header. 5.1. IMAGE_NT_HEADERS. * IMAGE_FILE_HEADER ..
2020.05.09 -
Process와 Thread
Windows의 Process와 Thread에 대해서 알아보도록 하겠습니다. 먼저 Process에 대해 알아보도록 하겠습니다. Process란 우리가 흔히 말하는 프로그램이 실행되었을 때, 프로그램과 관련된 정보들을 담고 있는 컨테이너라고 볼 수 있습니다. Process가 담고 있는 정보들은 다음과 같습니다. 1. 가상 주소 공간 : Process가 사용할 수 있는 가상 메모리 주소 공간. 1-1. Process 별로 가상 주소 공간을 가지고 있습니다. 1-2. x86은 4GB, x64는 16TB 크기를 가집니다. 2. 실행 가능한 프로그램 : 코드와 데이터로 이루어져 있으며, 이 정보들은 실행되는 순간에 Process의 가상 주소 공간에 매핑. 2-1. 프로그램(확장자 exe)을 PE View로 열어 ..
2020.05.03