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

92 lines
5.2 KiB
Markdown
Raw Normal View History

2022-04-28 16:01:33 +00:00
<details>
2024-02-11 01:46:25 +00:00
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-11 01:46:25 +00:00
Inne sposoby wsparcia HackTricks:
2022-04-28 16:01:33 +00:00
2024-02-11 01:46:25 +00:00
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)!
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
2022-04-28 16:01:33 +00:00
</details>
2024-02-11 01:46:25 +00:00
# Podstawowe informacje
2024-02-11 01:46:25 +00:00
W 1979 roku opracowano **Protokół Modbus** przez Modicon, służący jako struktura komunikacyjna. Jego główne zastosowanie polega na ułatwianiu komunikacji między inteligentnymi urządzeniami, działającymi w modelu master-slave/client-server. Ten protokół odgrywa kluczową rolę w umożliwianiu urządzeniom efektywnej wymiany danych.
2024-02-11 01:46:25 +00:00
**Domyślny port:** 502
```
PORT STATE SERVICE
502/tcp open modbus
```
2024-02-11 01:46:25 +00:00
# Wyliczanie
## Modbus
Modbus jest protokołem komunikacyjnym wykorzystywanym głównie w przemysłowych systemach automatyzacji. Protokół ten jest oparty na architekturze klient-serwer i umożliwia komunikację między urządzeniami sieciowymi poprzez port szeregowy lub TCP/IP.
### Skanowanie portów
Aby rozpocząć proces wyliczania usług Modbus, należy najpierw zeskanować porty hosta docelowego. Można to zrobić za pomocą narzędzi takich jak Nmap lub Masscan. Poniżej przedstawiono przykładową komendę Nmap do skanowania portów Modbus:
```plaintext
nmap -p 502 --script modbus-discover <adres_IP>
```
### Wykrywanie urządzeń Modbus
Po zeskanowaniu portów można użyć narzędzi takich jak `modscan` lub `modbus-cli` do wykrywania urządzeń Modbus i ich funkcji. Poniżej przedstawiono przykładową komendę `modscan`:
```plaintext
modscan.py -a <adres_IP> -p 502
```
### Analiza ruchu Modbus
Aby zrozumieć, jakie komendy są wysyłane między klientem a serwerem Modbus, można użyć narzędzi do analizy ruchu sieciowego, takich jak Wireshark. Należy skonfigurować Wireshark do nasłuchiwania ruchu na odpowiednim interfejsie sieciowym i filtrowania pakietów Modbus.
2024-02-11 01:46:25 +00:00
## DNP3
2024-02-11 01:46:25 +00:00
DNP3 (Distributed Network Protocol 3) jest protokołem komunikacyjnym stosowanym w systemach monitorowania i kontroli w sektorze energetycznym. Protokół ten jest oparty na architekturze klient-serwer i wykorzystuje protokół transportowy TCP/IP.
### Skanowanie portów
Podobnie jak w przypadku Modbus, należy rozpocząć proces wyliczania usług DNP3 od zeskanowania portów hosta docelowego. Można to zrobić za pomocą narzędzi takich jak Nmap lub Masscan. Poniżej przedstawiono przykładową komendę Nmap do skanowania portów DNP3:
```plaintext
nmap -p 20000 --script dnp3-enumeration <adres_IP>
```
### Wykrywanie urządzeń DNP3
Po zeskanowaniu portów można użyć narzędzi takich jak `dnp3-toolkit` do wykrywania urządzeń DNP3 i ich funkcji. Poniżej przedstawiono przykładową komendę `dnp3-toolkit`:
```plaintext
dnp3-toolkit -a <adres_IP> -p 20000
```
### Analiza ruchu DNP3
Podobnie jak w przypadku Modbus, można użyć narzędzi do analizy ruchu sieciowego, takich jak Wireshark, do zrozumienia komunikacji między klientem a serwerem DNP3. Należy skonfigurować Wireshark do nasłuchiwania ruchu na odpowiednim interfejsie sieciowym i filtrowania pakietów DNP3.
```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>
2024-02-11 01:46:25 +00:00
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-11 01:46:25 +00:00
Inne sposoby wsparcia HackTricks:
2022-04-28 16:01:33 +00:00
2024-02-11 01:46:25 +00:00
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)!
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
2022-04-28 16:01:33 +00:00
</details>