Mimikatz 攻防杂谈

本文作者:hl0rey(信安之路作者团队成员 & 信安之路红蓝对抗小组组长) 招新文章:信安之路红蓝对抗小组招募志同道合的朋友

前几天看到了老外一篇讲 mimikatz 防御的文章,感觉行文思路还不错,但是内容稍有不足,国内也有一篇翻译,但是只是照着错误翻译的,所以就萌生了把那篇优秀文章,翻译复现,并加入其它一些内容,本文只是抛砖引玉,文中有错误的话,欢迎吐槽。

mimikatz 在内网渗透中是个很有用的工具。它可能让攻击者从内存中抓到明文密码。大家都知道这个工具很厉害,微软肯定也知道了,所以就搞了一些安全防护机制让 mimikatz 抓不到密码。但是在 win2008 之前的系统上还是能抓到密码的。一般情况下,只要有本地管理员权限就能从内存中抓出密码。通常抓到密码之后就可以进行横向移动和提权。

Debug Privilege

在 windows 里,调试权限可以用来调试进程,甚至是调试内核。对于 mimikatz 来说,通常套路来说,他想去读取内存就得获取调试权限,然后去打开进程。默认情况下,本地管理员组是由这个权限的。但是,除非管理员是个程序员,一般他应该用不到这种权限。

本地安全策略是默认给管理员组权限的。

然而,域的默认组策略在这一项是没有定义的。

按照 windows 策略的效力位阶,最终是管理员组拥有该权限。

补充下效力位阶:

默认情况下,多条策略不冲突的情况下,多条策略是合并的关系;如果冲突的话,优先级高的适用,优先级从低到高为local policy(本地)->site policy(站点)->domain policy(域)->ou policy(组织单元)  

不同配置对 mimikatz 的影响

默认情况下,成功取得调试权限。

把拥有调试权限的组设置为空。注销再次登陆。

运行 mimikatz,获取调试权限失败。

WDigest

WDigest 协议早在 xp 时代就已经引入了。当时这个协议设计出来是把明文密码存在 lsass 里为了 http 认证的。默认在 win2008 之前是默认启用的。那么攻击者就能从中获取到明文。

但是在 win2008 之后的系统上,默认是关闭的。如果在 win2008 之前的系统上打了 KB2871997 补丁,那么就可以去启用或者禁用 WDigest,配置如下键值:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\WDigest

UseLogonCredential 值设置为 0, WDigest 不把凭证缓存在内存;UseLogonCredential 值设置为 1, WDigest 就把凭证缓存在内存。

不同配置对 mimikatz 的影响

启用缓存,直接抓明文,很舒服。

关了缓存之后,重启再抓,什么东西也没抓到。

Credential Caching

Domain Cached Credentials 简称 DDC,也叫 mscache。有两个版本,XP/2003 年代的叫第一代,Vasta/2008 之后的是第二代。

计算机在加入域之后就得通过 kerberos 进行认证,通过 kerberos 认证就得有域控的参与,但是如果域成员暂时无法访问到域控的话,岂不是无法认证了?域凭证缓存就是为了解决这个问题的。如果暂时访问不到域控,windows 就尝试使用本机缓存的凭证进行认证,默认缓存十条。

缓存位置(默认本地管理员也没有权限访问):

HKEY_LOCAL_MACHINE\SECURITY\Cache

修改组策略缓存条数为0,即为不缓存。

不同配置对 mimikatz 的影响

默认配置缓存 10 条。登陆本地管理员,提权到 system 权限,然后运行 mimikatz,成功抓到 mscachev2。

设置缓存数为 0,停掉域控,然后再登陆域账号。域成员发现无法登陆了。

登陆本地管理员账号,提取到 system,然后什么也没抓到。

Protected Users Group

受保护的用户组,可以用来让像本地管理员这样的高权限用户只能通过 kerberos 来认 证(真是六的一比)。这是在 win2012 之后引入的一个新的安全组(win2008 之前的系统打了 KB2871997 补丁也会增加这个安全组)。来防止明文存储在内存中和 ntlm hash 泄露(因为是通过 kerberos 认证所以也就不会泄露 net ntlm hash 了)。这个配置起来比较简单。把想要保护的用户加入这个组就行了(由于本机硬件限制,没法复现了,跑一个 win2016,再跑一个 win10 就已经卡的不行了)。

