吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 13109|回复: 24
收起左侧

[Android 原创] Python+Frida+雷电模拟器 新手入坑实录

  [复制链接]
spcspcspcspcspc 发表于 2022-2-25 12:32
本帖最后由 spcspcspcspcspc 于 2022-2-28 12:05 编辑

最近想学下FrIDA,看教程挺简单,就动手试试,结果三步一个坑,坑坑要狗命!
                                           无标题.png
主要参考 windy_ll 大神的《frida入门总结》
小白避坑原则第一条:所有软件一定从官网下载原版!!!(其中的心酸就不细说了。。。)
1.Python+Frida安装
按照原帖第1步下载安装,没有问题。继续安装frida。
开始-运行-cmd,输入命令pip install frida 然后“ Running setup.py install for frida ...”这里就卡住了,卡了半小时还不动。。。
1.png
解决办法:手动安装frida,官方下载地址:https://pypi.org/project/frida/#files,下载最新的frida-15.1.17.tar.gz,解压得到frida-15.1.17.tar,再解压得到frida-15.1.17文件夹,进入文件夹,地址栏输入cmd回车,输入命令“python setup.py install”。提示“ please download it manually to C:\Users\Administrator/frida-15.1.17-py3.10-win-amd64.egg”。(网速好也可能自动下载,省略后面步骤)
2.png
根据提示回刚才的网页下载frida-15.1.17-py3.10-win-amd64.egg,放到“C:\Users\Administrator”。命令行中再输入命令“python setup.py install”,安装完成没有问题。
2.安装frida-tools
(原帖第3步),命令行输入“pip install frida-tools”,自动完成。网速慢的话可以开5到6个cmd同时运行。
3.安装frida-sever到雷电模拟器
打开雷电模拟器,下载adb调试工具(也可以到雷电模拟器安装目录里),地址栏输入cmd回车,
输入命令“adb.exe kill-server”(连不上的时候就运行该命令,很好用。),
再输入命令“adb.exe devices”就可以看到5554的设备。(雷电模拟器是自动连接的,其他模拟器要用类似“adb connect 127.0.0.1:5555”的命令连接)
3.png
继续输入命令“adb shell”,“getprop ro.product.cpu.abi”,“exit”。显示X86。
4.png
按照原帖第4步,但是下载的是‘frida-server-15.1.17-android-x86.xz’,解压出最里面的‘frida-server-15.1.17-android-x86’文件放到adb.exe所在文件夹,地址栏输入cmd回车,输入命令“adb push frida-server-15.1.17-android-x86 /data/local/tmp”等一会就完成了。继续输入命令“adb shell”,“su”,“cd /data/local/tmp”,“chmod 777 frida-server-15.1.17-android-x86”,“./frida-server-15.1.17-android-x86”,然后没有反应了。。。
5.png
不要关闭这个窗口,另开个cmd,继续原帖第6步。(“frida-ps -U”列举出来设备上的所有进程“frida-ps -Ua”列举出来设备上的所有应用程序)
4.调试HOOK
下载原帖中的附件,我们用fridajava.apk和fridajava.py来测试,模拟器中安装fridajava.apk并打开。
5.安装PyCharm
PyCharm是主流的python编辑器了,官方地址:https://www.jetbrains.com/pycharm/download/#section=windows ,下载右边的Community版本。安装运行都很顺利。
汉化方法:点击file-settings-plugins,中上位置搜索框chinese,找到chinese(simplified)的那个安装重启。
把附件的‘fridajava.py’代码贴到PyCharm中运行,显示未找到'frida'模块。。。
6.png
解决方法:放弃python,没错从入门到放弃就是这么迅速。。。因为折腾半天还是各种错误,Python实在搞不定。卸载删除PyCharm。
6.继续调试HOOK
Frida既然是python + java的框架,能不能绕过Python直接用java呢?当然是可以的。参照<逆向分析某视频app>https://www.52pojie.cn/thread-1566183-1-1.html帖子中的一段代码“frida -U -n com.yensbcyabet.cmsnaygeste:plugin -l 1.js --no-pause”。根据fridajava.py中代码改成下列Java代码,保存为'1.js'.
[Java] 纯文本查看 复制代码
Java.perform(function () {
    var MainActivity = Java.use('com.example.testfrida.MainActivity');
    MainActivity.testFrida.implementation = function () {
        console.log('Statr! Hook!');
        return 'Change String!'
    };
});

'1.js'所在目录地址栏输入CMD,回车,输入命令“frida -U -n com.example.testfrida -l 1.js --no-pause”显示错误‘unable to find process with name 'com.example.testfrida'’,
7.png
百度到一个办法可以用PID来替代名字执行代码,执行命令”frida-ps -Ua“看到testfrida的PID为2503,执行命令“frida -U -p 2503 -l 1.js --no-pause”,雷电模拟器里点击按钮,确实HOOK成功了。
8.png
但是用PID的话每次打开都不一样,需要修改。
还有一种方法使用命令“frida -U -f com.example.testfrida --no-pause”,“%exec 1.js”先找到进程再执行脚本,也成功了,而且不用改命令。



经历各种错误和失败,总算是运行Frida且HOOK成功了。
希望此贴能对初学者有点用处。
关于上面的各种坑希望大神给解答下。


后续填坑:

Python+Frida+雷电模拟器 新手入坑记录2

免费评分

参与人数 9吾爱币 +8 热心值 +8 收起 理由
heyimyh + 1 + 1 我很赞同!
guo15049434245 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
CQYLOVEYHY + 1 热心回复!
笙若 + 1 + 1 谢谢@Thanks!
zhchxu123 + 1 用心讨论,共获提升!
SFY110 + 1 + 1 谢谢@Thanks!
唐小样儿 + 1 + 1 我很赞同!
haiyangnanzi + 1 + 1 小白看不懂,楼主加油
闲人来人间 + 1 + 1 用心讨论,共获提升!

查看全部评分

本帖被以下淘专辑推荐:

  • · 好帖|主题: 550, 订阅: 86

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

sonmudef 发表于 2022-2-25 14:15
找不到frida应该是存在多个版本的python或者python的debugger,要在pycharm里选择安装有frida的编译器进行编译。
或者直接在虚拟环境里安装frida或者编译
葡萄 发表于 2022-2-25 15:03
feob 发表于 2022-2-25 15:28
decoy1980 发表于 2022-2-25 16:29
认真的看了一遍,还需要继续学习。
jyys1860 发表于 2022-2-25 18:32
看别人的教程觉得很简单, 等自己上手才发现经常会出现各种问题,只能到处百度,反复试错。。。这种经历真是深刻!
blackboard 发表于 2022-2-26 07:17
挺详细的,不错
formli 发表于 2022-2-26 09:05
这个模拟器能打雷电不
daxin2021 发表于 2022-2-26 11:12
没点动手能力真整不会
zhchxu123 发表于 2022-2-26 12:38
真是一把辛酸泪!!!弄过的基本都差不多,看着别人的好简单自己去弄就打扰了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-21 23:40

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表