• 安卓逆向学习--某简单游戏破解学习记录


    安卓逆向学习--某简单游戏破解学习记录


    一、环境以及所用到的工具

    • 真机:android 4.4.4
    • AndroidKiller
    • JEB

    二、破解思路

    将该游戏拖进手机安装打开以后尝试打开商城充值,发现支付失
    等字样,将该APK拖进AndroidKiller中,搜索支付失败字符串,发
    现未找具体的支付实现方法,后面在游戏刚载入处发现移动MM支付
    这些信息,推断为移动MM支付,尝试搜索onBillFinish方法(该方法为移动MM支付支付完毕之后的一个判断结果方法,大致是这样吧),在IAPListener类中发现该方法,使用JEB将smail转换为Java可以很清楚看到逻辑(使用JEB转换为Java比jd跟好一些),当变量arg5等于102或者104再或者是1001时判定为支付成功,然后做相应处理,逻辑分析到了这里,在smail层可以很轻易破解成功,这里用最简单的方法:在smail层修改支付失败时逻辑也跳转到支付成功时执行的代码块,在smali中将涉及到的判断if-eq修改为if-ne即可(相当于支付失败时即变量arg5不等于1021041001时跳转到跳转到支付成功时应该执行的代码处)。最后编译打包即可。当然砖石增加都在so层,但这里能直接在smail层破解掉就不去看so了。(ps:这个简单游戏是某大佬发出来的教程带的的练习APK,会在文章最后附上大佬对这个简单游戏破解的链接)

    安装截图

    关键代码截图

    关键代码转java截图

    修改代码截图

    破解成功截图1

    破解成功截图2


    三、相关链接

    某大佬的链接:https://blog.csdn.net/guiguzi1110/article/details/40586339

    作者github链接(可下载相关附件):https://github.com/windy-purple/TTXLM

    PS:未经作者许可,严禁转载!!!

    写作不易,觉得作者还可以的话,可以请作者喝杯奶茶哟!!!
    请作者喝奶茶支付宝二维码

  • 相关阅读:
    尚观寻求帮助
    linux软链接与硬连接
    linux常用命令(三)
    zend 动作控制器
    zend 路由
    ZF组件功能简介
    zend_controller
    linux常用命令(一)
    练习1
    练习1感受:
  • 原文地址:https://www.cnblogs.com/aWxvdmVseXc0/p/11773745.html
Copyright © 2020-2023  润新知