hacktricks/network-services-pentesting/pentesting-modbus.md

140 lines
6.9 KiB
Markdown
Raw Normal View History

2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<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>
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**💬**](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)**.**
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **ハッキングのトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
2022-04-28 16:01:33 +00:00
</details>
2023-07-07 23:42:27 +00:00
# 基本情報
2023-07-07 23:42:27 +00:00
Modbusプロトコルは、1979年にModiconによって開発されたメッセージング構造です。これは、インテリジェントデバイス間のマスタースレーブ/クライアントサーバー通信を確立するために使用されます。
2023-07-07 23:42:27 +00:00
**デフォルトポート:** 502
```
PORT STATE SERVICE
502/tcp open modbus
```
2023-07-07 23:42:27 +00:00
# 列挙
## Modbus Enumeration
Modbus is a widely used protocol in industrial control systems (ICS) and is often targeted by attackers. To effectively pentest Modbus, it is important to first enumerate the target system.
### Modbus TCP Enumeration
#### Nmap
Nmap can be used to scan for Modbus TCP services. The following command can be used:
```bash
nmap -p 502 --script modbus-discover <target>
```
#### Modscan
Modscan is a popular tool for Modbus enumeration. It can be used to scan for Modbus TCP services and gather information about the target system.
### Modbus RTU Enumeration
#### Serial Port Scanning
To enumerate Modbus RTU devices, serial port scanning can be performed. Tools like `modscan` and `mbpoll` can be used to scan for Modbus RTU devices connected to serial ports.
#### Physical Inspection
Physical inspection of the target system can also provide valuable information about Modbus RTU devices. Look for devices with RS-485 or RS-232 ports, as these are commonly used for Modbus RTU communication.
## Modbus Slave ID Enumeration
Modbus devices are identified by their slave IDs. Enumerating the slave IDs can provide insight into the target system's architecture and potential attack vectors.
### Modscan
Modscan can be used to enumerate Modbus slave IDs. The following command can be used:
```bash
modscan32.exe -m tcp -a <target> -p 502 -s 1-255
```
### Modbus Poll
Modbus Poll is another tool that can be used to enumerate Modbus slave IDs. The following command can be used:
```bash
modpoll -m tcp -a <target> -p 502 -s 1-255
```
## Modbus Function Code Enumeration
Modbus function codes define the type of operation to be performed on the target system. Enumerating the function codes can help identify potential vulnerabilities.
### Modscan
2023-07-07 23:42:27 +00:00
Modscan can be used to enumerate Modbus function codes. The following command can be used:
2023-07-07 23:42:27 +00:00
```bash
modscan32.exe -m tcp -a <target> -p 502 -s <slave_id> -f 1-255
```
### Modbus Poll
Modbus Poll can also be used to enumerate Modbus function codes. The following command can be used:
```bash
modpoll -m tcp -a <target> -p 502 -s <slave_id> -f 1-255
```
## Modbus Register Enumeration
Modbus registers store data in Modbus devices. Enumerating the registers can provide valuable information about the target system's configuration and potential attack vectors.
### Modscan
Modscan can be used to enumerate Modbus registers. The following command can be used:
```bash
modscan32.exe -m tcp -a <target> -p 502 -s <slave_id> -r 0-65535
```
### Modbus Poll
Modbus Poll can also be used to enumerate Modbus registers. The following command can be used:
```bash
modpoll -m tcp -a <target> -p 502 -s <slave_id> -r 0-65535
```
## Conclusion
Enumeration is a crucial step in Modbus pentesting. By effectively enumerating the target system, you can gather valuable information that can be used to identify vulnerabilities and plan further attacks.
```bash
nmap --script modbus-discover -p 502 <IP>
msf> use auxiliary/scanner/scada/modbusdetect
msf> use auxiliary/scanner/scada/modbus_findunitid
```
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<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>
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**💬**](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)**.**
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **ハッキングのトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
2022-04-28 16:01:33 +00:00
</details>