飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

楼主: ie12580

[求助] 被锁定的输入框及标题

[复制链接]
  • TA的每日心情
    开心
    2025-1-2 21:15
  • 签到天数: 404 天

    [LV.9]以坛为家II

     楼主| 发表于 2024-6-12 02:02:58 | 显示全部楼层
    本帖最后由 ie12580 于 2024-10-18 17:57 编辑
    lies2014 发表于 2024-6-11 23:39
    要注意三点:
    1、我使用的是条件断点,你还要进去看一下条件是怎么设置的
    2、截图里调试器是断在系统函 ...

    表哥你真的是太热心了,下午我一直自己慢慢试,试到现在,总算是搞定了,当然这一切多亏有你之前提供的补丁配置文件。


    明天我下载你的完整补丁数据看看你是怎么设置的,我到刚刚才找出来为什么没有补丁上的原因,第一个标题处用偏移需要用到[ ]号,否则偏移地址会不对,第二个解锁处是不能用[ ]号的,否则也会导致偏移地址不对。
    最初我以为大白ESP地址偏移是从双击选中ESP那一行开始计算的,但经过对补丁数据的多次验证对比,发现是需要选中ESP下面第一行双击后开始计算偏移。

    那个不用HOOK API正好昨天看了校长的教学视频,说是有四个硬件断点,下午也特意试了下,确实可以不用勾选“补丁数据解码后判定”依然有效。
    你说的 ‘一个是指针一个是数值’ 这个我还不太明白,回头我去学习一下这方面的教程,目前还很新手,对于你的热心帮助,真的除了说感谢,我都不知道该说啥了,你真的太好了。

    最后我做了点总结,但只是个人猜想的,不知道正确与否。
    -------------------------------分割线-------------------------------
    命令行查看偏移

    DUMP ESP+8  ---  等于选中ESP+8地址后,鼠标右键选择 在内存窗口中转到 的效果;
    DUMP [ESP+8]  ---  等于选中ESP+8地址后,鼠标右键选择 在当前内存窗口中转到指定DWORD(F) 的效果;

    大白补丁寄存器偏移设置说明
    1. 如ESP寄存器,需双击选中ESP下面第一行地址后,开始计算偏移;
    2. 堆栈窗口中使用 在当前内存窗口中转到指定DWORD(F) 查看到的数据,设置偏移地址时需要用[ ]号;
    3. 堆栈窗口中使用 在内存窗口中转到 查看到的数据,设置偏移地址时不能用[ ]号;

    -------------------------------分割线-------------------------------

    再次感谢 lies2014 表哥

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?加入我们

    x

    点评

    最终结果是对的,但你在一些概念上还没有完全理解,以后换个场景可能还会混淆 大白与调试器看到的应该是一样的,另一种意义上实际就是你在调试器动作的复现 那为什么这里会不同呢,因为你调试器中断的地址和大  详情 回复 发表于 2024-6-12 08:22
    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2025-1-14 00:10
  • 签到天数: 2293 天

    [LV.Master]伴坛终老

    发表于 2024-6-12 08:22:21 | 显示全部楼层
    本帖最后由 lies2014 于 2024-6-12 08:41 编辑
    ie12580 发表于 2024-6-12 02:02
    表哥你真的是太热心了,下午我一直自己慢慢试,试到现在,总算是搞定了,当然这一切多亏有你之前提供的补 ...

    最终结果是对的,但你在一些概念上还没有完全理解,以后换个场景可能还会混淆

    首先,大白与调试器看到的应该是一样的,另一种意义上实际就是你在调试器动作的复现
    那为什么这里会不同呢,因为你调试器中断的地址和大白不一致
    大白里设置的是0x408423,属于用户空间,也就是你能在pdf.exe这个程序里能找到的代码
    调试器你是中断在CreateWindowExA函数里面,也就是系统空间,这是Windows系统的DLL
    用户空间的代码通过call调用了系统空间的函数,call外面和call里面的堆栈是不一样的
    进入call执行完毕后还是要返回用户代码继续执行的,因此会把要返回的用户地址压入栈空间
    你只要在0x408423下个断,看一下现在的堆栈,再F7进入call,就可以看到变化了
    在大白里设置的存储器就应该是你在0x408423看到的,而不是F7后看到的

    这是运行到0x408423的参数位置:


    下面是F7后的参数位置:


    然后就是指针和数据的问题,MSDN里对CreateWindowExA函数的参数定义是这样的:
    HWND CreateWindowExA(
      [in]           DWORD     dwExStyle,
      [in, optional] LPCSTR    lpClassName,
      [in, optional] LPCSTR    lpWindowName,
      [in]           DWORD     dwStyle,
      [in]           int       X,
      [in]           int       Y,
      [in]           int       nWidth,
      [in]           int       nHeight,
      [in, optional] HWND      hWndParent,
      [in, optional] HMENU     hMenu,
      [in, optional] HINSTANCE hInstance,
      [in, optional] LPVOID    lpParam
    );
    第3个参数LPCSTR就是指针类型,第4个参数DWORD是双字的数据
    比如你要找一个人,指针就好像是一个门牌号,你要先找到这个门牌号才能找到人
    所以你要对这个人干什么都是间接的,要通过 [门牌号] 来做出动作
    而数据里面就是这个人,因此对他的动作就是直接上,不需要 [] 来转换


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?加入我们

    x

    点评

    下午学习了一下午,又实践操作了些,现在对CALL外CALL内的理解更深了。 记住了你说的由于压了一层返回地址,所以CALL内的偏移和CALL外是不一样的。 而且CALL内调用的系统DLL,所以要以CALL外软件内的地址为基准  详情 回复 发表于 2024-6-12 21:00
    表哥表述的真的很简单易懂,又是找对比,又是举例子,一会我把这些全用文档整理记录好收藏,以后万一搞混时又可以随时重新学习。 晚点我整理一下学习笔记后,上调试器中好好理解一下你说的这个指针和数据。 今  详情 回复 发表于 2024-6-12 11:32
    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-2 21:15
  • 签到天数: 404 天

    [LV.9]以坛为家II

     楼主| 发表于 2024-6-12 11:32:47 | 显示全部楼层
    lies2014 发表于 2024-6-12 08:22
    最终结果是对的,但你在一些概念上还没有完全理解,以后换个场景可能还会混淆

    首先,大白与调试器看到 ...


    表哥表述的真的很简单易懂,又是找对比,又是举例子,一会我把这些全用文档整理记录好收藏,以后万一搞混时又可以随时重新学习。
    晚点我整理一下学习笔记后,上调试器中好好理解一下你说的这个指针和数据。

    今早起来,电脑又开不了机,到刚才才误打误撞弄好,暂时还不知道具体哪里问题引起的。
    早两天还拔一下主板供电就能开机,今天怎么拔拆都没用,我以为今天上不了电脑,后来又不知道怎么滴,它又神奇般的好了可以开机了。
    所以第一时间登QQ,上论坛;像你这么好的表哥,说真的,我感觉回信息回晚了都是对你的不尊重。
    早上就用手机QQ看了下链接,看你有回复,想马上回复你来着,结果手机QQ上好像不太好操作(也可能是我不熟悉,之前没用手机上过帖子)。
    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-2 21:15
  • 签到天数: 404 天

    [LV.9]以坛为家II

     楼主| 发表于 2024-6-12 21:00:01 | 显示全部楼层
    lies2014 发表于 2024-6-12 08:22
    最终结果是对的,但你在一些概念上还没有完全理解,以后换个场景可能还会混淆

    首先,大白与调试器看到 ...

    下午学习了一下午,又实践操作了些,现在对CALL外CALL内的理解更深了。
    记住了你说的由于压了一层返回地址,所以CALL内的偏移和CALL外是不一样的。

    而且CALL内调用的系统DLL,所以要以CALL外软件内的地址为基准,调式器中如此大白中也是如此。
    对指针和数据也有了初步认识,后续一遇到就会想起你教的门牌号和本人的关系。

    赞赞赞
    感谢!!

    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-14 08:47
  • 签到天数: 1137 天

    [LV.10]以坛为家III

    发表于 2024-6-16 08:59:24 | 显示全部楼层
    先学习,再点赞。

    点评

    好好学习,学完记得向热心表哥lies2014点赞! 教得超级详细,新手都能听懂。  详情 回复 发表于 2024-6-16 15:12
    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-2 21:15
  • 签到天数: 404 天

    [LV.9]以坛为家II

     楼主| 发表于 2024-6-16 15:12:57 | 显示全部楼层
    pizazzboy 发表于 2024-6-16 08:59
    先学习,再点赞。

    好好学习,学完记得向热心表哥lies2014点赞!

    教得超级详细,新手都能听懂。
    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-14 08:47
  • 签到天数: 1137 天

    [LV.10]以坛为家III

    发表于 2024-6-16 18:45:41 | 显示全部楼层
    lies2014 发表于 2024-6-11 00:40
    第一个问题沙发的同志已经讲了,你得研究一下大白的说明书
    第二个问题,同样 CreateWindowExA 下断点,参 ...

    请问一下大佬,第四个参数为啥要改成这个才能输入,其原理是什么?看了CreateWindowEx函数,没有找到这个参数值。

    点评

    不知道你看的是什么资料,微软的官方文档讲得很清楚了: https://learn.microsoft.com/zh-cn/windows/win32/api/winuser/nf-winuser-createwindowexa https://learn.microsoft.com/zh-cn/windows/desktop/winmsg/w  详情 回复 发表于 2024-6-16 22:29
    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2025-1-14 00:10
  • 签到天数: 2293 天

    [LV.Master]伴坛终老

    发表于 2024-6-16 22:29:04 | 显示全部楼层
    本帖最后由 lies2014 于 2024-6-17 02:26 编辑
    pizazzboy 发表于 2024-6-16 18:45
    请问一下大佬,第四个参数为啥要改成这个才能输入,其原理是什么?看了CreateWindowEx函数,没有找到这个 ...

    不知道你看的是什么资料,微软的官方文档讲得很清楚了:
    https://learn.microsoft.com/zh-c ... ser-createwindowexa
    https://learn.microsoft.com/zh-c ... inmsg/window-styles
    https://learn.microsoft.com/zh-c ... edit-control-styles


    点评

    感谢指点,非常详细。  详情 回复 发表于 2024-6-17 07:51
    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-14 08:47
  • 签到天数: 1137 天

    [LV.10]以坛为家III

    发表于 2024-6-17 07:51:52 | 显示全部楼层
    lies2014 发表于 2024-6-16 22:29
    不知道你看的是什么资料,微软的官方文档讲得很清楚了:
    https://learn.microsoft.com/zh-c ... ser-cre ...

    感谢指点,非常详细。
    PYG19周年生日快乐!
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-12-4 16:27
  • 签到天数: 644 天

    [LV.9]以坛为家II

    发表于 2024-10-18 10:12:01 | 显示全部楼层
    @ie12580
    补充一下个人拙见:
    我觉得你每次测试数据
    A.最好在调试器里时不断的打印日志(log 命令)            显示出【内容】与预期是否相同?
    B.在外部(大白中时) 不断的利用大白的(注册机功能) 显示出【内容】与预期是否相同?

    减少数据失误几率,这样后面的失败可能性才能降低。

    点评

    非常感谢你的热心指导~~ 为你点赞!  详情 回复 发表于 2024-10-18 17:56
    PYG19周年生日快乐!
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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