Visual Studio 2013 编译TitanEngine引擎

举报
LYSHARK 发表于 2026/08/16 11:29:18 2026/08/16
【摘要】 TitanEngine是Windows平台下轻量化高性能开源调试引擎,由ReversingLabs团队开发,于2012年HITB阿姆斯特丹黑客大会正式开源发布,也是主流逆向调试工具x64dbg的核心底层引擎。该引擎深度封装优化了Windows原生调试API,支持32/64位程序调试、硬件断点、异常捕获、畸形PE解析等专业逆向能力,开源可二次开发,广泛用于恶意软件分析与漏洞挖掘。本章将通过Vi...

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然后直接在生成位置点击重新编译按钮。

image.png

此时会报错。

image.png

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

image.png

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

image.png

image.png

image.png

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

image.png

第一个问题C2144点击并跳转过去,替换 constexpr 为 const

VS2013 不支持 constexpr,将所有 constexpr 关键字替换为 const

image.png

静态断言错误,点击跳转过去,旧 SDK 的 ntdll.h 结构定义与引擎代码不兼容,可通过以下方式屏蔽掉:

// 注释掉这行静态断言
// static_assert(... , "Offset check");

image.png

打开 Global.Debugger.cpp,在文件顶部添加

// 兼容旧 SDK,添加缺失的 ARM64 架构定义
#ifndef IMAGE_FILE_MACHINE_ARM64
#define IMAGE_FILE_MACHINE_ARM64 0xAA64
#endif

image.png

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

image.png

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

image.png

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。