ヘッドレス組み込みデバイスの機密データを安全な方法で暗号化することは可能ですか?

ヘッドレス組み込みデバイスの機密データを安全な方法で暗号化することは可能ですか?

当社は、すべてのデータ(オペレーティングシステム、ソフトウェアなど)がSDカードに保存されているRaspberry Piを使用しています。私たちはこれらのデバイスを設定し(ソフトウェアをロードし)、現場(私たちが制御できない環境)に送ります。このPisには機密データがあり、現場の誰かがPisを取り、これらの機密データにアクセスするかどうかを心配しています。

重要なデータをSDカードに保存せずにセキュアなネットワークを介してストリーミングする確実なソリューションは、私たちには効果がありませんでした。 Piが常にインターネットや他の種類のネットワークにアクセスできるわけではありません。

もう一つの明確な解決策は、データが格納されているパーティションを暗号化することですが、これは難しいことです。 Piは実行時にこの機密データにアクセスできる必要があります。つまり、使用する暗号化の種類に関係なく、Piは起動時に暗号化されたパーティションの復号化を許可する必要があります。つまり、本質的に欠陥のある非暗号化パーティションに格納されている一種の復号化キーが必要であることを意味します。攻撃者は簡単にキーにアクセスし、それを使用して暗号化されたパーティションの暗号化を解除する可能性があります。

この問題を解決できるいくつかのハードウェアソリューション(Zymkeyなど)があります。我々は努力し、Zymkeyをキーとして暗号化されたルートパーティションに侵入するのに5分以上かかりました。。問題は、ルートパーティションを暗号化できますが、起動時にカーネルとパラメータをカーネルに渡すファイルを格納するブートパーティションを暗号化できないことです。これにより、攻撃者はブート時にカーネルにシェルを実行するように要求し、攻撃者に暗号化されたルートパーティションへのフルアクセスを許可するなど、ブートローダファイルを変更できます。

独自のカスタムカーネルをコンパイルしたがパラメータを許可しないため、ブートパラメータが攻撃者にシェルを提供できない場合でも、カスタムカーネルは攻撃者がアクセスできる/bootパーティションに保存されます。カスタムコアを通常のコアに置き換えることを防ぐ方法はありません。

一部のハードウェアソリューションを構成し、SDカードを接着したり、Piをブービートラップボックスに入れたり、誰かがボックスを開こうとすると、暗号化キーを削除してパーティション暗号化を削除(または再起動)できることがわかります。 )。これは比較的バイパスしやすく、せいぜいハッキーです。

だから私の質問は次のとおりです。概念的には、ルートパーティション全体を暗号化したり、機密ファイルを保存したりできるデータパーティションの一部のみを暗号化することで、攻撃者がSDカードを手に入れた場合に暗号化できなくなりますか?ファイル自体を取得するには? Linuxは、実行中でもこれらのファイルを復号化して使用できる必要があります。

ベストアンサー1

最小限の物理的セキュリティがなければ、機密データを保護することはできません。 Raspberry Piには物理的なセキュリティはありません。改ざん防止ボックスに入れるか、改ざん防止機能を備えた他のハードウェアを使用する必要があります。

はい、費用がかかります。セキュリティは一般的に対価を払う機能です。

から送信された通知あなたが引用したフォーラム投稿Raspberry Piの補助装置としてのみ機能するZymkeyは何も保護できません。 Pi自体に対する物理的な保護も必要です。

セキュアブート機能を備えたシングルボードコンピュータが動作する必要があります。特におすすめのモデルはありません。確かにそれも大丈夫です。ラズベリーパイへのTPMのインストール;これを行うと、セキュアブートは提供されませんが(コードを実行する前にコードは確認されません)、確認ブートが提供されます(コードが予期されないとTPMはキーを取得できません)。いずれにしても、SDカード交換などの小規模物理攻撃に対してのみ保護し、RAMバスへの論理プローブの挿入などの侵入攻撃に対しては保護しません。

おすすめ記事