Linux试图抛弃Windows臭名昭著的不安全RNDIS协议

   日期:2025-10-14     来源:本站    作者:admin    浏览:89    
核心提示:      微软的专有协议,远程网络驱动程序接口规范(RNDIS),从一个好主意开始。这将使硬件供应商能够为USB设备添加网络支持

  

  

  微软的专有协议,远程网络驱动程序接口规范(RNDIS),从一个好主意开始。这将使硬件供应商能够为USB设备添加网络支持,而不必从头开始构建。只有一个小问题。RNDIS没有安全可言。

  正如负责Linux内核稳定发布的Linux基金会成员Greg Kroah-Hartman在2022年11月在Linux内核邮件列表(LKML)上所写的那样,“按照设计,微软RNDIS协议在任何将其与不受信任的主机或设备一起使用的系统上都是不安全且易受攻击的。因为该协议不可能确保安全,所以只需禁用所有RNDIS驱动程序,以防止任何人再次使用它们。”

  他在另一条消息中补充说,“该协议从未被设计用于不受信任的设备。当我们信任插入系统的USB设备时,我们就创建了它,并实现了对它的支持,我们信任我们插入USB设备的系统。”

  现在情况已经不同了。Kroah-Hartman总结道:“今天,随着不受信任的主机和设备的出现,是时候退出这个协议了。正如我在补丁评论中提到的,Android在许多年前就在他们的设备上禁用了这个功能,但并没有损失任何功能。”

  嗯,这很简单。那么,为什么我们今天还在谈论它呢?

  结果是用户开始担心这会破坏他们的网络USB连接支持。事实证明,通过USB蜂窝、以太网和Wi-Fi设备联网的人比你想象的要多。

  安全?那是什么?

  正如Kroah-Hartman在2023年1月LKML的后续消息中所说的那样。我想,使用这一功能的系统必须始终相信插入其中的设备是“可信的”。如果你需要的话,这似乎是一种进入‘锁定’系统的简单方法。”

  他没有错。有安全意识的企业不允许在内部部署任何usb连接设备是有原因的,这就是其中之一。

  但是现在,Kroah-Hartman已经厌倦了Linux中内置的Windows安全漏洞,他决定受够了。他禁用了Linux Git存储库中的所有RNDIS协议驱动程序。

  这意味着,虽然RNDIS代码仍然在Linux内核中,但如果您尝试使用这个新补丁构建Linux,那么所有的RNDIS驱动程序都将被破坏,无法构建。这距离从Linux中清除RNDIS还差一步。

  还有另一种通过USB支持网络的方法。这是网络控制模型(NCM)协议。它的优点是安全,并且已经在Linux中得到支持。

  不过,这种方法让谷歌Linux内核网络开发人员Maciej ?enczykowski感到担忧。这是因为Android手机不支持CDC-ECM。据他所知,唯一“用NCM代替RNDIS进行USB连接的安卓手机是谷歌Pixel 6+”和更新的Pixel智能手机。

  而且,这是一个问题,因为人们使用RNDIS驱动Linux笔记本电脑USB连接Android手机。因此,根据?enczykowski的说法,“这将打破绝大多数安卓手机的USB连接——可能包括大多数目前正在生产和销售的手机。”

  那么,一方面是安全问题,另一方面是互操作性问题,接下来会发生什么呢?请继续关注这个补丁是否会提交到Linux 6.7内核合并窗口,以及它是否会进入下一个Linux版本。

 
打赏
 
更多>同类文章

推荐图文
推荐文章
点击排行