Dll Injection
-
[리버싱 핵심원리 study] 32장 계산기, 한글을 배우다Reverse Engineering 2021. 1. 22. 22:33
DLL 인젝션은 동작 원리와 구현이 비교적 간단하다는 장점이 있지만, 대상 프로세스의 IAT에 후킹을 원하는 API가 존재하지 않는 경우 사용할 수 없다는 단점이 있다. 이번 실습에서는 계산기에 DLL을 인젝션 하여 숫자 대신 한글이 출력되도록 API 후킹을 진행한다. 1. 대상 API 선정 PEView를 통해 calc.exe에서 임포트하는 API들을 확인해보자. 위와 같이 SetWindowText() API가 IAT에 있는 것을 확인할 수 있는데, 해당 API는 텍스트 에디터에 문자열을 출력해주는 기능을 한다. SetWindowText의() API의 구조는 다음과 같다. BOOL SetWindowTextA( HWND hWnd, LPCSTR lpString ); API의 hWnd는 윈도우 핸들이고, lp..
-
[리버싱 핵심원리 study] 23장 DLL 인젝션Reverse Engineering 2021. 1. 6. 03:29
0. 들어가기 전 이번 실습은 진행하는 데 있어서 아래와 같은 오류들로 인해 발목을 잡혔다. 구글링을 해본 결과 간단한 원인은 권한이 없어 관리자 권한으로 cmd를 실행해줘야만 정상적으로 DLL 인젝션 명령이 실행되는 것이었다. 관련 내용을 아래 블로그에서 잘 다루는 것 같아 참고해보면 좋을 것 같다. SetPrivilege Function & Access Token Privilege # Introduce SetPrivilege 함수는 주로 Injector에서 많이 사용되고 Debugger와 Cheat Engine등의 Debugging을 수행하는 프로그램에 쓰일 것 같은 함수입니다. 해당 프로세스의 사용자 엑세스 토큰의(Access Token) 특 holi4m.github.io 또한 DLL 인젝션을 하는..