吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 797|回复: 4
收起左侧

[已解决] 【已解决】为什么IDA和x32debug的调试结果与OD的不一样?

[复制链接]
lao1ao 发表于 2024-9-2 01:45
本帖最后由 lao1ao 于 2024-9-2 22:46 编辑

在做一道CTF题的时候,遇到了要动调的问题。WP都是OD调试的,本着开了IDA就不想换软件的懒人思想,就用IDA动调了,发现跟OD的完全不一样,后来试了一下dbg也不一样,懵逼ing
如图所示,ida和x32dbg出来的ecx值都是7e,为什么就只有od是2a?
题目:
通过百度网盘分享的文件:351a2f05-3848-4de6-9c9d-6e28c946f07...
链接:https://pan.baidu.com/s/1WZDZFIeQ2YLED-g23j48rw?pwd=b5rf
提取码:b5rf

od

od


dbg

dbg


ida

ida

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

爱飞的猫 发表于 2024-9-2 03:50
本帖最后由 爱飞的猫 于 2024-9-2 03:52 编辑

你下的 OD 应该是自带了过调试器检测插件,但 x32dbg (x64dbg) 和 IDA 默认没给你集成这类插件…

既然你都用 IDA Pro 了,看下伪码。正常代码不需要爬 PEB 的。看到不懂的搜索下就知道在干嘛了。

[C] 纯文本查看 复制代码
    if ( (NtCurrentPeb()->NtGlobalFlag & 0x70) != 0 )// FLG_HEAP_ENABLE_TAIL_CHECK (0x10)
                                                // FLG_HEAP_ENABLE_FREE_CHECK (0x20)
                                                // FLG_HEAP_VALIDATE_PARAMETERS (0x40)
                                                // 调试器检测,不是调试器应为 0
      v12 = j + i;
    v16[v5] = rc4_s[(unsigned __int8)(v7 + v12)] ^ v15[v4 - 1];
    if ( (unsigned __int8)*(_DWORD *)&NtCurrentPeb()->BeingDebugged ) // 这个名字很明显了吧
    {
      j = 0xAD;
      i = 0x2B;
    }

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
lao1ao + 1 + 1 谢谢@Thanks!

查看全部评分

sunsjw 发表于 2024-9-2 09:28
darkf 发表于 2024-9-2 14:04
 楼主| lao1ao 发表于 2024-9-2 22:48
爱飞的猫 发表于 2024-9-2 03:50
你下的 OD 应该是自带了过调试器检测插件,但 x32dbg (x64dbg) 和 IDA 默认没给你集成这类插件…

既然你 ...

感谢大大!看源码的时候,看着跟flag没啥相关就自动略过了,学习到了(o゚v゚)ノ
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-16 00:08

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表