go加壳分离免杀过国内主流杀软

简介: go加壳分离免杀过国内主流杀软

01 插件安装


本篇免杀为Cobalt Strike安装插件后bypass 国内杀软。


插件下载地址:


https://github.com/fengziHK/bypass_go


1.1 Cobalt Strike导入插件


如下图直接导入:


你会发现攻击那里多出一个bypass的模块




02 免杀火绒


Cobalt Strike生成一个64位的payload



生成的shellcode文件



打开你刚才生成是shellcode 文件 你会发现出现以下内容




在你下载的Bypass_Go-main目录执行cmd操作命令


2.2 生成code.txt


process_shellcode.exe + shellcode.txt里的payload



完成上面的步骤之后接着 生成(k1 k2).txt




将你生成的3个txt放到kali当中,并用python搭建一个微服务


修改shellcode_loader.go的配置信息,变成远程加载shellcode



cmd 里面运行以下命令进行编译(需要有go的环境变量否则报错)


go build -ldflags "-H windowsgui" shellcode_loader.go


编译完成后会生成一个exe文件 (火绒之前是报毒的,但是升级病毒库之后又不报了



火绒下上线(这里只是在火绒的主机上线 静态和动态都过了)




03  加壳免杀360


以上方法生成的exe文件,360直接报毒




那么如何过360呢?

这里采用了加壳的方式过360和火绒!

一开始我的思路是编码混淆,发现不行之后使用加壳,upx确实可以过火绒,但是过不了360,按照往常的经验来分析:upx应该是被360拉黑了。

这里也试过掩日+upx,但是火绒会直接查杀

于是我想到了另外一个加壳软件safe


用法很简单将你的exe 拖入之后就可以了 (这里选择默认加壳模式就行了,当然如果懂汇编的师傅可以尝试一下其它的选项)



加壳后查杀,360不杀,到此位置该方法可过360+火绒,但目前无法过红伞和卡巴(已测试)



动态执行可上线




04  总结


通过go编译后加壳可过国内主流杀软,但是缺点也很明显:bypass之后的文件有点大 。

在加壳的时候,最先测试的是掩日,后来是upx,但是这些都被360或是火绒查杀,最后测试到了safe的时候,发现免杀成功。

免杀上线之后,配合梼杌进行提权,效果也是不错的。

相关文章
|
存储 Go
Go 浅析主流日志库:从设计层学习如何集成日志轮转与切割功能
本文将探讨几个热门的 go 日志库如 logrus、zap 和官网的 slog,我将分析这些库的的关键设计元素,探讨它们是如何支持日志轮转与切割功能的配置。
441 0
Go 浅析主流日志库:从设计层学习如何集成日志轮转与切割功能
|
Shell Go 数据安全/隐私保护
Go/Python 免杀
Go/Python 免杀
|
安全 Go API
自写go加载器加壳免杀——过国内主流杀软
自写go加载器加壳免杀——过国内主流杀软
598 0
|
存储 缓存 Rust
Java、Rust、Go主流编程语言的哈希表比较——《我的Java打怪日记》
哈希表(HashMap、字典)是日常编程当中所经常用到的一种数据结构,程序员经常接解到的大数据Hadoop技术栈、Redis缓存数据库等等最近热度很高的技术,其实都是对键值(key-value)数据的高效存储与提取,而key-value恰恰就是哈希表中存储的元素结构,可以说Redis、HDFS这些都是哈希表的经典应用,不过笔者之前也只知道哈希表比较快,但对于具体什么场景下快,怎么用才快等等知识却一知半解,因此这里把目前的一些研究成果分享给大家。
|
存储 Go 区块链
比原链CTO James | Go语言成为区块链主流开发语言的四点理由
11月24日,比原链CTO James参加了Go中国举办的Gopher Meetup杭州站活动,与来自阿里、网易的技术专家带来Kubernetes、区块链、日志采集、云原生等话题的分享。James向大家介绍了Go语言特性在区块链中的应用还分析了Go语言成为区块链主流开发语言的原因。
1491 0
|
8月前
|
编译器 Go
揭秘 Go 语言中空结构体的强大用法
Go 语言中的空结构体 `struct{}` 不包含任何字段,不占用内存空间。它在实际编程中有多种典型用法:1) 结合 map 实现集合(set)类型;2) 与 channel 搭配用于信号通知;3) 申请超大容量的 Slice 和 Array 以节省内存;4) 作为接口实现时明确表示不关注值。此外,需要注意的是,空结构体作为字段时可能会因内存对齐原因占用额外空间。建议将空结构体放在外层结构体的第一个字段以优化内存使用。
|
8月前
|
运维 监控 算法
监控局域网其他电脑:Go 语言迪杰斯特拉算法的高效应用
在信息化时代,监控局域网成为网络管理与安全防护的关键需求。本文探讨了迪杰斯特拉(Dijkstra)算法在监控局域网中的应用,通过计算最短路径优化数据传输和故障检测。文中提供了使用Go语言实现的代码例程,展示了如何高效地进行网络监控,确保局域网的稳定运行和数据安全。迪杰斯特拉算法能减少传输延迟和带宽消耗,及时发现并处理网络故障,适用于复杂网络环境下的管理和维护。
|
2月前
|
数据采集 Go API
Go语言实战案例:多协程并发下载网页内容
本文是《Go语言100个实战案例 · 网络与并发篇》第6篇,讲解如何使用 Goroutine 和 Channel 实现多协程并发抓取网页内容,提升网络请求效率。通过实战掌握高并发编程技巧,构建爬虫、内容聚合器等工具,涵盖 WaitGroup、超时控制、错误处理等核心知识点。
|
2月前
|
数据采集 JSON Go
Go语言实战案例:实现HTTP客户端请求并解析响应
本文是 Go 网络与并发实战系列的第 2 篇,详细介绍如何使用 Go 构建 HTTP 客户端,涵盖请求发送、响应解析、错误处理、Header 与 Body 提取等流程,并通过实战代码演示如何并发请求多个 URL,适合希望掌握 Go 网络编程基础的开发者。
|
3月前
|
JSON 前端开发 Go
Go语言实战:创建一个简单的 HTTP 服务器
本篇是《Go语言101实战》系列之一,讲解如何使用Go构建基础HTTP服务器。涵盖Go语言并发优势、HTTP服务搭建、路由处理、日志记录及测试方法,助你掌握高性能Web服务开发核心技能。