游戏安全实验室 首页 游戏漏洞 查看内容

【游戏漏洞】《NBA2KOL2》球员价格列表分析

发布于:2019-5-7 10:31   |    148649次阅读 作者: 外部投稿    |   原作者: 通化程序员

NBA2KOL2》是一款64位的竞技游戏,游戏中的玩家不可以通过面对面进行交易,而玩家之间的财产交流只能通过交易行。所以扫拍功能就成了这款游戏外挂的主要方式。在对交易行的球员进行购买时,我们首先要对球员的价格进行分析,低买高卖才能获取利润。下面我们对其球员的价格列表进行分析。

首先选中一个球员并点击购买,这时我们可以看到当前选中球员有一个价格列表,里面显示中球员不同价格的出售数量。为了能够遍历到这个列表,我们需要通过切换不同球员,来改变第一个价格,并同CE进行扫描。最终我们得到了1个结果(如图)

 

通过xdbg64对这个地址附近的代码进行观察,我们发现,其实这个价格是球员的最低价格,而在其+8 的位置则是这个球员的最高价格,在+10的位置我们可以看到一个2字节的数据,这代表的是当前球员有几种价格。那么从+12开始则是球员的价格数组。

我们在得到的结果出下访问断点,切换球员后我们发现游戏并没有断下,而之前的地址已经被清零,这说明我们访问的地址有可能是一个临时的地址,这就需要我们从新扫描,并通过CE得到这个地址所存放的位置。

CE中我们对这个地址-4的位置进行扫描可以得到3个结果,这是因为直接扫描这个地址无法得到结果(如图)

对三个结果分析下访问断点,发现第一个地址可以断下,并得到一个+68偏移(如图)

执行到返回后,分析rcx的来源,得到来源于000000014082F5CC处的call nba2kol2.14082CC60内部(如图)

CALL内部继续分析,进入两层CALL后得到来源于0014041618处的add rdx,[rcx+8] (如图)

当然,在后面的函数中还有一层+0偏移,继续想上分析,可以得到shl rdx, 4,而rcx则来源于01400DD9A处的 mov r8,qword ptr ds:[rcx+8] (如图)

继续向上分析可以得到+60偏移,shl rdx, 4,以及一个基地址(如图)

基地址中存放的是一个普通的数值,并不是地址,而我们需要继续分析rbx的来源,由于继续分析的过程复杂,所以我们通过CE对rbx进行扫描,可以得到一个基地址(如图)

接下来只要将公式整理好就可以对球员价格列表进行读取了。




来源:通化程序员—投稿

GSLAB网站投稿文章仅代表作者本人的观点,与本网站立场无关。

*转载请注明来自游戏安全实验室(GSLAB.QQ.COM)

分享到:
踩0 赞0

收藏

上一篇:【游戏漏洞】FPS网络游戏自动瞄准漏洞分析以及实现

下一篇:某游戏平台检测加速辅助案例分析

最新评论
B Color Image Link Quote Code Smilies

发表评论

top 问题反馈

返回顶部