web-dev-qa-db-ja.com

外国情報機関からのラップトップの保護

マシン上のデータを改ざんしないように、特定目的の外国諜報機関に対して単一目的のWindowsラップトップを保護するためのベストプラクティスは何でしょうか?この機械は、お互いの作業を独立して検証し、結果を印刷する2人の個人によって、年に数回使用されます。マシンはインターネットにアクセスする必要はありませんが、使用中はプリンターに接続する必要があります。

これまでに考えたことのいくつか:

  • TPMモジュールを搭載したラップトップを使用します。
  • ドライブを暗号化します。
  • NICを無効にします。
  • USBポートを無効にします。
  • マシンで強力なパスワードを使用します。
  • 使用していない間は、機械を鍵のかかった金庫に物理的に保管してください。
  • 使用する場合は、2人の異なるセキュリティ担当者を使用してラップトップを輸送してください。
  • 金庫の外にいる間、ラップトップには常に少なくとも2人が付き添います。
  • ラップトップは、サードパーティソフトウェアがインストールされていないWindowsの新規インストールです(このような状況での更新については不明です)。
  • コンピューター上のカスタムソフトウェアは、実行されると、そのバイナリファイル(exeやdllなど)のハッシュを計算し、ユーザーが既知の値と比較して改ざんを検出するコードを生成します。

変更や追加はありますか?

13
RogerMKE

非常に高い冗長性を提供するために同じ国や地域で同じダースのラップトップを使用できない理由がいくつかあると思います(質問のコメントで指摘されているように)。異なるラップトップの結果が異なる場合、それらの少なくとも1つが危険にさらされていると想定され、インシデントレスポンスが発生する可能性があります。独立した計算の数は、要件に合わせてスケーリングできます。もちろん、これはラップトップで行われるアクティビティが確定的であり、「正解」が1つしかないため、正直で妥協のない当事者がまったく同じ結果を出すことができることを前提としています。

単一のラップトップの完全性を最大化する必要があると仮定すると、計画はしっかりしているように見えます。ただし、提案にいくつかの変更と追加を行います。

  1. Linuxに切り替えて脆弱性を排除 パッチを適用する前に国家に提供

  2. ラップトップを扱う人に包括的な 管理の連鎖 を提供することを要求します。

  3. 未使用の周辺機器を無効にするだけでなく、不正開封防止エポキシ樹脂で覆います。

  4. anyの信頼できない周辺機器の使用を禁止します。 VGA/HDMIでも脆弱になる可能性があります!

  5. customソフトウェアを使用してバイナリをハッシュしないでください。安全なソフトウェアはすでに存在しています。

  6. デバイスを識別するためにスマートカードが必要です。 Shamir's Secret Sharing は便利です。

  7. 安全な場所で作業するか、シールドされたデバイスを使用して、EMSECに注意してください。


相互認証

