在Linux上,如何强制执行USB设备的白名单?


3

有了像RubberDucky这样的东西,以及重新编程USB闪存的可用代码,笔记本电脑上的USB端口正面临着安全风险。

如何开始使用可接受的USB存储和HID设备的白名单?

谢谢。

Answers:


0

你不能。

可以修改USB记忆棒固件,使其识别为完全不同的设备。这是安全风险。

因此,例如,如果您将打印机列入白名单,则可以闪存usb棒以将自己标识为列入白名单的打印机,然后将数据发送到打印机驱动程序,预计它不会被接收。您的打印机驱动程序可能会出现意外行为,从而导致usb棒对您的PC具有root权限。

另外,请查看https://security.stackexchange.com/questions/64524/how-to-prevent-badusb-attacks-on-linux-desktop


0

你可以试试USBGuard。它在UDev和Linux内核USB授权框架之上实现了USB设备黑名单/白名单。它具有用于编写USB设备使用策略的规则语言,即表达如下内容:

  • “我想在我的系统上使用这个键盘和USB闪存盘,阻止其他一切”
  • 或“阻止其上有附加接口的USB闪存盘(键盘,网卡......)”

例如,要阻止不仅仅是闪存盘的USB闪存盘(即,它们被重新编程为包括键盘或大容量存储接口以外的其他东西),您可以使用此USBGuard策略:

allow with-interface equals { 08:*:* }
block

这导致USBGuard仅授权仅包含一个08类接口(大容量存储器)的USB设备。

免责声明:我是该项目的作者。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.