戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

ITパスポート 2023年 57


問題文

IoTデバイスにおけるセキュリティ対策のうち、耐タンパ性をもたせる対策として、適切なものはどれか。

選択肢

サーバからの接続認証が連続して一定回数失敗したら、接続できないようにする。
通信するデータを暗号化し、データの機密性を確保する。
内蔵ソフトウェアにオンラインアップデート機能をもたせ、最新のパッチが適用されるようにする。
内蔵ソフトウェアを難読化し、解読に要する時間を増大させる。(正解)

🔒 解説は解答すると表示されます

IoTデバイスにおけるセキュリティ対策のうち、耐タンパ性をもたせる対策として、適切なものはどれか。 【ITパスポート 解説】

正解の理由

「耐タンパ性」とは、デバイスが改ざん(たんぱん:tampering)や解析に対して耐える性質のことです。ここでの「IoT(Internet of Things:モノのインターネット)」は、ネットに接続して動作する機器全般を指します。
選択肢のうち、内部ソフトウェアを外部から読んだり解析したりして不正に変更されるのを難しくする対策は、 の「内蔵ソフトウェアを難読化し、解読に要する時間を増大させる」です。難読化(obfuscation:プログラムの構造をわかりにくくする処理)は、リバースエンジニアリング(ソフトを解析して内部構造や鍵を見つける行為)にかかる時間や労力を増やします。したがって、耐タンパ性(改ざんや解析に耐えるための性質)を高める対策に該当します。

解法ステップ

  1. 問題文のキーワード「耐タンパ性」を正確に理解する。=改ざんや解析に「耐える・困難にする」対策を選ぶ。
  2. 各選択肢が「耐タンパ性(物理的・解析的妨害)」と関係あるかを判断する。
  3. 「解析の難易度を上げる」「改ざんしにくくする」と直接関係するものを選ぶ。
この流れで各選択肢を当てはめると、直接「解析や改ざんを難しくする」ものは だけであることが分かります。

選択肢別の誤答解説

  • ア: サーバからの接続認証が連続して一定回数失敗したら、接続できないようにする。
    → これは「ブルートフォース攻撃(総当たりによる認証突破)を防ぐ」認証保護です。アカウントの不正利用や認証の堅牢化には有効ですが、デバイス本体の解析や改ざん(耐タンパ性)を高める対策ではありません。
  • イ: 通信するデータを暗号化し、データの機密性を確保する。
    → 暗号化(encryption:情報を第三者に読めないように変換する技術)は通信の機密性を守ります。通信経路での盗聴を防ぐ役割であり、デバイス内部のソフトウェアを解析されにくくする「耐タンパ性」とは目的が異なります。
  • ウ: 内蔵ソフトウェアにオンラインアップデート機能をもたせ、最新のパッチが適用されるようにする。
    → アップデート機能は脆弱性(ぜいじゃくせい:セキュリティの弱点)を修正して長期的な安全性を保つ「保守・維持」の対策です。重要ですが、解析を直接遅らせる・改ざんを物理的に困難にする耐タンパ性とは区別されます。
  • エ: 内蔵ソフトウェアを難読化し、解読に要する時間を増大させる。
    → 難読化は逆アセンブルや逆コンパイル(ソフト解析)を難しくするため、解析や改ざんの難易度を上げます。よって耐タンパ性に該当します。

よくある誤解

  1. 「暗号化すれば改ざんも防げる」
    → 暗号化は通信データの機密性を守りますが、デバイス内部のバイナリやファームウェアを外して解析する攻撃には直接効きません。
  2. 「アップデートできれば改ざんされても問題ない」
    → アップデートは脆弱性修正には有効ですが、物理的に解析・改ざんされることを防ぐ手段ではありません。さらに、不適切な更新機構は逆に攻撃手段になる場合があります(署名の確認がないなど)。
  3. 「難読化すれば完全に安全になる」
    → 難読化は解析を難しくしますが、熟練の攻撃者には突破される可能性があります。万能ではないため、他の対策と組み合わせることが重要です。

補足コラム

耐タンパ性を高める手法はいくつかあります。実務では複数を組み合わせる「多層防御(defense in depth)」が基本です。代表例を簡単に説明します。
  • 難読化(Obfuscation):ソースやバイナリをわかりにくくする。解析時間を増やす。
  • セキュアブート(Secure Boot):起動時にソフトの署名を検証し、改ざんされたソフトが動かないようにする。
  • コード署名(Code Signing):配布ファイルやアップデートにデジタル署名を付け、改ざん検出を可能にする。
  • ハードウェアセキュリティモジュール(HSM)やセキュアエレメント:鍵や機密情報を物理的に保護する。
  • JTAGやデバッグポートの無効化:物理的に内部にアクセスされる経路を塞ぐ。
  • 耐タンパーケース/封印:ケースを壊すと分かるようにする(改ざんの「痕跡」を残す)。
これらはそれぞれ長所と短所(コスト、更新の難しさ、性能への影響)があります。試験では「目的(解析耐性か通信の機密性か)」を見分けることが重要です。

FAQ

Q1: 難読化と暗号化はどう違いますか?
A1: 難読化はプログラムの構造をわかりにくくする処理で、主にリバースエンジニアリング対策です。暗号化はデータを第三者に読めない形に変える技術で、主に通信や保存データの秘匿に使います。目的が違います。
Q2: 難読化だけで安全ですか?
A2: いいえ。難読化は時間稼ぎになりますが、熟練者には破られる可能性があります。セキュアブートやコード署名など他の対策と組み合わせる必要があります。
Q3: 試験対策として何を覚えればよいですか?
A3: 「耐タンパ性=改ざん・解析に耐えること」をまず覚えてください。選択肢が「解析や改ざんを難しくする」ものなら耐タンパ性に該当します。各対策の目的(機密性、認証、保守、耐タンパ性)を区別して覚えると有利です。

関連キーワード: IoT、耐タンパ性、難読化、リバースエンジニアリング、暗号化、セキュアブート、コード署名、脆弱性パッチ、多層防御、デバッグポート対策
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

ITパスポート
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について