站内某贴FZ复现问题
原帖:https://www.52hb.com/thread-33533-1-1.html按照文中加载运行程序后,程序一闪而过后闪退,而且在打开od时不能运行该FZ,判断是检测了进程是否有存在调试工具,便在CreateToolhelp32Snapshot函数处下断但没用
接着又在ExitProcess结束函数处下断,这时程序断下了,通过堆栈函数找到程序代码处的执行地址,先修改00404E24判断直接为jmp,但程序提示停止工作,后又进入该函数内直接修改为retn,也同样提示错误
目前没什么好办法解决了,也不知道是哪些反调试的手段。希望有看到的师傅能解惑
找到易语言体一步一步跟 jjyjjy003159 发表于 2024-10-3 15:12
找到易语言体一步一步跟
易语言特征码已下断点了,现在是运行就直接退出或者再打开od情况下,运行该FZ也自动退出,感到头大 可以把具体代码复制使用gpt帮忙 发出来看看 蔡坤明 发表于 2024-10-11 12:21
发出来看看
https://wwte.lanzouj.com/iDCV12caglob
麻烦师傅看看了 在调试某个程序时,如果程序在启动后立即闪退,可能是由于多种原因导致的。针对您提到的使用 `CreateToolhelp32Snapshot` 函数下断却无效的情况,可以考虑以下几点:
1. **防护机制**:许多程序会实现自我保护机制,这可能包括检测是否存在调试工具或特定的条件。除了 `CreateToolhelp32Snapshot`,程序还可能使用其他方法来进行检测,比如 `IsDebuggerPresent`、`CheckRemoteDebuggerPresent` 等函数。
2. **调试器模拟**:如果程序检测到调试器的存在而退出,可以尝试使用一些更高级的调试技术,比如使用无头调试或内存修改技术。可以试试 `ScyllaHide`、`x64dbg` 等工具的插件。
3. **反跟踪**:某些程序可能会使用反调试技术来防止调试。你可以尝试禁用这些反调试特性。例如,在调试前修改程序的二进制代码,跳过检测逻辑。
4. **环境设置**:确保在启动程序时,相关的环境(如权限、依赖库、配置等)都是正确的。在某些情况下,以管理员身份运行可能会有所帮助。
5. **查看错误日志**:如果程序具有日志功能,检查日志文件可能会提供更多关于闪退原因的信息。
6. **使用静态分析工具**:工具如 IDA Pro、Ghidra 等可以用来分析程序的执行流程,找出可能的闪退点。
希望以上建议能帮到您定位和解决问题!如果有更多具体的错误信息或者详细的代码逻辑,欢迎分享,以便进一步分析。
页:
[1]