☁️ HackTricks云 ☁️ -🐦 推特 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- 你在一家**网络安全公司**工作吗?想要在HackTricks中**宣传你的公司**吗?或者你想要**获取PEASS的最新版本或下载HackTricks的PDF**吗?请查看[**订阅计划**](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),或者**关注**我在**推特**上的[**🐦**](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来分享你的黑客技巧**。
# 基本信息
Modbus协议是由Modicon于1979年开发的一种消息结构。它用于在智能设备之间建立主从/客户端-服务器通信。
**默认端口:**502
```
PORT STATE SERVICE
502/tcp open modbus
```
# 枚举
## Modbus Enumeration
## Modbus 枚举
Modbus is a widely used protocol in industrial control systems (ICS) and is often used to communicate with programmable logic controllers (PLCs). In order to effectively pentest a Modbus network, it is important to first enumerate the devices and services running on the network.
Modbus 是工业控制系统 (ICS) 中广泛使用的协议,通常用于与可编程逻辑控制器 (PLC) 进行通信。为了有效地对 Modbus 网络进行渗透测试,首先需要枚举网络上运行的设备和服务。
### Modbus TCP Enumeration
### Modbus TCP 枚举
To enumerate Modbus devices over TCP, you can use tools like `nmap` or `modscan`. These tools can help you identify the IP addresses and open ports of Modbus devices on the network.
要通过 TCP 枚举 Modbus 设备,可以使用 `nmap` 或 `modscan` 等工具。这些工具可以帮助您识别网络上 Modbus 设备的 IP 地址和开放端口。
Here is an example command to enumerate Modbus devices using `nmap`:
以下是使用 `nmap` 枚举 Modbus 设备的示例命令:
```plaintext
nmap -p 502 --script modbus-discover
```
Replace `` with the IP address or range of IP addresses you want to scan.
将 `` 替换为您要扫描的 IP 地址或 IP 地址范围。
### Modbus RTU Enumeration
### Modbus RTU 枚举
To enumerate Modbus devices over serial communication (RS-232 or RS-485), you can use tools like `modscan` or `qModMaster`. These tools allow you to scan for Modbus devices connected to the serial ports of your machine.
要通过串行通信 (RS-232 或 RS-485) 枚举 Modbus 设备,可以使用 `modscan` 或 `qModMaster` 等工具。这些工具允许您扫描连接到计算机串行端口的 Modbus 设备。
### Modbus Enumeration Techniques
### Modbus 枚举技术
In addition to using specialized tools, there are other techniques you can use to enumerate Modbus devices:
除了使用专门的工具外,还有其他技术可以用来枚举 Modbus 设备:
- **Banner Grabbing**: Modbus devices often have specific banners or responses that can be used to identify them. You can use tools like `telnet` or `nc` to connect to the Modbus device and capture its banner.
- **横幅抓取**:Modbus 设备通常具有特定的横幅或响应,可以用于识别它们。您可以使用 `telnet` 或 `nc` 等工具连接到 Modbus 设备并捕获其横幅。
- **Network Scanning**: You can use network scanning tools like `nmap` to scan for Modbus devices on the network. By scanning for open Modbus ports (e.g., port 502 for Modbus TCP), you can identify potential Modbus devices.
- **网络扫描**:您可以使用 `nmap` 等网络扫描工具来扫描网络上的 Modbus 设备。通过扫描开放的 Modbus 端口 (例如,Modbus TCP 的端口 502),可以识别潜在的 Modbus 设备。
- **Protocol Fuzzing**: Fuzzing is a technique used to send malformed or unexpected data to a target system in order to trigger unexpected behavior. By fuzzing the Modbus protocol, you may discover vulnerabilities or misconfigurations in Modbus devices.
- **协议模糊测试**:模糊测试是一种技术,用于向目标系统发送格式错误或意外数据,以触发意外行为。通过对 Modbus 协议进行模糊测试,您可能会发现 Modbus 设备中的漏洞或配置错误。
- **Default Credentials**: Some Modbus devices may have default credentials that can be used to gain unauthorized access. You can search for default credentials for specific Modbus devices online or use tools like `hydra` to perform brute-force attacks.
- **默认凭据**:某些 Modbus 设备可能具有默认凭据,可用于获取未经授权的访问权限。您可以在线搜索特定 Modbus 设备的默认凭据,或使用 `hydra` 等工具进行暴力破解攻击。
By using a combination of these techniques, you can effectively enumerate Modbus devices and services on a network, which is crucial for a successful Modbus pentest.
通过结合使用这些技术,您可以有效地枚举网络上的 Modbus 设备和服务,这对于成功的 Modbus 渗透测试至关重要。
```bash
nmap --script modbus-discover -p 502
msf> use auxiliary/scanner/scada/modbusdetect
msf> use auxiliary/scanner/scada/modbus_findunitid
```
☁️ HackTricks 云 ☁️ -🐦 推特 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- 你在一家**网络安全公司**工作吗?想要在 HackTricks 中**宣传你的公司**吗?或者你想要**获取最新版本的 PEASS 或下载 HackTricks 的 PDF**吗?请查看[**订阅计划**](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),或者**关注**我在**推特**上的[**🐦**](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 来分享你的黑客技巧**。