信息來源:nosec
近期,有安全研究人員在發(fā)現(xiàn)了Linux、Unix系統(tǒng)上一個新的漏洞,可讓攻擊者劫持受影響設(shè)備上的VPN連接,將任意payload注入IPv4和IPv6的TCP數(shù)據(jù)流中。
他們已向發(fā)行版Linux廠商和Linux內(nèi)核安全團隊,以及其他受影響的公司(例如Systemd,Google,Apple,OpenVPN和WireGuard)通報了該漏洞(CVE-2019-14899)。
根據(jù)研究人員的說法,該漏洞會影響絕大多數(shù)Linux發(fā)行版和類Unix操作系統(tǒng),包括FreeBSD、OpenBSD、macOS、iOS和Android在內(nèi)。
目前可以找到的受影響的操作系統(tǒng)如下所示,未來這個列表可能還會增長:
? Ubuntu 19.10 (systemd)
? Fedora (systemd)
? Debian 10.2 (systemd)
? Arch 2019.05 (systemd)
? Manjaro 18.1.1 (systemd)
? Devuan (sysV init)
? MX Linux 19 (Mepis+antiX)
? Void Linux (runit)
? Slackware 14.2 (rc.d)
? Deepin (rc.d)
? FreeBSD (rc.d)
? OpenBSD (rc.d)
所有VPN應(yīng)用都受到影響
根據(jù)新墨西哥大學的研究人員William J. Tolley, Beau Kujath和Jedidiah R. Crandall所發(fā)布的報告,這個安全漏洞可讓鄰近網(wǎng)絡(luò)攻擊者了解到是否有另一個用戶連接到VPN,其被分配的虛擬IP地址,是否訪問了某個特定網(wǎng)站。
此外,攻擊者可以通過計算加密包的數(shù)量或檢查它們的大小來確定確切的seq和ack數(shù)目。這樣就能將惡意數(shù)據(jù)注入TCP流,劫持連接。
目前已確定CVE-2019-14899可以對OpenVPN、WireGuard和IKEv2/IPSec發(fā)起攻擊,研究人員正在測試如何對Tor進行攻擊。
研究人員還指出,漏洞和所使用的VPN技術(shù)無關(guān),即使VPN流量都經(jīng)過了各種加密,但根據(jù)數(shù)據(jù)包的大小以及數(shù)據(jù)包的數(shù)量就足以確定數(shù)據(jù)包的類型。
在Ubuntu 19.10發(fā)布之前,這種攻擊對我們所測試的任何Linux發(fā)行版都不起作用,此時我們注意到rp_filter被設(shè)置為loose模式,也就是在2018年11月28日,systemd存儲庫中的sysctl.d/50-default.conf的默認設(shè)置從“strict”模式更改為“l(fā)oose”模式,而在此日期之后使用默認配置的systemd都會受到該攻擊的影響。我們測試的大多數(shù)其他init系統(tǒng)的Linux發(fā)行版系統(tǒng)都將該值設(shè)置為0(Linux內(nèi)核的默認值)。
總而言之,研究人員發(fā)現(xiàn),在2018年11月28日之后發(fā)布的所有systemd版本的發(fā)行版系統(tǒng)都存在漏洞。
因此,在此日期之后出現(xiàn)的systemd版本的Linux發(fā)系統(tǒng)若沒有更改默認配置,都容易受到攻擊。
而且這個漏洞會影響各種init系統(tǒng),并不僅是與systemd相關(guān)。
此外,網(wǎng)絡(luò)安全顧問Noel Kuntze在回應(yīng)漏洞報告時表示,只有基于路由的VPN應(yīng)用受到該漏洞的影響。
一名據(jù)稱是亞馬遜網(wǎng)絡(luò)服務(wù)的員工表示,亞馬遜的Linux發(fā)行版系統(tǒng)和AWS VPN產(chǎn)品不受這一漏洞影響。
防御方法
根據(jù)研究人員的說法,可以通過啟用反向路徑過濾、偽造IP過濾或借助加密數(shù)據(jù)包大小和時間來實現(xiàn)防御。
以下是進行攻擊所需的步驟,旨在劫持目標的VPN連接:
1.確定VPN客戶機的虛擬IP地址
2.根據(jù)虛擬IP地址得到活動鏈接
3.使用加密回復主動發(fā)包,以確定連接的seq和ack數(shù)目,從而劫持TCP會話