CS免殺姿勢
前言
紅隊在HVV中一般使用釣魚實現突破邊界,藍隊通過釣魚實現溯源反制,但是都離不開一個好的免殺馬,這里分享一下自己的免殺過程,過火絨、360殺毒、windows defender以及賽門鐵克等主流殺軟都沒問題。
殺軟工作原理
殺軟的查殺方式有多種,比如特征識別,是基于各個廠商收集的病毒樣本,依據病毒樣本提取的病毒特征,所以殺軟的能力在一定程度上也取決于病毒庫的大小,這種基于特征識別一般是基于靜態。啟發式的工作原理基本上可以定義為動態查殺或者是機器學習方法的一種查殺手段,會依據可能執行程序或者關注應用系統重要區域行為而做出的查殺行為。
免殺手段
?修改特征碼,可以根據污點檢測的方式定位到觸發殺軟規則的病毒樣本特征,修改明顯的特征在一定程度上是可以實現免殺的。
?花指令免殺,在程序 shellcode 或特征代碼區域增添垃圾指令,增加的垃圾指令不會影響文件執行,在動態查殺或者文件hash對比是校驗會不一致。
?加殼,比如upx加殼等,一般文件落地后對比哈希值也可繞過殺軟。
?二次編譯,一般用于對shellcode進行二次編譯bypass殺軟。
?poweshell免殺,但是一般防護軟件或者系統本身正常調用powershell應用程序的時候都會產生告警,一般的安全設備是過不了的,需要在命令上使用手段繞過安全設備監測。
免殺
CS生成payload
添加監聽器,生成payload

下載go-strip.exe,混淆二進制go編譯信息
下載地址
https://cdn.githubjs.cf/boy-hack/go-strip/releases/download/v3.0/go-strip_0.3.4_windows_amd64.zip

運行腳本bypass
go run main.go

核心內容就是加密方式

shellcode二層加密。
這里沒有直接放源碼,因為擔心樣本被打標簽,這里推薦幾個項目,這里的話盡量使用go不建議python
https://github.com/TideSec/BypassAntiVirus
https://github.com/admin360bug/bypass
https://github.com/hack2fun/BypassAV/blob/master/bypass.cna
這里我修改了生成的exe。安裝火絨,查殺


CS上線

加殼
另外再加殼測試。地址
https://upx.en.softonic.com/
簡單的壓縮殼

upx.exe -f Go_bypass.exe

加殼后生辰的exe文件大小為406KB

可以看到加殼之前的文件大小為1011kb

修改加殼后的文件名為upx_Go_bypass方便確認上線狀態

成功上線,繼續查看加殼后的免殺效果

此時火絨對于有加殼前和加殼后的文件都未報毒

雖然加殼前的報毒了,但是加殼后的未報毒。

賽門鐵克也未報毒,其它殺軟不放圖了。但是需要注意的是別使用云沙箱檢測。
總結
多測試總會有新發現,實踐起來相對稍微容易一點兒,不過需要注意免殺之后的效果是最重要的。