看流星社区

 找回密码
 注册账号
查看: 5652|回复: 5

思维大哥,进来一下,求教个问题.....如何下条件断点

[复制链接]

该用户从未签到

发表于 2012-1-12 20:39:40 | 显示全部楼层 |阅读模式
近来发现一个游戏 剑网3 加载OD后,用
       Bp send
          Bp WSASend
          Bp sendto
          Bp WSASendto
都下断了,发现一下段游戏就断下,根本无法获取下断后的数据,请问这是怎么回事,要如何解决?有人说下条件断点,那么能指点一下如何下条件断点
  • TA的每日心情
    萌哒
    2021-11-26 08:49
  • 发表于 2012-1-12 21:40:13 | 显示全部楼层
    下断后连续2次ctrl+f9,看看堆栈是什么数据

    该用户从未签到

    发表于 2012-1-13 08:30:10 | 显示全部楼层
    可能是心跳包吧~~可以尝试过滤心跳包~~~

    该用户从未签到

    发表于 2012-1-13 08:45:30 | 显示全部楼层
    如何过滤心跳包,这个很简单,举例说明下

    0012FB0C   00436635  5fC.  /CALL 到 send 来自 00436630
    0012FB10   00000448  H..  |Socket = 448
    0012FB14   028A9040  @悐   |Data = 028A9040
    0012FB18   00000007  ...  |DataSize = 7
    0012FB1C   00000000  ....  \Flags = 0

    双击下12FB0C处出现如下箭头:

    $ ==>    > 00436635  5fC.  /CALL 到 send 来自 00436630
    $+4      > 00000448  H..  |Socket = 448
    $+8      > 028A9040  @悐   |Data = 028A9040
    $+C      > 00000007  ...  |DataSize = 7
    $+10     > 00000000  ....  \Flags = 0

    如何下条件断点,DataSize=7 是封包数据大小,假设:7是心跳包数据大小

    那么可以这样过滤:

    [esp+c]!=7  

    这句的意思是当[esp+c]里面的数据不等于7的时候断下。

    可能你还会考虑,在那里下这个条件断点:

    可以ctrl+g 搜send,搜到的地方 shift+f2 填写上面的过滤条件就哦了~~~

    该用户从未签到

     楼主| 发表于 2012-1-13 10:39:29 | 显示全部楼层
    本帖最后由 lybs8698 于 2012-1-13 11:14 编辑

    回复 4# 小小思维


        谢谢指点

    用你的方法测试了以下   每次断下的都不一样  心跳包的数据有好几个   
    DataSize = 49   DataSize = 41 DataSize = C  DataSize = B 这样怎么过滤

    该用户从未签到

    发表于 2012-4-5 16:21:50 | 显示全部楼层
    [esp+c]!=7 &&[esp+c]!=49 &&[esp+c]!=41&&[esp+c]!=0xC &&[esp+c]!=0xB
    点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
    您需要登录后才可以回帖 登录 | 注册账号

    本版积分规则

    小黑屋|手机版|Archiver|看流星社区 |网站地图

    GMT+8, 2024-4-29 13:37

    Powered by Kanliuxing X3.4

    © 2010-2019 kanliuxing.com

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