我正在尝试调试一个真正充满反调试措施的windows exe。它拥有几乎所有你能想到的 DBGuiremotebreakin、Ntsetinformationthread、NtQueryInformationProcess 等作品。唯一的问题是我真的需要进入它。反调试的东西在整个代码中都混杂着重要的计算,这些计算用于我想看到的东西。我怎样才能开始尝试欺骗这些措施,以便我可以观察寄存器使用情况?
为 Windows exe 通过了大量的反调试措施
逆向工程
调试器
反调试
反汇编者
2021-06-20 08:07:55
2个回答
你可以使用像 Scylla Hide 这样的东西
https://github.com/nihilus/ScyllaHide
它有最流行的调试器的插件。它为 Themida 等高级打包程序提供了许多隐藏选项和预设。
你也可以试试泰坦隐藏。
我认为,在这种情况下,策略非常依赖于使用的反调试机制的类型、您正在寻找的计算类型以及您准备在此任务上花费的时间。
IMO 你应该遵循这个计划:
静态分析二进制文件 [IDA] 以映射您正在寻找的所有反调试功能和兴趣点。
如果可能,尝试在没有实际文件执行的情况下理解那些重要的计算。您可以在 python 中重新创建它们,将它们作为单独的二进制文件运行或使用例如 pyEmu https://github.com/codypierce/pyemu模拟它们
如果 [2] 不成功,请在调试器下执行二进制文件期间仔细检查每个反调试功能。使用您在 [1] 中构建的地图使其更快
希望能帮助到你 :)
其它你可能感兴趣的问题