Skip to content
/ r0tracer Public
forked from r0ysue/r0tracer

安卓Java层多功能追踪脚本

Notifications You must be signed in to change notification settings

Imzpy/r0tracer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

2023-6-15更新:

  • 基于最新Frida16
  • 新增iOS平台支持且自动判断应用所属平台
  • 输出信息非常全面,iOS平台对property的访问也被hook并输出
  • 新增hookALL()模式,hook应用的所有类方法重载;(小应用可用,大应用扛不住)

r0tracer

安卓Java层多功能追踪脚本

AKA:精简版 objection + Wallbreaker

功能:

  • 根据黑白名单批量追踪类的所有方法

hook("javax.crypto.Cipher", "$");

  • 在命中方法后打印出该类或对象的所有域值、参数、调用栈和返回值

  • 极简的文本保存日志机制、易于搜索关键参数

  • 针对加壳应用找不到类时可以切换Classloader

使用方法:

  1. 修改r0tracer.js文件最底部处的代码,开启某一个Hook模式。

  1. 推荐使用Frida14版本,并且将日志使用-o参数进行输出保存
$ frida -U -f com.r0ysue.example -l r0tracer.js  --no-pause -o saveLog5.txt

"-f"为Spawn模式,去掉"-f"为Attach模式

  1. Frida版本=<12时,要加上--runtime=v8选项
$ frida -U com.r0ysue.example -l r0tracer.js  --runtime=v8 --no-pause -o saveLog6.txt

优势

  • objection增加延时spawn
  • objection增加批量hook类\方法\构造函数
  • Wallbreakerfrida14上还是一直崩
  • Wallbreaker增加hookinstancefields
  • inspectObject函数可以单独拿出去使用

注意点:

  • Frida的崩溃有时候真的是玄学,大项目一崩溃根本不知道是哪里出的问题,这也是小而专的项目也有一丝机会的原因
  • Frida自身即会经常崩溃,建议多更换Frida(客/服要配套)版本/安卓版本,ROOT采用Magisk Root
  • 我自己常用的组合是两部手机,Frida12.8.0全家桶+Google Factoty Image Android 8.1.0,和Frida14.2.2全家桶+Google Factoty Image Android 10

致谢 Thanks to

项目 链接
objection https://github.com/sensepost/objection
Wallbreaker https://github.com/hluwa/Wallbreaker
hacking-frida https://awakened1712.github.io/hacking/hacking-frida/

About

安卓Java层多功能追踪脚本

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%