主流BGP路由協(xié)議中曝出安全漏洞,可武器化以實(shí)現(xiàn)DoS攻擊
網(wǎng)絡(luò)安全研究人員發(fā)現(xiàn)了 BGP 邊界網(wǎng)關(guān)協(xié)議中的安全漏洞,可以將其武器化以在易受攻擊的 BGP 對(duì)等點(diǎn)上實(shí)現(xiàn)拒絕服務(wù) (DoS) 攻擊。

這3個(gè)漏洞存在于 FRRouting 的 8.4 版中,F(xiàn)RRouting 是一種適用于 Linux 和 Unix 平臺(tái)的主流開(kāi)源互聯(lián)網(wǎng)路由協(xié)議套件。它目前被NVIDIA Cumulus、DENT和SONiC等多家供應(yīng)商使用,所以本次安全漏洞也構(gòu)成供應(yīng)鏈風(fēng)險(xiǎn)。
網(wǎng)絡(luò)安全研究人員在對(duì) 7 種不同的 BGP 協(xié)議實(shí)現(xiàn)進(jìn)行分析時(shí)(FRRouting、BIRD、OpenBGPd、Mikrotik RouterOS、Juniper JunOS、Cisco IOS、Arista EOS)發(fā)現(xiàn)了 FRRouting 中的這3個(gè)安全漏洞。
根據(jù)中國(guó)網(wǎng)絡(luò)安全行業(yè)門(mén)戶(hù)極牛網(wǎng)(GeekNB.com)的梳理,BGP 是一種網(wǎng)關(guān)協(xié)議,旨在在自治系統(tǒng)之間交換路由和可達(dá)性信息,用于尋找傳送互聯(lián)網(wǎng)流量的最有效路線。
該3個(gè)漏洞列表如下:
CVE-2022-40302 (CVSS 評(píng)分:6.5)- 使用擴(kuò)展可選參數(shù)長(zhǎng)度選項(xiàng)處理格式錯(cuò)誤的BGP OPEN 消息時(shí)越界讀取。
CVE-2022-40318(CVSS 評(píng)分:6.5)- 使用擴(kuò)展可選參數(shù)長(zhǎng)度選項(xiàng)處理格式錯(cuò)誤的 BGP OPEN 消息時(shí)越界讀取。
CVE-2022-43681(CVSS 評(píng)分:6.5)- 處理突然以選項(xiàng)長(zhǎng)度八位字節(jié)結(jié)束的格式錯(cuò)誤的 BGP OPEN 消息時(shí)越界讀取。
這些漏洞可能被攻擊者利用,以在易受攻擊的 BGP 對(duì)等點(diǎn)上實(shí)現(xiàn) DoS 攻擊,從而丟棄所有 BGP 會(huì)話和路由表并使對(duì)等點(diǎn)無(wú)響應(yīng)。

通過(guò)重復(fù)發(fā)送格式錯(cuò)誤的數(shù)據(jù)包,DoS 攻擊可能會(huì)無(wú)限期地延長(zhǎng)。根本原因是相同的易受攻擊的代碼模式被復(fù)制到與解析 OPEN 消息的不同階段相關(guān)的幾個(gè)函數(shù)中。
攻擊者可以欺騙受信任 BGP 對(duì)等方的有效 IP 地址,或利用其他漏洞和錯(cuò)誤配置來(lái)破壞合法對(duì)等方,然后發(fā)出特制的未經(jīng)請(qǐng)求的 BGP OPEN 消息。
這是通過(guò)利用 FRRouting 在它有機(jī)會(huì)驗(yàn)證始發(fā)路由器的 BGP 標(biāo)識(shí)符和 ASN 字段之前開(kāi)始處理 OPEN 消息(例如,解封裝可選參數(shù)) 這一事實(shí)來(lái)實(shí)現(xiàn)的。
Forescout 還提供了一個(gè)基于 Python 的開(kāi)源BGP Fuzzer 工具,該工具允許組織測(cè)試內(nèi)部使用的 BGP 套件的安全性,并發(fā)現(xiàn) BGP 實(shí)施中的新漏洞。
現(xiàn)代的 BGP 協(xié)議仍然有容易被攻擊者濫用的漏洞。為了降低易受攻擊的 BGP 風(fēng)險(xiǎn),建議盡可能快速地修補(bǔ)網(wǎng)絡(luò)基礎(chǔ)設(shè)施設(shè)備的安全補(bǔ)丁。