早在2014年,Shell Shock(CVE-2014-6721)便作為一個高達10級的漏洞受到極大的關注,而利用Shell Shock瘋狂作案的Bashlite惡意軟件在當時已對不少設備造成了威脅,這其中包括了路由器、手機、可穿戴設備等。近日,360 QVM團隊又捕獲了該惡意程序的最新變種,并追蹤到了相關多個平臺的惡意程序,相比老版的bashlite,新版支持的平臺更多,且成功率更高,多種智能設備將受到Bashlite惡意軟件影響。
該版本一共有25個文件,其中包括一個shell腳本文件和24個elf文件,支持不同架構的設備,如下表:
文件名 | 文件類型 |
lnta | ELF 32-bit LSB executable, ARM, version 1, dynamically linked (uses shared libs), not stripped |
lntb | ELF 32-bit LSB executable, ARM, version 1, dynamically linked (uses shared libs), not stripped |
lntc | ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lntd | ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lnte | ELF 32-bit MSB executable, Motorola 68020, version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lntf | ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lntg | ELF 32-bit LSB executable, MIPS, MIPS-I version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lnth | ELF 32-bit MSB executable, MIPS, MIPS-I version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lnti | ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lntj | ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lntk | ELF 32-bit LSB executable, Renesas SH, version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
lntl | ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), not stripped |
nt.sh | POSIX shell script text executable |
slnta | ELF 32-bit LSB executable, ARM, version 1, statically linked, not stripped |
slntb | ELF 32-bit LSB executable, ARM, version 1, statically linked, not stripped |
slntc | ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, not stripped |
slntd | ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, not stripped |
slnte | ELF 32-bit MSB executable, Motorola 68020, version 1 (SYSV), statically linked, not stripped |
slntf | ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, not stripped |
slntg | ELF 32-bit LSB executable, MIPS, MIPS-I version 1 (SYSV), statically linked, not stripped |
slnth | ELF 32-bit MSB executable, MIPS, MIPS-I version 1 (SYSV), statically linked, not stripped |
slnti | ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1 (SYSV), statically linked, not stripped |
slntj | ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1 (SYSV), statically linked, not stripped |
slntk | ELF 32-bit LSB executable, Renesas SH, version 1 (SYSV), statically linked, not stripped |
slntl | ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, not stripped |
文件名:nt.sh
文件大小:21.9kb
MD5: c14761119affea9569dd248a0c78d0b4
該程序可用于更新作者本身寫的程序,也用于將已感染bashlite的主機占為己有,我們來看看它的主要功能:
先清除了老版本使用的配置文件,并殺掉了老版本的進程;
下載并并運行最新的惡意程序,這里使用了curl、lynx、wget等多種方式下載,確保下載成功;
當確認與服務端建立連接后則停止。
其它文件:
其它文件完成了主要的惡意功能,不同文件為不同平臺所打造,但功能都是類似的,以80386平臺為例,我們來看看slntd的主要功能:
先簡單的strace一下該程序:
可以看到該程序先設置了線程名,隨后連接了8.8.8.8,然后讀取了路由表,之后的操作都是由幾個線程完成,我們詳細的跟一下:
1.使用prctl修改線程名為[cpuset]
2.連接8.8.8.8來判斷用戶是否已連接到網絡,若連接到網絡則通過路由表來獲得ip地址并得到設備名稱,再由ioctl得到mac地址:
3.連接C&C地址(162.248.79.66)
簡單對該地址掃描,發現其開放了21,22端口,我們嘗試著訪問一下:
可以看到上面有作者用于交叉編譯的工具和腳本,還有已生成好的bot文件,從nt2.sh可以看到有新的地址188.209.49.163:443,而且底部有Generated Mon, 26 Oct 2015 10:38:23 GMT by proxy (squid/3.1.23),由此可見作者可能已經擁有了大量的肉雞,已經必須使用squid來承受并發的壓力,當然也有可能僅僅是為了隱藏自己。
4.接受遠程發來的指令,與老版本相似,支持一下幾種指令:
指令 | 功能 |
PING | 給服務端發送"PONG!",應為上線提示功能 |
GETLOCALIP | 給服務端發送本機IP |
SCANNER | 執行StartTheLelz函數,隨機生成IP地址,并嘗試使用弱口令連接去感染更多主機 |
HOLD,JUNK,UDP,TCP | 針對遠程發來的IP和不同攻擊指令,對目標主機發動DOS攻擊 |
KILLATTK | 終止所有攻擊 |
LOLNOGTFO | 卸載 |
值得一提的是SCANNER指令,執行該指令時會嘗試連接大量的隨機地址,占用資源明顯。
若主機存在,則嘗試使用telnet方式感染主機,被感染后的主機仍可以繼續尋找其它可被感染的目標。
Bashlite危害較大,其新版本不光會影響到設備的性能,占用大量網絡資源,還有可能會造成隱私泄露等危害,360QVM小組提醒各智能設備廠商做好防范措施,固件使用高版本的BASH,且不要使用弱口令作為驗證手段。管理員們要時刻注意主機的異常進程和網絡流量情況。