前回に紹介しましたが、OT環境とIT環境における最も大きな違いは、OTデバイスの動作条件が限られているということです。OTデバイスに対しては、求められる以外の動作が発生することが想定されていません。
つまり、インターネットや社内ネットワークとつながっていないOT環境では、そのOTデバイスが持つ機能のみが設計通りに動作することだけが求められてきました。逆に言えば、それ以外の動作はまったく想定されておらず、むしろ余剰な動作によるリソース消費を極端に排除することが設計の第一指針となっています。
こうした環境下で、いかにOTデバイスをセキュアに保ち、かつ、想定外のイベントをいち早く察知することが重要となります。セキュリティ対策という点では、IT環境のほうがはるかに進んでいますが、OT環境はIT環境と異なる点があるので、その点を理解した上でのセキュリティ対策を検討していくことが必要となります。
以下、OT環境をセキュアにするための3つの手法を説明します。
制御系ネットワークと業務系ネットワークを切り離す
まず、1つ目は最も一般的に取り入れられた手法となりますが、OT環境の制御系ネットワークとIT環境の業務系ネットワークを完全にもしくは論理的に分離してしまうことです。これはOT環境ではごく自然に行われていることですが、IT環境でネットワークを分離することはどちらかというと特殊な例になります。
ここで「論理的に分離」と書いたのは、かつてOTネットワークは、OTデバイスごとに物理的にも完全に独立したネットワークを独立して用意することが一般的でした。しかしながら、デバイスごとに分離されたネットワーク環境は、OT環境の全体像を把握しづらいものにし、運用・管理も属人的になってしまいました。
こうした状況を避けるには、少なくともネットワークインフラは1つに統一しながら、OT環境とIT環境は論理的に分離する必要があり、このことはコスト面でも運用面でも有用です。
論理的に分離する具体的な手法としては、IT環境ではおなじみのファイアウォールを分離したいネットワーク間(例えば、OT環境とIT環境の境界)に設置し、制御系ネットワークで発生するOTデバイス特有の通信がIT環境の業務系ネットワークに流れないようにします。
そして、これは最も重要な点ですが、IT環境の業務ネットワーク内からOT環境の機器への通信を完全に遮断する必要があります。これはIT空間に侵入したマルウェアがOT環境へ入り込むのを防ぐためです。
Tips:一方向通信のみを許可するデータダイオード
IT環境では通信制御でファイアウォールが用いられていますが、OT環境ではデータダイオードと呼ばれる、通信が一方方向にしか通信できないようにさせる製品が存在しています。データダイオードを導入することで、通信は制御系ネットワーク側から業務系ネットワークのみにしかできないないようにし、その逆の通信が発生しないようにすることで、OT環境のセキュリティを確保することができます。
パッシブ型のモニタリング装置を導入
2つ目の方法は、制御系ネットワークのセキュリティインシデントや異常なイベントを検知するために、パッシブ型のモニタリング装置を導入することです。
現在、OT環境で提供されるセキュリティ製品の多くは、このパッシブ型モニタリングの機能を提供しています。具体的には制御系ネットワーク環境のネットワーク機器(スイッチングハブ等)にスパンポート(通信のミラーリンング機能)を設定し、制御系ネットワークを流れるトラフィックを受信してセキュリテイの観点で通信パケットの分析を行います。
通信パケットを分析することで何がわかるのか、という疑問もあるかと思いますが、実は非常に多くの事実を知ることができます。
まず、その通信をどの機器とどの機器がどのようなプロトコルを使用しているかを可視化することにより、通信マップを作成することができます。先に書いたように、制御系ネットワークでは、きわめて属人的にOTデバイスが頻繁にインストールされることが多くありました。そうした運用では、いくつのOTデバイスが存在していて、どのOTデバイス同士が通信をしているのかを把握することが難しくなります。モニタリング装置を導入することで、機器間の関係を視覚的に把握することが可能になります。
次に、通信における”異常”を可視化することができます。一定の学習期間内に発生した通信を”通常”として記録しておき、その期間内に発生しなかった通信を”異常”として検出できます。OT環境はI T環境とは異なり、通信相手や通信量は限定的になるため、今まで通信していなかった機器と通信が始まることは”異常”なイベントと判断することができます。
最後に、通信パケットをモニタリングすることの意味は、実際の命令(クエリ)を観察できるということです。幸いにもITネットワークと違って制御系ネットワークの通信パケットは、OTデバイス上で余計なリソースを消費したくないという事情もあって通信の暗号化が進んでいないため、 クエリの詳細を観察することが可能です。OTセキュリティ製品の中には、独自のセキュリティインテリジェンスを所有している製品も多くあり、通信の中に含まれるビット列から脅威情報を検出することも可能になります。
OT機器に直接クエリを実行してデバイスの状態を取得
OT環境のセキュリティ手法として最後に紹介するのは、セキュリティ製品からOT機器に対して直接クエリを実行して、デバイスの状態を取得することです。
OT環境では可用性が重視されるため、OT機器に対して直接情報を収集する行為は好まれていませんでした。万一、システムを停止させてしまうと、IT環境に比べて大きな被害を引き起こすことになるためです。
しかしながら、OTセキュリティ製品の中には、安全にOT機器に直接クエリを実施可能なものも出てきています。これはセキュリティベンダーによっては「スマートクエリ」「デバイスクエリ」などと呼ばれています。セキュリティベンダーは既に多くのPLCやRTUのメーカー独自の言語をサポートしており、それらの機器に直接クエリを実施することでデバイスの状況を得ることができます。
クエリを使って機器の情報を取得する、というこの手法はパッシブ型では得ることができない多くの利点があります。
例えば、制御系ネットワークに通信をほとんど発生させないOT機器や休眠状態のOT機器の情報はパッシブ型では監視できません。しかし、デバイスクエリを用いることで、それらの機器からも情報の収集が可能になります。
また、パッシブ型では、ネットワークを介さずにOT機器に直接接続して操作を実行するような攻撃を検知することは不可能です。現に、OT機器の多くにおいて、保守時におけるOSのアップデートやソフトウェアのパッチ適用は、OT機器に直接、USBメモリを挿してそこから実行することが多くあります。
その場合は、制御ネットワーク上に一切の通信が発生しません。クエリを使って対象のOT機器と直接情報をやり取りすることで、デバイス自体の状態変化を監視することが可能になります。例えば、OT機器が停止したり、設定が変更されたりした場合にいち早く気付くことができます。
以上、今回はOT環境でのセキュティを実現するための具体的な3つの手法について紹介させていただきました。最終回となる次回はOTセキュリティの未来について述べます。
著者プロフィール
叶岡衛
Tenable Network Security日本法人のSecurity Engineer。脆弱性スキャナとして有名なNessusのほか、IT/OTを統合した包括的なセキュリティ製品であるTenable.io、Tenable.sc、Tenable.ot等を担当。