網路攝像頭的地盤爭奪戰——四款殭屍軟體的技術解析
2017年5月,趨勢科技就報告了他們的最新發現——一種新型物聯網殭屍網路Persirai,由趨勢科技公司定義為ELF_PERSIRAI.A惡意軟體,這可能是繼Mirai和Hajime之後又一波針對物聯網設備的新型攻擊力量。
趨勢科技通過Shodan發現,大約有1000多種型號(總共12萬台)的網路攝像頭被Persirai感染,而攝像頭的使用者卻一點察覺也沒有。
但是,因為這些攝像頭是所有殭屍網路進行DDoS攻擊的重要工具,Persirai和其他惡意軟體之間也存在著競爭關係,所以它還會攔截具有同樣0day漏洞的代碼,以阻止其他攻擊者攻擊同樣的互聯網攝像頭。
研究人員發現,目前有四種不同的惡意軟體家族(Persirai,DvrHelper,Mirai,TheMoon)都專註於攻擊網路攝像頭,且每個惡意軟體都有自己獨特的攻擊手段,不過由於目標總量是有限的,它們不可避免的會競爭,並通過防禦來阻止對手的惡意軟體。
Persirai
毫無疑問,Mirai是首個大規模感染物聯網的惡意軟體,再加上其代碼的開源性特點,它造成的影響就特別大,比如其後的很多了物聯網惡意軟體都以它為參考,。Persirai似乎就是構建於Mirai源代碼基礎之上的。
由於在用戶內部網路中,網路攝像頭使用的是路由器的即插即用(UPnP)協議功能進行埠映射,所以用戶菜可以通過廣域網遠程訪問網路攝像頭,這樣就把網路攝像頭暴露在網路中。Persirai正是利用惡意軟體ELF_PERSIRAI.A,對暴露的網路攝像頭進行傳播感染。進入網路攝像頭的網路管理介面後,通過注入惡意命令強制攝像頭連接到一個下載網站執行惡意文件下載,之後,遠端下載網站將會給出以下命令響應,通知被控制的網路攝像頭從域名連接
ntp.gtpnet.ir處下載惡意shell腳本文件。
Persirai的一個有趣特徵是,當它對網路攝像頭進行攻擊時,利用的是三個已知的漏洞:
1.存在於自定義網路伺服器程序中的漏洞:
1.1. login.cgi – 允許攻擊者繞過身份驗證並獲取管理員密碼
1.2. set_ftp.cgi – 當攻擊者獲取管理員密碼時,就可以將其用於命令注入和惡意軟體部署
Realtek rtl81xx SDK遠程代碼執行漏洞(CVE-2014-8361),存在遠程代碼執行漏洞,遠程攻擊者通過構造的NewInternalClient請求,利用此漏洞可執行任意代碼。這樣攻擊者將能夠獲得用戶密碼,無論密碼強度如何,都可以部署命令注入。
Mirai
在Persirai被曝光之前,一談起DDoS攻擊,大家都想到的是Mirai。因為在2016年8月,Mirai發動了史上最大規模的DDOS攻擊後,讓物聯網攻擊被大眾所熟知。Mirai源碼是2016年9月30日由黑客Anna-senpai在論壇上公布,其公布在github上的源碼被star了2538次,被fork了1371次。這樣,任何人都能Mirai
進行修改並創建新的變體了。
最近,研究人員已經發現,Mirai正在通過Windows 木馬擴展其感染功能,可以掃描比以前版本更多的埠。它會檢查以下埠是否打開:22(SSH),23(Telnet),135(DCE / RPC),445(Active Directory),1433(MSSQL),3306(MySQL)和3389(RDP)
DvrHelper
DvrHelper可以說是Mirai的更新版,使用了mirai的攻擊模塊,其主要實現對網路服務設備的遠程登錄服務的掃描並嘗試對物聯網設備進行暴力破解,並將破解的的ip地址、埠、用戶名、密碼等信息發送給後台的伺服器,同時接收C&C伺服器的控制命令對目標發動攻擊。
不過,由於Mirai之前引發的災害太大許多機構已經布置了DDoS預防解決方案。所以,與Mirai不同的是,為了增加攻擊的力度並繞過安全監測,DvrHelper還有專門配了八個DDoS攻擊模塊,這樣它也成了第一個繞過DDoS解決方案的惡意殭屍軟體。
具體來說,DvrHelper採用了兩種通過特定的內容傳送網路來繞過DDoS預防措施的方法。
第一種方法針對預防木馬的技術,並利用供應商的應對策略:
過程如下:
1. DvrHelper向目標網站發送了請求,並通過JavaScript截獲預防命令。
2.提取嵌入式JavaScript代碼並發送到命令和控制(C&C)伺服器, C&C伺服器將執行JavaScript代碼並作出響應。
3.響應信息和其他信息合併,並向DDoS保護供應商發送響應請求,以獲得有效的cookie和用戶代理進行DDOS攻擊。
自2014年以來,該方法就已經放入到了Python庫中。但是,由於嵌入式JavaScript代碼要在客戶端執行,而物聯網設備又太弱,無法在本地執行JavaScript代碼。在這種情況下,開發人員對遠程調用進行了架構設計。
第二種方法是使用共享的「Google reCAPTCHA響應」令牌:
過程如下:
1.DvrHelper向C&C URL發送請求,並獲取有效的Google reCAPTCHA響應令牌。
2.DvrHelper往驗證器URL發送帶有令牌的請求,並獲得一個有效的cookie __cfduid(由惡意軟體的開發人員用來根據訪問者的IP地址來覆蓋相關的安全限制)和cf_clearance(如果此cookie存在於請求中,則會繞過)。有了這些信息,DvrHelper就可以繞過DDOS保護。
另外,在最新版本的DvrHelper的C&C伺服器中,研究人員發現早期硬編碼的C&C伺服器(110[.]173[.]49[.]74)被只有一個被動DNS記錄的主機名 jbeupq84v7[.]2y[.]net.VirusTotal所代替,目前DNS的A記錄已被刪除。
TheMoon
TheMoon惡意軟體算是這四個裡面出現最早的了,於2014年被SANS發現並在之後持續對其攻擊方法進行迭代,主要以路由器為目標,利用漏洞植入感染,TheMoon使用iptables規則進行通信。
通過新舊版本的比較,我們注意到C&C伺服器埠已更改。另外,在新的版本中,會用一個特定的二進位文件專門對付一個特定的漏洞,並且出現了新的iptables規則。
如上圖所示,當感染完成時,iptables規則將被導入到受感染的設備。通過這些規則,TheMoon會建立了一個防禦機制,以防止其他惡意軟體感染同樣的設備,每個二進位文件所使用的iptables規則不同。
基於iptables規則,我們知道其目標埠包括TCP / 22(SSH遠程登錄協議),TCP / 23(Telnet),TCP / 80(HTTP),TCP / 443(基於SSL / TLS的HTTP),TCP / 7547(CPE WAN管理協議),TCP / 8080(HTTP的替代埠)和UDP / 9999(華碩路由器信息)。每個埠都會映射到特定設備和漏洞,主要目標是網路攝像頭。
當感染完成後,安裝腳本將被替換為阿爾巴尼亞語中的「我們完成了」的字元串「ne kemi mbaruar!」。
四款殭屍軟體的影響和攻擊位置分布
下圖是位於美國和日本的具有自定義網路伺服器的網路攝像頭的感染比例。
通過Shodan的調查以及趨勢科技的研究,我們看到在美國有一半以上的網路攝像頭被上述四個惡意軟體家族給感染了。在日本,這個數字甚至更高,64.85%的網路攝像頭被感染。
下圖是在美國,日本,台灣,韓國的四個惡意軟體家庭的感染分布比例。
由上圖可以清晰地看到,新出現的 Persirai佔得比例最大。然而,這個比例還會隨著不斷曝光的網路攝像頭而不斷變化。鑒於這四個惡意家族的成功範例,其他惡意開發商肯定也會看上這塊市場,發布自己的網路攝像頭惡意軟體,我們持續對該市場進行關注。
建議和解決方案
目前,大部分受殭屍網路攻擊影響的設備都是由於未更改默認出廠密碼或存在弱口令,攻擊者通過密碼組合進行大規模的自動化入侵登錄,從而進入網路攝像頭的網路管理介面
我們建議大家應儘快更改網路攝像頭的密碼,最好能創建安全性較好的密碼,比如,使用至少15個字元,大小寫字母,數字和特殊字元混合的密碼。
但從Persirai的案例可以看出,設置強大的密碼只是預防網路攻擊的第一步,安全的密碼並不能完全保證設備安全。 網路攝像頭的所有者還應該禁用其路由器上的通用即插即用功能,以防止網路中的設備在無需任何警告的情況下,將埠映射到互聯網中。
當然攝像頭安全也不完全是終端用戶的責任,設備製造商在生產環節也要提高安全的意識,從源頭進行預防,另外,對出現的攻擊製造商要隨時進行固件更新並通知用戶升級。把好安全生產關,才能共築未來物聯網安全。
本文翻譯自:The Reigning King of IP Camera Botnets and its Challengers - TrendLabs Security Intelligence Blog ,如若轉載,請註明來源於嘶吼: 網路攝像頭的地盤爭奪戰--四款殭屍軟體的技術解析 - 嘶吼 RoarTalk 更多內容請關注「嘶吼專業版」——Pro4hou
推薦閱讀: