PTH攻击几个姿势

极客

PTH攻击几个姿势:从入门到进阶的实战笔记

说实话,写这篇关于PTH攻击几个姿势的文章,我犹豫了好几天,为啥呢?因为这玩意儿吧,说敏感也敏感,但你要是做渗透测试、搞内网安全的,PTH(Pass-the-Hash)这东西你迟早得碰,与其遮遮掩掩,不如把我知道的几个姿势捋一捋,也算是给自己做个笔记,嗯,那咱们就开唠。

PTH攻击几个姿势

先说清楚,PTH攻击几个姿势里最基础的那个—— 就是大家最熟知的哈希传递,你拿到NTLM哈希之后,不用破解明文,直接拿哈希去认证,工具嘛,老牌的Mimikatz、impacket套件里的psexec.py、wmiexec.py,都是干这个的,我记得第一次用psexec.py administrator@target -hashes :NTLMhash的时候,心里还嘀咕“这能行?”结果啪一下弹个shell出来,那感觉,嘿,真上头!

第二个姿势,我得说说Overpass-the-Hash(也有人叫Pass-the-Key)。 这个姿势妙在哪儿呢?它不是直接拿NTLM哈希去怼,而是先用哈希换取Kerberos的TGT票据,然后拿票据去请求服务票据,哎,你想啊,现在很多环境把NTLM禁了,你直接PTH不就废了嘛?但Overpass-the-Hash走的是Kerberos协议,绕过去了!用Rubeus的asktgt或者Mimikatz的sekurlsa::pth /run:cmd.exe /domain:xxx /user:xxx /ntlm:hash,一套下来丝滑得很,不过要注意啊,这姿势对域环境有要求,时钟偏差不能太大,不然Kerberos直接给你甩脸子,报错KRB_AP_ERR_SKEW,别问我怎么知道的……

第三个,嘿嘿,Local Admin PTH。 这个姿势容易被忽略,但实战里贼好用,你想想,你手里有一个本地管理员的哈希,但这台机器不在域里,或者域账号权限不够,咋整?直接用本地管理员哈希去PTH啊!不过有个坑——UAC远程限制,默认情况下,本地管理员(非RID 500的那个)远程PTH会被UAC拦下来,咋办?修改注册表LocalAccountTokenFilterPolicy设为1,或者直接用RID 500的Administrator账号哈希,这细节,啧啧,多少人在靶场里栽过跟头。

第四个姿势,我得提一嘴NTLM Relay配合PTH的组合拳。 严格说这不算纯PTH,但思路是一脉相承的——你不需要明文,甚至不需要主动去PTH,而是诱使目标来认证你,然后你把认证中继到另一台机器上,Responder + ntlmrelayx,经典搭配,不过这姿势对签名的要求比较苛刻,SMB签名一开就歇菜,所以得先侦察清楚,哦对了,还有那个CVE-2019-1040的漏洞,能绕过签名限制,不过现在补丁打得差不多了,新环境里别抱太大希望。

第五个,也算个偏门姿势——PTH后的横向移动技巧。 拿到哈希PTH成功之后呢?别傻站着啊!用sekurlsa::logonpasswords继续抓内存里的凭据,或者用net use \\target\c$挂载共享,再或者直接上atexec、smbexec这些不落地执行的方式,我跟你说,PTH只是敲门砖,进去之后怎么翻箱倒柜才是真功夫,有时候一台机器上能抓到七八个不同用户的哈希,顺藤摸瓜,整个域就拿下了。

好了,PTH攻击几个姿势大概就唠这么多,其实还有像Pass-the-Ticket、Shadow Credentials这些变种,但那些严格说不算PTH了,我写这篇PTH攻击几个姿势的文章,纯粹是技术分享,你可别拿去干坏事啊!合法的渗透测试、红队演练,随便用;要是动了歪心思,那可就……你懂的,有啥问题评论区聊,我看到就回,拜了个拜!

文章版权声明:除非注明,否则均为极客网安-咸鱼原创文章,转载或复制请以超链接形式并注明出处。

目录[+]