어셈블리어 튜토리얼 (0) 목차

어셈블리어(리버스 엔지니어링) 튜토리얼 정리

근래에 64비트 어셈블리에 관심이 생긴 겸사겸사 3년전에 정리하려고했던 asm, api hooking, binary patch등을 정리해보려고한다.

어셈블리는 리버스 엔지니어링에 필요한 최소한의 기초적인 어셈블리만 다룰려고 한다.

c/c++ 언어 기초적인 지식이 있으면 좀 더 쉽게 이해 할 수 있을거 같다.

그리고 앞으로 나오는 대부분의 숫자는 대부분 16진수이다.

진행방향

  1. 시작 1.1. 설치 1.2. 기초명령어 1.3. 기초레지스터 1.4. 데이터타입 1.5. 명령어 사용방법 1.6. 디버거 (어셈블리, 덤프, 스택메모리, 리틀엔디안) 1.7. 헥스에디터 (exe파일과 메모리) 1.8. 명령어 상세설명 #1 #2 (디버거 활용, 함수 설명)

  2. 기초 튜토리얼 2.1. HelloWorld 2.2. memcpy, strcmp 2.3. Window 프로그램 2.4. DLL 라이브러리

  3. 리버스 엔지니어링 (1) 3.1. DLL Injection(WinHook) 3.2. api hooking(IAT) 3.3. api hooking(Trampoline) 3.4. speed hack 3.5. post sniffing

  4. 64비트 4.1. 32비트와 달라진점 4.2. 설치 4.3. HelloWorld 4.4. DLL Injection(WinHook) 4.5. api hooking(IAT) 4.6. api hooking(Trampoline)

  5. 리버스 엔지니어링 (2) 5.1 바이너리 패치 5.2 ShellCode 5.3 바이러스

목차는 작성하면서 계속 변경될 예정이다.