Naze Pixel
用于逆向工程测试的C#示例小应用,约105行代码,功能是将24位BMP位图经过灰度化、缩放和Floyd-Steinberg抖动转换为ASCII艺术,内置上传密钥
时间轴 (近 90 天)
测试对象 Naze Pixel 约 105 行 C# 代码,功能是将 24 位 BMP 转换为抖动 ASCII 艺术,并内置一个上传密钥。
在普通 .NET 构建测试中,REA 的 .NET 读取器约 1.5 秒返回 114 KB JSON,包含每个方法、签名、字节码摘要及所有字符串字面量(含密钥),AI 在 85 秒后重建了整个应用。
在测试一中,AI 重建的 Naze Pixel 代码与原程序编译后的 SHA-256 哈希一致,证明逐字节相同。
在混淆构建测试中,使用开源混淆器 Obfuscar 将类和方法重命名为不可见 Unicode 字符并加密字符串,但嵌入的上传密钥仍以明文形式存在于混淆后的 .dll 中。
在混淆构建测试中,AI 仅凭 REA 输出约三分钟后重建了整个算法、破解了 XOR 加密(b ^ i ^ 0xAA),但无法真正读取字符串,只能按长度猜测。
在混淆构建测试中,不用 REA 的对照组代理在 56 秒内完成反编译、找到加密逻辑并用几行 Python 解密所有字符串(含密钥)。
在 Native AOT 测试中,REA 将 1.1 MB 的纯 x64 可执行文件载入 Ghidra,Ghidra 找到 3627 个函数(几乎全是 .NET 运行时),AI 约 18 分钟后还原整个应用,包括相同权重、抖动和密钥。
在 Native AOT 测试中,不用 Ghidra 的对照组代理在不到 4 分钟内用 Python 自行编写反汇编脚本,恢复了相同常量、密钥和真实类名,并运行了未知 exe 以观察行为。
全部知识事实 (8)
在 Native AOT 测试中,不用 Ghidra 的对照组代理在不到 4 分钟内用 Python 自行编写反汇编脚本,恢复了相同常量、密钥和真实类名,并运行了未知 exe 以观察行为。
50%待验证在普通 .NET 构建测试中,REA 的 .NET 读取器约 1.5 秒返回 114 KB JSON,包含每个方法、签名、字节码摘要及所有字符串字面量(含密钥),AI 在 85 秒后重建了整个应用。
50%待验证测试对象 Naze Pixel 约 105 行 C# 代码,功能是将 24 位 BMP 转换为抖动 ASCII 艺术,并内置一个上传密钥。
50%待验证在混淆构建测试中,使用开源混淆器 Obfuscar 将类和方法重命名为不可见 Unicode 字符并加密字符串,但嵌入的上传密钥仍以明文形式存在于混淆后的 .dll 中。
50%待验证在混淆构建测试中,AI 仅凭 REA 输出约三分钟后重建了整个算法、破解了 XOR 加密(b ^ i ^ 0xAA),但无法真正读取字符串,只能按长度猜测。
50%待验证在混淆构建测试中,不用 REA 的对照组代理在 56 秒内完成反编译、找到加密逻辑并用几行 Python 解密所有字符串(含密钥)。
50%待验证在 Native AOT 测试中,REA 将 1.1 MB 的纯 x64 可执行文件载入 Ghidra,Ghidra 找到 3627 个函数(几乎全是 .NET 运行时),AI 约 18 分钟后还原整个应用,包括相同权重、抖动和密钥。
50%待验证在测试一中,AI 重建的 Naze Pixel 代码与原程序编译后的 SHA-256 哈希一致,证明逐字节相同。
50%