web-dev-qa-db-ja.com

USBベースの(Arduino Leonardo)攻撃の検出

dmesgからの出力を観察することで、USBベースの攻撃(BadUSB、RubberyDuckyなど)を検出できますか?

私は本質的に小型のレオナルドである真新しいDFRobot Beetleを購入しました。差し込んでから数秒後、使用しているUSBキーボードが機能しなくなります。低電力が原因である可能性がありますが、dmesgからの出力を確認したところ、デバイスが検出され、物理的に動かされずに3回切断されたことがわかりました。

最も興味深いのは、Mfrproductが2回変更されることです。

[Tue Jan 15 09:42:54 2019] usb 1-1.2:新しいUSBデバイス文字列:Mfr = 1、Product = 2、SerialNumber =

[2019年1月15日09:43:18] USB 1-1.2:USB切断、デバイス番号6

...

[2019年1月15日09:43:19] usb 1-1.2:新しいUSBデバイスが見つかりましたidVendor = 2341、idProduct = 0036

[2019年1月15日09:43:19] usb 1-1.2:新しいUSBデバイス文字列:Mfr = 2、Product = 1、SerialNumber =

[2019年1月15日09:43:18] USB 1-1.2:USB切断、デバイス番号7

...

[2019年1月15日09:43:19] usb 1-1.2:新しいUSBデバイスが見つかりましたidVendor = 2341、idProduct = 8036

[2019年1月15日09:43:19] usb 1-1.2:新しいUSBデバイス文字列:Mfr = 1、Product = 2、SerialNumber =

さらに、idProductも簡単に変更されます。

最初は緩んでいたので数回検出されたのではないかと思いましたが、再起動してdmesgを再度確認したところ、USBポートでデバイスを振り回しても接続が解除されないことがわかりました。値の2番目のセット、つまりMfr=2, Product=1およびidVendor=2341, idProduct=0036も表示されません。

これはすべて正常ですか、それともUSBベースの攻撃の兆候ですか?

1
user942937

あなたが説明することはかなり正常です。デバイスには、最初の接続時にインストールされるドライバーがあるのではないかと思います。ドライバがインストールされると、デバイスが数回切断される可能性があります。デバイスドライバーがインストールされると、正しく認識され、インストールや切断が行われなくなります。いつでもドライバーを削除し、USBポートをデバッグして、バックグラウンドで何が起こっているかを確認できます。

1