![如何禁止在 USB 设备上执行 shell 脚本和可执行文件?](https://linux22.com/image/1357867/%E5%A6%82%E4%BD%95%E7%A6%81%E6%AD%A2%E5%9C%A8%20USB%20%E8%AE%BE%E5%A4%87%E4%B8%8A%E6%89%A7%E8%A1%8C%20shell%20%E8%84%9A%E6%9C%AC%E5%92%8C%E5%8F%AF%E6%89%A7%E8%A1%8C%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我们有一个带 USB 端口的工业系统(在 Linux 上运行)。我们的 USB 端口仅用于复制某些数据。除此之外,我们不希望 USB 驱动器包含任何其他可执行文件或脚本等。因为它们可能会将蠕虫/病毒复制到 USB 设备上并附加到系统上。有什么方法可以避免这种情况?
更新: 如果使用 noexec 选项挂载,则用户无法执行,正如你们所建议的那样。但是要重新挂载并更改为 exec,用户将如何获得 root 权限?
答案1
如果您的系统不运行 USB 存储设备中的文件,则无需担心病毒。如果您只写作数据存储到 USB 磁盘,然后忘掉它们。
如果你还需要阅读并解析数据来自磁盘时,有人可能会试图利用软件中的某些漏洞。必须小心谨慎,以减少引入此类漏洞(缓冲区溢出等)的可能性。
注意禁用“自动运行“如果您的发行版提供了此功能,则可以使用此功能。这在最小的嵌入式发行版中不太可能实现。