技术解读

以下内容由 GitRead 中文社区 编辑团队基于项目 README 与官方资料整理, 结合中文开发者的常见使用场景补充技术选型建议。具体以项目官方文档为准。

GobypassAV-shellcode 深度分析报告

作者:资深技术编辑

项目背景与痛点

在现代软件生态系统中,恶意软件的检测与防范一直都是安全领域的核心课题。GobypassAV-shellcode 项目由中国开发者社群贡献,它提供了一种通过 Go 语言实现的 shellcode 免杀加载器,避开了火绒、360、核晶、def 等主流杀软的检测。从技术的角度来看,GobypassAV-shellcode 对于那些需要处理复杂安全环境的开发者们来说,是一大福音。

它直击了当前杀软普遍采用的签名检测与行为监控方式的局限性,提供了实时规避方法,使得在某些环境下需要避开防火墙或网络攻击工具检测时,GobypassAV-shellcode 成了一个充分而必要的备用方案。

核心技术揭秘

在 GobypassAV-shellcode 的核心技术面纱之下,隐藏的是多阶段混淆与加密技术,以及边缘特殊的负载执行。以下是用 Mermaid 构造的项目核心模块及其数据流图,直观地展现了其技术架构:

graph TD A[用户请求加载shellcode] --> B[利用Go实现接口抽象层] B --> C{"包内混淆"} C -->|"成功"| D[执行解密流程] C -->|"失败"| E[触发异常处理] D --> F[加载壳启动程序] D --> G[解密shellcode] G --> H[执行shellcode] H --> I[运行态监控模块] I --> J[规避引擎] H --> K[用户进程]

GobypassAV-shellcode 的技术创新在于它通过多重混淆技术,使得生成的 shellcode 可以在多种安全环境中绕过基础检测引擎。同时,通过 Go 语言高效的编译和执行特性,这不仅保障了作业的灵活性,还增强了应用在多平台上的一致性。

模块化接口,加上深度代码混淆和加密技术,覆盖了从加载到最终执行的一个完整生命周期,确保负载能在最短的时间内避开杀软的不同层次检测。

功能亮点与差异

GobypassAV-shellcode 相对于同类工具而言,基于 Go 的特性使得它天然拥有了跨平台的能力和优秀的性能。同时,它使用的多阶段混淆与加密使得其对抗主流商业杀软更具优势,这在竞争激烈的免杀工具市场中极为关键。

与单纯的静态分析独门秘技不同,它优厚的壳技术,以及遮罩型的技术框架,即便在面对较为先进的杀软产品时,也能呈现出稳定的免杀性能。这种稳定性并不单单只依赖于特定的诊断策略,更多在于技术的综合性与技术覆盖层面的广度。

应用场景与落地建议

对于希望在高度监控的环境中保持端到端加载执行操作的开发者或安全研究人员来说,GobypassAV-shellcode 提供了简单的接口和调用架构配置。

  • 在特定情形下,例如在红队测试或安全研究中,GobypassAV-shellcode 可以作为有效工具来研究和理解杀软的实际捕获行为,并对载荷规避策略进行测试和验证。
  • 在生产环境中应用时需注意,务必明确了解工具可能带来的风险和合规性问题,确保在合法且授权的环境中使用。

综合评价

GobypassAV-shellcode 的高度实用性在于其基于 Go 语言的独特能力,强大的交叉编译和生成可执行文件能够在多种操作系统上运行,具有较高的表现力。但与此同时,此类工具也带来了潜在的安全风险,若滥用,可能会成为一个安全隐患。

该工具在技术上具备明显的优势,但在法律和道德层面上,开发者需审慎使用。

总结来说,GobypassAV-shellcode 可以帮助安全研究人员提高免杀技术的工具箱,但其使用时则应严格遵守法律法规,以免产生不必要的风险。

简要分析

热度分
1148
价值分
591
活跃状态
活跃

语言占比

Go
Python

贡献者

README

GobypassAV-shellcode

cobaltstrike免杀,实测过 bypass火绒、360、360核晶、360杀毒、def、金山毒霸等主流杀软

shellcode写在文件里容易被提取特征,beacon远程加载免杀性和持久性会更好,但请求的地址容易被封禁和溯源,在实战中根据实际情况选择,并配合云函数或CDN进行C2地址隐匿

杀软类型 免杀绕过技巧
火绒 编译参数限制多,对hash和字符串特征进行识别,静态能过动态基本不查杀,对很多go库调用报毒
360 单360查杀力不高,装了杀毒后直接儿子变爸爸,查杀力大大提升,对于简单的加密识别度较高,容易上线后云查杀过一会掉线,推荐使用分离加载方式,并使用反沙箱的代码延长马子时间
360核晶 开启后对整体查杀性能影响不大,避免使用进程注入的方式加载shellcode,无法执行大部分cmd命令和相关程序(使用bof插件进行替代)
Defender 新增许多cobaltstrike规则,推荐使用Stageless,免杀性比Stage好,4.5版本开启sleep_mask参数增强免杀性,对体积大的文件查杀度不高

详细教程请移步博客:https://pizz33.github.io/posts/4ac17cb886a9/

食用方法:

1、生成c的payload

image

2、go run encode.go or python xor64.py 对shellcode进行加密

image

3、加密后的结果填到代码里编译运行 go build decode.go

远程加载把加密后的字符串放到云端,把云端地址填到对应位置生成 (可放到vps上或使用oss云存储等)

(这里大多报错为缺少依赖,运行 go mod init & go mod tidy 拉取即可)

免杀效果:

image

image

image

image

image

image

项目仅供进行学习研究,切勿用于任何非法未授权的活动,如个人使用违反安全相关法律,后果与本人无关

站在巨人的肩膀上学习,参考借鉴以下师傅的项目,特别感谢

https://learn.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-virtualalloc

https://github.com/7BitsTeam/EDR-Bypass-demo

https://www.yuque.com/aufeng/aufeng_good/aq09p0#yNorm

https://mp.weixin.qq.com/s/xiFbSE6goKFqLAlyACi83A

https://github.com/timwhitez/Doge-Loader

https://github.com/TideSec/GoBypassAV

https://www.crisprx.top/archives/515

https://github.com/Ne0nd0g/go-shellcode

https://github.com/piiperxyz/AniYa

https://github.com/safe6Sec/GolangBypassAV

评论

暂无评论