零、绪论:mimikatz简介
mimikatz是一款出色的内网渗透工具,可以抓取windows主机的明文密码、NTLMhash值或者kerberos对应的缓存凭据。mimikatz的使用在获取权限后可以上传到目标主机上,或者在msf上直接加载。
Mimikatz Commands
=================
Command Description
------- -----------
kerberos Attempt to retrieve kerberos creds
livessp Attempt to retrieve livessp creds
mimikatz_command Run a custom command
msv Attempt to retrieve msv creds (hashes)
ssp Attempt to retrieve ssp creds
tspkg Attempt to retrieve tspkg creds
wdigest Attempt to retrieve wdigest creds
一、防御措施一:关闭程序调试权限
debug:privilege玩过mimkatz肯定对这条命令记忆犹新,获取程序调试的权限,一般这个权限在administrator的权限种,但实际上如果不是程序员,这个权限没有必要,可以关闭,但域中的机器,此方法无效,因为OU组策略的优先级最高,而这个权限在ou组权限中没有定义,无法配置。
附录:windows 策略优先级从高到低
OU Policy->Domain Policy->Site Policy->Local Policy
二、防御措施二:WDigest协议禁用
在winserver2008之前,该协议配置项默认启用,会在lsass.exe进程中保存明文密码用于http认证,需要打补丁KB2871997来配置禁用,winserver2008和以后版本默认禁用。缓存未知如下注册表键值,0为不缓存,1为缓存
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\WDigest
三、防御措施三:不缓存域凭证
简单DDC的背景简介
Domain Cached Credentials 简称 DDC,也叫 mscache。有两个版本,XP/2003 年代的叫第一代,Vasta/2008 之后的是第二代。缓存位置如下:
HKEY_LOCAL_MACHINE\SECURITY\Cache
不缓存凭证的话,当然也就抓不到平局了。
配置项
四、其他措施或注意事项
受保护用户组:
受保护的用户组会强迫本地管理员账号强行走kerberos认证,这是在winserver2012之后新加入的,winserver2008以及之前版本需要打补丁KN2871997。
受限管理员模式
在win8.1/winserver2012r2引入,之前需要打补丁KN2871997和KB2973351。该模式存在问题,可以直接利用当前缓存登录,攻击手法RDP-PTH
mimikatz# sekurlsa::pth /user:bobac /domain:172.16.204.139 /ntlm:hash-value "/run:mstsc.exe /restrictedadmin"