一位研究人員說,近三年來,openwrt——家用路由器和其他類型嵌入式系統(tǒng)的開源操作系統(tǒng)——一直很容易受到遠(yuǎn)程代碼執(zhí)行攻擊,因為更新是通過未加密的通道進行的,而且數(shù)字簽名驗證很容易被繞過。
OpenWRT有一群忠實的用戶,他們使用免費提供的包作為設(shè)備上安裝的固件的替代品。除了路由器,OpenWRT還可以在智能手機、掌上電腦、甚至筆記本電腦和臺式電腦上運行。用戶通常會發(fā)現(xiàn)OpenWRT是一種更安全的選擇,因為它提供了高級功能,而且源代碼易于審計。
然而,安全研究人員Guido Vranken最近發(fā)現(xiàn),更新和安裝文件是通過未加密的HTTPs連接傳送的,這種連接容易受到攻擊,允許對手完全用惡意更新取代合法更新。研究人員還發(fā)現(xiàn),對于有一定經(jīng)驗的攻擊者來說,繞過數(shù)字簽名檢查來驗證下載的更新是否為OpenWTR維護者提供的合法更新是非常簡單的。這兩種漏洞的結(jié)合使得發(fā)送惡意更新成為可能,而易受攻擊的設(shè)備將自動安裝惡意更新。
這些代碼執(zhí)行漏洞在其范圍內(nèi)是有限的,因為對手必須能夠進行中間人攻擊,或者篡改設(shè)備用于在Internet上查找更新的DNS服務(wù)器。這意味著網(wǎng)絡(luò)上沒有惡意用戶且使用合法DNS服務(wù)器的路由器不會受到攻擊。Vranken還推測,包欺騙或ARP緩存中毒也可能使攻擊成為可能,但他警告說,他沒有測試這兩種方法。
盡管有這些要求,但許多網(wǎng)絡(luò)連接著設(shè)備運營商不認(rèn)識或不信任的人。更重要的是,取代指向合法DNS的路由器設(shè)置而指向惡意DNS的攻擊是互聯(lián)網(wǎng)上的現(xiàn)實,就像這里、這里、這里和這里(僅舉幾例)的攻擊一樣。
使用HTTPS加密的失敗是這個弱點的一個原因。HTTPS提供的加密使附近的攻擊者不可能在數(shù)據(jù)傳輸過程中篡改數(shù)據(jù)。HTTPS中內(nèi)置的身份驗證保證也使得攻擊者無法模擬downloads.openwrt.org,這是一個真正的OpenWRT服務(wù)器,提供合法的更新和安裝文件。