
디버깅, 검사 및 권한 상승을 위한 프로세스 보호 수준(PP/L)을 목록 조회, 획득, 설정, 보호 및 보호 해제하는 Windows 도구.
이 도구를 사용하면 보호된 프로세스를 나열하고, 특정 프로세스의 보호 수준을 확인하거나, 임의의 보호 수준을 설정할 수 있습니다. 자세한 내용은 다음 블로그 게시물을 참조하세요: Debugging Protected Processes.
MSI 드라이버 RTCore64.sys의 복사본은 여기에서 얻을 수 있습니다: PPLKiller/driver.
면책 조항: 이 드라이버를 호스트 머신에 절대 설치해서는 안 된다는 것은 말할 필요도 없습니다. 반드시 VM을 사용하세요!
sc.exe create RTCore64 type= kernel start= auto binPath= C:\PATH\TO\RTCore64.sys DisplayName= "Micro - Star MSI Afterburner"
net start RTCore64
보호된 프로세스를 나열합니다.
PPLcontrol.exe list
특정 프로세스의 보호 수준을 가져옵니다.
PPLcontrol.exe get 1234
임의의 보호 수준을 설정합니다.
PPLcontrol.exe set 1234 PPL WinTcb
보호되지 않는 프로세스에 임의의 보호 수준을 적용합니다. 이에 따라 서명 수준도 자동으로 조정됩니다.
PPLcontrol.exe protect 1234 PPL WinTcb
보호된 프로세스의 보호를 해제합니다. 보호 수준을 0 (즉, None)으로, EXE/DLL 서명 수준을 0 (즉, Unchecked)으로 설정합니다.
PPLcontrol.exe unprotect 1234
net stop RTCore64
sc.exe delete RTCore64
WinDbg는 대상 프로세스를 열기만 하면 되므로, PPLcontrol을 사용하여 windbg.exe 프로세스에 임의의 보호 수준을 설정할 수 있습니다.
windbg.exe 프로세스의 PID를 가져옵니다.C:\Temp>tasklist | findstr /i windbg
windbg.exe 1232 Console 1 24,840 K
C:\Temp>PPLcontrol.exe protect 1232 PPL WinTcb
[+] The Protection 'PPL-WinTcb' was set on the process with PID 1232, previous protection was: 'None-None'.
[+] The Signature level 'WindowsTcb' and the Section signature level 'Windows' were set on the process with PID 1232.
대상 프로세스를 여는 것 외에도 API Monitor는 DLL을 프로세스에 주입합니다. 따라서 apimonitor.exe 프로세스에 임의의 보호 수준을 설정하는 것만으로는 충분하지 않습니다. 주입된 DLL이 이 목적에 맞게 적절히 서명되지 않았기 때문에 대상 프로세스의 Section 서명 플래그가 로드를 차단할 가능성이 높습니다. 그러나 대상 프로세스의 보호를 일시적으로 해제하고, 모니터링을 시작한 후, 즉시 보호를 복원할 수 있습니다.
Failed to load module in target process - Error: 577, Windows cannot verify the digital signature for this file. A recent hardware or software change might have installed a file that is signed incorrectly or damaged, or that might be malicious software from an unknown source.
C:\Temp>tasklist | findstr /i target
target.exe 1337 Services 1 14,160 K
C:\Temp>PPLcontrol.exe get 1337
[+] The process with PID 1337 is a PPL with the Signer type 'WinTcb' (6).
C:\Temp>PPLcontrol.exe unprotect 1337
[+] The process with PID 1337 is no longer a PP(L).
C:\Temp>PPLcontrol.exe protect 1337 PPL WinTcb
[+] The Protection 'PPL-WinTcb' was set on the process with PID 1337, previous protection was: 'None-None'.
[+] The Signature level 'WindowsTcb' and the Section signature level 'Windows' were set on the process with PID 1337.
Release/x64를 선택합니다 (x86은 지원되지 않으며 앞으로도 지원되지 않을 것입니다).