今年3月英国Heathrow机场因断电停运一天,由此许多人都在谈论国家关键基础架构的恢复能力,其中最重要的部分之一就是互联网。过去我们使用租用线路来增加通信基础架构的弹性,而如今,我们都使用互联网来提供可靠而廉价的通信方式。如果没有它,世界上任何地方都不会有飞机起飞,我们的现代生活也会比COVID-19停止得更快。事实上,如果没有互联网,COVID-19对世界的影响将是相当巨大的。试想如果整个互联网在一瞬间就关闭了,那将会是怎样的景象?
互联网的设想是成为一个由相互连接的机器组成的完全分布式网络,并且能够抵御攻击。从根本上说,互联网是使用20世纪80年代创建的“老”协议创建的,当时大型机和微型计算机统治着计算世界。IP协议(RFC 791)、TCP协议(RFC 792)、HTTP协议、DNS协议等从最初的RFC草案到现在几乎没有什么变化。事实上,HTTP也一直在努力超越1.0版。
因此,网络安全专业人员一定知道,有三个基本弱点可能会在瞬间导致整个基础设施瘫痪。那就是DNS(域名系统)、PKI(公钥基础架构)和BGP(边界网关协议)。
DNS(域名系统)
所以,我们需要修复互联网协议中的缺陷。但是对于提供互联网运行核心服务的东西来说,“仅仅足够”的安全性就足够了吗?
网络瘫痪
针对DNS核心基础架构的大规模分布式拒绝服务(DDoS)将使大部分互联网瘫痪,因为我们非常依赖DNS服务器来解析IP地址。如果核心系统无法工作,基础架构的其他部分就会崩溃。而且,我们的DNS基础架构随时可能被恶意接管。
DNS是一个糟糕的协议。它依赖于一个DNS服务器告诉其他服务器域名的IP解析是什么。但你能相信谁来播报呢?那就是域名的主要管理机构。由于域名信息都通过互联网传播,因此我们没必要整合主要的权威机构。那么,如果恶意实体看到了错误的IP地址,会发生什么呢?比方说,一个大国家(MegaTropolis)想要占领一个小国家(MiniTropolis)。那么,他们的首要目标可能是毒化世界各地的DNS缓存,让所有小国家的域名都指向MegaTropolis的网站。
DNSSEC(域名系统安全扩展)
DNS的问题在于它几乎没有真正的安全内核,而且可以很容易地建立一个虚假的DNS系统,将用户重定向到错误的网站。但有一种解决方案——域名系统安全扩展(DNSSEC)。它提供DNS数据的来源验证和数据完整性。它无法阻止他人查看请求和回复中的数据。当然,与DNS相关的问题早已为人所知:

威胁包括:数据包拦截、ID猜测和查询预测、名称链、受信任服务器的背叛、拒绝服务、认证域名拒绝以及通配符。最大的威胁之一是DNS缓存中毒,恶意主机可向网络其他部分播发错误的域名。DNSSEC通过建立一个受保护区域来克服这一问题,该区域内的所有响应都经过数字签名。DNS解析可以检查DNS信息是否已由其中一台受信任的主机签名。
DNS的工作原理是创建一个定义SOA(起始授权机构)的域名记录。然后定义序列号、刷新时间等:

其中,我们可以定义NS(名称服务器)和MX(邮件服务器),以及域内已定义主机的IP地址。我们可以使用nslookup命令行工具来查询条目:

需要注意的是,DNSSEC并不能保证数据的机密性,也不能预防拒绝服务的攻击。
代码
这里有一些Go代码。有了它,我们将创建一个2048位的RSA密钥对(一个公钥和一个私钥),然后用可信域的私钥签署SOA。然后,其他人就可以使用受信域的公钥检查签名。SOA条目是按DNS的方式创建的,并带有域名和IP地址

的三个协议:DNS、PKI和BGP&spm=1001.2101.3001.5002&articleId=147409315&d=1&t=3&u=47f632bef9fc4ce98f6e881c377b8f9e)

被折叠的 条评论
为什么被折叠?