コンピューターのユーザーがコンピューターに対して認証できることが重要です。通常、コンピューターに対して自分自身を認証するのはユーザーですが、リスクの高い環境では、コンピューターもユーザーに対して自分自身を認証する必要がある場合があります。これは、アクティブなUSBデバイスを使用する [〜#〜] mark [〜#〜] のようなさまざまな実験的な相互認証技術を使用して行うことができます。

ラップトップを使用する各ユーザーは、認証プロセスの一部として smartcard を使用する必要があります。このカードは物理的に安全に保管する必要があります。脅威モデルによっては、人にいる間は非表示にする必要がある場合もあります。秘密分散アルゴリズムを使用して、許可された個人のしきい値がシステムに対して自分自身を完全に認証する必要があることを保証することが可能です。これは、たとえば、5人がキーを持ち、少なくとも3人が同時にキーを使用して認証する必要があるように設定できます。これにより、最大2人が不正にアクセスすることを防ぎ、最大2人がアクセスを失った場合でも認証を許可します。各人の体重を含む正確なパラメータは、脅威モデルに合わせて自由に調整できます。

ファームウェアとソフトウェアの整合性

TPMが [〜#〜] srtm [〜#〜] に使用されていると仮定すると、ブートローダーと関連ソフトウェアに対して 変更を検出 することもできます。特定のファームウェアおよびBIOS自体としても、BIOSに読み取り専用のブートブロックが含まれていると想定します( [〜#〜] crtm [〜#〜] )。暗号化も使用されている場合、これにより、改ざん防止のレベルが高くなります。残念ながら、ほとんどのブロックモードは可鍛性があるため(キーを知らなくてもプレーンテキストをインテリジェントに変更できます)、たとえば [〜#〜を使用して、起動後にもOSにシステムのすべてのコンポーネントを検証させる必要があります。 ] ima [〜#〜] 、Linuxで利用可能な整合性測定アーキテクチャ。* IMAは デマンドページング を壊すことによってI/Oパフォーマンスを低下させる可能性があります。

多くの場合、NICまたはUSBコントローラーは、オペレーティングシステムがそれらを無視していても引き続きアクティブです。このようなインターフェイスを介して脆弱なBIOSが侵害される可能性があります。ほとんどのシステムのBIOSは恐ろしく安全ではなく、両方のローカル攻撃者(マシンで実行されている悪意のあるプロセス)と物理的な攻撃者がより高い特権を獲得します。 [〜#〜] chipsec [〜#〜] フレームワークを使用して、BIOSセキュリティの限定的な分析を行うことができます。フレームワークは、プラットフォームのファームウェアの特定のセキュリティ属性を検証するように設計されています。重要な情報が利用可能です wikiで 。このフレームワークは、主にBIOSベンダーとOEMがファームウェアの脆弱性を探すことを望んでいるために設計されています標準のソフトウェア書き込みロックが設定されているにもかかわらず、実行時に上書きされます。

* Windowsの経験はほとんどありませんが、そのオペレーティングシステムでこのような整合性をサポートすることは可能だと思います。ただし、国家はWindowsの脆弱性が公開される前に、またはパッチが適用される前に、事前に通知を受けることが多いことを覚えておくことが重要です。このため、Windowsは、使用するのに最適なプラットフォームではないと思われます。

物理的な攻撃

誰かがラップトップへの無制限の物理的アクセスを取得した場合、それはもはやあなたのラップトップではありません。 いくつかの異なる物理的攻撃 が実行できます。それらのいくつかは軽減することができますが、他のものは軽減するためにあなたのラップトップを物理的に変更することを要求します:

  • DMA攻撃-多くの周辺機器は、内部と外部の両方の直接メモリアクセスをサポートしています。外部GPU、Thunderbolt、Firewire、内部PCIおよびPCIeポートはすべてDMAをサポートしています。このサポートにより、デバイスをこれらのインターフェースに接続するすべてのユーザーが、任意のメモリ位置に対して読み取りおよび書き込みを実行できます。緩和策では、ラップトップに適切な [〜#〜] dmar [〜#〜] テーブルと最新のIOMMU(VT-d2 for Intel)が必要です。また、IOMMUを有効にして起動する必要があります。 intel_iommu=onをLinuxのブートコマンドラインに追加します。

  • コールドブート攻撃-メモリのパッシブな取得は、メモリモジュールを取り外し、別のデバイスに置いて読み取ることで可能です。これにより、機密データを読み取ることができますが、改ざんはできません。これは、非常に侵襲的な手順であるため、ターゲットマシンをシャットダウンする必要があるためです。 完全メモリ暗号化 これを緩和し、ECCメモリの使用も攻撃を複雑にする可能性があります(ECCは通常、初期化中にメモリモジュールを既知の状態にリセットする必要があります)。

    コールドブート攻撃は、メモリ内のデータの機密性を損なうだけで、完全性を損なうものではありません。整合性が必要な場合は、コールドブート攻撃は脅威モデルとは関係ありません。

  • [〜#〜] jtag [〜#〜]- [〜#〜] jtag [〜#〜]CPLDs のような単純なものから、エンタープライズx86プロセッサのような複雑なものまで、多くのデバイスのマザーボード上のプロトコルとインターフェースをデバッグします。 JTAGプローブ をインターフェイスに接続すると、チップセットを完全に完全に制御できるため、マシンの停止、レジスタとメモリの読み取りと書き込み、周辺機器とのやり取りが可能になります。攻撃者がJTAGを使用してターゲットに接続できた場合、すべての賭けは無効になります。デバイスにJTAGヘッダーがないか、ヘッダーが破壊されているか、エポキシでコーティングされていることを確認する必要があります。

さらに、物理的な攻撃には、脆弱な周辺機器への接続が含まれる場合があります。 VGAおよびHDMI であっても、ほぼすべてが脆弱である可能性があります。EDIDなどを悪用することで悪用できます。 USBデバイスは [〜#〜] dci [〜#〜] をサポートする場合があり、一部のデバイスはBIOSでそれを無効にできません。これらのシステムはUSB abused を認識して、マシンを開いたり、プローブをマザーボードに接続したりせずにJTAGコマンドを渡すことができます。ネットワーキングインターフェイス 脆弱になる可能性がある 、および脆弱性には 見つかりました があります。さまざまなDCIの脆弱性が示すように、ソフトウェアでポートを無効にするだけでは十分でない場合があります。強力なエポキシ樹脂を使用してポートを物理的にブロックする必要がある場合があります。

物理的な改ざんの証拠

デバイスの物理的な改ざんを検出する方法はいくつかあります。これらの方法はすべて、改造されたと思われるときにいつでも実際の機械と比較できるように、機械の複数の角度で高解像度の写真を撮る必要があります。物理的な改ざんを検出するためのソリューションは、写真と実際のデバイスとの不一致として見えます。一般的な考え方は、デバイスの敏感な領域に何かを置くことです。その領域に侵入すると、目に見えて壊れたり移動したりします。いくつかの例:

  • セキュリティテープ-標準的な方法は、改ざん防止機能 セキュリティテープ を使用することです。ステッカーやテープのストリップで、はがすと表面にユニークなマークが残り、スチームやその他のテープを優しく引き剥がすのに使用できるように設計されています。これらは非常に高価になり、ホログラフィックラベルや一意のマークなどのサポート機能を利用できます。

  • エポキシ樹脂-エポキシは強力な接着剤のような物質で、コーティングされたものを破壊しないと簡単に取り除くことができません。強度と特性が異なる多くの種類のエポキシがあります。改ざんに耐えるように設計されたもの(たとえば、溶剤や細かいドリルで簡単に除去されないように設計されたもの)だけでなく、短絡や過熱を防ぐために非導電性で非断熱性のものが必要です。エポキシ樹脂は、正しく使用すると、物理的攻撃(改ざん防止)に耐え、成功した攻撃を可視化(改ざん証拠)することができます。

  • マニキュア-グリッターがたくさんあるマニキュアは、ゲットーセキュリティシールのフォームとして非常に便利です。システムのジョイントの周りに配置すると、グリッターを動かさずにシステムを開くことが非常に難しくなります。キラキラが乱されると、それを元どおりに戻すことがほぼ不可能になり、防御側に貴重な証拠が残ります。

エミッションセキュリティ(EMSEC)

あなたが敵国として国家を持っている場合、電磁信号の秘密の監視は非常に現実的な可能性です。これらの信号は、20メートル以上離れたところから キーストロークを読み取る に使用できます。 Van Eck Phreaking を実行して、壁を通してコンピュータのディスプレイを表示するために使用できます。暗号化された素材で機能するプロセッサーを聞くことで、暗号化を解読するために使用できます。これを軽減するには、大きくて安全な境界線(数百メ​​ートル)、または TEMPEST認定デバイス を使用する必要があります。これらの認証は政府(NATO SDIP-27やUSA NSTISSAMなど)によるものですが、デバイスはEMI/RFIリーケージに対して危険であると認定されています。

安全な shielded room にいる場合や、大きくて安全な周辺がある場合を除き、デバイスが機密性の高い操作に使用されている間は、必ずデバイスをシールドしてください。厳密には電磁気学とは関係ありませんが、セキュリティの高い政府機関と同様に、窓のない部屋でデバイスを使用することも重要です。これにより、(会話から、およびキーボードからの)オーディオが レーザーマイク を使用して復元されるのを防ぎます。予算または状況によってこれが不可能な場合は、標準のOPSECを使用して、機密の放出を記録するために重要な時間に敵が十分に近づかないようにする必要があります。

11
forest

@forestの優れた答えに簡略化のレイヤーを追加したいと思います。

システム全体を読み取り専用メディアに書き込みます

そして、攻撃者によるスワッピングからDVD(またはBluray)を保護します。

ソフトウェアスイートとOSシステムイメージが確実にクリーンになったら、書き換え不可能なメディアに書き込むことができます。アイデアは、RAMを一時ストレージとして使用して、DVDからライブOSとソフトウェアスイートを毎回実行することです。アプリケーションがディスク上の状態を保持する必要があるか、またはロードできるかについては、質問には触れられていません。 ロケット座標 USBキーまたはキーストロークからの入力。物理メディアが同じままであれば、ほぼオリジナルのソフトウェアを実行することが保証されます。

これは[〜#〜] one [〜#〜]の利点を提供します。ハードウェアが危険にさらされている疑いがある場合は、新しいものを入手するか、マシンを仮想マシンとして実行できます。クリーンなハイパーバイザー。

外国の諜報機関の力を考えると、まだ多くのオフラインセキュリティが必要です。また、少しの予算...

  • 不正なソフトウェアを実行している改ざんされたDVDと交換するのが難しいように、メディアにマークを付けて保護します
  • サプライチェーンを保護する:新しく購入したラップトップが3文字の機関に最初に提供された場合、ハードウェアが侵害され、ルートキットがインストールされる可能性があります。
  • 質問ではプライバシーについて触れられていないため、外部のインテリジェンスによって改ざんされる可能性が低いローカルクラウドプロバイダーでコンピューティングリソースを使用することは、ソフトウェアが実行される場所を攻撃者に欺く方法です。多くの場合、プロバイダーの変更はプラスです
  • あなたはまだあなたの好きな場所でノートパソコンを借りることができます借りる

脅威

外国の諜報機関がソフトウェアを実行しているラップトップを侵害した場合、彼らはルートキットを使用して非常に標的を絞ったコールドブート攻撃を試みる可能性があります。

攻撃者があなたのソフトウェアをよく知っていて、予算が無限であり、計算の結果を危うくしたい場合、彼らはあなたのアプリケーションをターゲットにした変更されたカーネルをロードする不正なブートローダーを使うことができます。そのようなカーネルは理論的に既知のメモリレジスタの変更から、周辺機器のドライバを介して細工されたデータをプリンタに送信することまで、あらゆる害を及ぼす可能性があります。または、(ファイルシステムルーチンを変更して)変更された実行可能バージョンをロードし、ハッシュチェックはディスク上の実行可能ファイルが改ざんされていないことを報告します。

実行中のハードウェアquicklyおよびnpredicatblyを変更できる場合は、この脅威よりも深刻な利点があります。たとえば、ローカルのBestBuy、MediaWorld、または類似の会社がラップトップを現金で購入する(誰かを送る)場合があります。

foreign攻撃者は、サプライチェーン全体を危険にさらして、変更する必要があると思われる場合は、使用するハードウェアを特定する必要があります。かなりの陰謀者、私には陰謀者が多すぎる.

監護の連鎖

私は彼の最初のリストで@forestのポイント#2を思い出します。読み取り専用メディアおよび場合によってはラップトップの一貫した管理チェーンを確保する必要があります。メディア上の永久的なインクの手署名は、今のところ私の最高のアイデアです。