安全な部屋にWindows PCがあり、インターネットから切断されており、別の部屋、マウス、モニター、キーボードに接続するケーブルは3本だけだとします。
コンピュータには非常に機密性の高いデータが含まれています。 HDMIモニターケーブルは問題ありませんが、マウスとキーボードのケーブルはUSBケーブルであり、一部のUSBドライブに接続できます。ここでは特にUSBケーブルの固定に興味があります。画面の写真を撮るなど、情報を盗む他の方法は無視してください。
私の質問は、特定のマウスとキーボードのみがUSBケーブルに接続できるようにするにはどうすればよいですか?
たとえば、許可されたデバイスのみが接続されていることを確認するために、USBケーブルとコンピューターの間に置くことができるハードウェアの種類はありますか?セキュリティKVMスイッチ(Keyboard-Video-Monitorスイッチ)は、実際にはすべて、マウスを動かしたり入力したりするときに多少の遅延(遅延、または遅延)をもたらすように思われるため、適切ではありません。直接接続されているように感じる必要があります(遅延はまったくありません)。USB通信をフィルター処理し、許可されたデバイスのみを遅延なしで通過させるために、Arduino、BasicX、Parallax、Pololu、またはRaspberry Piのプロジェクトが存在する可能性があります。
私はそれを行うソフトウェアがあることを知っています(例: https://support.symantec.com/en_US/article.TECH175220.html )ユーザーはコンピューターを使用しているため、無効にすることができます。
キーボード+マウス用のPS2-USBアダプターを購入します(重要:単純なストレートコネクターではないことを確認するには、両方を1つのUSBポートに接続する必要があります)。
彼らは論理を持っており、執筆時点で約10ドルの費用がかかります。
次に、マウスとキーボードの両方に対応するUSB to PS2アダプター(別のアダプター)を購入します。
それらにはロジックがなく、各接続への内部配線のみで、執筆時点では5米ドル未満の費用しかかかりません。
まとめて入れてください。はい、ファンキーに見えますが、デバイスは期待どおりに動作します。これで、ユーザーが到達可能なケーブルの1つが接合されたとしても、汎用のマウスとキーボード以外の新しいハードウェアを追加することはできません。
これについての良いこと:
更新:USBのdata-/data +ピンとPS2 data/clkピン(または他のps2ピン)の間に2イン1アダプターの連続性がないことを手動で2回確認しました。ただし、シングルポートアダプターには継続性がありますが、いずれかのアダプターが2イン1のようなロジックを実装している限り、それは重要ではありません。空のアダプターをWindowsボックスに接続すると、「USB挿入Ding」が発生します。それ以外の場合は、単純な物理アダプターです。
私が具体的にテストしたデュアルPS2-USBアダプターは、まだAmazonで入手可能な「ez-pu21」でした。
アップデート#2、2つのこと:
更新#3:約24時間ダブルインラインアダプターを使用した後、私はそれらが動作すると言うことができますが、100%ではなく、99%かもしれません。本格的なプログラミング(タイピング)をしているときに、キーが2分の1の繰り返しの約3分の1押し続けられていることに気付きました。これは私のタイプマティックリピートの前で、プレス後1秒あたり約2/3で、1回だけ繰り返されます。 「ビッグ」の代わりに「バイグ」のようなものにつながる。気づいたのは夜遅くに数回だけでしたが、私はそれについて言及したいと思いました。何時間も使用するまで気づきませんでしたが、小説を書いているとイライラするかもしれません。それは私が使用した安価なアダプター、私が使用している非常に長いケーブル、または誰もが経験しない他の何かかもしれません。
ボーナス:(関連していますがOT):私は気づきました これらの安価なUSBスイッチ データピンを接続しないでください、それらは4本のワイヤすべてを切り替えるには安すぎるため、それらのための安価な「USBコンドーム」を作成しますそのようなことを望んでいる人は、私が共有したいと思いました。安いコンドーム、あなたはどうしたらうまくいかないのですか?
あなたは問題の反対側をとっています。信頼できない人がマシンにアクセスできる場合、そのマシンは危険にさらされています。フルストップ。
これが、サーバールームへのアクセスが高度に制御される理由であり、管理者は通常、コネクタの物理的なセキュリティを気にしません。防御線は、コネクタレベルではなく、マシンを含む部屋にあります。
そうは言っても、特定のハードウェアIDのみを許可する特別なUSBドライバーを想像できます。チキンアンドエッグの問題のため、新しいマシンにカーネルをインストールするとき、デフォルトでそれらをインストールすることはできませんが、初期インストール後、これらの特別なUSBドライバーを使用してカスタムカーネルを構築できます。しかし、マシンに物理的にアクセスできる場合にマシンを危険にさらす可能性は他にもたくさんあるので、単に時間とエネルギーの無駄遣いに過ぎません...
とにかく、悪意のある強力な組織が、IDと、有名なハードウェアメーカーの無害なキーボードの外観を備えた、キーロガーを含む特定のUSBキーボードを構築することを妨げるものはありません。管理者を信頼していない場合、システムの再起動時にキーボードを交換する可能性があります。すでに述べたように、悪人がマシンに触れることができる場合、それは危険にさらされ、侵入できない場合、USBコネクタについて心配する必要はありません。
Windowsシステムでは、少なくともWindows Vista以降、ローカルポリシーまたはグループポリシーを通じてUSBデバイスをブロックまたは制限することができました。 「リムーバブルストレージアクセス」ポリシーを設定することで、USBストレージデバイスの接続を無効にすることができます(そのカテゴリには多くの悪意のあるUSBデバイスが含まれます)。これらの設定は、サービスのロードを妨げるため、Windowsがデバイスと対話することをブロックします。
https://community.spiceworks.com/how_to/25619-blocking-usb-devices-and-removable-mediahttps://technet.Microsoft.com/en-us/ library/2007.06.grouppolicy.aspx
PS/2キーボードとマウスを使用するだけです。
アダプターやその他の種類のハードウェアコンドームを気にしないでください。 PS/2マウスおよびキーボードコネクタを備えた利用可能なメインボードはまだたくさんあります。
説明のリクエスト:どのような攻撃を懸念していますか?画面の写真を気にしないことについてのあなたの発言で、私はあなたがシステムにデータを注入したくないと思います、そしてデータのいかなる漏出も気にしません。
では、どのようにしてシステムを攻撃し、それに対して何ができるのでしょうか?
他の人が指摘したように、USBから遠く離れてください。オペレーティングシステムは、すべての攻撃から保護することはできません。 Nohl et al 2014年にUSBホストマイクロコントローラーファームウェアを攻撃する方法を示した 、そしてその攻撃は BadUSB という名前で、システムがBIOSに座っている間でも使用可能であることが示されました再起動します。
USBホストマイクロコントローラーが危険にさらされた後、悪意のあるペイロードがメモリを変更またはスヌープするためにPCIバスを妨害する可能性があります。
これらの攻撃を回避または軽減できますか?はい!市場には少なくとも1つのUSBハードウェアファイアウォールデバイス [〜#〜] usg [〜#〜] があり、BadUSB攻撃に対抗するために明示的に設計されています。それでも、信頼できないキーボード入力には対応しません。
他の人から提案されたPS/2ケーブルも強力な候補ですが、システムを攻撃するために必要なすべてのキーストロークとマウスの動きを挿入するデバイスを追加できなかった理由はありません(例:メモ帳を開く、または文字を入力できるもの) 、プログラムを形成するために必要なバイナリ文字を挿入し、.exeとして保存し、実行します!) BadUSBでさえそれと戦うことはできません。
HDMIケーブルの接続を許可しますか?これにより、制限されたシステムに感染するためにEthernet-over-HDMIを使用できるようになることが、セキュリティ調査(Dragos Ruiu)によって少なくとも 1つの注釈 で確認されています。
ここでの緩和策は簡単です。イーサネットビットなしでHDMIケーブルを使用していることを確認してください。ただし、DDCには注意してください...
公平を期すために、VGAでも双方向DDC通信を介したデジタル転送を許可したため(DVIと同様)、これは悪用される可能性があります。ただし、使用される可能性ははるかに低くなります。 VGA/DVIなどを介してDDC経由でモニターのファームウェアをアップグレードすることは珍しいことではありません。
次のように機能します HDMI –ディスプレイをハッキングする興味深いディスプレイ、Andy Davis、Blackhat-EU-2012 はDDCを使用してモニターをハッキングすることですが、DDCリンクを形成するI2Cバスは双方向であり、創造的に利用できます。ホストのビデオカード。
DDCリンクは、ビデオモードを正しく設定するために必要なので、回避できません。
キーボードとマウスの両方について、PCの隣にデータダイオードを配置する必要があります。そうすると、PCから部屋にデータを送信できなくなります(ケーブル番号3は問題ないため)。シリアルマウスとキーボードを使用する方が良いかもしれません。
ちなみにこれはすべてブリキの電池です。これは、スズ箔で包まれたシリアルデバイスのデータダイオードを示すスズ箔チャットという通信プロトコルです。 https://www.cs.helsinki.fi/u/oottela/tfc.pdf
ダイオードを追加するだけではデータダイオードが作成されません。逆電圧で矢印に対して送信できるダイオードと同様に、プロジェクトで使用されるデータダイオードには、情報が矢印に逆らって移動することを不可能にするオプトカプラーがあります(ハードウェアへのアクセス)。
この部屋のレイアウトで思いついた、HDMIケーブルが問題ではない理由を示してみた後、頭を顕微鏡のようなビューイングデバイスに向けると、光ファイバーケーブルを通して画面を見ることができます。壁を通過します。壁の反対側にデータダイオードがあるので、持って行くキーボードとマウスはデータを送信するだけで、受信することはできません。セキュリティ担当者のボブは、職場のこの窓のない地獄にあなたを連れて行き、録音デバイスと話し始めたとき、あなたの目以外のものをビューファインダーに入れたとき、またはスマッシュしようとするとき、あなたを追い出します。壁。彼は情報を肩にかけることができないことに注意してください。ビューファインダーから頭を離した場合はログアウトします。ログインするには、通常どおりにパスワードを入力する必要がありますが、左と右の交互の画面に表示される文字もすばやく入力する必要があります(現在、2つのモニターがあり、それぞれの目)。これは、片方の眼球を退屈させてカメラに置き換えるのを防ぐためです(片方の眼の海賊は必要ありません)。これで、PCからファイルをコピーすることができなくなり、ボブはスパイ機器を探すためにストリップする必要がなくなり、誰もが満足しています。
システムから記憶して持ち帰ることができるものは、信頼性を失います。記憶する代わりに、それを作り上げることもできます。
どのOSにも共通する解決策の1つは、必要なもの(HID)を除くすべてのUSBドライバーを削除することです。ただし、ユーザーが新しいドライバをインストールできないようにしてください。
キーボードをデスクに取り付けて(たとえば、キーボードのベースに耐破壊性ねじを使用して)、USBリードにアクセスできないようにすることができます。机に切り込まれ、金属板で覆われた溝に。
有線またはワイヤレスのマウスは必要ありません。同様にアクセスできないUSBケーブルを備えた有線タブレット(Wacomタブレットなど)を使用できます。ユーザーがペンの使用に対応できない場合は、タブレット用のマウスを入手できます。
もちろん、特に悪意のあるユーザーは内部のUSB接続にアクセスするためにキーボードを引き離そうとする可能性があるので、破壊防止構造の1つを選択します。
また、トラックボール付きのステンレススチール製パネルマウントキーボードもご利用いただけます。
他の人がすでに言ったように、特にrobbat2とSerge Ballesta ...人々がマシンに物理的にアクセスできるようになると、あなたはあらゆる目的で危険にさらされます。
いくつかの方法で、セットアップをより電子的に安全にすることができます。それらの多くは、おそらくほとんどすべてのユースケースをカバーします。極秘の政府や企業のものを扱っていて、攻撃者がそれらに特別な技術を持ち込んでいない限り、あなたは実質的に安全でなければなりません。
しかし、ここで学問的に100%安全であるための唯一の方法は、物理的に行くことでもあります。機械を守る信頼できる人が必要です。
ケーブルの接続について本当に偏執的で、それが本当に唯一の懸念事項である場合は、センサーに接続されている銅のメッシュでマウスとキーボードのケーブルの長さをカバーできます。それを介して電流を流し、それをチェックして電圧を測定できるリレーを備えており、それを24時間365日チェックしています。リレーを別のマシン(Raspberry PiまたはArduinoなど)に接続して、メッシュの電源が切れた場合にアラームをトリガーできるようにします。
次に、メッシュの電圧を設定するだけです。ケーブルが切断されたかどうかだけを知りたい場合は、小さな電位(3〜12ボルトなど)を使用してください。または、それをブービートラップとして機能させたい場合は、220V以上に完全に移動します(一部の人々は、これを非倫理的なことだと言うでしょう)。
もしも...
...キーボードをRaspberry PiまたはTeensy( https://www.pjrc.com/teensy )に接続し、キーを読み取ってコンピューターにもう一度「入力」するようにプログラムしましたか?知覚される待ち時間を回避するのに十分な速さだと思います。これは「キーボード用USBファイアウォール」として機能し、「マウス用USBファイアウォール」と同様に機能します。
コンピュータは、Teensyを「FirewalledKeyboard」または「FirewalledMoused」として識別します。コンピュータが元のキーボードやマウスを見る必要はありません。
興味深いことに、ユーザー@ robbat2は、いくつかの低レベルUSB攻撃を防ぐUSBファイアウォールを指しています。
これはキーボードとマウスだけが接続できるように変更することもできるようです。
また、キーボードと「USBファイアウォール」の間にPS/2ケーブルソリューション(ユーザー@dandavisの回答を参照)を追加することもできます。
更新:
(オープンソース) [〜#〜] usg [〜#〜] の作成者であるRobert Fiskにメールを送信し、彼に尋ねました(要約):
ロバート・フィスクさん、こんにちは。
USGを変更して、キーボードとマウスの接続のみを許可し、コンピューターからキーボードに情報が送信されないようにすることはできますか?自分のUSGハードウェアを購入した場合(自分で作成するのではなく)、ファームウェアを変更することはできますか?各USGはどれくらいですか?
彼は返事をした:
こんにちは、マルセロ。ファームウェアは「キーボードのみ」または「マウスのみ」のデバイスに簡単に変えることができます。キャップ、スクロール、Num Lockライトを更新するコンピュータとキーボードの通信を無効にすることもできます。ただし、悪意のあるユーザーが悪質なVBScript、Powershellスクリプト、または悪質なアクションを実行するALT asciiコードを使用したバイナリを入力することに対しては依然として脆弱です。はい、あなたは確かにあなた自身のファームウェアでプログラムすることができます、このページを見てください: https://github.com/robertfisk/USG/wiki/DFU-Firmware-Upgrade
お役に立てば幸いです。
このメールの前にフィスクさんと話したことがなく、この質問をする前にUSGについて聞いたことがないことに注意してください。私はUSGやその作成者とは何の関係もありません。使用したり、テストしたり、調査したことはありません。それが仕事に適しているかどうかは個人的にはわかりません。この情報は興味深く、おそらく役立つと思うので、私はこの情報を投稿しています。
最終的にUSGを購入してファームウェアを変更することにした場合は、GitHubで新しいファームウェアをオープンソースにして、ここにリンクします。
どうぞ。エポキシ、ホットグルーなど。「非常に機密性の高いデータ」以外に、根拠のない非常に具体的な要件と条件を指定しました。
あなたの質問は、ユーザーが最初に説明した厳密な性質にもかかわらず、ユーザーがUSBデバイスをコンピューターに取り外して挿入できることを示唆しています。これは、システムの一部への物理的なアクセスを意味します。古いルールは「物理的なアクセスが他のすべてのコントロールに勝る」というものです。
これはあなたの想定された条件を考えると、私が思いつくことができる最良の答えです。私はクロスドメインソリューションを使用して政府の高セキュリティ環境で働いていましたが、それらはより簡単でした。単純な答えは通常、より安全な答えです。