Astral-PE:一款强大的Windows PE文件低级变异工具

Astral-PE:一款强大的Windows PE文件低级变异工具

Astral-PE Astral-PE is a low-level mutator (headers obfuscator) for native Windows PE files (x32/x64) Astral-PE 项目地址: https://gitcode.com/gh_mirrors/as/Astral-PE

在软件开发和安全领域,保护代码不受逆向工程和未授权篡改是一个永恒的话题。Astral-PE正是为此而生,一款专门针对Windows PE文件(.exe, .dll)的低级变异工具,能够在不破坏执行的前提下,对文件的元数据进行改写。

项目介绍

Astral-PE的核心功能是对Windows PE文件的元数据进行修改,包括时间戳、头部信息、节标志、调试信息、导入/导出名称等,从而达到防止自动化解包、破坏静态解包逻辑、使逆向工程签名失效等目的。它不是通过加密或注入来实现,而是通过变异关键结构,使传统的解包和分析工具失效。

项目技术分析

Astral-PE的技术实现专注于PE文件格式,它不是加密工具,也不是运行时打包器,而是一个精细的元数据清理工具和PE头部/入口点混淆器。通过修改PE文件的结构化元数据,Astral-PE在不改变程序逻辑的前提下,增加了分析的难度。

技术应用场景

  1. 防止自动化解包:当二进制文件被保护后,公开的解包器或YARA规则仍然可能会针对其未改变的结构。
  2. 破坏静态解包逻辑:通过变异PE文件的结构,使得静态解包工具无法正常工作。
  3. 使逆向工程签名失效:自动移除调试信息,打乱逆向工程工具的自动化签名匹配。
  4. 沙盒聚类干扰:在沙盒环境中,变异的文件结构可以干扰聚类分析。

项目特点

Astral-PE的特点在于它对PE文件的修改是精确、合规且不会影响程序的执行。以下是一些具体的修改项:

  • 清除文件头部的时间戳。
  • 完全移除丰富头部信息,打乱工具链指纹。
  • 擦除节名称,如.text.rsrc等。
  • 重置校验和为零。
  • 如果文件已签名,移除覆盖层。
  • 删除未使用的TLS目录。
  • 如果配置文件不存在,删除加载配置。
  • 如果文件未使用重定位,移除它。
  • 启用32位进程的4GB内存范围。
  • 去除头部标志,如DEBUG_STRIPPEDLOCAL_SYMS_STRIPPED等。
  • 将最小操作系统和子系统版本设置为零。
  • 如果堆栈和堆预留空间过低,则增加到安全默认值。
  • 从可选头部擦除版本信息。
  • 在二进制尾部查找原始文件名并置零。
  • 擦除PDB路径,删除调试目录。
  • 更改或混淆程序的入口点。
  • 对导入表中的DLL名称进行变异。
  • 如果导出表不存在,则伪造一个,以诱骗某些扫描器。
  • 清理数据目录中的所有未使用条目。
  • 为所有节应用读写执行权限。

值得注意的是,Astral-PE不支持.NET二进制文件,仅适用于原生PE格式。

使用方法

Astral-PE的使用非常简单,只需要在命令行中指定输入文件和(可选的)输出文件名:

Astral-PE.exe <input.exe> -o <output.exe>

如果没有指定输出文件名,默认会在输入文件名后添加_ast作为后缀。

结合其他保护措施

Astral-PE最好在应用其他保护措施之后使用。它可以集成到持续集成流程、加密器或加载器管道中:

构建 → 任何打包器 → AstralPE → 签名/打包 → 分发

总结

Astral-PE作为一个开源项目,为开发者提供了一种新的方法来保护他们的软件免受逆向工程和篡改。通过对PE文件的元数据进行精确的修改,Astral-PE增加了分析的难度,为软件的安全防护提供了有力支持。对于需要加强软件安全性的开发者来说,Astral-PE是一个值得尝试的工具。

Astral-PE Astral-PE is a low-level mutator (headers obfuscator) for native Windows PE files (x32/x64) Astral-PE 项目地址: https://gitcode.com/gh_mirrors/as/Astral-PE

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柯爽莹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值