-
PE 파일 구조 (3) - PE 헤더(NT Header)IT/리버싱 핵심원리 2017. 11. 29. 16:28
공부를 시작하기에 앞서 본 글은 '리버싱핵심원리', 이승원 저자, 인사이트 를 참고했음을 밝힙니다.또한 공부하는 입장에서 정리를 목적으로 작성하였기때문에 틀린 정보가 있을수도 있다는 것을 알려드립니다. 관련 글PE 파일 구조 (1) - PE 기본구조, VA & RVAPE 파일 구조 (2) - PE 헤더(DOS Header, DOS Stub)PE 파일 구조 (3) - PE 헤더(NT Header) 계속해서 PE 헤더에 대해서 알아보도록 하겠습니다. NT Header NT Header 구조체 IMAGE_NT_HEADERS입니다. IMAGE_NT_HEADERS 구조체 typedef struct _IMAGE_NT_HEADERS { DWORD Signature; IMAGE_FILE_HEADER FileHeader..
-
PE 파일 구조 (2) - PE 헤더(DOS Header, DOS Stub)IT/리버싱 핵심원리 2017. 11. 29. 15:51
공부를 시작하기에 앞서 본 글은 '리버싱핵심원리', 이승원 저자, 인사이트 를 참고했음을 밝힙니다.또한 공부하는 입장에서 정리를 목적으로 작성하였기때문에 틀린 정보가 있을수도 있다는 것을 알려드립니다. 관련 글PE 파일 구조 (1) - PE 기본구조, VA & RVAPE 파일 구조 (2) - PE 헤더(DOS Header, DOS Stub)PE 파일 구조 (3) - PE 헤더(NT Header) 1. PE 헤더 - PE 헤더는 많은 구조체로 이루어져 있다. DOS Header IMAGE_DOS_HEADER 구조체 typedef struct _IMAGE_DOS_HEADER { WORD e_magic; WORD e_cblp; WORD e_cp; WORD e_crlc; WORD e_cparhdr; WORD e..
-
PE 파일 구조 (1) - PE 기본구조, VA & RVAIT/리버싱 핵심원리 2017. 11. 28. 10:49
공부를 시작하기에 앞서 본 글은 '리버싱핵심원리', 이승원 저자, 인사이트 를 참고했음을 밝힙니다.또한 공부하는 입장에서 정리를 목적으로 작성하였기때문에 틀린 정보가 있을수도 있다는 것을 알려드립니다. 관련 글PE 파일 구조 (1) - PE 기본구조, VA & RVAPE 파일 구조 (2) - PE 헤더(DOS Header, DOS Stub)PE 파일 구조 (3) - PE 헤더(NT Header) 1. PE File Format - PE(Portable Executable) 파일은 Windows 운영체제에서 사용되는 실행 파일 형식이다. - PE 파일은 32비트 형태의 실행 파일을 의미하며 PE32라는 용어를 사용하기도 한다. 64비트의 형태의 실행 파일은 PE+ 또는 PE32+ 라고 부른다. PE 파일 ..
-
OWASP TOP 10 2017 Final (최종버전 공개)IT/일반 2017. 11. 28. 09:07
OWASP TOP 10 2017 Final 이 나왔습니다.얼마 전까지만해도 OWASP TOP 10 2017이 나와 참고하고 있었는데 이번에 Final이 나왔습니다.기사에 따르면 OWASP은 보안 커뮤니티의 피드백을 통해 Top 10 목록을 수정하고 업데이트 했다고 합니다.또한 500명의 전문가의 조언을 수렴하고, 10만개 애플리케이션으로부터 수집한 각종 취약점들을 분석한 결과라고도 설명했습니다. [관련 기사] http://www.boannews.com/media/view.asp?idx=58171&kind=1&search=title&find=owasp아래 그림은 OWASP Top 10 - 2017 Final 입니다. XSS는 순위에서 떨어졌으며, CSRF는 순위에서 벗어났습니다. 이는 현대 보안의 트랜드를..
-
함수 호출 규약(Calling Convention)IT/리버싱 핵심원리 2017. 11. 24. 14:27
공부를 시작하기에 앞서 본 글은 '리버싱핵심원리', 이승원 저자, 인사이트 를 참고했음을 밝힙니다.또한 공부하는 입장에서 정리를 목적으로 작성하였기때문에 틀린 정보가 있을수도 있다는 것을 알려드립니다. 1. 함수 호출 규약(Calling Convention) - 함수를 호출할 때 파라미터를 어떤 식으로 전달하는가? 에 대한 일종의 약속이다. - 함수 호출 후에 ESP(스택 포인터)를 어떻게 정리하는지에 대한 약속이다. 주요 함수 호출 규약을 설명하기 앞서서 앞으로 나오게 될 용어들을 알아보자. Caller(호출자) 함수를 호출한 쪽 Callee(피호출자) 호출을 당한 함수 ex) main() 함수에서 printf() 함수를 호출했다면 Caller는 main()이고, Callee는 printf()가 되는 ..
-
스택 프레임(Stack Frame) 실습 - stackframe.exeIT/리버싱 핵심원리 2017. 11. 23. 17:57
공부를 시작하기에 앞서 본 글은 '리버싱핵심원리', 이승원 저자, 인사이트 를 참고했음을 밝힙니다. 또한 공부하는 입장에서 정리를 목적으로 작성하였기때문에 틀린 정보가 있을수도 있다는 것을 알려드립니다. 관련글 스택(Stack) 이란 무엇인가? 스택 프레임(Stack Frame) 에 대해 알아보자 스택 프레임(Stack Frame) 실습 - stackframe.exe 실습 '리버싱핵심원리' 에서 제공하는 stackframe.exe 파일을 예제로 실습을 진행하겠다. stackframe.exe 다운로드 먼저, "StackFrame.exe" 파일이 어떠한 코드로 작성 되었는지 아래 그림을 통해 살펴보자. StackFrame.cpp 소스코드 위의 코드를 간단히 살펴보면, 1. 메인함수 시작 2. a 변수에 1 ..
-
스택 프레임(Stack Frame) 에 대해 알아보자IT/리버싱 핵심원리 2017. 11. 23. 17:42
공부를 시작하기에 앞서 본 글은 '리버싱핵심원리', 이승원 저자, 인사이트 를 참고했음을 밝힙니다.또한 공부하는 입장에서 정리를 목적으로 작성하였기때문에 틀린 정보가 있을수도 있다는 것을 알려드립니다. 관련 글스택(Stack) 이란 무엇인가?스택 프레임(Stack Frame) 에 대해 알아보자스택 프레임(Stack Frame) 실습 - stackframe.exe 1. 스택 프레임스택 프레임이란 ESP(스택 포인터)가 아닌 EBP(베이스 포인터) 레지스터를 사용하여 스택 내의 로컬 변수, 파라미터, 복귀 주소에 접근하는 기법을 말한다. 스택 프레임을 어셈블리 코드로 보면 다음과 같은 형식이다. PUSH EBPMOV PEB, ESP ; 함수 시작 ; 현재의 ESP(스택포인터)를 EBP에 저장 ... ; 함수..