遮天3.0上线,使用在线生成方式,新增隐藏窗口、BypassUAC、反沙箱模块,域名:zTian.red
2.0版本主要使用了两个技术:动态代码执行和PE模板生成。
-
完整支持Go语言规范
-
用Go编写,只使用标准库
-
简单的解释器API: New(), Eval(), Use()
-
只要能运行Go的地方就可以运行Yaegi
-
所有Go和运行时资源都可以在脚本中访问
-
安全:默认不使用和输出unsafe和syscall包
-
支持Go 1.18和Go 1.19(最新的2个主要版本)
示例:
运行后会输出Kung-Foo。根据此逻辑,实现加载器完整代码:
Ps变量保存ShellCode的base64字符,temp存放的是shellcode Loader加载代码,同ZheTian v1。解密之后内容如下:
PE模板生成技术主要基于修改HEX。先创建个Go项目,创建一个变量在控制台打印。
打包项目成可执行文件之后在命令行运行,打印了helloWorld。
使用分析工具CFF Explorer打开PE文件,然后选择Hex编辑器搜索helloworld,找到对应hex字符串68656C6C6F576F726C64
使用代码读取文件内容尝试匹配字符串
运行结果,成功找到。
file, err := ioutil.ReadFile("C:\Users\29326\Desktop\main.exe")
if err != nil {
return
}
hexContent := hex.EncodeToString(file)
strings.Contains(hexContent, strings.ToLower("68656C6C6F576F726C64"))
txtHex := hex.EncodeToString([]byte("hi HeartsK"))
hexContent = strings.ReplaceAll(hexContent, strings.ToLower("68656C6C6F576F726C64"), strings.ToLower(txtHex))
运行后结果达到预期效果,成功输出"hi HeartsK"
文章结束,源码同步github.com/yqcs/zhetian,已公开。
原文始发于微信公众号(遮天实验室):遮天2.0免杀内核解析
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论