千瘡百孔的GPON家庭網關


千瘡百孔的GPON家庭網關

2018年5月,vpnMentor在其博客 兩個有趣的漏洞(cve-2018–10561、cve-2018–10562),可以結合起來攻破GPON家庭網關。歷經一年,這兩個漏洞已經引起了很高的關注,並已被一堆殭屍網絡利用起來,比如Mettle、Muhstick、Mirai、Hajime、Satori等等。

冥冥之中,我感覺這個設備背後還有更多的漏洞,說不定會引起更大的波瀾。

於是,我花了很長的時間去研究它。一般來說,GPON光網絡終端是由互聯網服務提供商(ISP)分發給終端用戶,用來連接互聯網點。經過我的研究發現,至少有五家廠商的GPON家庭網關存在漏洞。你可以用網絡設備搜索引擎發現大量潛在的攻擊目標:

千瘡百孔的GPON家庭網關

你可能會問,為什麼會有五個廠商都存在問題?因為這些設備使用類似的固件。不同產品的固件上的任何差異都是廠商自主修改造成的,但其固件的核心基本不變。我分析了很多不同ISP所使用的產品固件,最終得出這一結論。舉個例子,讓我們看看來自不同固件包的根文件夾的內容:

千瘡百孔的GPON家庭網關

值得注意的是,GPON家庭網關的固件通常無法在供應商的網站找到,其安全更新機制很不完善。

預熱:一個telnet後門

如果我們想找漏洞,通常需要對某個正在運行的服務進行調試,所以,為了更好的進行漏洞挖掘,我從易趣上買一個真正的家庭設備,是由Alcatel-Lucent公司生產的,基於ARM處理器(armv5tel編譯固件)的I-240W-Q GPON家庭網關:Feroceon 88FR131 rev 1 (v5l)。

首先,對Alcatel-Lucent I-240W-Q GPON家庭網關的端口掃描就顯示出一些有趣的地方。該設備貌似會開啟telnet和ssh服務,可能是方便ISP遠程管理調試。可是,默認情況下這些端口似乎都會被屏蔽。用nmap掃描結果如下:

千瘡百孔的GPON家庭網關

嗯?我決定瀏覽WebMgr的二進制文件,嘗試尋找一個後門代碼。WebMgr是gGPON家庭網關固件的一部分,負責設備的web管理控制檯。通過粗略的瀏覽,“webLoginCheck”看起來有點問題:

千瘡百孔的GPON家庭網關

因為webLoginCheck涉及“ote”和“otd”命令,所以,除了處理身份驗證之外,我們還可以利用這些命令來激活或禁用後門代碼。

通過發送一個簡單的HTTP的GET請求,我們就可以關閉telnet端口的屏蔽!!!

千瘡百孔的GPON家庭網關

通過發送以下命令,我們可以重新激活屏蔽:

千瘡百孔的GPON家庭網關

接下來,我們需要找出登錄憑證,使得我們可以通過telnet登錄。讓我們對“/bin/telnetd”文件逆向看看:

千瘡百孔的GPON家庭網關

OK!這裡面似乎有硬編碼登入憑證“root/admin”和“root/huigu309”,並提供了shell功能:

千瘡百孔的GPON家庭網關

接著,我在ssh服務中也發現了硬編碼的root帳戶。

在Web接口中的緩衝區溢出

現在我們可以訪問路由器的控制檯了,是時候找找某些不安全的C函數了。我們可以通過跟蹤用戶的HTTP請求的處理流程來進行觀察。對於緩衝區溢出,我們都知道以下這個函數功能:

千瘡百孔的GPON家庭網關

原本的功能是將字符串複製到目標數組中。但是,由於這個函數不會檢查緩衝區長度,就有可能會觸發緩存區溢出。

讓我們看一看和HTTP相關的用來處理“usb_Form”的子程序:

千瘡百孔的GPON家庭網關

在IDA Pro中,我們可以看到許多參數都存在問題:“ftpusername”、“ftppassword1”、“ftpdirname”、“clientusername”、“clientpassword”、“urlbody”、“webdir”。用戶通過HTTP請求提交的輸入直接由strcpy函數複製,並不會安全檢查。

讓我們通過curl命令來觸發DoS漏洞,強制GPON設備重新啟動:

千瘡百孔的GPON家庭網關

為了更好的利用這一漏洞,我們最好需要繞過身份驗證。

我對“WebMgr”二進制文件進行了不同安全級別的檢查,希望找到最簡單的利用方法,寫一個最完美的PoC:

千瘡百孔的GPON家庭網關

因此,我在GPON路由器上啟用了ASLR防護。當然,這並不影響我們攻擊堆。如果我們可以找到存儲在堆上的位置,就可以通過修改“pc”寄存器修改跳轉到指定位置,觸發shellcode。嗯,似乎很有希望:

千瘡百孔的GPON家庭網關

最後,我得到了以下PoC,通過觸發堆中存儲的shellcode,成功繞過了ASLR,開啟一個“tftpd”服務:

https://github.com/tenable/poc/blob/master/gpon/nokia_a-l_i-240w-q/gpon_poc_cve-2019-3921.py

利用如下:

千瘡百孔的GPON家庭網關

結論

在互聯網世界中,路由器是網絡上最重要的設備。而家庭路由器更是唯一將我們的私人網絡與互聯網分開的邊界設備。這個閃爍的小盒子可以防禦外部大量的滲透攻擊。為了維護這個邊界設備,路由器的固件和硬件都需要不斷升級和改進。對於現在的攻擊者來說,過時的舊設備是最好的攻擊方向。

根據Cyber-ITL研究人員的最新研究,大多數路由器都很不安全。不幸的是,Alcatel-Lucent I-240W-Q gpon家庭網關也是如此。由於缺乏安全功能,再加上糟糕的代碼,使得攻擊者可完全控制設備。

我們已經按照漏洞披露政策向產品的安全團隊報告了漏洞,他們已經發布了安全補丁。

本文由白帽彙整理並翻譯,不代表白帽匯任何觀點和立場

來源:https://nosec.org/home/detail/2299.html

原文:https://medium.com/tenable-techblog/gpon-home-gateway-rce-threatens-tens-of-thousands-users-c4a17fd25b97

白帽匯從事信息安全,專注於安全大數據、企業威脅情報。

公司產品:FOFA-網絡空間安全搜索引擎、FOEYE-網絡空間檢索系統、NOSEC-安全訊息平臺。

為您提供:網絡空間測繪、企業資產收集、企業威脅情報、應急響應服務。


分享到:


相關文章: