반응형

실행 파일을 분석하는 방법은 크게 두 가지로 나눌 수 있다. 

1. 정적분석

파일을 실행하지 않고, 파일의 겉모습만을 관찰하여 분석하는 방법이다. 파일의 종류라던가, 압축 정보, 크기, 헤더등의 다야한 내용을 확인한다. 예를 들어, 악성코드 같은 경우는 실행하면서 분석하기엔 큰 리스크가 따를 수 있으므로, 정적분석 방법을 이용하여 분석한다.  

대표적인 툴로는 디스어셈블러의 IDA가 있다. 디스어셈블러를 이용하여 내부 코드와 구조를 확인하는 방법도 정적분석의 범위에 포함되기 때문이다.

IDA의 장점으로는 거의 모든 CPU에서 지원되고, 각종 플러그인 역시 지원된다. 기계어 코드로 부터 컴파일러 특유의 라이브러리 함수를 산출해낼 수 있는 기능이 있으며, 파라미터 사용을 철회할 수 있는 기능도 보유하고 있다. 무엇보다. 4.9버전은 무료로 지원되고 있다.

2. 동적분석

동적 분석은 파일을 직접 한줄씩 실행시켜 분석하고, 디버깅하여 자세하게 살펴보는 방법이다. 파일, 레지스트리 등을 관찰하면서 프로그램의 실행원리를 분석한다. 디버거를 통해 프로그램 내부 구조와 동작원리를 분석 가능하다.

대표적인 툴로는 디버거인 올리디버거가 있다.


리버서들이 가장 많이 사용하는 디버거로서, 여러 플러그인도 많이 존재한다.


 

반응형

'Study > Reversing' 카테고리의 다른 글

"pwnable.kr" fd 문제풀이  (0) 2014.11.04
PE헤더-NT Header  (0) 2014.08.03
PE헤더-Dos header/Dos stub  (0) 2014.08.03
PE파일 구조  (0) 2014.07.31

+ Recent posts