hacktricks/network-services-pentesting/44818-ethernetip.md
2023-07-07 23:42:27 +00:00

9.9 KiB
Raw Blame History

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

プロトコル情報

EtherNet/IPに関するWikipediaの記事から引用 http://en.wikipedia.org/wiki/EtherNet/IP

EtherNet/IPは、Rockwell Automationによって1990年代後半に開発され、Rockwellの産業用イーサネットネットワーキングソリューションの一部として開発されました。RockwellはEtherNet/IPという名前を付け、現在はプロトコルを管理し、新しいプロトコルを利用する製品が開発される際には、確立された標準に準拠することを要求して、マルチベンダーシステムの相互運用性を保証しています。

EtherNet/IPは、主に水処理プラント、製造施設、公益事業などの産業用自動制御システムで最も一般的に使用されています。いくつかの制御システムベンダーは、EtherNet/IPを介して通信できるプログラマブルオートメーションコントローラとI/Oを開発しています。

EtherNet/IPデバイスは、TCP/44818をクエリすることで正確に識別されます。リストIdentitiesメッセージ0x63を使用して、応答メッセージがEtherNet/IPデバイスであるかどうかを判断し、デバイスを列挙するための情報を解析します。
ここから

デフォルトポート: 44818 UDP/TCP

PORT      STATE SERVICE
44818/tcp open  EtherNet/IP

列挙


Ethernet/IP


Ethernet/IP (Industrial Protocol) is a communication protocol widely used in industrial automation systems. It is based on the Common Industrial Protocol (CIP) and uses the TCP/IP stack for communication.

Protocol Overview

Ethernet/IP uses the CIP protocol to exchange data between devices in an industrial network. It supports various types of devices, including programmable logic controllers (PLCs), human-machine interfaces (HMIs), and sensors.

The protocol operates at the application layer of the TCP/IP stack and uses the User Datagram Protocol (UDP) and Transmission Control Protocol (TCP) for communication. UDP is used for multicast and broadcast messages, while TCP is used for unicast messages.

Enumeration Techniques

To enumerate Ethernet/IP devices, you can use the following techniques:

  1. ARP Scanning: Send an Address Resolution Protocol (ARP) request to the network to discover Ethernet/IP devices. This technique is effective for devices on the same subnet.

  2. Port Scanning: Perform a port scan on the target IP addresses to identify open ports associated with Ethernet/IP services. Common ports used by Ethernet/IP include TCP port 44818 and UDP port 2222.

  3. Banner Grabbing: Connect to the target device's open ports and retrieve the banners or service information. This can provide valuable information about the device and its Ethernet/IP services.

  4. Protocol-Specific Tools: Use specialized tools like nmap or Wireshark with Ethernet/IP protocol support to perform enumeration and analysis of Ethernet/IP devices.

Enumeration Results

During the enumeration process, you may discover the following information about Ethernet/IP devices:

  • IP addresses and MAC addresses of the devices
  • Open ports associated with Ethernet/IP services
  • Device names and descriptions
  • Firmware versions and software information
  • Network topology and device relationships

This information can be used to further analyze and exploit the Ethernet/IP devices during a penetration test.


Ethernet/IP


Ethernet/IPIndustrial Protocolは、産業オートメーションシステムで広く使用されている通信プロトコルです。これはCommon Industrial ProtocolCIPに基づいており、通信にはTCP/IPスタックを使用しています。

プロトコルの概要

Ethernet/IPは、産業ネットワーク内のデバイス間でデータを交換するためにCIPプロトコルを使用します。プログラマブルロジックコントローラPLC、人間機械インターフェースHMI、センサーなど、さまざまなタイプのデバイスをサポートしています。

このプロトコルは、TCP/IPスタックのアプリケーション層で動作し、通信にはUser Datagram ProtocolUDPとTransmission Control ProtocolTCPを使用します。UDPはマルチキャストやブロードキャストメッセージに使用され、TCPはユニキャストメッセージに使用されます。

列挙の手法

Ethernet/IPデバイスを列挙するために、次の手法を使用できます

  1. ARPスキャンネットワークにAddress Resolution ProtocolARPリクエストを送信して、Ethernet/IPデバイスを検出します。この手法は、同じサブネット上のデバイスに対して効果的です。

  2. ポートスキャン対象のIPアドレスに対してポートスキャンを実行し、Ethernet/IPサービスに関連付けられたオープンポートを特定します。Ethernet/IPで使用される一般的なポートには、TCPポート44818とUDPポート2222があります。

  3. バナーグラビング対象デバイスのオープンポートに接続し、バナーやサービス情報を取得します。これにより、デバイスとそのEthernet/IPサービスに関する貴重な情報が得られます。

  4. プロトコル固有のツールEthernet/IPプロトコルをサポートするnmapWiresharkなどの専用ツールを使用して、Ethernet/IPデバイスの列挙と分析を行います。

列挙の結果

列挙プロセス中に、Ethernet/IPデバイスに関する次の情報を発見することがあります

  • デバイスのIPアドレスとMACアドレス
  • Ethernet/IPサービスに関連付けられたオープンポート
  • デバイスの名前と説明
  • ファームウェアバージョンとソフトウェア情報
  • ネットワークのトポロジーとデバイスの関係

この情報は、ペネトレーションテスト中にEthernet/IPデバイスをさらに分析し、悪用するために使用できます。

nmap -n -sV --script enip-info -p 44818 <IP>
pip3 install cpppo
python3 -m cpppo.server.enip.list_services [--udp] [--broadcast] --list-identity -a <IP>

Shodan

  • port:44818 "製品名"
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