BGP安全之争(3) – SBGP (Secure BGP) 方案

Sina WeiboBaiduLinkedInQQGoogle+RedditEvernote分享




是前文提到的Stephen Kent在1997年开始研发的,由于Steve是IPSec的作者,PKI工作组的主席,因此其方案也深受正统安全思想的影响,高举高打,对于端到端安全Steve建议采用IPSec(而后文介绍的SoBGP则建议使用TLS),对于认证则建议采用PKI。其研究成果含代码可以在这里找到。

SBGP对于BGP的安全问题归纳和分析的很详细,很有意义,但在这里不再重复。SBGP实现相对比较繁杂,引入了较多的名词术语,为了避免重复协议内容,搞乱了大家的头脑,笔者对其协议基础简介如下:

首先区分了两种实体,地址拥有者和AS号码拥有者,这两者可能不同(实际是相同的都是ICANN),因此建立了两个PKI:

第一个PKI用于地址所有权的验证,ICANN(Internet Corporation for Assigned Names and Numbers)是负责Internet中自上而下的分配IP地址的机构,其负责对外批发地址,对于我国来说从其亚太分支机构APNIC搞二次批发,国内再怎么向下零售以及一个IP多少钱,我就不太清楚了。为此自ICANN而下建立PKI信任体系。为所有参与BGP 通告的地址所有者(AS)进行地址块所有权认证。

第二个PKI,类似,用于AS Number所有权认证,其实也需要ICANN搞。

有了这两个信任树就可以为所欲为了,例如。

1.可以查询AS Path的origin AS是否有权产生某一路由的通告,这可以由第一棵树来进行验证,就是SBGP之中所谓的AA(Address Attestation)。

2.可以验证某个路由器是否被AS授权代表AS发言,这个由第二棵树搞定。

3.最有趣的是AS Path的验证,其问题就是如何确定整条AS Path是真的,没有人插进去什么东东。SBGP采用的方式是由途径的AS不停包包子或千层饼的方式,每次路过一个AS,该AS就对前面的内容打包并且在外面盖戳。攻击者无法进行修改。

其他验证问题也可以推而广之。

对于这类信任相关的问题,由于有公有的PKI机制,因此即使路由器被攻陷,可以自杀,但无法对外进行破坏从而波及整个Internet。

但SBGP有一些显著的问题:

1.PKI系统的部署,要求从ICANN开始,谁出这个钱?

2.路由器的CPU做这么多安全操作,performance如何是好?

3.分布式数据库如何维护同步?

SBGP自知理亏,也做了一些研究,提出了一些cache之类的方案。

下图是SBGP组件总图,够酷吧。

image

(1个打分, 平均:5.00 / 5)

雁过留声

Comments are closed.