- 가장 어렵지만 제일 중요한 부분으로, 악성코드의 각종 기법들과 직접 싸우는 분석 방법
- 복호화, 안티 디버깅 메커니즘 우회 후 악성코드의 알고리즘을 분석 -> 침해사고의 분석 관점에서
<역공학 기법 이해>
- 아키텍처와 악성코드
- 어셈블리 기본
- PE 구조 이해
- 난독화와 패킹
- 리버싱이란?
- Reverse
- 동사 - (정반대로)바꾸다, (결정 등을) 뒤집다, (위치, 기능을) 서로 바꾸다
- 명사 - (방금 언급한 것의) (정)반대(역), (동전, 직물, 종의 등의 ) 뒷면
- 형용사 - (방금 언급한 것의) (정)반대(역), 뒷면의
- Reverse Engineering : 프로그램 또는 시스템의 구조와 원리를 파악해 의미 있는 정보를 이끌어 내는 모든 행위
- 레지스터 (CPU 내의 저장장치라고 이해하면 쉽다)
- E?X-> 가운데 글자만 우선 기억하자.
- E : Expend, 16비트 레지스터보다 2배 들어났다, 확장된 레지스터를 의미, 32비트 단위 ex) 0-15비트는 AX 이다.
- EAX (Accumulator) : 각종 연산에 쓰이며, 많이 쓰이는 변수이고 주로 리턴 값을 저장한다.
- EDX (Data) : 각종 연산에 쓰이는 변수
- ECX (Count) : for 문에서의 i의 역할, ECX는 미리 값을 정해놓고 0이 될 때까지 진행, 변수로 사용해도 무방