튜기's blogggg

리버싱 기초 #1

by St1tch

정적 분석 파일종류크기헤더정보, API, 내부문자열  다양한 정보 확인 겉모습을 관찰함.

                  내부코드와 코드구조를 분석

동적 분석 파일을 실행시켜 확인디버깅을 통해 코드의 흐름과 메모리 상태 확인

 

정적분석으로 정부를 수집하면서 해당 프로그램의 구조와 동작원리에 대해 예측한   정보를 이용해 동적 분석을 한다.

 

Stub Code :  컴파일러 별로 프로그램 초기에 싱행되는 코드

패치 파일프로세스 메모리의 내용을 변경하는 작업.

 

IA-32 레지스터

1. 범용레지스터

EAX : 연산, return 등에 사용되는 가장 많이 사용되는 레지스터.(Accumulator)

EDX : EAX 같이 연산에 사용, return 에는 사용하지 않는다. (Data)

ECX : 주로 루프문에서 카운팅   사용(Count)

EBX : 용도 없이 필요할  그냥 쓴다.

ESP : stack 제일 아래부분현재 진행 stack부분아래로 성장한다.

EBP : stack 가장  부분(기준점), Base Pointer


              


ESI,EDI : 문자열이나 각종 반복 데이터를 처리 또는 메모리를 옮기는데 사용

2. 세그먼트레지스터

CS, DS, SS, ES, FS, GS

3. 컨트롤 레지스터

32bit 상태를 나타내며  알필요 X

4. Instruction Pointer

EIP : 처리할 명령어의 주소

 

                      -EIP 있는 명령어를 CPU 실행  명령어의 길이만큼 증가


블로그의 정보

튜기's blogg(st1tch)

St1tch

활동하기