Restricted Admin Mode

受限管理员模式,反正就是一种安全措施,让你的账户不暴露在目标系统里。在 win8.1/win2012r2(切记是 R2)引入。win7/win2008 想用这个功能就得打 KB2871997、KB2973351。这项功能的使用需要客户端和服务端相互配合。在服务端开启的方法是在注册表添加如下键值。

REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f

右键->关于,查看下客户端的版本是不是 rdp8.1 版本。

潜在风险-RDP PTH

受限管理员模式可以直接用当前登录凭据进行登录,所以这“始终要求凭据”的勾肯定不能勾。

sekurlsa::pth /user:<username> /domain:<comptername or ip> /ntlm:<ntlm hash> "/run:mstsc.exe /restrictedadmin"

domain 位置用计算机名或者ip皆可。(需要管理员权限来获取 debug 权限)

一路确定下去就 OK 了。

成功把域控上的管理员顶了。

顺道抓包看一下貌似只有RDP的流量。

总结

1、禁止调试权限对获取 system 的攻击者来说没有任何作用。

2、WDigest 默认是禁用的,但是我们手动打开,挖个坑等人跳。

3、mscache 目前貌似只能用 hashcat 来破解,破出明文再利用。

4、Protected Users Group 需要再研究研究,等电脑配置好了再说 23333。

5、Restricted Admin Mode下pth 攻击只能适用于特定版本,限制还是比较多的,如果限制比较狠的内网(把135和445的流量都禁了),这个算是个突破手法吧。

参考资料

https://labs.portcullis.co.uk/tools/freerdp-pth/

https://blogs.technet.microsoft.com/kfalde/2013/08/14/restricted-admin-mode-for-rdp-in-windows-8-1-2012-r2/

http://wwwtt0401.blog.163.com/blog/static/361493062012010114020272/

https://medium.com/blue-team/preventing-mimikatz-attacks-ed283e7ebdd5

原文发布于微信公众号 - 信安之路(xazlsec)

原文发表时间:2018-09-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

安全科普:利用WireShark破解网站密码

当我们输入账号、密码登录一个网站时,如果网站允许你使用HTTP(明文)进行身份验证,那么此时捕获通信流量非常简单,我们完全可以对捕获到的流量进行分析以获取登录账...

32050
来自专栏GopherCoder

Python:一周笔记

17940
来自专栏小曾

web安全:通俗易懂,以实例讲述破解网站的原理及如何进行防护!如何让网站变得更安全。

本篇以我自己的网站为例来通俗易懂的讲述网站的常见漏洞,如何防止网站被入侵,如何让网站更安全。

47440
来自专栏小白安全

渗透一个网站需要做的事情

一,开始信息收集 1,获取域名的whois信息,获取注册者邮箱姓名电话等。 2,查询服务器旁站,因为主站一般比较难,所以先看看旁站有没有通用性的cm...

42090
来自专栏雨过天晴

转 树莓派无显示器安装系统

18420
来自专栏FreeBuf

看我如何在渗透测试过程中发现并利用Serv-U漏洞进行操作系统提权

最近,我在做一个外网渗透测试的过程中,发现了SolarWinds文件共享程序Serv-U的一个漏洞,通过该漏洞我获得了Serv-U的管理权限,并能以系统用户身份...

28860
来自专栏NetCore

怎样制作GHOST系统盘

制作Windows XP万能克隆镜像 战前分析:对于Windows XP,制作万能克隆时的一个重要问题就是系统激活,因为Windows XP为了防止盗版,采取...

48380
来自专栏FreeBuf

聊一聊万恶的锁首

当手持8倍镜的98K都不能在使用程序时干掉万恶的锁首时,内心是十万头羊驼奔跑的场景,那我们就来聊一聊市面上常见的锁首方式。 ① :设置OpenHomePage、...

22370
来自专栏FreeBuf

安全运维之如何找到隐匿于last和w命令中的ssh登录痕迹

*本文原创作者:ForrestX386,本文属FreeBuf原创奖励计划,未经许可禁止转载

11820
来自专栏SAP最佳业务实践

关于S4信贷错误的系统解决方案

https://wiki.scn.sap.com/wiki/display/ABAPConn/Technical+Setup+and+Reset+of+the+...

42140

扫码关注云+社区

领取腾讯云代金券