본문 바로가기
reversing

기초 리버싱

by 코끼리_땃쥐 2021. 11. 2.
반응형

1.1. 리버스 엔지니어링

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

 

1.2. 리버스 코드 엔지니어링

 리버스 코드 엔지니어링(Reverse Code Engineering, RCE)은 소프트웨어 분야의 리버스 엔지니어링.

 

1.2.1. 리버싱(분석) 방법

 1) 정적분석

  파일의 겉모습을 관찰하여 분석하는 방법. 

  파일의 종류(EXE, DLL, DOC, ZIP 등), 크기, 헤더(PE)정보, Import/Export API, 내부문자열, 실행 압축 여부, 등록정보, 디버깅정보, 디지털 인증서 등의 다양한 내용을 확인하는 것

 

 2) 동적분석

  파일을 직접 실행시켜서 그 행위를 분석하고, 디버깅을 통하여 코드 흐름과 메모리 상태등을 자세히 살펴보는 방법.

  파일, 레지스트리(Registry), 네트워크등을 관찰하면서 프로그램의 행위를 분석. 디버거를 이용하여 프로그램 내부 구조 와 동작원리를 분석 하는 것

 

 

반응형

'reversing' 카테고리의 다른 글

Hook ? (훅 이란 ?)  (0) 2022.02.24
함수호출 규약(Calling Convention)  (0) 2021.11.09
스택 프레임  (0) 2021.11.08
스택  (0) 2021.11.04
CPU 레지스터  (0) 2021.11.04

댓글