반응형
리버싱 핵심 원리
[1주]
5장 - 스택
프로세스에서 스택 메모리의 역할 :
1. 로컬 변수 임시 저장
2. 함수 호출 시 파라미터 전달
3. return address 저장
FILO(First In Last Out) 구조를 가지고 있다
스택의 특징
* 스택 포인터(ESP)의 초기값은 Stack Bottom쪽에 가깝다.
* 높은 주소에서 낮은 주소 방향으로 자란다.
* PUSH하면 스택 포인터는 아래(Stack Bottom쪽)에서 위(Stack Top쪽)로 쌓인다. POP하면 스택 포인터는 아래쪽으로 움직인다. 즉, 스택에 값을 입력하면 스택 포인터(ESP)는 감소하고, 스택에서 값을 꺼내면 스택 포인터는 증가한다.
6장 - abex' crackme #1 분석
간단한 crackme 샘플을 분석한다.
먼저, 파일을 실행시켜서 어떤 프로그램인지 살펴본다.
하드 디스크가 CD-Rom인것 처럼 속여달래요.
OllyDbg를 실행시켜서 코드를 살펴본다.
GetDriveType() API로 드라이브 타입을 얻어오는데, 이 부분을 조작해서 CD-Rom으로 인식되게 만들어야 합니다.
이 코드에서 사용된 어셈블리 명령어:
이제 코드를 패치해서 프로그램을 크랙한다.
반응형
'[보안 Archive] ~2017 > 리버싱 핵심 원리' 카테고리의 다른 글
[2주] 7장- 스택 프레임 (0) | 2015.03.16 |
---|---|
[1주] 3장~4장 - 리틀엔디언, IA-32 레지스터 (0) | 2015.03.09 |
[1주] 1장~2장 (0) | 2015.03.09 |
댓글