- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
本来我是很不情愿再写一篇OD逆向分析的,因为此时写这篇文章会很累,时间多,字也打得多,而且很可能会在一段时间后,游戏更新了,未来本文就会失效.但还是写了,为了大家,也给前面的做个佐证与一点补充.先创建一个QQ游戏大厅的进程,然后去创建第二个QQ游戏大厅进程时,会创建失败,并且第一个进程的大厅窗口会被激活置为前台,另外任务栏下的QQ游戏按钮也会被闪烁几下.会闪烁可是好事啊,可以给我们找关键的禁止双开的CALL提供很多的帮助.下面我们在开着第一个QQ游戏大厅的情况下,用OD载入第二个QQ游戏大厅程序,然后下断点在以下两个会终止进程的API上
ExitProcessTerminateProcessAPI断点设置如下:
在OD里按F9运行,会中断在 ExitProcess 上.见堆栈窗口情况: 0012FEDC? ?785421CC???Tx? ?/CALL 到 ExitProcess 来自 MSVCR90.785421C60012FEE0? ?....??\ExitCode = 0看堆栈提示,是 MSVCRT 领空的 785421C6处指令 MSVCRT 是VC++的运行时库,与易语言的核心库一样的概念.另外就是易语言与易核心库是用VC++编的,所以我们编写的易程序在运行时,也会加载这个 MSVCRT 运行库的现在我们直接复制完堆栈数据窗口的所有返回信息:0012FEDC? ?785421CC???Tx? ?/CALL 到 ExitProcess 来自 MSVCR90.785421C60012FEE0? ?....??\ExitCode = 00012FEE4??/0012FF28??(.0012FEE8???$Tx??返回到 MSVCR90来自 MSVCR90.785421B50012FEEC???....0012FEF0??|A28413F9???劉0012FEF4??|00412B4C??L+A.??QQGame.00412B4C0012FEF8??|00151F01??.0012FF10??|0012FEF0??瘙.0012FF14???....0012FF18??|0012FFB0???.? ?指向下一个 SEH 记录的指针0012FF1C??|7858CBDE??匏Xx? ?SE处理程序0012FF20??|DACC2861??a(腾0012FF24??|FFFFFFFE??0012FF28??]0012FF3C??0012FF2C???f$Tx??返回到 MSVCR90来自 MSVCR900012FF30???...0012FF3C??]0012FFC0???.0012FF40??|00409DEC??鞚@.? ?返回到 QQGame.00409DEC 来自 MSVCR90.exit0012FF44???....0012FF48??|B0AB7FEA???0012FF4C??|7C930228??(搢? ?ntdll.7C9302280012FF50??|FFFFFFFF 0012FF54??|7FFDE000??.帻0012FF58???D...0012FF5C?? ?9.0012FF60??|00153B38??8;.??ASCII WinSta0\\Default0012FFB0??|0012FFE0???.? ?指向下一个 SEH 记录的指针0012FFB4??|0040A4A5??イ@.? ?SE处理程序0012FFB8??|B0F9549A??歍亅? ?返回到 kernel32.7C8170770012FFC8? ?7C930228??(搢? ?ntdll.7C9302280012FFCC? ?FFFFFFFF 0012FFD0? ?7FFDE000??.帻0012FFD4? ?805522FA???U我们要找创建互斥体的CALL,这样才能找到这个call的压入参数(互斥体名称),分析出QQ游戏大厅限制双开的互斥体名称,那么找CALL,当然是在进程的凌空找,从上面堆栈的所有返回信息来看,只有:0012FF40??|00409DEC??鞚@.? ?返回到 QQGame.00409DEC 来自 MSVCR90.exit 这句是游戏进程的凌空,其他都是在 MSVCR90 或 kernel32 模块凌空里,所以其他就不需
文档评论(0)