PPL
PPL表示Protected Process Light,但在此之前,只有Protected Processes。受保护进程的概念是随Windows Vista / Server 2008引入的,其目的不是保护你的数据或凭据。它最初的目标是保护媒体内容和符合DRM(数字版权管理)要求。Microsoft 开发了这种机制,以便你的媒体播放器可以读取蓝光光盘的同时防止你复制其内容。当时的要求是映像文件(即可执行文件)必须使用特殊的 Windows Media 证书进行数字签名。
在实践中,不受保护的进程只能使用非常有限的特权访问受保护进程:PROCESS_QUERY_LIMITED_INFORMATION
、PROCESS_SET_LIMITED_INFORMATION
、PROCESS_TERMINATE
和PROCESS_SUSPEND_RESUME
。对于一些高度敏感的过程,这个集合甚至还可以减少。
LSA保护(RunAsPPL)
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA /v RunAsPPL /t REG_DWORD /d 1 /f
或者 在注册表 HKLM下新建一个Dword32位的 RunAsPPL 将其值设置为1

然后重启电脑后即可生效 开启LSA保护后,将无法通过mimikatz直接读取密码

绕过
利用mimidrv.sys
一般情况下 杀掉驱动会被杀软杀掉 可考虑在无杀软或关闭杀软后使用
1 | !+ |

但是在另一台机器上测试时则报错 无法绕过lsa 去dump
ERROR kull_m_kernel_ioctl ; CreateFile (0x00000002)「原因是驱动并没有实际加载,当时估计被杀软杀了 。。https://github.com/gentilkiwi/mimikatz/issues/221」

PPLKiller
PPLKiller 火绒上不会有任何反应
360会杀「第一次测时候编译完静态还可过 后面直接报毒」
但是在起一个system权限的cmd时 360会进行拦截 估计是用createprocess api去起的一个高权限cmd
正常情况下 lsass.exe 是有保护的


无法直接dump hash
利用PPLKiller
PPLKiller.exe /installDriver
安装驱动
1 | PPLKiller.exe /disableLSAProtection |

PPLKiller.exe /makeSYSTEMcmd
起一个system cmd

References
https://tttang.com/archive/1743/