本シリーズの構成は以下のようになっています。
-
【第1回】OTセキュリティとは
-
【第2回】Microsoft Defender for IoTでOT環境の可視化
-
【第3回】レポート・脆弱性診断 (※ 本記事)
-
【第4回】その他の機能
目次
第3回はMicrosoft Defender for IoTを使ったレポートの表示、および脆弱性診断について解説します。
レポート(リスク評価)
Defender for IoTでは、いつでもレポートを出力することができます。
一般的なレポートは「リスク評価」を利用します。
「リスク評価」を選択すると過去に出力したレポートが表示されます。新たにレポートを作成する場合は「レポートの生成」を押すと、概ね数分ほどでPDFレポートが生成され、レポート一覧に加わります。
レポートの内容
最初のページはサマリーです。
このレポートではシステム全体のセキュリティスコアが45%と評価されています。
また、脆弱なデバイス(セキュリティスコア70%未満)が「57」、改善が必要なデバイス(セキュリティスコア70%~89%)が「10」、セキュアなデバイス(セキュリティスコア90%以上)が「99」であると表示されています。
こちらがレポートの目次です。レポートには様々な情報が載っていますが、代表的なものだけご紹介します。
Executive Summary
ネットワーク内の機器の一覧やネットワークセキュリティの状況を示したサマリーが生成されます。
Top Vulnerable Device
セキュリティスコアが低い順にデバイスごとの評価が掲示されます。
また、使用ポートとデバイスが持つ脆弱性がスコアの高い順に5つ迄表示されます。
Network Security Risks
収集したネットワークの情報が表示されます。
Weak Firewall Rulesと記載がありますが、こちらはネットワーク内に設置されたファイアウォールの規則(ACL)をDefender for IoTに読み込む事で、脆弱なルールをチェックし、問題があれば警告してくれる機能です。
読み込む対象のメーカーはChack Point、Fotinet、junipersとなります。
Network Security Risksでは、ここに表示されているもの以外に、マルウェアの兆候、インターネット接続機器一覧、アクセスポイント一覧等も表示されます。
Network Operations
24時間以内に使われたプロトコルのトップ20、検出したプロトコルの問題がレポートされます。
上記以外に、IPネットワークの一覧や、切断されたデバイスの一覧なども表示されます。
Attack vector
次の「攻撃ベクトル(Attack Vector)」の章で説明します。
Mitigation
Mitigation(緩和)とは、セキュリティスコアを向上させるためのポイントが提示されます。
この例ではまず一つ目として、インターネット接続が行われている機器の一覧が表示され、
「インターネット接続を確認し、不要な接続を停止するか、必要な場合はオフラインプロキシや片方向セキュリティゲートウェイを導入すること」を推奨しています。
また、ここを改善すると最大14%セキュリティスコアが向上すると示されています。
次に、「ワークステーションにアンチマルウェアソフトを導入」することを推奨しています。対策を行えば、最大10%セキュリティスコアが向上すると示されています。
その次は「継続的にセキュリティ更新が出来るよう、より新しいOSへの入れ替え」を推奨しています。この対策では最大9%セキュリティスコアが向上すると示されています。
以下にも対策は続きますが、このように、現状の環境の問題点を提示し、改善策を示すものがレポートとなります。
以上がDefender for IoTのリスク評価レポートとなります。
攻撃ベクトル(Attack Vector)
Defender for IoTで特徴的な機能が、この攻撃ベクトルです。
名前からだとわかりづらいですが、攻撃者が攻撃を仕掛ける場合、どのような経路があるかをシミュレーションしてくれます。
その際に、そのネットワークで見つかっている脆弱性を使った経路を示す為、未対応の脆弱性があるほど、危険度が高くなります。
上記Attck vector #1の例ですと、(1)攻撃者はインターネットに接続されている10.200.1.169の機器に侵入します。続いて、(2)リモートアクセスが許可されているOICU812-XPという機器に侵入するといった具合です。
ここでは出ていませんが、侵入される危険のあるCVE等のパッチが未適用の場合、そこも脆弱性としてシミュレートしてくれます。
シミュレートの方法は以下の通りです。
攻撃ベクトル→シミュレーションの追加をクリックすると、右端に追加画面が表示されます。
名前 (必須): 任意のわかりやすい名称を入力してください。
ベクトルの最大数: シミュレーション結果を何パターン出力するか決定します。
デバイスマップで表示: デバイスマップが表示されます。
すべてのソースデバイスを表示: 攻撃元となるデバイスです。オフにすると、次の「攻撃元」で攻撃元デバイスを選択できます。オンにすると、全てのデバイスが攻撃元としてシミュレーションします。
攻撃元: 攻撃元デバイスを選択します。
すべてのターゲットデバイスを表示: 攻撃先となるデバイスです。オフにすると、次の「攻撃先」で攻撃対象のデバイスを選択できます。オンにすると、全てのデバイスを攻撃対象としてシミュレーションします。
攻撃対象: 攻撃対象のデバイスを選択します。
デバイスを除外: シミュレーションの除外とするデバイスを選択します。
サブネットを除外: シミュレーションの除外とするサブネットを選択します。
攻撃ベクトルの使い方として、最初はAny to Anyで幅広く試してみるといいと思います。
(機器が多すぎる等、Any to Anyは実施できないことがあります。)
本来の使用方法は、工場内の重要デバイスをターゲットとして、どのような侵入経路があるかをシミュレートすることが目的です。
侵入経路が検出されたら、どのような脆弱性を使うか表示されますので、そのターゲットデバイス、あるいは攻撃経路上のデバイスで脆弱性を取り除いたらどのような結果になるかシミュレーションします。
取り除く方法として、侵入に利用できる脆弱性が無くなったという前提で、脆弱性のあるデバイスを除外して再シミュレーションを行います。
最終的にシミュレート結果、攻撃経路がゼロになる、あるいはあり得ない経路だけになれば終了です。
後は、実際にその脆弱性を取り除けば、侵入の経路をふさぐことができます。
このように、この機能を使えばどのように対応すれば最も効果的に対策が出来るのかを、予めシミュレーションできる機能となり、うまく使えば効率的なパッチ運用が可能となるものです。
次回
最後の第4回では残りの機能について解説してまいります。
~~ 連載記事一覧 ~~