セキュリティがますます懸念されるようになり、 モノのインターネット (IoT) 業界では、サイバー攻撃からデバイスを保護する上でハードウェア セキュリティが大きな可能性を秘めていることから、ハードウェア セキュリティへの注目が高まっています。この記事では、既存のハードウェア セキュリティ ソリューションの例と、それらがIoTデバイスのセキュリティ保護にどのように使用されているかについて説明します。
ハードウェアセキュリティの台頭
IoTデバイスやソリューションの普及により、データ活用を含む技術開発の機会が数多く生まれています。 人工知能のトレーニング プロセスをリモートで監視および制御する機能。しかし、 IoTテクノロジーは諸刃の剣でもあり、大規模な分散型サービス拒否 (DDoS) 攻撃、データ盗難、ネットワーク ハッキング、プライバシー侵害といった形でサイバー犯罪者にとっての機会も提供します。これらの攻撃の一部はソフトウェアベースのセキュリティを使用することで防ぐことができますが、すべての攻撃を防ぐことはできません。
たとえば、IoTデバイスは安全なデータ転送に使用できますが、デバイスのハードウェアが物理的に攻撃された場合、どんなソフトウェア ルーチンでも保護を提供することはできません。ここでハードウェア セキュリティが登場し、 SoC、 マイクロコントローラ、マイクロプロセッサでハードウェア セキュリティがますます普及しつつある理由です。従来、ハードウェア セキュリティは、暗号化エンジンなどのソフトウェア セキュリティを高速化できるハードウェアで構成されていましたが、設計者はこれをさらに進め、金属そのものを保護するシステムを作成し始めています。
ハードウェアセキュリティ攻撃の種類
ハードウェア攻撃はニュースではあまり取り上げられません。これは、デバイスに物理的にアクセスするのが難しいためだと考えられます。たとえば、電子メール アカウントへのハッキングは、インターネット接続を介してさまざまな方法で実行できますが、システムに保存されている電子メールにアクセスするためにラップトップを盗むことは、まったく別の作業です。しかし、デバイスを物理的に入手できる場合でも、そのデバイス上のすべてのデータにアクセスするには、通常、それほど多くのスキルは必要ありません。
サイドチャネル攻撃
サイドチャネル攻撃は、非常に安全なシステムが、その安全なシステムの外部にある安全でないサブシステムを通じて間接的に攻撃される攻撃の一種です。たとえば、Windows上のパスワードで保護されたユーザー アカウントでは、 ハード ドライブ を取り外して別のコンピューターに接続すると、そのファイルに簡単にアクセスできるようになります。攻撃者は単にフォルダの「所有権を取得」するだけで、突然すべてのファイルにアクセスできるようになります。安全なユーザー アカウントのパスワードは必要なく、安全なシステムは簡単にバイパスされます。
ローハンマー攻撃
Rowhammer攻撃は、高密度の DRAM に適用される特定のエクスプロイトです。シリコン ウェーハ上のトランジスタ数の増加と機能サイズの縮小により、最新のDRAMチップ内のメモリ セルは驚くほど密集しています。 実際、DRAMセルは非常に接近しているため、セルが隣接するセルの値を変更する可能性はわずかです。
ロウハンマー攻撃はこの問題を悪用し、隣接する行のメモリ内容の値を変更することで、メモリの「保護された」行の値を変更するために使用できます。攻撃者がアクセスできない保護された領域に値を挿入する能力は、理論的には、セキュリティ システムを回避し、カーネル レベルの権限を持つ可能性のあるアプリケーションに悪意のあるコードを挿入するために使用できます。
ハードウェアセキュリティデバイスの例
ハードウェア攻撃からデバイスを保護するために、設計者はソフトウェア領域の外部で実行されるシリコン自体にハードウェア セキュリティ対策を導入できます。では、セキュリティに関するハードウェア分野には現在どのような例があるのでしょうか?
暗号アクセラレーション
前に説明したように、これはハードウェア セキュリティの最も初期の形式の1つであり、ハードウェア防御というよりも周辺機器です。暗号化アクセラレーション は、ソフトウェアではなくハードウェアで暗号化機能を実行するハードウェアであり、アプリケーションの速度が向上するだけでなく、ソフトウェアでは悪用できないシステムをハードウェアに提供します。
たとえば、AESのソフトウェア バージョンはコード インジェクションの影響を受ける可能性があり、暗号化された結果は攻撃者によって簡単に元に戻すことができますが、AESのハードウェア バージョンは不変であり、攻撃することはできません。
真の乱数ジェネレータ
乱数ジェネレーターは暗号化の高速化として考えることができますが、独自のカテゴリを持つほど重要です。ほぼすべての形式の暗号化は乱数に依存しており、乱数が多いほど、その数値を使用した暗号化の品質は向上します。ソフトウェアで記述された乱数ジェネレーターは、ほとんどの場合、時間をシードとして使用するため、攻撃者にとって攻撃が容易になる可能性があります。
乱数が誤って使用された状況の一例としては、2人のセキュリティ専門家が遠隔操作でジープ車をハッキングし、車両を完全に制御できたケースが挙げられます。この攻撃は、車のマルチメディア システムに接続し、その接続を使用して車のCANバス経由でメッセージを送信することによって実行されました。その結果、ハッカーは車のステアリング、ブレーキ、アクセルを制御できるようになりました。
この攻撃は、車のWi-Fiパスワードが「ランダム」に生成されるはずの方法のおかげでのみ可能になりました。Wi-Fiパスワードは、車内でマルチメディア システムが最初にオンになった日時に基づいて生成されました。通常、これは安全ですが、自動車の製造日時は年と月で簡単に特定できるため、攻撃者は1,500万通りの組み合わせに対処するだけで済みます。時刻を正しく推測できれば、可能性は700万通りしかなく、1時間で700万のWi-Fiパスワードをブルートフォース攻撃で破ることができます。真の乱数が使用されていた場合、このWi-Fiパスワードを解読するのは非常に困難になります。しかし、それは非ランダムな要素に基づいていたため、簡単に回避されました。
メモリ暗号化
データの暗号化は数千年前に遡り、暗号は詮索好きな目から情報を隠すために使われてきました。コンピュータ情報も同様で、送信されるデータは送信される前に暗号化されることが多いです。しかし、この暗号化方法は、 データストレージ 記憶の中で、両方とも ロム そして ラム 暗号化オプションが追加されました。このアプローチを採用することで、設計者は、攻撃者がRAMまたはROMの内容を入手した場合でも、適切なハードウェアにアクセスしない限り情報自体を読み取ることができないことを保証できます。
メモリ 保護自体は新しいものではなく、多くのマイクロコントローラには、他者によるファームウェアの複製を防ぐ読み取り保護ビットが含まれています。フラッシュの暗号化も新しいものではなく、 FPGA 構成の暗号化をサポート フラッシュメモリ。ただし、この新しいメモリ暗号化はオンザフライで実行され、ほぼ同じアクセス速度を実現します。
セキュアブート
ほぼすべてのプロセッサが直面している1つの大きな問題は、プロセッサが起動したコードが本物であり悪意のないものであることをどのようにして確認できるかということです。どのシステムでもコア ブート コードの信頼性をチェックすることはできませんが、それ以降のブート ステージでは信頼性をチェックできます。ほとんどの攻撃者は、コア ブート コードか、その後に読み込まれるアプリケーションのいずれかにコードを挿入しようとします。
これを防ぐために、設計者はプロセッサにセキュア ブート メソッドを導入しました。このメソッドは、変更不可能なブート コードを実行して開始し、コード インジェクション攻撃の影響を受けません。このブート コードは、ロードされる予定のアプリケーションを調べ、コードの整合性をチェックします。挿入されたコードが検出された場合、システムは制限された状態で実行されるか、または警告を発します。 オペレーティング·システム コードの整合性の問題が検出されました。
信頼ゾーン
信頼ゾーンはプロセッサでは非常に古い技術ですが、マイクロコントローラではやや新しいものです。信頼ゾーンは、悪意のあるコードが実行されているかどうかをプロセッサが認識しないという点で、プロセッサの問題を解決するのに役立ちます。
ここで注目すべきは、すべてのCPU命令が本質的に危険というわけではないということです。ただし、一部はアクセス可能であり、これにはハードウェア、スタック ポインター、または重要なシステムへのアクセスが含まれる場合があります。したがって、最新のプロセッサには特権レベルがあり、OSは最高の特権で実行され、すべての命令にアクセスできますが、OSが実行するプロセスはより低い特権に置かれます。これらのプロセスは機密命令にアクセスできないため、プロセッサ上の重要なシステムに損害を与えたり攻撃したりする可能性が低くなります。
現在、多くの SoC と マイクロコントローラ がこれらのゾーンをコアに導入しており、OSは1つのコアで実行され、プロセスはより少ない権限で同じコアで実行されるか、一部の機能が削除されたセカンダリ コアで実行されます。
タンパーピン
改ざんピンは検出や防止が難しいため、非常に便利なハードウェア機能です。一部のハードウェア攻撃では、デバッグ ポートやメモリ チャネルなどのI/Oにアクセスするために、攻撃者が部品を物理的に取り外す必要があります。デバイスによっては、タンパー ピンは、エンクロージャが開かれるなど、外部の機械的なイベントが発生したことを検出できるピンです。改ざんピンが検出されると、機密データの読み取りを防ぐための単純な再起動から、メモリの完全消去などのより徹底的なアクションまで、特別なルーチンを実行するようにプロセッサに指示できます。改ざんピンは、攻撃者にとって何の影響も与えないように見えるため気付かれないような目立たないピンにも使用できます。
高度なハードウェア セキュリティ ソリューション: バス モニター
これまで見てきたハードウェア セキュリティの例はすべて、多くの場合、単一のパッケージに統合され、ユーザーにさまざまなセキュリティ オプションを提供します。しかし、セキュリティをまったく新しいパラダイムにもたらす新しいタイプのハードウェア セキュリティ、つまりバス モニターが徐々に導入されつつあります。
バス モニターは、マイクロコントローラのSoCに直接統合され、システムとは独立して動作する高度なセキュリティ システムです。バス モニターは、 I/Oピン、レジスタ、内部データ バス、プログラミング ポートなど、複数の内部バスと接続に接続されます。通常の動作では、ダイの内部接続によって安定した状態が生成され、バス モニターはそこから学習します。悪意のあるコードが挿入されたり、ピンにハードウェア攻撃があったりすると、バス モニターの定常状態が乱れます。これにより、バス モニターは異常に対してアクションを実行します。バス モニターによっては、OSで例外を発生させるものもあれば、システムをリセットさせるものもあります。一部のバス モニターは、潜在的に悪意のあるレジスタ要求をプロセッサから迂回させ、試行された攻撃をログに記録しながらnull値を返すことさえできます。
結論
ハードウェア セキュリティ ソリューションとデバイスの実装によりシリコンは高価になりますが、ハードウェア ベースのセキュリティの利点により、設計はより安全になります。ソフトウェア セキュリティには限界があり、完全にソフトウェア セキュリティに基づいたシステムは攻撃者の格好の標的となりますが、ハードウェア セキュリティを統合したシステムは大幅に強力になります。
実際、メモリをオンザフライで暗号化する機能は、長期的にデバイスを保護するのに役立ち、情報を漏らすことなく電子機器を処分したい人にとって安心感を与えます。バスモニターなどのテクノロジーにより、攻撃について学習し、パターン信号を認識して将来の攻撃を事前に防ぐことができる、よりインテリジェントなセキュリティシステムが生まれます。
全体として、ハードウェア セキュリティはセキュリティ実践の標準となり、そのような機能を統合していないデバイスは基本的な操作とタスクに制限されることになります。
