Information Security

DLL Ejection 본문

Reverse Engineering

DLL Ejection

leeeeye321 2019. 6. 21. 16:27

[ DLL Ejection ]

프로세스에 강제로 삽입한 DLL을 빼내는 것


notepad.exe에 myhack.dll을 강제로 인젝션했다가 다시 이젝션해봅시다.


이젝션을 하기 위해서는 CreateRemoteThread()를 사용하여 대상 프로세스가 FreeLibrary() API를 스스로 호출하도록 만들어야 한다.

pThreadProc은 FreeLibrary()의 주소이고, me.modBaseAddr은 이젝션할 myhack.dll의 로딩 주소이다.

일단 인젝션을 하고


확인을 한다.


EjectDll.exe로 이젝션을 시도한다. success.


notepad.exe에서 myhack.dll이 빠져 나갔다. 이젝션은 우리가 강제로 삽입한 dll만 가능하고 일반적으로 로딩되어 있는 dll은 불가능하다.

'Reverse Engineering' 카테고리의 다른 글

Code Injection  (0) 2019.06.26
PE 패치를 이용한 DLL 로딩  (0) 2019.06.21
DLL Injection - Remote Thread 생성 & 레지스트리 이용  (0) 2019.06.20
Windows Message Hooking  (0) 2019.06.17
EAT(Export Address Table)  (0) 2019.06.12