web-dev-qa-db-ja.com

ハードワイヤードバックドアはどのように機能しますか?

脆弱性をどのように結び付けることができますか?

この記事 を読んでください。読み取り/書き込み専用のハードウェア上で実行されている脆弱なソフトウェアはありますか?

3
Anonymous

チップは基本的に次のように機能します。入力(コマンドとデータ)を取得し、計算を実行し、出力を生成します。内部メモリがある場合があります。

[〜#〜] fpga [〜#〜] (フィールドプログラマブルゲートアレイ)は、ゲートレベル(ハードウェアに非常に近い)で顧客によって「プログラム」されるブランクの標準チップです。

スマートカード

例としてスマートカードを取り上げましょう。チップは、秘密鍵を生成または内部メモリに保存するコマンドを提供します。ただし、仕様に従って秘密鍵を出力するコマンドはありません。

したがって、秘密鍵は保護されており、秘密鍵を含むすべての計算はカードで実行する必要があります。

しかし、内部メモリの保護された領域から秘密鍵を読み取るための隠しコマンドがあった場合、攻撃者はカードをコピーする可能性があります。

ガンマブルチップ

多くのチップは完全にハードワイヤードではありませんが、 マイクロコード を実行します。このマイクロコードはチップ内で実行され、外部からチップにアクセスするために使用されるプログラミングインターフェイス(マシンコード)を提供します。通常、マイクロコードはチップにのみ書き込むことができ、チップから読み取ることはできません。これは、知的財産または機密性の高いアルゴリズムとキーを保護するために使用される可能性があります。

アップロード時にフラグが設定されていない限り、コードの読み取りを可能にするデバッグインターフェイスが存在する場合があります。しかし、バックドアはとにかくアクセスを提供するかもしれません。

ハードウェアへの攻撃は成功しましたか?

  • Deutsche Bahnによるrent-a-bikeサービスは、攻撃者がメモリを読み取ることができるデバッグなしフラグを設定するのを忘れたため、 ハッキング でした。
  • Stuxnetは、管理ソフトウェアを操作することによって公式のプログラミングインターフェイスを使用したため、これは実際のバックドアではありません。
  • ユニケンブリッジ大学は、軍隊が兵器、飛行制御、および産業が原子力発電所に使用する標準チップのこのようなバックドアについて を公開しました。彼らの分析によると、バックドアは中国のハードウェアベンダーではなく、米国の設計者によって挿入されました。

このトピックは新しいものではありません。たとえば、2009年に、ゲートレベルの特性評価を使用したハードウェアトロイの木馬の検出に関する論文が公開されました。 (StackExchangeのバグのためコメントセクションのリンク)。

それらが文書化されており、本番環境で使用するためにオフにできる限り、デバッグ用のそのような機能を持っていてもまったく問題ありません。最近の報道によると、同社はチップを「ミリタリーグレード」として販売し、保存されている情報を読み取れないことを宣伝した。したがって、このデバッグ機能はバックドアになります。

6

それは、実装者がバックドアとして機能するために、または非潜行的な機能を果たすためにそれを作成したかどうかに要約される傾向があります。

一般に、メモリなどへの直接アクセスを可能にするのは、ハードウェア/チップなどの一連の接続です。

ほとんどの場合、デバッグとテストの目的でインストールされます。例えば診断タスク。リモートアクセスを可能にするネットワークに接続されている場合、飛行機の腹のように、プローブをハードウェアに直接接続しなくても、問題を特定するのに非常に役立ちます。反対に、セキュリティが不十分な場合、簡単な攻撃ベクトルになります。

Robert Grahamは、ハードウェア内の最新のバックドアストーリーの1つについて素晴らしい記事を書いています: http://erratasec.blogspot.ca/2012/05/bogus-story-no-chinese-backdoor-in.html

2
Steve