簡介: 在滲透測試的過程中,避免不了使用到社會工程學的方式來誘騙對方運行我們的木馬或者點擊我們准備好的惡意鏈接。木馬的捆綁在社會工程學中是我們經常使用的手段,而為了躲避殺毒軟件的查殺,我們又不得不對木馬進行免殺處理。本次實驗我們將學習如何通過Metasploit的msfvenom命令來生成木馬、捆綁木馬以及對木馬進行免殺處理。木馬文件風險高,想要免殺需要用shellter工具捆綁下,但是處理后木馬文件還是能被360檢測到攔截下來。
實驗環境:
Kali Linux
知識點:
msfvenom 如何生成木馬 msfvenom 如何捆綁木馬到常用軟件 msfvenom 如何對木馬進行編碼免殺
Metasploit介紹
Metasploit是一個可用來發現、驗證和利用漏洞的滲透測試平台,目前實驗環境中Metasploit的版本是v4.12.23-dev包含了1577個exploits、907個auxiliary、272個post、455個payloads、39個encoders以及8個nops。
其中exploits是漏洞利用模塊(也叫滲透攻擊模塊),auxiliary是輔助模塊,post是后滲透攻擊模塊,payloads是攻擊載荷也就是我們常說的shellcode,這里生成的木馬其實就是payloads。
在本次試驗中我們主要使用的是msfpayload(攻擊荷載生成器),msfencoder(編碼器)的替代品msfvenom,msfvenom集成了前兩者的全部功能,可以生成payload(本節所說的木馬)以及對payload編碼免殺和避免壞字符、捆綁木馬等。在Kali Linux中默認安裝了Metasploit framework 我們可以直接使用。
攻擊機:Kali Linux 2.0 虛擬機,主機名是 kali,IP 地址為 192.168.122.101,默認用戶名和密碼為 root/toor。
靶機:Metasploitable2 虛擬機,主機名是 target,IP 地址為 192.168.122.102,默認用戶名和密碼為 msfadmin/msfadmin。
本次實驗我們只用到 Kali linux 虛擬機。
我們先來查看當前環境虛擬機的列表和狀態:
因環境中虛擬機太慢,這里采用 docker 容器。進入 kali linux 系統的方式如下:
生成木馬
在進行木馬生成實驗之前我們先來學習一下msfvenom命令的用法。在 Kali linux 下輸入如下命令,可以看到msfvenom的命令行選項。
捆綁木馬
通常我們生成了木馬之后,要運用社會工程學的攻擊方式誘騙目標運行我們的木馬程序,否則我們的木馬只是玩具罷了。
捆綁木馬我們還是使用上面提到的msfvenom命令,只不過這里我們要用到一個新的命令行選項-x。我們來看一下-x選項的用法及含義。
-x選項:允許我們指定一個自定義的可執行文件作為模板,也就是將木馬捆綁到這個可執行文件上。
將生成的木馬當做常用應用程序來捆綁木馬。
雖然我們已經准備好了木馬程序,並且也捆綁到了常用的應用程序上,但是現在殺毒軟件泛濫,不經過免殺就算成功上傳到目標主機,估計還沒等運行就被殺掉了。這里用msfvenom生成木馬同時對payload編碼來實現木馬的簡單免殺。我們先來學習一下我們要用到的命令選項:
-e選項:用來指定要使用的編碼器。 -i選項:用來指定對payload編碼的次數。 先來看一下都有哪些編碼器可用:
這里我們挑選一個免殺效果比較好的編碼器x86/shikata_ga_nai,進行編碼:
總結
從圖中我們可以看到完成了對木馬的5次編碼,這樣木馬基本上就可以躲避部分殺毒軟件的查殺,其實還可以對木馬程序進行多次編碼,雖然可以提高木馬的免殺幾率,不過可能會導致木馬程序不可用。當然要想免殺效果更好就需要使用Metasploit pro版本或者給木馬加殼、修改木馬的特征碼等等,不過要想躲過全部殺毒軟件的查殺則會有些難度,通常會針對某個殺毒軟件進行免殺。
原文鏈接
本文為阿里雲原創內容,未經允許不得轉載。