免杀fscan教程

admin 2024年2月28日00:53:59评论80 views字数 1948阅读6分29秒阅读模式

 0x00 前言介绍 

使用garblegolang代码混淆,达到打乱特诊,绕过杀软的作用。

项目地址:

https://github.com/burrowers/garble

 0x01 工具和环境的配置 

安装命令:

但是在安装之前大概率需要先配置一下go1.20.xgolang,Centos默认是较低版。更新参考:

https://blog.csdn.net/tokenHAHA/article/details/129203303

如果不想看直接复制如下命令:

第一步、

先删除原本的go,一般在/usr/local下面有,和/root/go/bin/下也有,都删了,直到输入:go version什么都没有。
下载和解压go高版本:wget https://go.dev/dl/go1.22.0.linux-amd64.tar.gztar -C /usr/local -xzf go1.22.0.linux-amd64.tar.gz
编辑环境变量配置:vi ~/.bashrc在后面加入:export PATH=$PATH:/usr/local/go/binexport GOPATH=$HOME/go
让配置文件立即生效:source ~/.bashrc
验证版本:go version

免杀fscan教程

免杀fscan教程

第二步、

安装garble,只需要一条命令:

go install mvdan.cc/garble@latest

免杀fscan教程

免杀fscan教程

然后你的garble就会被安装在如下目录下,找不到就find / -name "garble"搜一下:

免杀fscan教程

之后再去原本的目录下添加一下环境变量,方便以后使用:

编辑环境变量配置:vi ~/.bashrcexport PATH=$PATH:/root/go/bin/

让配置文件立即生效:source ~/.bashrc

第三步、

开始编译:

Fscan代码克隆到本地:

免杀fscan教程

使用Garble来混淆你的Go代码。例如,如果你想混淆并构建你的项目,可以在命令行中输入以下命令:

garble -literals build main.go

普通编译(golang默认编译方法,免杀不好):

GOOS=windows GOARCH=amd64 go build -o app-amd64.exe main.go

混淆偏移(实测可过一般杀软):

GOOS=windows GOARCH=amd64 garble -literals -tiny -seed=random build -o app.exe main.go

其他编译:

garble -tiny -literals -seed=random build -ldflags="-w -s -H windowsgui" -race go-sc.go
garble(混淆库):  -tiny              删除额外信息                      -literals          混淆文字  -seed=random       base64编码的随机种子  go:  -w                 去掉调试信息,不能gdb调试了  -s                 去掉符号表  -H windowsgui      隐藏执行窗口,不占用 cmd 终端。(被查杀率高)  -race              使数据允许竞争检测,编译时改变了生成后的文件特征  ,使得杀软无法检测,当然有一天也会失效的。

编译后得到go-sc.exe

 0x02 分别编译测试免杀效果 

使用go默认的打包也试一下,方便和garble做一下对比:

go build -ldflags="-s -w " -o fscan.exe -trimpath main.go

免杀fscan教程

garble编译:

GOOS=windows GOARCH=amd64 garble -literals -tiny -seed=random build -o app.exe main.go

免杀fscan教程

可以看到编译结束后出来的程序体积还是有点大的,这个时候可以使用upx进行体积压缩,也同时加了个壳,双重好处。

upx app.exe

免杀fscan教程

 0x02 测试免杀效果 

开始放入杀软环境中测试测试:

首先是go默认打包的程序,移入进去的时候已经就被杀了。

免杀fscan教程

这个是经过garble打包,并且upx压缩过的程序,未被检测:

免杀fscan教程

当然这个可能是最近fscan更新代码导致的免杀效果增强,对之前代码的fscan这样是不够的,还需要再加一层签名。

工具地址:

https://github.com/langsasec/Sign-Sacker

免杀fscan教程

随便选择一个带有签名的程序,选择"受害者"(已签名的软件)和"掠夺者"(需要签名的软件),点击生成文件,即可生成带签名的工具:

免杀fscan教程

加完签名之后再在杀软环境运行一下试试:

免杀fscan教程

可以成功当着最新杀软下运行,说明可以成功绕过。


最后补充:

去特征:

项目地址:

https://github.com/optiv/Mangle

可以使用去特征工具再进行一步特征去除:

Mangle_1.2_windows_amd64.exe -I app-amd64.exe -M -O sss.exe


原文始发于微信公众号(Rock sec):免杀fscan教程

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年2月28日00:53:59
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   免杀fscan教程https://cn-sec.com/archives/2531667.html

发表评论

匿名网友 填写信息