日立Energy Relion 650/670シリーズIEDのアップデート機構の不具合について

日立Energy Relion 650/670シリーズIEDのアップデート機構の不具合について

Nozomi Networks ラボは、今年9月2022年にスイス・サイバー・ディフェンス・キャンパスのICSハッカソンに参加したことを誇りに思います。イベント期間中、私たちのチームは3日間、脆弱性のリサーチとファームウェアのリバースエンジニアリングに取り組み、特に保護制御IEDであるHitachi Energy Relion 650/670シリーズに注力しました。

チームが、ファームウェアに存在するいくつかの機能について基本的な理解を深めたところで、我々は、 提供されたデバイスに対して、いくつかの攻撃経路の実験を開始した。そのうちのいくつかが悪用不可能であることが判明したなら、最終日に、ファームウェアの検証メカニ ズムを調べる機会を得た。

このブログでは、この脆弱性を発見した経緯、影響を受ける設定のリストを共有し、すぐに実施できる緩和策を紹介する。

背景

この脆弱性を悪用しようとしたところ、日立エナジーリリオンの画面が消灯し、システムクラッシュの症状が出ていることに気づきました。脆弱性が開発された試験用ラックの1つを図1に示す。

脆弱性を検索するラック
図1.脆弱性を検索するために数多く用意されているラックのひとつ。

ファームウェアは通常、依存関係が静的にリンクされた非常に大きな実行ファイルであることが多いため、この作業は並大抵のことではなかった。このRelionファームウェアも例外ではなく、2つの異なるFTPサーバーを含む、いくつかのサービスと機能がファームウェア自体に組み込まれている。このため、ファームウェアの機能を理解するためには、ファームウェアが使用する機能を調査し、理解することに多くの時間を費やすことになる。その例を図 2 に示す。まず、解析前のファームウェア機能 FTP HELP を示し、次に解析後の同機能を示す。

リバースエンジニアリング前のFTP HELPコマンドハンドラ
図2a.リバースエンジニアリング前のFTP HELPコマンドハンドラ。
リバースエンジニアリング後のFTP HELPコマンドハンドラ
図2b.リバースエンジニアリング後のFTP HELPコマンドハンドラ。

リバース・エンジニアリングが進み、チームがファームウェアに存在する機能について理解を深 めるにつれて、我々はいくつかの攻撃経路を構築し始めた。デバイスの他の側面を調査する一方で、私たちはファームウェア・アップデートのメカニズムに分析を集中し、その下に複雑な攻撃対象が存在すると推測した。最終的に、調査は実を結んだ。

我々のチームが発見した特定の脆弱性は、Relion 650/670シリーズのファームウェア・アップデート・メカニズムを悪用するものです。特筆すべきは、アップデート手順中に悪意のあるアップデート・パッケージがデバイスに送信され、デバイスをクラッシュさせる可能性があることだ。ただし、この脆弱性が機能するためには、デバイスがFSTAccessパラメータを有効にしている必要がある。

残念ながら、ハッカソンが終了する前に、脆弱性をファームウェアの影響を受けるコードまで完全にトレースすることはできなかった。我々の推測では、この脆弱性はヒープ・オーバーフローを引き起こし、このオーバーフローがデバイス上でリモート・コード実行を可能にするために活用される可能性がある。

日立エネルギーRelionに脆弱性

日立エナジーレリオン650/670のファームウェアを解析したところ、1つの脆弱性が見つかった:

  1. CVE-2022-3864:パッケージ検証の脆弱性 (CWE-) の更新、CVSS v3.1 4.5 (CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:N/A:H)

この脆弱性は以下のコンフィギュレーションに影響する:

  • リリオン670/650シリーズ バージョン2.2.0 全リビジョン
  • Relion 670/650/SAM600-IO シリーズ バージョン 2.2.1 全リビジョン
  • リリオン670シリーズ バージョン2.2.2 全リビジョン
  • リリオン670シリーズ バージョン2.2.3 全リビジョン
  • リリオン670/650シリーズ バージョン2.2.4 全リビジョン
  • リリオン670/650シリーズ バージョン2.2.5 全リビジョン

パッチの開発はまだ進行中であるため、使用されたPoCリクエストに関する技術的な詳細は、この記事では自主的に省略されている。

要件と影響  

本脆弱性は、悪意のあるアップデートパッケージを使用して日立エナジーレリオンのファームウェアをアップデートする際に誘発されるが、本脆弱性を悪用するためには、いくつかの主要な前提条件がある:第一に、デバイス上でFSTAccessモードが有効になっていること、第二に、脅威行為者がアップデート手順を開始するための一連の認証情報を知っていること。

この脆弱性を悪用する方法は2つ考えられる:

  1. まず、最も明白なのは、FSTAccessが有効になっているRelionデバイスにリモートアクセスし、デバイスにアクセスするための有効な認証情報を持つ脅威アクターが、アップデート手順を開始し、悪意のあるアップデートパッケージを提供できることです。
  2. 第二に、脅威者は、悪意のあるアップデートパッケージを Relion のオペレータに提供するために、水飲み場攻撃を 行うかもしれない。例えば、オペレータをターゲットとしたスピアフィッシング・キャンペーンを実施し、Relion 650/670 シリーズの新しいファームウェアを宣伝するのである。また、脅威行為者がすでに被害者環境内のいくつかのシステムに侵入している場合には、被害者 のナレッジ・センターやファームウェア・パッケージをホスティングしているファイル共有を改 ざんすることも考えられる。

日立エナジーRelion 650/670の脆弱性に対する緩和策

日立エネルギーからのパッチを待つ間(現在進行中)、我々は以下の緩和策を推奨する:

  • 影響を受けるデバイスでFSTAccessモードが無効になっていることを確認します。必要であれば、アップデート手順の間だけオンにして、完了したらオフに戻してください。フィールド・サービス・ツール・アクセス」を無効にする方法の詳細については、関連製品の技術マニュアルに従ってください;
  • 更新パッケージは、常に日立エネルギーから直接、安全な経路でダウンロードするようにしてください;
  • 脆弱性が修正されるまで、常に新しいバージョンをダウンロードする。

概要

アップデート・メカニズムは、多くのハードウェア・デバイスにとって典型的な悪用ベクトルであり、悪用するのは驚くほど簡単であることが多い。攻撃者はこれらの脆弱性を利用してインプラントをインストールすることができ、そのインプラントは、場合によっては、被害者の環境内で非常に高いレベルの持続性を提供するフラッシュレジリエントである可能性があります。デバイスのアップデート・パッケージを入手する際には細心の注意を払ってください。アップデート・パッケージは、最終的に敵に改ざんされる可能性があるため、お使いの環境のどこにも保管しないようにしてください。

このイベントを主催してくださったArmassuisse、スイス連邦国防省、そして主催者の皆様に感謝いたします。参加できたことを大変嬉しく思っており、また機会があれば参加したいと思っています。また、参加者の皆様のご尽力とスリリングなディスカッションに感謝いたします。最後に、迅速な対応とプロフェッショナルな開示手続きをしてくださった日立エネルギーPSIRTに感謝いたします。