バックナンバーはこちら

today&tomorrow

Technology Update

2018 vol.110

組込みソフトウェアテスト リソースに制約のある環境での脆弱性テスト

組込みデバイスのソフトウェアの不具合は、人々の生命や生活を支えるシステムの信頼性に多大な影響を及ぼす可能性があります。ソフトウェアテストが組込みシステムの開発プロセスにとって欠かせない要素なのはそのためです。システムを開発する場合、常にトレード・オフが行われなければなりませんし、すべてのリソースのバランスを取って厳しい納期を守ることは簡単ではありません。事業にとって最も重要な不具合を効率的に特定するために、リスクベースのアプローチを行うことが必要です。

シノプシスは一歩先を行きます

シノプシスは、ATMから自動車、医療用装置に至るまで、それぞれの組込みデバイス固有のリソース制約やセキュリティ問題について通じており、また以下の制約条件を効果的にテストするのに必要とされる深い専門知識も有しています。

  • ライフサイクルの長さ
  • ユーザーの操作制限、またはユーザーの不介入
  • 安全性の低い物理環境
  • 規制上の課題
  • 消費電力に関する制約
  • 他のデバイスとの接続性
  • メンテナンス性の限界

目標達成を支援

こうした制約条件を精査した後に、お客様の開発チームとレビューを実施して以下をご説明します。

  • 各脆弱性の説明
  • 再現手順(該当する場合、エクスプロイト・コードを含む)
  • スクリーンショット(該当する場合)
  • 攻撃者のスキルとアクセス権の観点から、問題が悪用される可能性
  • 脆弱性悪用された場合の影響
  • 標準規格に基づき、可能性と影響度を組み合わせてリスク評価
  • 組込みデバイス固有の制約に対処するようカスタマイズされた1つまたは複数のリスク最小化策の推奨

3つの分析手順を組み合わせたリスクベースのアプローチ

組込みソフトウェア・テスト・プロセスでは、以下の3つの領域に対応するリスクベースのシステム・アプローチを行います。

  • 通信解析
    他のローカル・コンポーネントまたはリモート・コンポーネントとの通信をエキスパートが傍受して解析します(該当する場合)。デバイスのソフトウェアによっては、最初にクライアントに対する特権アクセスを取得しないで可能な場合と、不可能な場合があります(例えば、信頼できるCA証明書をデバイスにインストールする必要がある場合もあります)。この手順には、USB、シリアル、イーサネット、POTS、Wi-Fi、セルラーなどのインターフェイスによる通信が必要な場合もありますが、組込みデバイスでよく使用される通信プロトコルに関しては多くの取り扱い経験があります。例えば、Bluetooth Low Energy、ZigBeeだけでなくプロプライエタリなプロトコルも対応できます。
  • クライアント解析
    優先度の高い領域をテストして、デバイス上の機密性の高いデータや機能へのアクセス権取得を試行し、特権昇格させて1つまたは複数の事業リスクに影響を及ぼす攻撃を実行できます。この段階の解析作業は、個別のデバイスや関連する攻撃への依存性が高く、チップ除去やリバースエンジニアリング/デバイスのファームウェアの改ざん、デバイスで動作するプロセスへのデータのファジング、カーネルレベルのエクスプロイトの検出などが含まれる場合もあります。
  • サーバー解析
    クライアントとサーバー間の通信チャネルを傍受し、手動および自動のさまざまなツールを駆使してサーバーサイドソフトウェアを解析します。

カテゴリートップ