吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 9671|回复: 25
收起左侧

[Android 原创] Frida使用教程

  [复制链接]
behindeye 发表于 2021-9-26 00:32

一、安装 frida

命令

pip install frida

image-20210531000139300

pip install frida-tools

image-20210531214812220

安装过程出现以下错误:

ValueError: check_hostname requires server_hostname

解决方法:

  1. 关闭抓包工具

二、安装 frida-server

2.1 下载

下载地址:https://github.com/frida/frida/releases

Android Tutorials地址:https://frida.re/docs/android/

查看cpu架构

adb shell getprop ro.product.cpu.abi 

选择对应架构的server下载

image-20210531000738397

gadget适用于当无法获取root权限时可以将gadget.so植入目标apk中重打包,通过修改应用,使得server以应用的权限启动;还有frida-gum、frida-gumjs、frida-inject、frida-devkit等

2.2  启动 firida-server

操作步骤:解压上面下载的文件,然后 push 到手机 /data/local/tmp,接着启动 firda-server 服务

$ adb root 
$ adb push  frida-server-14.2.18-android-arm /data/local/tmp

$ adb shell
$ su
$ cd /data/local/tmp
$ chmod 777 /data/local/tmp/frida-server-14.2.18-android-arm
$ ./frida-server-14.2.18-android-arm

端口映射

adb forward tcp:27042 tcp:27042
adb forward tcp:27043 tcp:27043

查看进程

frida-ps -U

image-20210531215140118

三、hook进程

import frida
import sys

def on_message(message, data):
    if message['type'] == 'send':
        print("
  • {0}".format(message['payload']))     else:         print(message) jsHook = """     Java.perform(function () {         // hook Log.w(tag,msg) 方法         var log = Java.use('android.util.Log');         log.w.overload("java.lang.String","java.lang.String").implementation = function(tag,msg){             console.log("tag",tag)             console.log("msg",msg)             return this.w(tag,msg+"?") // msg 后面添加 ?         };     }); """ process = frida.get_usb_device().attach("com.xxx.tool") // 目标包名 script = process.create_script(jsHook) script.on('message', on_message) print('
  • Running CTF') script.load() sys.stdin.read()
  • 如果 logcat 打印日志包含 ?号,则操作成功

    image-20210602002229461

    四、参考资料

    frida - android : https://frida.re/docs/examples/android/

    hook工具frida原理及使用 : https://www.jianshu.com/p/51e6aef175a2

    Hook神器家族的Frida工具使用详解:http://www.520monkey.com/archives/1256

    免费评分

    参与人数 12吾爱币 +9 热心值 +9 收起 理由
    chinacore_zhao + 1 谢谢@Thanks!
    leokyer + 1 + 1 谢谢@Thanks!
    Quincy379 + 1 + 1 有点厉害,谢谢
    chenyang33207 + 1 + 1 谢谢@Thanks!
    HaiWang2019 + 1 谢谢@Thanks!
    hwh425 + 1 热心回复!
    blindcat + 1 + 1 谢谢@Thanks!
    timeni + 1 热心回复!
    小马奔腾2 + 1 + 1 我很赞同!
    okmad + 1 热心回复!
    sdaza + 1 热心回复!
    为之奈何? + 1 + 1 我很赞同!

    查看全部评分

    本帖被以下淘专辑推荐:

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

    IBinary 发表于 2021-9-26 09:57
    谢谢分享.看雪有个 fridaxxx.chm 不过里面很多东西感觉过时了. 但也有参考价值. 可以学学.
    frida跟windows下的 easyhook detours minhook 一样都是个hook库. 但是frida比他们都强大.
    windows下的逆向工程师也应该学学frida. 特别是怎么应用于windows.
    GuiXiaoQi 发表于 2021-9-26 08:13
    小马奔腾2 发表于 2021-9-26 08:32
    dllrose 发表于 2021-9-26 09:29
    不错 很久没学了 看看
    csp3949160 发表于 2021-9-26 09:34
    学习了,谢谢楼主
    stilllove88 发表于 2021-9-26 10:36
    留个记号 谢谢分享
    warner 发表于 2021-9-26 14:13
    可以,很强
    blindcat 发表于 2021-9-26 17:06
    感谢分享
    AIA 发表于 2021-9-26 23:44
    这个真的很强,可以学习好一阵子了
    您需要登录后才可以回帖 登录 | 注册[Register]

    本版积分规则

    返回列表

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

    GMT+8, 2024-11-24 14:33

    Powered by Discuz!

    Copyright © 2001-2020, Tencent Cloud.

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