Visual Studio 2013 编译TitanEngine引擎
TitanEngine是Windows平台下轻量化高性能开源调试引擎,由ReversingLabs团队开发,于2012年HITB阿姆斯特丹黑客大会正式开源发布,也是主流逆向调试工具x64dbg的核心底层引擎。该引擎深度封装优化了Windows原生调试API,支持32/64位程序调试、硬件断点、异常捕获、畸形PE解析等专业逆向能力,开源可二次开发,广泛用于恶意软件分析与漏洞挖掘。本章将通过Visual Studio 2013来编译该引擎,并生成成品,成品可以是LIB库也可以是DLL文件。
去Github下载对应的引擎文件;
https://github.com/lyshark/TitanEngine
下载后直接解压并使用Visual Studio 2013打开项目,将编译模式改为Release然后直接在生成位置点击重新编译按钮。

此时会报错。

依次将编译器从v141_xp修改为v120

依次限定范围,并继续修改剩下的两个。



然后再次点击重新编译按钮,此时等待一段时间后会报错误。

第一个问题C2144点击并跳转过去,替换 constexpr 为 const
VS2013 不支持 constexpr,将所有 constexpr 关键字替换为 const

静态断言错误,点击跳转过去,旧 SDK 的 ntdll.h 结构定义与引擎代码不兼容,可通过以下方式屏蔽掉:
// 注释掉这行静态断言
// static_assert(... , "Offset check");

打开 Global.Debugger.cpp,在文件顶部添加
// 兼容旧 SDK,添加缺失的 ARM64 架构定义
#ifndef IMAGE_FILE_MACHINE_ARM64
#define IMAGE_FILE_MACHINE_ARM64 0xAA64
#endif

然后解析点击重新编译按钮,等待程序编译完成。

至此,在win32目录下就可以找到TitanEngine.dll文件

文章出处:https://www.cnblogs.com/LyShark/p/20909562
本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

浙公网安备 33010602011771号