IoT機器の脆弱性診断とは、ハードウェア・ファームウェア・通信・認証・更新機構など、機器を構成する要素全体を対象に、悪用されうる弱点の有無を攻撃者の視点で調べる検査です。
Webアプリケーションを主な対象とするWeb脆弱性診断と比べ、診断範囲が機器本体や更新の仕組みにまで広がる点が大きな違いです。
【結論】
Web診断は主にWebアプリケーションやAPIの弱点を調べるのに対し、IoT機器の診断は機器本体のハードウェア・ファームウェア・通信・認証・更新機構まで対象を広げる点が異なる
診断範囲は機器単体ではなく、連携するスマホアプリ・クラウド・管理画面まで含めて決めるのが基本
依頼は出荷前だけでなく、設計・開発段階や出荷後の更新時にも検討する価値がある
本記事では、IoT機器の脆弱性診断の考え方をWeb診断との違いから整理し、診断範囲、依頼のタイミング、事前に準備しておく情報を解説します。
1. IoT機器の脆弱性診断とは何か?
IoT機器の脆弱性診断とは、機器本体と、機器が接続・連携する範囲を対象に、攻撃者が悪用できる設計・実装・設定上の弱点を洗い出す検査です。
診断では、攻撃者の視点で侵入できる経路がないかを実際に確かめます。
最大の違いは診断対象です。
Web脆弱性診断は、Webアプリケーションの入力値処理やセッション管理などの弱点を、主にHTTP/HTTPS経由で調べます。
IoT機器の診断はこれに加えて、実機への物理的なアクセスやファームウェア解析など、Web診断とは異なる検証が必要になる領域を含みます。
|
観点 |
Web脆弱性診断 |
IoT機器の脆弱性診断 |
|
主な対象 |
Webアプリケーション、Webサーバー、API |
機器本体、ファームウェア、通信、更新機構、連携アプリ・クラウド |
|
主な接点 |
HTTP/HTTPS経由のリクエスト |
ネットワーク、無線(Wi-Fi・Bluetooth等)、UART・JTAG・USBなどの物理インターフェース |
|
診断環境 |
本番・検証用のWeb環境、API、テストアカウントなど |
実機・評価用サンプル、ファームウェアイメージ、通信環境など |
|
参照される基準の例 |
OWASP Top 10、OWASP Web Security Testing Guide |
OWASP IoT Security Testing Guide、経済産業省の検証の手引き |
|
結果の主な観点 |
入力値処理、認証・セッション、設定不備 |
左記に加え、ファームウェアの中身、鍵の保管、更新の改ざん耐性 |
(出典:OWASP「Web Security Testing Guide」)
(出典:OWASP「IoT Security Testing Guide」)
(出典:経済産業省「機器のサイバーセキュリティ確保のためのセキュリティ検証の手引き」)
診断範囲が広がる理由は、IoT機器が次のような特徴を持つためです。
機器が利用者や第三者の手元に渡るため、物理的に分解・解析される前提で弱点を考える必要がある
組込み向けのOSやOSS部品が混在し、機器ごとに構成が異なる
長期間稼働し、出荷後は更新機構が脆弱性を修正する主な手段になる
スマホアプリやクラウドと一体で動作し、攻撃経路が機器の外側にも広がる
IoT機器の診断範囲は、次の6領域に整理すると依頼時の抜け漏れを防ぎやすくなります。
|
領域 |
主な確認内容 |
|
ハードウェア |
デバッグ用ポート(UART・JTAG等)の露出、基板上の記憶装置からのデータ読み出し |
|
ファームウェア |
固定パスワードや秘密鍵の埋め込み、既知の脆弱性を含む部品、不要なサービスの有無 |
|
通信 |
暗号化の有無と設定、証明書の検証、不要に開いているポート、無線のペアリング |
|
認証・アクセス制御 |
出荷時の共通パスワード、管理機能の権限分離、総当たり攻撃への耐性 |
|
更新機構 |
更新ファイルの署名検証、古いバージョンへの巻き戻し防止、更新経路の保護 |
|
連携アプリ・クラウド |
スマホアプリ、クラウドAPI、管理画面(Web診断の手法を併用する場合がある) |
ハードウェアとファームウェアでは、実機への物理的なアクセスやファームウェアイメージの解析などを通じて、Web診断では確認しにくい弱点を調べます。
例えば基板上のデバッグ用ポートが残っていると、機器内部のデータやコマンドに直接アクセスされるおそれがあります。
ファームウェアについては、イメージを取得して展開し、固定パスワードや秘密鍵、既知の脆弱性を含むOSS部品が含まれていないかを確認します。
通信では暗号化の有無や証明書の検証、不要に開いているポートを確認します。
認証では、出荷時の共通パスワードや管理機能の権限分離を確認します。
更新機構では、更新ファイルの改ざんを検知できるか、古い版へ戻されないかを確認します。
更新機構は出荷後に脆弱性を修正する主な手段になるため、診断範囲から外さないことが重要です。
スマホアプリやクラウドAPI、管理画面は機器と一体で動くため、機器単体の診断だけでは攻撃経路の全体像が見えません。
この部分には、Web診断やモバイルアプリ診断の手法を併用する場合があります。
診断範囲を決める際は、機器本体と連携先のどこまでを自社の責任範囲として確認するかを、あらかじめ整理しておきます。
なお、OWASP IoT Security Testing Guideは主に機器本体を対象としており、連携するWebアプリケーションやモバイルアプリ、バックエンドサーバーは別の診断手法やガイドを用いて確認します。
優先して確認する範囲は、製品の種類や構成によって変わります。
以下は典型的な例であり、実際の診断範囲は製品構成や想定する脅威によって異なります。
|
製品・構成の例 |
優先して確認する範囲 |
|
ネットワークカメラ |
通信、認証、ファームウェア、管理画面 |
|
スマートロック |
物理インターフェース、無線通信、認証、更新機構 |
|
クラウド連携センサー |
機器本体、通信、クラウドAPI、アクセス制御 |
|
産業用IoTゲートウェイ |
ネットワークサービス、認証、ファームウェア、更新機構 |
診断の依頼は、出荷前の1回に限らず、開発の段階に応じて目的を変えながら複数回に分けると、修正の手戻りを抑えやすくなります。
|
時期 |
診断の主な目的 |
|
企画・設計段階 |
脅威分析・セキュリティ設計レビューによる、設計上の弱点の早期把握 |
|
開発・試作段階 |
実装や実機に対する脆弱性診断による、実装上の弱点の確認と是正 |
|
出荷前 |
量産仕様に近い実機での最終確認 |
|
出荷後・大きな更新時 |
機能追加や部品更新に伴う再確認 |
依頼前に次の情報を整理しておくと、診断範囲の前提を診断側と揃えやすくなります。
対象機器の型番とファームウェアのバージョン
診断に使う実機の台数(破壊を伴う解析が必要な場合は複数台が求められることがある)
システム構成図と通信仕様
連携するスマホアプリ・クラウド・管理画面の範囲と、診断用のテストアカウント・必要な権限
診断に利用できる仕様書やファームウェアイメージの提供可否
診断で許容できる操作(ファームウェアの取得や分解を伴う解析の可否)
診断範囲や深さ、期間は機器の構成によって大きく変わるため、個別の見積もりと事前のすり合わせが前提になります。
SBOM(ソフトウェア部品構成表)は、製品に含まれるソフトウェア部品を一覧化するもので、脆弱性情報と照合することで既知の脆弱性を持つ部品の把握に役立ちます。
一方、部品の構成情報だけでは、設定不備や実装上の弱点、更新機構の不備までは確認できません。
そのため、SBOMによる棚卸しと脆弱性診断は役割が異なり、組み合わせて使います。
SBOMの基本は、以下の記事で解説しています。
診断で見つかった脆弱性を、情報収集から対応・報告までの実務にどう結びつけるかについては、以下の記事で解説しています。
併せてご参考ください。
JC-STAR★1は、製品が満たすべき適合基準への自己適合宣言を軸とする制度で、第三者による脆弱性診断の実施そのものが必須要件となるわけではありません。
ただし、★1の自己評価にもツールを用いた実機テストが含まれるため、第三者診断が必須でないことと、技術的な検証が不要であることは異なります。
診断結果は自社製品のセキュリティ対応状況を説明する材料にもなり得ます。
(出典:IPA「JC-STAR」)
Web脆弱性診断だけでは確認できません。
Web診断は連携する管理画面やクラウドAPIの弱点を見つけるうえで有効ですが、ファームウェアの内部解析や物理インターフェースの検証、更新機構全体の安全性確認などは、通常のWeb診断だけではカバーできません。
言えません。
診断は、実施時点で合意した範囲内で確認できた弱点を報告するものであり、脆弱性が存在しないことを証明するものではありません。
出荷後に新たな脆弱性が公表されることもあるため、診断と継続的な脆弱性管理を組み合わせることが重要です。
ファームウェアイメージを提供できない場合でも、実機からの取得や通信の観測によって診断できる場合があります。
ただし、提供の可否によって確認できる範囲や深さが変わるため、依頼前に診断会社へ相談することをお勧めします。
IoT機器の脆弱性診断は、Webアプリケーションを対象とするWeb診断と異なり、ハードウェア、ファームウェア、通信、認証、更新機構、連携アプリ・クラウドまでを診断範囲として整理することが基本です。
依頼は出荷前の1回に限らず、設計・開発・出荷後の更新といった段階に応じて検討すると、修正の手戻りを抑えやすくなります。
対象機器の構成情報や診断で許容できる操作を事前に整理し、SBOMや脆弱性管理の取り組みと組み合わせて活用することが重要です。
「IoT脆弱性診断サービス」は、IoT機器のファームウェアや通信、認証まわりを対象に、第三者の視点で脆弱性の有無や設定不備を診断するサービスです。
診断範囲や依頼のタイミングを整理したい段階でも、お気軽にご相談ください。
弊社、サイエンスパーク株式会社は1994年の創業より、ソフトウェア・ハードウェアのセキュリティ対策を30年以上に渡り続けてまいりました。
セキュリティリスクの診断から対策導入・運用までのお手伝いが可能ですので、お気軽にお問い合わせくださいませ。
ご相談だけでも大歓迎です。
参考情報・出典
・OWASP「Web Security Testing Guide」
・OWASP「IoT Security Testing Guide」
・経済産業省「機器のサイバーセキュリティ確保のためのセキュリティ検証の手引き」