설명 되게 잘 되어있으니 한번 참고..ㅎㅎ : https://reversecore.com/65
1. HideProc.exe와 stealth.dll을 사용한 nodepad.exe 프로세스 은폐
(1) Windows 10 가상머신에 접속한 후, Visual Studio를 구동하여 HideProc.cpp에 대응되는 HideProc.exe 파일과 stealth.cpp에 대응되는 stealth.dll 파일을 생성한다. (빈 프로젝트, 유니코드 문자집합, debug 모드에서 생성함)
(2) 본 Pre-Lab의 실행 파일을 관리자 권한으로 실행해야 돼서, HideProc.cpp 파일에서 SetPrivilege 관련 내용은 삭제하지 않음.
(3) HideProc.cpp 파일에 있는 InjectDll 함수와 EjectDll 함수 안에서 사용된 WaitForSingleObject 함수의 INFINITE 파라미터 값을 1000으로 변경한다. (백그라운드 프로세스가 무한정 기다리지 않게 하기 위함, 원래는 INFINITE로 설정되어 있었음.)
(4) stealth.cpp 파일에서 사용된 NewZwQuerySystemInformation 함수에서 pPrev = 0 으로 초기화하는 코드를 추가한다.
(5) Notepad.exe를 실행하고, Process Explorer와 작업관리자 (shift + ctrl + esc 키를 누름)를 실행한다. Process Explorer와 작업관리자에서 Notepad.exe가 보이는지 확인한다.
(6) Windows PowerShell을 관리자 권한으로 실행한다. PowerShell상에서 hide 옵션을 이용하는 HideProc.exe 프로그램을 실행한다. (형식: HideProc.exe –hide notepad.exe 전체경로가 표시된 stealth.dll)
.\HideProc.exe -hide notepad.exe C:\Users\swu04\source\repos\HideProc\Debug\stealth.dll
(7) Process Explorer상의 Find 기능을 통해서 stealth.dll이 인젝된 프로세스들을 확인한다.
(8) Process Explore와 작업관리자에서 notepad.exe 가 더 이상 보이지 않는 것을 확인한다.
(9) 추가로 실행시킨 Process Explorer상에서는 notepad.exe가 보이는 것을 확인한다.
(10) PowerShell상에서 show 옵션을 이용하는 HideProc.exe 프로그램을 실행한다. (형식: HideProc.exe -show notepad.exe 전체경로가 표시된 stealth.dll)
.\HideProc.exe -show notepad.exe C:\Users\swu04\source\repos\HideProc\Debug\stealth.dll
(11) (5)번에서 실행한 Process Explorer와 작업관리자에서 notepad.exe가 보이는지 확인한다.
'2023 공부 로그🐰' 카테고리의 다른 글
[ 악성코드 ] PreLab 6, Lab 6 (스텔스 프로세스) -3 (0) | 2023.11.16 |
---|---|
[ 악성코드 ] PreLab 6, Lab 6 (스텔스 프로세스) -2 (0) | 2023.11.16 |
[ 악성코드 ] PreLab3 (DLL Injection) 보충설명 (0) | 2023.11.16 |
[ 시보운 ] 쉘코드 연습문제 (0) | 2023.11.14 |
[ 악성코드 ] - PreLab3 (PE 패치를 이용한 DLL 로딩 - 코드 설명) (0) | 2023.11.09 |