検索:
ホーム   »   その他   »   LoRaWANハードウェアを攻撃から保護する

LoRaWANハードウェアを攻撃から保護する

  • 投稿日:2022年2月25日
  • 脅威カテゴリ:その他, 対策技術, 攻撃手法
  • 執筆:Trend Micro
0

今回の記事では、LoRaWANを使用する組織に悪影響を及ぼす可能性のある危険なハードウェア攻撃の詳細を説明します。LoRaWAN(Long Range Wide Area Network)とは、既に世界中のIoT構成に広く使用されている低消費電力の通信ネットワーク技術です。今後の企業およびスマートシティにおいては当たり前のように導入されていく技術と考えられています。導入の決め手となっているのは、その汎用性と手頃な価格です。一方、広範囲で使用されるデバイスおよびソフトウェアがそうであるように、サイバー犯罪者や攻撃者からの侵害・悪用の可能性は大きな懸念となります。トレンドマイクロではこれまで、LoRaWANのセキュリティとLoRaWANの通信の弱点について分析を行ってまいりました。広大な農地や都市全体に配置されるセンサなど、LoRaWANデバイスの多くが戸外に展開されるため、それらのデバイスを攻撃から守る対処は特に厄介なものとなります。つまり、保護されていないLoRaWANデバイスは、悪意のあるアクタに攻撃される可能性が高いということです。

LoRaWANへのハードウェア攻撃
以降のセクションでは、組織内の貴重な内部データが侵害される可能性のある各種ハードウェアハッキング技術を紹介します。また、このような種類の攻撃を緩和するセキュリティ手順の概要も説明します。

LoRaトランシーバのデータスクレイピング
LoRaトランシーバは、SPIハードウェアのインタフェースを介してマイクロコントローラと通信を行っています。マイクロコントローラは、このSPIアクセスをさまざまな目的で使用しています(アップリンクパケットの取得やゲートウェイへのダウンリンクパケットの送信など)。

HydraBusデバイス(一般に入手可能なオープンソースのデバイス)を使用すれば、このトランシーバと容易にインタフェースすることもできます。

図1:SPIを介したLoRaトランシーバのレジスタの読み取り
図1:SPIを介したLoRaトランシーバのレジスタの読み取り

以下のように、HydraBus用のSPIサンプルスクリプトを適応させ、読み取ることができます。

図2:読み取り用SPIサンプルスクリプトの例
図2:読み取り用SPIサンプルスクリプトの例

これにより、以下のようなデータが得られます。

図3:LoRaトランシーバから読み取ったデータの例
図3:LoRaトランシーバから読み取ったデータの例

トランシーバは機密情報を扱いませんが、さまざまなモードの設定と操作を可能にするレジストリがいくつかあります。これらのレジストリから一部のユーザデータを取得できます。たとえば、以下のページレジストリでは無線データへのアクセスを表示できます。

図4:LoRaトランシーバのレジストリ設定例
図4:LoRaトランシーバのレジストリ設定例

マイクロコントローラの公開インタフェースの悪用
送信パケットの暗号化またはトランシーバからの受信パケットの復号を行うすべての鍵および計算が、マイクロコントローラ上で実行されます。残念ながら、以下の図のUARTインタフェースのように、これらのマイクロコントローラのインタフェースの中には危険にさらされる可能性のあるものもあります。インタフェースは直接操作可能です。また、インタフェースの認証機構がアクセスポータルに適用されていない場合は機密情報をダンプできます。

図5:マグネット式ドアのUARTインタフェース例
図5:マグネット式ドアのUARTインタフェース例

攻撃者は他の経路またはアクセス方法を使用してデータを取得する可能性もあります。たとえば、JTAGまたはICSPインタフェースが有効な場合は、特定のセキュリティ機能からさえも攻撃が行われる可能性があります。メモリ保護が使用されている場合は、グリッチ攻撃が行われ、内部のフラッシュメモリにある機密データへの部分的または完全なアクセス権が取得される可能性があります。

外部のフラッシュメモリへのアクセス
マイクロコントローラで外部のフラッシュメモリを使用する場合は、デバイスの表面実装技術(SMT)パッケージに基づき、公開されているアクセスポートを通じて攻撃者がこのメモリに接続する可能性があります。 特定の場合において、攻撃者は実際にフラッシュメモリをプリント回路基板(PCB)から取り外し、ファームウェアをダンプ(ファームウェアイメージをコピーまたは抽出するプロセス)できます。

図6:適応したソケットおよびプログラマを使用して読み取るTSOPパッケージのフラッシュの例
図6:適応したソケットおよびプログラマを使用して読み取るTSOPパッケージのフラッシュの例

セキュアエレメントに対する攻撃
マイクロコントローラに対して行われる攻撃には多くの種類がありますが、セキュアエレメント(SE)によって攻撃の試みをある程度阻止できます。LoRaWANの場合は、通信の暗号化とメッセージの完全性保護のために導出されたマスターキーをSEによって安全に保管できます。

LoRaWANノードスタックには、少数の組み込みSEを含む実装例があります。ただし、このセキュアエレメントを調査するために、トレンドマイクロはJan Jongboom氏のブログ記事でmbedが立証したアプローチを採用しています。それぞれの実験で同じコンポーネントを使用します。
• 1 x ATSAMD21J1
• 1 x AT88CKSCKTUDFN-XPRO
• 1x SX1276MB1MAS

セキュアエレメントは、以下のようにUDFNソケット内に配置された事前プロビジョニング済みのATECC608A-MAHTN-Tです。

