*.前置条件

  1. frida 服务
  2. python支持库 fastapi,uvicorn,frida

1. 开启服务

# 指定非标准端口
adb shell
su
./data/local/tmp/fsarm64 -l 0.0.0.0:27042

2. 执行python脚本

# 方法1. 可以直接用pycharm指定frida的那个python解释器 直接 运行该文件 省略以下步骤
# 方法2. 另起cmd 进入这个环境
workon frida
# 进入到FridaHook路径
cd /d D:\Project\AndroidSecurity\FridaHook
# 执行python代码
python main.py

3. main.py

# -*- coding: UTF-8 -*-from fastapi import FastAPI
import uvicorn
import fridajsCode = """function hookTest(username, passward){var result;Java.perform(function(){var time = new Date().getTime();time = '1597582774344';var string = Java.use('java.lang.String');var signData = string.$new('equtype=ANDROID&loginImei=Android352689082129358&timeStamp=' + time + '&userPwd=' + passward + '&username=' + username + '&key=sdlkjsdljf0j2fsjk');var Utils = Java.use('com.dodonew.online.util.Utils');var sign = Utils.md5(signData).toUpperCase();console.log('sign: ', sign);var encryptData = '{"equtype":"ANDROID","loginImei":"Android352689082129358","sign":"'+ sign +'","timeStamp":"'+ time +'","userPwd":"' + passward + '","username":"' + username + '"}';var RequestUtil = Java.use('com.dodonew.online.http.RequestUtil');var Encrypt = RequestUtil.encodeDesMap(encryptData, '65102933', '32028092');console.log('Encrypt: ', Encrypt);result = Encrypt;});return result;
}
rpc.exports = {rpcHook: hookTest
};""";# 调用frida脚本
process =frida.get_device_manager().add_remote_device('192.168.1.18:27042').attach("com.dodonew.online")
script = process.create_script(jsCode)
print('[*] Running 调用frida脚本')
script.load()app = FastAPI()@app.get("/get")  # 注意这里url上没有定义参数
async def getEchoApi(item_id, item_user, item_pass):# fastapi 会聪明的发现它不是URL参数,然后自动将他识别为param参数# RPC远程调用result = script.exports.rpcHook(item_user, item_pass)return {"item_id": item_id, "item_retval": result}if __name__ == '__main__':uvicorn.run(app, port=8080)

4. 总结

  1. 相对xposed模块,frida并不具有高并发的稳定性但是实现搭建相对较快,可以适用于轻量级生产环境。

  2. python服务端

  1. 调用方法
http://127.0.0.1:8080/get?item_id=1&item_user=13333333333&item_pass=a12345678

Android逆向 Frida 算法转发相关推荐

  1. 1. Android逆向-Frida环境搭建

    文章目录 Frida环境搭建 PC上安装Frida 测试设备的Frida Python环境 Frida时当下比较流程的逆向工具,其本身是开源的.在Github上可以找到项目 frida/frida: ...

  2. Android逆向 Frida 环境配置

    ps : 如果不需要多环境测试的 mkvirtualenv 相关的步骤可以忽略,不过建议安装以后防止firda版本同时存在不冲突.以下是笔记中pyhton.virtualenvwrapper.vsco ...

  3. Android逆向-实战sign分析-某某合伙人_v4.0.9

    1.基础分析 1.1.基础分析 工作中经常会对一些app进行安全审计,一般在拿到应用后可以使用APK Helper工具对应用做个简单分析,了解目标的包名,版本号,名称等基础信息,之后再安装到手机上熟悉 ...

  4. 【Android 逆向】Frida 框架 ( 安装 frida 12.7.5 | 安装 frida-tools 5.1.0 | PC 端 frida 与 安卓模拟器端 frida-server )

    文章目录 一.安装 frida 12.7.5 二.安装 frida-tools 5.1.0 三.PC 端 frida 与 安卓模拟器端 frida-server 一.安装 frida 12.7.5 前 ...

  5. 逆向工程实验——pre6(汇编、Android逆向、RSA算法破解)

    文章目录 一. 阅读然后回答2个问题 二.阅读 三.阅读 复现android逆向过程 1.先在android模拟器上安装好CrackMe1.apk文件, 2.用apktool将CrackMe1.apk ...

  6. Android 逆向分析大全

    转载:Android 逆向分析大全:https://www.jianshu.com/p/a12d04fc748f 1. 概述 1.1 分析步骤 通用逆向分析步骤 1. 了解该模块正向编程相关方法 2. ...

  7. 网络流量分析与Android逆向小结

    本章对之前的网络流量分析与Android逆向做个小结. 网络流量分析 原理解析 分析原理前之前先了解中间人攻击的概念:在中间人攻击中,攻击主机通常截断客户端和服务器的加密通信.攻击机以自己的证书替代服 ...

  8. App逆向 Frida - 夜神模拟器安装配置 基本使用

    App逆向 Frida - 夜神模拟器安装配置 基本使用 文章目录 App逆向 Frida - 夜神模拟器安装配置 基本使用 前言 一.Frida简单介绍? 1.Frida是什么 2.Frida原理( ...

  9. android studio怎么改软件扫码界面_一文入门Android逆向

    本文节主要介绍一下Android逆向常用的环境.工具.动静态分析思路,笔者通过学习肉丝大佬分享的一些内容,加上自己一些经验总结而来. 1.环境准备 环境也分三六九等,一个好的环境能让你节省大量时间和精 ...

最新文章

  1. 宣武区政务网教育网的改造
  2. 分享一套阿里高级Java面试题,要去阿里的先过这些题。
  3. Linux查询用户创建的后台程序
  4. 团队作业2 需求分析与原型设计
  5. Unity调用动态链接库dll和so
  6. oracle case grouping,ORACLE GROUPING函数的使用
  7. 美国军方称密切关注量子加密,法国国防部重金投资量子技术
  8. 2017ACM/ICPC沈阳站总结
  9. python求直角三角形两边求锐角_在二元数组中求直角三角形坐标
  10. WIN10系统连接蓝牙音箱,显示已连接但无声音
  11. 有一根27厘米的细木杆java_[转载]推荐最近看过的最好的java视频
  12. 使用Proxmox 和 Deskpool 搭建桌面云系统
  13. Mysql——》索引存储模型推演
  14. FrameExit:Conditional Early Exiting for Efficient Video Recognition
  15. Oracle实现递归查询
  16. 小米5查看设备号信息及验证type-c数据线
  17. 行通信比并行通信的速度更高
  18. 淘宝直播弹幕API接口协议
  19. php不是当前时间,php取得时间与当前时间不一样
  20. yolov4中的route和shortcut层

热门文章

  1. 小程序清空textarea_回收站清空了怎么恢复?
  2. Linux服务器搭建 -- Web静态/动态服务器及论坛的搭建(apache)
  3. R语言RCurl爬虫(多线程爬虫)-高评分豆瓣图书
  4. arduino多功能垃圾桶
  5. adaboost案例源码解析
  6. 连接器使用四大注意要点
  7. iOS_Memory Leak 内存泄露治理
  8. python强大功能——视频压缩
  9. 如何将计算机网络文件夹复制到,如何将大文件快速拷贝/复制/分享到另一台电脑?...
  10. Oracle cursor 元数据,第七章 数据库元数据(Database Metadata)