Frida 学习(一)

Frida一个轻量级的HOOK 注入神器,能够满足我们对一切搞事情的要求:无论是内核插桩,还有到上层的HOOK ,以及演变的脱壳等等都可以使用,佩服国外这些大佬。

在去看原理的时候,首先先体验一下效果:

一.安装:

 

1.PC端:

保障自己电脑上Python以及pip环境;安装frida 模块以及frida-tools模块

pip install frida

pip install frida-tools

 

2.手机端:

根据自己手机架构的要求找到frida-server:

https://github.com/frida/frida/releases

操作跟android_server一样的。

 

adb push frida-server /data/local/tmp/

adb shell

su

cd /data/local/tmp/

chmod 777 frida-server

./frida-server

 

验证一下frida环境有没有搭建成功:

frida-ps -R

说明成功了,有问题再进一步搜索排查。

二.使用:

 

端口号转发,建立手机与电脑端的通信:

adb forward tcp:27042 tcp:27042

adb forward tcp:27043 tcp:27043

 

接下来就可以使用Python去操控交互操作了。

体验可以参考https://www.jianshu.com/p/ca8381d3e094这个链接进行体验,只能说太强大了。。

 

三.原理:

 

这个框架的原理很感兴趣,是怎么通过JS打通本地层、Java之间的连接,很有意思去大致了解分析一下:

frida-gum 本身是为了一种跨平台的设计,针对CPU架构和操作系统后端的设计处理;

 

Frida-java的分析可以参考:https://mabin004.github.io/2018/07/31/Mac%E4%B8%8A%E7%BC%96%E8%AF%91Frida/

打通JS可以通过引擎链接到Native,Native通过JNI来链接Java这样的一个关系,Frida通过操控js来实现对于Java层和本地层面的HOOK 操作,具体的HOOK原理不是很难理解。

 

 

 

参考:

1.https://www.jianshu.com/p/ca8381d3e094

2.https://bbs.pediy.com/thread-229215.htm

3.https://mabin004.github.io/2018/07/31/Mac%E4%B8%8A%E7%BC%96%E8%AF%91Frida/

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值