可能毁灭互联网(和我们生活)的三个协议:DNS、PKI和BGP

今年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相关的问题早已为人所知:

RFC 3833

威胁包括:数据包拦截、ID猜测和查询预测、名称链、受信任服务器的背叛、拒绝服务、认证域名拒绝以及通配符。最大的威胁之一是DNS缓存中毒,恶意主机可向网络其他部分播发错误的域名。DNSSEC通过建立一个受保护区域来克服这一问题,该区域内的所有响应都经过数字签名。DNS解析可以检查DNS信息是否已由其中一台受信任的主机签名。

DNS的工作原理是创建一个定义SOA(起始授权机构)的域名记录。然后定义序列号、刷新时间等:

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

需要注意的是,DNSSEC并不能保证数据的机密性,也不能预防拒绝服务的攻击。

代码

这里有一些Go代码。有了它,我们将创建一个2048位的RSA密钥对(一个公钥和一个私钥),然后用可信域的私钥签署SOA。然后,其他人就可以使用受信域的公钥检查签名。SOA条目是按DNS的方式创建的,并带有域名和IP地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Doris Liu.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值