zoukankan      html  css  js  c++  java
  • Android逆向——破解水果大战

    最近公司需要测试安卓app安全,但安卓基本上0基础,决定了解下安卓逆向
    根据吾爱破解上教程 《教我兄弟学Android逆向系列课程+附件导航帖》

    https://www.52pojie.cn/thread-742703-1-1.html ,感谢此教程帮助我快速了解了安卓逆向


    破解的程序:  https://pan.baidu.com/s/10hxJITuLYr11p9MfrmGpRA  提取码:r7wa

    第三章任务是破解水果大战

    首先打开游戏,发现是有很多地方需要收费的,我们就反编译这个app,改动一些函数,使我们直接跳过收费的地方达到破解的目的(以下行为仅供学习及测试用途)

    首先用Android KIller打开

    然后搜索  "失败"  转码后的函数

    应该是MymmPay那里,打开看看,可以转成java大致看一下是不是和支付有关的函数。

     基本上是这里了,然后回到AndroidKiller 打开,浏览以下发现有以下几个关键函数:

     payResultCancel()  payResultFalse()  payResultSucess()   

    分别代表着支付取消,支付失败,支付成功

    如果我们吧支付取消,支付失败的内容都改换成支付成功的内容,那岂不是不管如何操作都代表着支付成功了

    我们就把支付成功的函数复制到其他两个里面

    复制. method publi  payResultSucess()函数里  .payResultSucess()下面 到.end method上面的内容到  payResultCancel()  payResultFalse()里边(替换方框里的内容)

     

     复制从这里开始

     

    中间省略。。。

    到这里结束

     最后删除可能会产生费用的危险权限:   

    AndroidManifest.xml里搜索(或者可以直接搜索下面的这个)

    android.permission.SEND_SMS
    删掉
    <uses-permission android:name="android.permission.SEND_SMS"/>

     最后再编译打包,就可以无限再游戏里消费了

    方法2.

    上边的方法是,替换购买失败部分的smail函数,让用户支付失败也会成功

    换个思路,我们去找哪里调用payResultFalse方法 然后我把这个方法名字改成支付成功方法的名字:

    看java,搜索定位到这里

     这里就是支付失败的方法,下面就是支付成功的方法,然后就去寻找跳转到失败的方法,把他改成成功

     回到Androidkiller

    定位到这里,可以修改这两个跳转位置

     此方法同样可以破解

    参考链接吾爱破解:

    https://www.52pojie.cn/thread-642371-1-2.html

     

  • 相关阅读:
    JS命名空间的使用
    PHPexcel的用法
    python爬取百度贴吧帖子
    python自动抢票
    int 与 String 与 char 之间的互相转换
    数据库备份和恢复
    Mysql 基础
    Mysql错误:Every derived table must have its own alias
    frameset框架集
    文件的上传(TCP)
  • 原文地址:https://www.cnblogs.com/zhaoyixiang/p/11202067.html
Copyright © 2011-2022 走看看