관리 메뉴

HeeJ's

[19] dlllist 우회하기(3)(DLL/THREAD) :: Anti Memory Forensics/Volatility 본문

<Project>/<Anti Memory Forensic>_2020

[19] dlllist 우회하기(3)(DLL/THREAD) :: Anti Memory Forensics/Volatility

meow00 2020. 8. 14. 03:01

[18] dlllist 우회하기(2)(DLL/THREAD) :: Anti Memory Forensics/Volatility

이어서

 

ldrmodules

ldrmodules 확인

앞서 dlllist가 은닉되는 것을 확인해주었지만,

dlllist가 은닉되었다고 DLL이 전부 은닉된 것은 아니다.

ldrmodules라는 플러그인으로 확인해주면 dlllist에서 숨겨진 영역을 확인할 수 있다.

 

따라서 InInitializationORderModuleList영역도 우회를 진행해주어야 한다.

 

ntdll.dll의 InInitializationOrderModuleList의 Flink값 확인

이 주소(0x174E67F0)에는 InInitializationOrderModuleList의 Flink값인 0x00372F60은 다음 dll인 wow64.dll을 가리킨다.

이 값을 _PEB_LDR_DATA의 InInitializationOrderModuleList의 Flink값에 넣어주면

_PEB_LDR_DATA의 InInitializationOrderModuleList Flink 값이 wow64.dll을 가리키며

ntdll.dll의 InInitializationOrderModuleList가 은닉된다.

 

_PEB_LDR_DATA_ 구조체 InInitializationOrderModuleList의 Flink 값
Flink값 변조
ldrmodules 플러그인 확인

InLoad, InInit, InMem 세 가지 영역이 모두 False로 나타난 것을 확인하고,

dlllist가 제대로 은닉되었음을 알 수 있다.