zoukankan      html  css  js  c++  java
  • 安卓逆向,脱壳实战,Xposed的安装和使用,脱壳之后找到接口参数加密的地方,逆向出来 🔴

    ####

    mac的mumu模拟器安装Xposed一直失败,

    我下一步就是在mac上面安装一个虚拟机,运行win10系统,这个好像是必备的了,

    ###

    现在使用真机来实践,

    ###

    adb连接真机,

    真机打开开发者模式

    进入设置,打开关于手机,找到版本号,

    一直点击版本号,在点击过程中会提示“还有×次,直到打开“开发人员选项”。

    并且打开usb调试开关,

    这样adb就能看到设备了

    ###

    在真机安装fdex2

    adb install fdex2.apk

    ###

    然后进入,Xposed里面--进入模块,-点击fdex2,激活一下,

    ###

    但是不支持安卓8,气人!

    ##

    实战,使用fdex2,这个工具脱壳,

    使用这个工具要先安装Xposed,这两个都是apk,

    把apk脱壳之后,就会有导出的dex文件,会有好几个dex文件,

    然后使用jadx,打开就是源代码了,怎么确定是哪一个dex文件,每一个都打开,搜索application,看看有没有这个xml文件, 有就对了

    大部分都可以使用这个工具脱壳,

    是不是很简单,那意义在哪里?

    ###

    遗留问题,

    1,mac安装虚拟机,安装win10

    2,win10安装夜神模拟器,或者雷电模拟器,

    3,在这个win10系统的模拟器,安装Xposed,安装fdex2,

    4,使用这个环境,来脱壳实战一下,

    ###

    这个工具还是要掌握的,

    因为这个工具可以把大部分的app都脱壳,

    ###

    实战,案例

    有的app,接口调用的时候,有一个参数sign,要携带上请求接口才行,这个是变动的,你不知道,所以就不能调用通接口,

    可以通过重放来确定这个参数是不是动态的,

    怎么办?

    你需要找到app里面哪里生成的这个sign,是怎么生成的,然后你自己用python写出来,然后携带请求接口就行了, 

    怎么着这个生成的地方?

    我们发现每一个接口都有这个signature,所以应该是一个功能的地方生成的,

    在源代码里面搜索这个关键词,找到对应的代码,可能会有很多的结果,耐心找找

    找到之后可能是混淆过的,可以用工具做反混淆,使用的是jadx-工具里面的一个反混淆,

    这样反混淆之后再去查看源代码,这个反混淆不是彻底的,只是把一个名字变成唯一的, 

    ###

    你找到了加密生成的代码之后,你还需要看懂,所以你还是需要java的功底的

    但是你看不懂怎么办,可以打包成为一个java文件,让python调用,具体怎么实现呢?

    ####

    怎么把java代码打包,让python调用?

    第一点,你要安装java环境,

    第二点,把文件编译成为class文件,通过命令,javac xxx.java,

    第三步,把class文件打包成jar包,通过命令,jar cvf xxx.jar

    第四步,通过jpype 这个python的第三方库,调用这个jar,就可以实现python调java了,

    网上有在线的java执行工具,可以把这段java代码拿出来,然后去执行一下,方便调试java代码,

    ###

    但是这种把java拿过来直接python调用的方法,

    不是任何时候都适用的,

    因为有时候,这段java代码可能是有很多的依赖的包,你运行的时候,就会缺少很多的包,

    这样就很麻烦,所以用python调用java的情况,这段代码最好不要有太多的依赖,

     如果加密的程序,依赖别的文件比较少,可以使用这种方法,但是如果太复杂,依赖比较多,这个还是需要自己使用python实现,这个就是比较难的地方,

    ###

    这个是java加密参数的源码:

    我们可以看到是要传递一个字符串进入,

     

    从jvmpath就是jpype库的用法了,

    ####

    ####

    ####

  • 相关阅读:
    通过android XML 创建图形,降低对美工的依赖
    ViewPager学习之仿微信主界面
    Linux学习日志--文件搜索命令
    蓝桥杯 历届试题 小朋友排队 【树状数组】+【逆序数】
    操作系统——IO管理
    Mac和PC在工作中管理的对比(5)
    虚拟地址空间分配
    UVA 624 CD(DP + 01背包)
    【CSS】瀑布流布局的两种方式:传统多列浮动和绝对定位布局
    外煤关注:百度收购大部分糯米股份
  • 原文地址:https://www.cnblogs.com/andy0816/p/15177362.html
Copyright © 2011-2022 走看看