Skip to main content
QUICK REVIEW

[論文レビュー] Interleaving Command Sequences: a Threat to Secure Smartcard Interoperability

Maurizio Talamo, Maulahikmah Galinium|arXiv (Cornell University)|Sep 11, 2012
Distributed systems and fault tolerance参考文献 8被引用数 6
ひとこと要約

この論文は、安全なスマートカード相互運用性に対する深刻な脅威として、命令シーケンスの入れ違いを特定し、Common Criteria認証を受けたデジタル署名プロセスが、他のスマートカード種別からの外部APDUを静かに受け入れることで、検出不能な破損や恒久的損傷(例:MSE エラー)を引き起こすことを実証した。研究では、このような攻撃が認証チェックを回避し、エラーメッセージなしにセキュリティを損なう可能性があることを実験的に検証し、安全なマルチアプリケーション環境におけるミドルウェアレベルの異常検出の強化を要請している。

ABSTRACT

The increasingly widespread use of smartcards for a variety of sensitive applications, including digital signatures, creates the need to ensure and possibly certify the secure interoperability of these devices. Standard certification criteria, in particular the Common Criteria, define security requirements but do not sufficiently address the problem of interoperability. Here we consider the interoperability problem which arises when various applications interact with different smartcards through a middleware. In such a situation it is possible that a smartcard of type S receives commands that were supposed to be executed on a different smartcard of type S'. Such "external commands" can interleave with the commands that were supposed to be executed on S. We experimentally demonstrate this problem with a Common Criteria certified digital signature process on a commercially available smartcard. Importantly, in some of these cases the digital signature processes terminate without generating an error message or warning to the user.

研究の動機と目的

  • 共有ミドルウェア経由で他のアプリケーションから意図しないAPDUを受け取った場合に生じるセキュリティリスクを調査すること。
  • 複数のスマートカードが同時に使用される状況下で、Common Criteria認証が安全な相互運用性を保証しないことの実証。
  • 通常の処理とは異なる外国のコマンドがエラーなしに受け入れられ、SEOの消去など恒久的損傷を引き起こす状況の同定。
  • 既存のCC認証を活用して、有害な入れ違いシーケンスを検出・防止できるスケーラブルなモデルチェックイング拡張の提案。
  • 複数のスマートカード種別およびアプリケーション間での相互運用性を公式に認証するようCommon Criteriaを拡張することの提言。

提案手法

  • 著者は、デジタル署名プロセスを、定義された命令シーケンスを持つ直線的プログラムとしてモデル化し、各APDUを特定のスマートカード種別における認証済み実行パス上のステップとして扱う。
  • 「グローバルに合法的」とされるコマンドを、特定のスマートカード種別における元の認証済みミドルウェア実行に含まれるコマンドとして定義する。
  • モデルチェッカー(C-Murphi)を用いて、複数のアプリケーションからの入れ違い命令シーケンスをシミュレートし、異常を検出する。
  • 商用で入手可能なCommon Criteria認証済みスマートカードを用いた実世界の実験により、改変済みまたは外部のAPDUがどのように受け入れられるかをテストする。
  • 16進数形式でのAPDUシーケンスを分析し、標準的および改変済みコマンドを比較することで、静かな処理の有無を検出する。
  • 有害な入れ違いをリアルタイムで検出しブロックできる、軽量な「ウォッチドッグ」モデルチェッカーをミドルウェアに統合する提案。

実験結果

リサーチクエスチョン

  • RQ1Common Criteria認証済みスマートカードは、デジタル署名プロセス中に、外部または改変済みAPDUを静かに受け入れることができるか?
  • RQ2複数のスマートカードが同時に使用される状況下で、既存のCommon Criteria認証が安全な相互運用性を保証しない程度はどの程度か?
  • RQ3異なるアプリケーションからの命令の入れ違いがもたらす影響は何か、特に「MSE Erase」のような破壊的動作を含む場合。
  • RQ4現実のスマートカードシステムにおいて、すべての可能な入れ違い命令シーケンスを検証するためのブルートフォース・モデルチェックは実行可能か?
  • RQ5全検索を避けることなく、有害な入れ違いを効率的に検出できるように、モデルチェックをどのように最適化できるか?

主な発見

  • スマートカードは、デジタル署名プロセス中に、認証済みシーケンスとは異なるコマンドを含むAPDUを、エラーまたは警告を出力せずに静かに受け入れた。
  • 通常の署名プロセスに含まれない「MSE Erase」コマンドが正常に実行され、セキュリティ環境オブジェクトが恒久的に消去され、カードが使用不能になった。
  • 実験では、「MSE Erase」コマンドの実行にPINやPUKが不要であったため、大規模な悪用のリスクが高まった。
  • 10ステップのプロセスと16ビットのコマンドを想定した簡略化モデルでも、可能な入れ違いシーケンスの数は10^10を上回り、ブルートフォーステストは現実的ではなかった。
  • 研究では、モデルチェックがこうした異常を検出可能であることを確認したが、特に既存のCC認証を活用することで、実際のミドルウェア環境での実用的実装には最適化が必要であることを示した。
  • 著者らは、軽量で認証に配慮したモデルチェッカーをミドルウェアに統合し、実行時における「ウォッチドッグ」として有害な入れ違いシーケンスを防止できると結論づけた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。