美文网首页
frida捕获加密调用

frida捕获加密调用

作者: 静析机言 | 来源:发表于2020-08-21 12:18 被阅读0次

本篇文章演示如何用Frida拦截Cipher.init()调用监控加密调用并捕获有关使用的加密类型和密钥的详细信息。

function main() {

if (Java.available) {

Java.perform(function(){

const Cipher = Java.use('javax.crypto.Cipher');

Cipher.init.overload('int', 'java.security.Key', 'java.security.spec.AlgorithmParameterSpec').implementation = function (opmode, key, iv){

if (iv.$className == 'javax.crypto.spec.IvParameterSpec'){

var opmodestring = this.getOpmodeString(opmode);

var algo = this.getAlgorithm();

const keyclass = Java.use('javax.crypto.spec.SecretKeySpec');

const ivclass = Java.use('javax.crypto.spec.IvParameterSpec');

var keystoreKey = Java.cast(key, keyclass);

var ivInstance = Java.cast(iv,ivclass);

var result=this.init(opmode,key,iv);

console.log('[] opmode:'+opmodestring);

console.log('[] algorithm:'+algo);

console.log('[] key className:'+key.$className);

console.log('[] key value:'+ JSON.stringify(keystoreKey.getEncoded());

console.log('[] iv value:'+JSON.stringify(ivInstance.getIV());

}

return result;

}

})

}

}

setImmediate(main)

其中,this.getAlgorithm()确定使用哪种加密算法;key.$className,iv.$ className将为我们提供对象的类名; keystoreKey.getEncoded()获取密钥的内容;ivInstance.getIV()获取IV值。

使用如下以下命令运行脚本,传递包名和我们创建的cipher.js脚本

frida -U -f 包名 -l cipher.js --no-pause

相关文章

  • frida捕获加密调用

    本篇文章演示如何用Frida拦截Cipher.init()调用监控加密调用并捕获有关使用的加密类型和密钥的详细信息...

  • Frida中的Stalker(1)

    Stalker是Frida的代码跟踪引擎.下面的内容来自Frida官网. 在加密解密,trace,代码定位方面用途...

  • 2.10 在verification中捕获调用参数

    单次调用捕获 使用withCapture()捕获最后一次调用的参数。 多次调用捕获 使用withCapture(L...

  • Frida 零碎知识(三)

    多设备连接RPC远程调用send回调 多设备连接 启动frida-server时自己指定端口 如果使用Frida ...

  • frida 打印调用栈

    智姐姐的打印堆栈的脚本特别好用: console.log(Java.use("android.util.Log")...

  • frida-ps AttributeError: '_frida

    frida好久没用了,今天用frida-ps追踪函数调用的时候报了个错: 很奇怪,之前还好好的。猜测可能是mac跟...

  • Jest - 模拟函数 mock function

    模拟函数通过擦去真正的函数实现,捕获函数调用(调用传参),当使用 new 实例化的时候捕获构造函数,并允许测试时配...

  • DOM事件与事件委托

    事件流 DOM 事件流分为三个阶段:捕获阶段、目标阶段、冒泡阶段。先调用捕获阶段的处理函数,其次调用目标阶段的处理...

  • frida调用制作的dex

    一、如何制作dex 通常我们需要将某些代码逻辑包含在某个class中,写好class后,怎样将其制作成dex文件?...

  • 安卓逆向-frida-hook加密方法的调用栈信息

    常用加密算法通杀:

网友评论

      本文标题:frida捕获加密调用

      本文链接:https://www.haomeiwen.com/subject/azdujktx.html