当前位置: 首页 > news >正文

Frida-JSAPI:Interceptor使用

拦截器

Interceptor.attach(target, callbacks[, data])
参数分析

  • target :target是一个NativePointer,用于指定想要拦截的函数的地址。
  • callbacks :参数是一个包含一个或多个回调函数的对象。
    • onEnter(args)
      回调函数,接收一个参数args,它是一个NativePointer对象数组,可以用它来读取或写入函数的参数。
    • onLeave(retval)
      回调函数,接收一个参数retval,它是一个基于NativePointer的对象,包含了函数的原始返回值。

使用方式

setImmediate(function (){var soAddr = Module.findBaseAddress("libxxx.so");var methodAddr = soAddr.add(0x0aaa);Interceptor.attach(methodAddr,{onEnter:function (args){console.log("method is called")},onLeave:function (retval){console.log("result:",retval)}})
})

替换函数

Interceptor.replace(target, replacement[, data])
参数分析

  • target :想替换的目标函数的地址。通常这是一个指向原始函数的NativePointer。
  • replacement :这是新的函数或回调,会代替原来的函数执行。( 使用NativeCallback来实现)

使用方式

setImmediate(function (){var soAddr = Module.findBaseAddress("libxxx.so");var methodAddr = soAddr.add(0x0aaa);Interceptor.replace(methodAddr,new NativeCallback(function(){console.log("replace over!");}))
})
http://www.lryc.cn/news/444703.html

相关文章:

  • 【深度学习】(3)--损失函数
  • git学习报告
  • Spring MVC的应用
  • JavaEE: 深入探索TCP网络编程的奇妙世界(六)
  • 探秘 Web Bluetooth API:连接蓝牙设备的新利器
  • Kubernetes Pod调度基础(kubernetes)
  • Angular由一个bug说起之十:npm Unsupported engine
  • Android 开发高频面试题之——Flutter
  • 视频单目标跟踪研究
  • 若依vue3.0表格的增删改查文件封装
  • 【已解决】如何使用JAVA 语言实现二分查找-二分搜索折半查找【算法】手把手学会二分查找【数据结构与算法】
  • ERROR 1524 (HY000): Plugin ‘mysql_native_password‘ is not loaded
  • .NET 6.0 WebAPI 使用JWT生成Token的验证授权
  • M9410A VXT PXI 矢量收发信机,300/600/1200MHz带宽
  • 用工厂模式演示springboot三种注入方式 | @Autowired
  • es查询语法
  • LabVIEW提高开发效率技巧----合理使用数据流与内存管理
  • 如何在 ECharts 中设置轴标签
  • 怎么用gitee做一个图片仓库,在md文档中用这个图片网络地址,然后显示图片
  • Thinkphp(TP)
  • 【艾思科蓝】前端框架巅峰对决:React、Vue与Angular的全面解析与实战指南
  • IT行业的未来:技术变革与创新的持续推动
  • Python PDF转图片自定义输出
  • Git 常用操作命令说明
  • 自学前端的正确姿势是...
  • C/C++语言基础--C++构造函数、析构函数、深拷贝与浅拷贝等等相关知识讲解
  • json格式互相转换
  • Linux下共享内存详解
  • MySQL篇(管理工具)
  • redis学习笔记(六)