Android逆向 Frida 算法转发
*.前置条件
- frida 服务
- 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. 总结
相对xposed模块,frida并不具有高并发的稳定性但是实现搭建相对较快,可以适用于轻量级生产环境。
python服务端
- 调用方法
http://127.0.0.1:8080/get?item_id=1&item_user=13333333333&item_pass=a12345678
Android逆向 Frida 算法转发相关推荐
- 1. Android逆向-Frida环境搭建
文章目录 Frida环境搭建 PC上安装Frida 测试设备的Frida Python环境 Frida时当下比较流程的逆向工具,其本身是开源的.在Github上可以找到项目 frida/frida: ...
- Android逆向 Frida 环境配置
ps : 如果不需要多环境测试的 mkvirtualenv 相关的步骤可以忽略,不过建议安装以后防止firda版本同时存在不冲突.以下是笔记中pyhton.virtualenvwrapper.vsco ...
- Android逆向-实战sign分析-某某合伙人_v4.0.9
1.基础分析 1.1.基础分析 工作中经常会对一些app进行安全审计,一般在拿到应用后可以使用APK Helper工具对应用做个简单分析,了解目标的包名,版本号,名称等基础信息,之后再安装到手机上熟悉 ...
- 【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 前 ...
- 逆向工程实验——pre6(汇编、Android逆向、RSA算法破解)
文章目录 一. 阅读然后回答2个问题 二.阅读 三.阅读 复现android逆向过程 1.先在android模拟器上安装好CrackMe1.apk文件, 2.用apktool将CrackMe1.apk ...
- Android 逆向分析大全
转载:Android 逆向分析大全:https://www.jianshu.com/p/a12d04fc748f 1. 概述 1.1 分析步骤 通用逆向分析步骤 1. 了解该模块正向编程相关方法 2. ...
- 网络流量分析与Android逆向小结
本章对之前的网络流量分析与Android逆向做个小结. 网络流量分析 原理解析 分析原理前之前先了解中间人攻击的概念:在中间人攻击中,攻击主机通常截断客户端和服务器的加密通信.攻击机以自己的证书替代服 ...
- App逆向 Frida - 夜神模拟器安装配置 基本使用
App逆向 Frida - 夜神模拟器安装配置 基本使用 文章目录 App逆向 Frida - 夜神模拟器安装配置 基本使用 前言 一.Frida简单介绍? 1.Frida是什么 2.Frida原理( ...
- android studio怎么改软件扫码界面_一文入门Android逆向
本文节主要介绍一下Android逆向常用的环境.工具.动静态分析思路,笔者通过学习肉丝大佬分享的一些内容,加上自己一些经验总结而来. 1.环境准备 环境也分三六九等,一个好的环境能让你节省大量时间和精 ...
最新文章
- 宣武区政务网教育网的改造
- 分享一套阿里高级Java面试题,要去阿里的先过这些题。
- Linux查询用户创建的后台程序
- 团队作业2 需求分析与原型设计
- Unity调用动态链接库dll和so
- oracle case grouping,ORACLE GROUPING函数的使用
- 美国军方称密切关注量子加密,法国国防部重金投资量子技术
- 2017ACM/ICPC沈阳站总结
- python求直角三角形两边求锐角_在二元数组中求直角三角形坐标
- WIN10系统连接蓝牙音箱,显示已连接但无声音
- 有一根27厘米的细木杆java_[转载]推荐最近看过的最好的java视频
- 使用Proxmox 和 Deskpool 搭建桌面云系统
- Mysql——》索引存储模型推演
- FrameExit:Conditional Early Exiting for Efficient Video Recognition
- Oracle实现递归查询
- 小米5查看设备号信息及验证type-c数据线
- 行通信比并行通信的速度更高
- 淘宝直播弹幕API接口协议
- php不是当前时间,php取得时间与当前时间不一样
- yolov4中的route和shortcut层
热门文章
- 小程序清空textarea_回收站清空了怎么恢复?
- Linux服务器搭建 -- Web静态/动态服务器及论坛的搭建(apache)
- R语言RCurl爬虫(多线程爬虫)-高评分豆瓣图书
- arduino多功能垃圾桶
- adaboost案例源码解析
- 连接器使用四大注意要点
- iOS_Memory Leak 内存泄露治理
- python强大功能——视频压缩
- 如何将计算机网络文件夹复制到,如何将大文件快速拷贝/复制/分享到另一台电脑?...
- Oracle cursor 元数据,第七章 数据库元数据(Database Metadata)