在过去的一年中,两家公司在TCP / IP堆栈的不同实现中发布了70个不同的漏洞之后,两家公司找到了共同的纽带。

据两名计划在下周的黑帽亚洲大会上讨论的安全研究人员说,在实施网络软件时出现的六个常见错误导致了数十个漏洞,突显了复杂的设计要求和模棱两可的规范对软件安全性的影响。

网络安全公司Forescout的研究经理Daniel Dos Santos和安全咨询公司JSOF的首席执行官Shlomi Oberman将讨论他们的团队在定义六个反模式(或常见的软件错误)方面的协作工作,这些反模式或漏洞导致各种漏洞。 TCP / IP堆栈。两家公司在过去的一年中披露了一系列漏洞,其中许多是由六个反模式之一引起的。

dos Santos说,DNS协议中的歧义和复杂性已引起了问题。

他说:“由于DNS规范的复杂性,我们在网络堆栈的实现中已经出现了二十年来已知的漏洞类型。” “软件或协议变得越复杂,协议实现起来就越困难,因此我们需要使它们尽可能少地复杂,但这并不总是可能的。”

本月初,Forescout和JSOF披露了九个漏洞,这些漏洞影响了四个不同的TCP / IP堆栈,并可能影响亿万个物联网(IoT)和网络设备。这些漏洞被两家公司称为“ NAME:WRECK”,是他们对处理域名系统(DNS)流量的供应商实施的研究中的最新披露。他们的研究被称为Project Memoria,其中还包括“ Ripple20”,这是19个影响Treck TCP / IP堆栈的漏洞。“ AMNESIA:20”,一组33个漏洞,影响四个不同的开放源TCP / IP堆栈;和“ NUMBER:JACK”

两家公司评估了15种不同的网络软件实现(通常称为“堆栈”),发现7种由于实施特定DNS功能时出错而存在漏洞。

研究人员在本月初发布的技术报告中说:“在Project Memoria中,我们了解到相同的错误(反模式)通常会在不同的堆栈中导致相似的漏洞。” “我们敦促已经对TCP / IP堆栈的开发人员进行分析,以采取反模式……(并)检查其代码中是否存在错误并进行修复。”

最新的漏洞发生在不同供应商如何实现DNS功能(称为消息压缩)的过程中。由于DNS响应通常多次包含特定域的名称,因此消息压缩允许软件实现减小DNS消息的大小。

在Black Hat Asia上,研究人员的讨论

“值得注意的是,当堆栈具有易受攻击的DNS客户端时,通常会同时存在多个漏洞,但是消息压缩反模式非常突出,因为它通常会导致潜在的[远程代码执行],因为它通常与指针操作相关和内存操作”,根据该报告。

作为研究的一部分,两家公司发布了一份技术报告,讨论了六个DNS反模式,用于识别网络中易受攻击的设备的开源脚本,用于搜索易受攻击的网络设备的一组查询以及对注释(RFC)草案,其中包含有关开发人员如何避免某些实现错误的更多信息。

两家公司在报告中说:“这项研究进一步证明了DNS协议的复杂性会导致几种易受攻击的实现,并且社区应该采取行动来解决我们认为目前所知道的问题更加普遍的问题。”

尽管漏洞已被披露,并且受影响的供应商已针对该问题发布了补丁程序,但dos Santos担心补丁程序不会很快发生。

他说:“这类研究确实突显了物联网设备存在供应链问题。厂商修补的任何漏洞仍必须部署到软件中。” “但是打补丁很困难。网络中的每个设备可能都容易受到攻击。每个设备可能都有不同的补丁程序,因此您必须使它们脱机。”

将集中在规范的复杂性(特别是实现消息压缩的技术细节)如何导致各种不同的漏洞上。在一种情况下,一个字(“可能”与“必须”)由于单个反模式而导致了不同的安全性问题。