Frida +Python+Javascript 当找不到类时"java.use (" XXX ") "做什么?



我在python内部(在android+frida环境中(使用以下javascrip来挂接一个方法。

jscode ="""
Java.perform(function () { 
console.log("start hook...");
var d =java.use("myapp.okhttp3.internal.f.a");
d.verify.implementation =function(p1, p2){
console.log("ssl unpinning for"); 
return true; 
}
});
""" 

这是python文件:

import sys  
import os  
import threading  
import subprocess  
import frida  
import time

jscode ="""
Java.perform(function () { 
console.log("start hook...");
var d =java.use("myapp.okhttp3.internal.f.a");
d.verify.implementation =function(p1, p2){
console.log("ssl unpinning for"); 
return true; 
}
});
"""  
os.system('adb forward tcp:27042 tcp:27042')  
os.system('adb forward tcp:27043 tcp:27043')  
APP_NAME = 'myapp'   
device = frida.get_usb_device(1)
pid = device.spawn([APP_NAME])  
device.resume(pid)  
time.sleep(1)  
process = device.attach(pid)  
print('success')
script = process.create_script(jscode) 
print(pid) 
script.load() 
print('script loaded') 
input()

我的问题是:当找不到类时,var d =java.use("myapp.okhttp3.internal.f.a")是否会抛出"类未找到异常",以及如何查看此异常?我可以使用console.log(java.use("myapp.okhttp3.internal.f.a"(这样的代码来记录"未发现类异常"吗?

您可以在js中使用around try-catch,在python 中使用catch@handle

try {
var d =...
} catch (e) {
send(JSON.stringify(e));
}

在python端

def on_message(msg, _data):
# check if msg has error and handle
script.on('message', on_message)

相关内容

  • 没有找到相关文章

最新更新