図7:UDFNソケット内に配置された事前プロビジョニング済みのATECC608A-MAHTN-Tの例
図7:UDFNソケット内に配置された事前プロビジョニング済みのATECC608A-MAHTN-Tの例

mbedのGithubリポジトリにも、mbedのOSおよびライブラリとともにATECC608A-MAHTN-Tを使用するコードの適切な例があります。指定されたコードを使用すれば、CryptoLibライブラリとUFDNソケットを使用するI2Cで安全にデータを伝送できます。

図8:ATECC608A-MAHTN-Tを使用するコードの例
図8:ATECC608A-MAHTN-Tを使用するコードの例

開発者にとっては残念なことですが、セキュアブートはATECC608A-MAHTN-Tでサポートされるものの、サンプル内に実装されません。したがって、セキュアエレメントを用いた実装がデバイスで使用される場合、攻撃者は容易に別のマイクロコントローラでセキュアエレメントを使用できるようになります。つまり、SEに保存されているデータにその他のMCUがアクセスできます。

このセキュアエレメントにはセキュアブート機能が搭載されており、マイクロコントローラの認証を行っています。下図に、Microchip社による説明の一部を引用します。

図9:セキュアエレメントに関する説明例
図9:セキュアエレメントに関する説明例

製品で使用されているセキュアエレメントのインスタンスは、ほとんど文書化されていません。残念ながら、開発者がこれらのセキュアエレメントの有益なセキュリティ機能をすべて把握するのは容易ではありません。

LoRaWANのためのセキュリティの推奨事項
LoRaWAN技術を利用する際の助けとなるように、サイバー犯罪者や攻撃者からデバイスを保護するためのベストプラクティスを記載した広範なリストを作成しました。リストには以前の調査で説明した攻撃手法への対策も網羅しています。

攻撃 推奨されるベストプラクティス
盗聴(Eavesdroppinng)
  • 強力かつランダムに生成されたネットワークキーおよびアプリケーションキーを使用すること
  • ABP(Activation by Personalization)方式は実験環境でのみ使用し、本番環境では使用しないこと
ビット反転(Bit-Flipping)
  • ゲートウェイとネットワークサーバ間の通信は暗号化する必要があります。The Things Networkのセキュリティ対策を利用する場合は、SSL(Secure Sockets Layer)を用いたMQTT(Message Queueing Telemetry Transport)を使用すること
  • ネットワークサーバとアプリケーションサーバ間の通信も暗号化する必要があります
ACKスプーフィング(ACK spoofing)
  • 暗号チェックサムを追加して、確認応答(ACK)番号が適切なパケットに属していることを確認すること
カウンターオーバーフローによるサービス拒否(Denial of Service with counter overflow)
  • LoRaWAN v1.0(16-bitカウンタ)の代わりに、LoRaWAN v1.1xを使用することで、32-bitロングカウンタを用いて攻撃が実行される可能性を低くすることができます
LoRaのクラスBに対する攻撃
  • メッセージ整合性チェック(MIC)を用いてLoRa(物理層)の巡回冗長検査(CRC)を変更すること。これは通常、開発者によって行われる複雑なタスクです
ルートキーの管理(Root key management)
  • 管理インターフェイスを外部公開せずに、必ずクライアント証明書を使用すること
  • 管理インターフェースを監査すること
ハードウェア攻撃(Hardware attacks)
  • 既知の物理的攻撃に耐性のあるマイクロコントローラを選択すること
  • 攻撃者がプログラミングインターフェイスを介してメモリをダンプするのを防ぐために、メモリ保護(ヒューズビット)を構成すること
セキュアエレメントの再利用(Secure Element reuse)
  • セキュアエレメントのセキュアブート機能を構成し、マイクロコントローラの認証を行うこと

表:想定される攻撃手法に対するベストプラクティスリスト

LoRaWANは成長と進化を続けるテクノロジであり、スマートシティおよび重要産業用の低価格で使いやすいIoTソリューションの構築に役立ちます。デバイスは配達フリートの追跡、ダムの水位確認、資産のセキュリティ確保、さらには構築の安全性の監視に既に使用されています。こうした企業、従業員、重要業務を保護するには、サイバーセキュリティを優先することが不可欠です。本記事では、LoRaWANハードウェアの弱点を指摘し、攻撃を緩和するために組織が講じることのできる対策を示します。セキュリティの課題に関する詳細については、テクニカルブリーフ(英語)を参照してください。

参考記事:

  • 「Protecting LoRaWAN Hardware from Attacks in the Wild」
    by Sébastien Dudek

Related posts:

  1. Java 6に存在するゼロデイ脆弱性を確認、最新版への更新を!
  2. 「DoubleAgent」:Microsoft Application Verifier を悪用。この攻撃によるリスクについて
  3. IoT機器での脆弱性について考える
  4. CVE-2021-26084などサーバ関連の脆弱性を悪用するエクスプロイトの解説
Tags: IOTLoRaWAN


  • 個人のお客さま向けオンラインショップ
  • |
  • 法人のお客さま向け直営ストア
  • |
  • 販売パートナー検索
  • Asia Pacific Region (APAC): Australia / New Zealand, 中国, 日本, 대한민국, 台灣
  • Latin America Region (LAR): Brasil, México
  • North America Region (NABU): United States, Canada
  • Europe, Middle East, & Africa Region (EMEA): France, Deutschland / Österreich / Schweiz, Italia, Россия, España, United Kingdom / Ireland
  • 電子公告
  • ご利用条件
  • プライバシーポリシー
  • Copyright © 2021 Trend Micro Incorporated. All rights reserved.