inline 2

[Reversing]DLL injection ( injector 스켈레톤 코드 분석 )

오늘 포스팅은 DLL injection 기법에서 injector.c 코드의 스켈레톤 코드를 분석하고 공부해보겠습니다.IAT후킹때도 그렇고 inline후킹에서도 dll injection 기법을 사용하여 우리가 짠 후킹 코드를 프로그램에 집어넣어서 후킹을 시도했었습니다. dll injection에서 들어가는 후킹 코드는 바뀌어도 인젝터의 형식은 거의 바뀌지 않기 때문에 inline후킹 실습에 앞서 살펴보겠습니다. 인젝터 코드의 흐름은 먼저 다음과 같습니다.① CreateProcess로 일시 정지된 상태로 실행② VirtualAllocEx로 DLL 경로 저장할 공간 확보③ WriteProcessMemory로 경로 전달④ GetProcAddress로 LoadLibraryA 주소 구함⑤ CreateRemoteTh..

[Reversing] Hooking - 5 (Inline Hooking ①)

안녕하세요. 오늘 포스팅은 후킹의 마지막 파트인 인라인 후킹에 대해 포스팅을 해보겠습니다.여태까지 IAT후킹과 Frida를 활용한 WinAPI후킹 및 동적 후킹을 해봤습니다.저번 IAT후킹 포스팅할 때 작성했던 표입니다.이번 포스팅에서는 inline후킹에 대해 살펴보고 스켈레톤 코드를 공부한 뒤 2편에서 메모장(notepad.exe)를 직접 후킹해보는 실습을 해보곘습니다. inline 후킹의 핵심 원리후킹하고 싶은 대상 함수의 첫번째 명령어들을 확인한 뒤함수의 시작 부분을 JMP로 내가 작성한 함수로 이동 (5바이트)내가 작성한 함수에서 원하는 후킹을 실행한 뒤에다시 원래 함수의 흐름으로 복귀한다.기존 우리가 후킹하고 싶던 함수의 어셈 코드가 다음과 같다고 가정해보겠습니다.0x1000: push ebp..