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