Reversing

[Reversing] 리버싱 입문, 리버싱(Reverse Engineering, RE) ?

psswrd 2020. 4. 8. 15:03

참고문 : 리버싱 핵심원리, 이승원(2012)

 

리버싱 (Reverse Engineering, RE) ?

 : 역공학, 물건이나 기계장치 혹은 시스템 등의 구조, 기능, 동작 등을 분석하여 그 원리를 이해하며 단점을 보완하고 새로운 아이디어를 추가하는 일련의 작업.

 

분석(리버싱) 방법

     1 - 정적 분석

      :  파일의 겉모습을 관찰하여 분석하는 방법으로 파일을 실행하지 않고 분석하는 방법이다. 파일의 종류(확장자), 크기, 헤더 정보, 내부 문자열, 디버깅 정보 등의 다양한 내용을 확인하는 것이다. 

정적 분석의 예(hex) - HxD

     2 - 동적 분석

      :  파일을 직접 실행시켜서 그 행위를 분석하고, 디버깅을 통하여 코드 흐름과 메모리 상태 등을 자세히 살펴보는 분석방법이다. 파일, 레지스트리, 네트워크 등을 관찰하면서 프로그램의 행위를 분석한다. 또한 디버거를 이용하여 프로그램 내부 구조와 동작 원리를 분석할 수도 있다.

동적 분석의 예(assembly) - Ollydbg

 

ps. 교내 동아리 스터디 시간에서 리버싱을 공부했었는데, 악성코드 분석을 공부하고자 다시금 되새겨 보기 위해 정리하는 중