首页
社区
课程
招聘
[原创]网络验证的封包下断
发表于: 2013-5-4 23:41 6860

[原创]网络验证的封包下断

2013-5-4 23:41
6860
问题1:有啥指令断点
……bp send(socket ,bind ,listen ,accept ,AcceptEx ,WSAAccept ,connect ,send ,WSASend ,recv ,WSARecv ,WSARecvEx ,closesocket)

问题2:断点是断在哪个位置
………发包CALL函数的位置

问题3:怎样才能找到捡物CALL函数?
…………查看:堆栈(或者CTRL+F9)

问题4:执行过程是怎么样的?
…………程序环境函数CALL执行完后……》捡物CALL的函数执行完后……》接着执行发包CALL函数

高级语言中的变量或函数名,在反汇编里是以16进制存在(了解即可)
一个如果函数CALL有返回值,那么其值是保存在EAX里的。
同时在堆栈里也会保存一份。

补充:在OD里面读取地址用DD XXXXXX
……——在OD里读取真正的内存数据用DU XXXXXX
一般用DD可用于读取堆栈地址指向的内存地址,再用DU把指向的内存地址读出来。

断点过虑(当封包>60才断下)
bp send ecx>60

找发送网络句柄:1.OD里BP SEND下断后,可以看到句柄和SEND的断点位置,,
  2.再用ce查看存放此数据的地址,
    CE里查看反汇编码,找断点位置,在断点位上一行参数
    切换断点可以看到EAX里的网络句柄
  3.重新登录游戏,重复上第二步,过虑来确认要找的存放地址

找封包:OD下断后,在K堆栈里可以看到封包地址

找SEND函数地址:OD下断后,可以在K堆栈里可能直接可以看到,也可能看到的是指针[XXXXX],我们可以在命令框里输入“DD XXXXX”就可以看到了,
或用CE里用看内在数据里可以查找到。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 6
支持
分享
最新回复 (3)
雪    币: 51
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
写的不错,要是能更丰富一点就好了,给人感觉好像没有上下文。
2013-5-5 15:33
0
雪    币: 8084
活跃值: (1515)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
3
受益匪浅啊
2018-7-9 18:03
0
雪    币: 2359
活跃值: (288)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
谢谢共享, 不错不错
2018-7-17 08:39
0
游客
登录 | 注册 方可回帖
返回
//