首页
社区
课程
招聘
梦幻西游远程交易漏洞分析报告
发表于: 2015-9-11 11:32 2747

梦幻西游远程交易漏洞分析报告

2015-9-11 11:32
2747
一、漏洞简介
1) 漏洞所属游戏名及基本介绍:梦幻西游(com.netease.my),纯回合制RPG游戏
2) 漏洞对应游戏版本及平台:梦幻西游Android 1.28.0
3) 漏洞功能:远程交易(战斗中也可远程交易)
4) 漏洞危害评级:黄
   
二、漏洞实现介绍
1、远程交易功能收益点
       1、师门或者主线、支线寻找物品(武器、药品等)任务,可通过此漏洞直接购买物品完成任务。
       2、战斗过程,背包没有相应的补血或者复活药物而需要使用的时候,可通过此漏洞直接购买并使用。
 2、漏洞实现使用工具
利用APKTOOL解APK包,IDA进行静态分析和动态调试,分析反编译出lua明文代码,修改特定脚本逻辑替换即可重现漏洞。
3、漏洞实现过程及实现原理
通过IDA静态分析,可看出梦幻西游是采用Lua脚本进行游戏逻辑开发。由于Lua引擎是开源项目,直接分析该引擎代码可以知道Lua会通过lua_Reader函数读取脚本内容。因此,可直接在该点Dump Lua脚本代码。
而梦幻西游没有直接下发Lua源码,需要反编译出Lua明文代码(需要留意其对lua引擎进行了一定修改,Opcode需要还原)。在获取到游戏明文Lua代码后,仔细阅读分析挖掘即可,然后通过HOOK Lua引擎替换修改后的代码回去即可测试漏洞。
本报告提到的随时随地交易漏洞修改原理如下:
1、还原Opcode再反编译分析,发现玩家NPC交易的时候,相关协议(88013)没有角色坐标信息,可推测存在此类漏洞风险。再仔细分析可发现游戏封装好各类协议发包函数,可直接调用发包。因此如图1所示(20301为鹿茸ID、2为长安城药店老板NPC)为功能实现代码,尝试在各种场景调用伪造购物数据包,发现均可成功购买鹿茸并可以使用。


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

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//