• 安卓逆向入门(一)


    文章来源i春秋
    这段时间大师傅安排了安卓逆向练习。首先 0 基础没有代码开始学起也是可以的,不用太过于执着于”我没有代码功底就学不会”,我可以很明确的说,我也没有多少代码功底,都是偶尔被大师傅逼着看。但是简单的也就仅仅能看懂,写出来又是另一个问题了。有时候我们学习很多东西需要的代码知识不多,记住一些主要函数,语句就好了,不懂就有道翻译(很多也就是英语,我英语也不行,也不用想着不懂英语就不能编程什么的。)或百度,用到的时候对着那几个主要的函数,语句你还能不懂?
    00X1:
     
    安卓逆向基础工具有:
    1.AndroidKiller (需安装JDK)
    2.ApkIDE (需安装JDK)
    3.ApkToolkit,APK上上签
     
    安卓模拟器推荐:
    1.夜神模拟器
    2.海马模拟器
    这些我们用的工具仅仅是AndroidKiller,模拟器可以随意夜神模拟器特性就是不卡,方便但是很多不兼容;海马模拟器,性能稳定但易卡;这里我们选用夜神模拟器。
     
    常用基础的smali语句函数有:
     
    Const 赋值
    return-void返回空
    Goto 跳转
    Cond 分支
    判断语句:
     
    if-eq 等于
    if-ne 不等于
    if-lt 小于
    f-ge 大于等于
    if-gt 大于
    if-le 小于等于
    if-eqz 等于
    if-nez 不等于
    if-ltz 小于
    if-gez 大于等于
    if-gtz 大于
    关键词:
     
    Success成功
    Fail 失败
    详细可以参考:Smali基本语法 - lee0oo0 
    00x2:
    首先想破解一款小游戏需要最先知道它是否加密加壳,因为 0 基础开始,加密加壳就先不管;然而去打开这款游戏查看是否有充值功能,以及整个流程。分析这款小游戏对于你来说能破解的几率有多大,如果大那么你是否有这么多的时间去调试测试更改破解,值不值得去破解,再综合你本身的能力去考虑这件事;如果不行那就先保留下来,再找另一个小游戏去破解。
    这里演示的小游戏是“经典玛丽”,用AndroidKiller查看有没有加壳,我以在i春秋提供过很多破解工具https://bbs.ichunqiu.com/thread-23270-1-1.html 
    没有加壳那么先打开这款apk看看
    首先出来的是一个广告,这里得知是移动应用的,也就是可能存在收费接口也可能是移动的收费接口。
    进入游戏我们可以看到这款游戏是存在充值的
    点击“超值装备礼包”查看
    点击“立即购买”
    这里可以很明确的看到是中国移动的收费接口。
    这里最简单的最基础的就是搜索关键词,关键词在哪?点击购买再退出的时候就有 比如:
    “充值失败”这就是关键词,我们可以尝试性的去用AndroidKiller搜索。
    “充值失败”需要转为Unicode编码进行搜索 并且跟进这个位置。
    一般我们直接看smali代码很蛋疼所以可以转为java查看
    这样我们就可以很直观的看到这代码是说什么的
    前面也提到了 Success是成功 Fail 是失败,那么这里我们直接把Fail 改成Success试试。
    更改需要保存再点击编译
    原来安装在模拟器上的原版“经典玛丽”需要卸载掉 才能安装修改后的“经典玛丽”,因为签名不同。
    修改过后的“经典玛丽”在购买再退出就什么提示也没但是也没有购买成功,其实我们改的只是一个分支 $后面有数字的smali文件 其实是分支,那么我们改的时候可能少改了。
    那么我们可以报着有杀错没发过的心理去修改 直接把全部的“onFail”替换为“onSuccess”
    因为签名都一样所以这里就不用再去卸载了,直接安装就好。
    好了,这就修改成功了。那么你觉得出现了“充值失败”不太美观,这里大家可以自行修改,相信大家也懂怎么修改吧?
    好了,那么说到不美观,一打开的时候出现了两个移动广告图片试试也得去掉?
    这里介绍的方法简单粗暴,因为它是图片我们不从代码入手直接删除这两个图片就好。
    总结:
    多试多练,代码不懂就多看,英语不行也多看,没有说代码基础,英语基础一定要达到什么什么程度;不会说不会写,那么至少能模糊看懂也就够了。

     

  • 相关阅读:
    【数据库功能测试】之shell脚本执行sql命令
    【数据库使用】 mysql服务启动脚本
    【数据库功能测试】之存储过程
    各类排序算法实现
    Poj1830开关问题,高斯消元
    Poj3370Halloween treats鸽巢原理
    Poj2356Find a multiple鸽巢原理
    Poj3145Harmony Forever线段树+鸽巢原理
    hiho16动态lca
    hiho15周离线lca
  • 原文地址:https://www.cnblogs.com/ichunqiu/p/6907692.html
Copyright © 2020-2023  润新知