Modbus Protocol

Modbusプロトコルの紹介

Modbusプロトコルは、産業オートメーションおよび制御システムで広く使用されているプロトコルです。Modbusは、プログラマブルロジックコントローラ(PLC)、センサー、アクチュエーター、およびその他の産業機器など、さまざまなデバイス間の通信を可能にします。Modbusプロトコルを理解することは重要です。なぜなら、これはICSで最も使用されている通信プロトコルであり、スニッフィングやPLCへのコマンドの注入に対する多くの攻撃面を持っているからです。

ここでは、プロトコルのコンテキストとその動作の性質を提供するために、概念がポイントごとに述べられています。ICSシステムセキュリティの最大の課題は、実装とアップグレードのコストです。これらのプロトコルと標準は、80年代と90年代の初めに設計され、現在でも広く使用されています。産業には多くのデバイスと接続があるため、デバイスのアップグレードは非常に困難であり、これがハッカーに古いプロトコルを扱う優位性を提供します。Modbusへの攻撃は、業界にとってその運用が重要であるため、実質的に避けられません。

クライアント-サーバーアーキテクチャ

Modbusプロトコルは、通常、クライアントサーバーアーキテクチャとして使用され、マスターデバイス(クライアント)が1つ以上のスレーブデバイス(サーバー)との通信を開始します。これはマスター-スレーブアーキテクチャとも呼ばれ、SPI、I2Cなどの電子機器やIoTで広く使用されています。

シリアルおよびイーサネットバージョン

Modbusプロトコルは、シリアル通信とイーサネット通信の両方に対応するように設計されています。シリアル通信はレガシーシステムで広く使用されている一方、現代のデバイスはイーサネットをサポートしており、高データレートを提供し、現代の産業ネットワークにより適しています。

データ表現

データは、ModbusプロトコルでASCIIまたはバイナリとして送信されますが、バイナリ形式は古いデバイスとの互換性のために使用されます。

機能コード

ModBusプロトコルは、PLCやさまざまな制御デバイスを操作するために使用される特定の機能コードの送信で機能します。この部分は、リプレイ攻撃が機能コードを再送信することによって行われる可能性があるため、理解することが重要です。レガシーデバイスはデータ送信に対する暗号化をサポートしておらず、通常は長いワイヤーで接続されているため、これらのワイヤーの改ざんやデータのキャプチャ/注入が発生します。

Modbusのアドレッシング

ネットワーク内の各デバイスには、デバイス間の通信に必要な一意のアドレスがあります。Modbus RTU、Modbus TCPなどのプロトコルがアドレッシングを実装するために使用され、データ送信のためのトランスポート層として機能します。転送されるデータは、メッセージを含むModbusプロトコル形式です。

さらに、Modbusは送信データの整合性を確保するためにエラーチェックも実装しています。しかし、最も重要なのは、Modbusはオープンスタンダードであり、誰でも自分のデバイスに実装できることです。これにより、このプロトコルはグローバルスタンダードとなり、産業オートメーション業界で広く普及しました。

その大規模な使用とアップグレードの欠如により、Modbusへの攻撃はその攻撃面において重要な利点を提供します。ICSはデバイス間の通信に大きく依存しており、それらに対する攻撃は産業システムの運用にとって危険です。リプレイ、データ注入、データスニッフィングおよびリーク、サービス拒否、データ偽造などの攻撃は、攻撃者によって送信媒体が特定されると実行される可能性があります。

Last updated