@qtfreet00 demo:https://www.52pojie.cn/thread-428450-1-1.html
我将app放进模拟器,未开启wifi代{过}{滤}理的情况下提示“请求成功”。开启后提示“请求失败”。
那我想,我开启代{过}{滤}理的情况下,hook “getDefaultHost” 和 "getDefaultPort"将其返回为 null 和 -1,是不是就会提示“请求成功”?但我hook根本没效果。
然后我将代{过}{滤}理关了,没有hook的情况下点,提示“请求成功”,然后hook “getDefaultPort”,将其返回值改为666,本应该提示“请求失败”的,但app还是提示“请求成功”。
我怀疑是不是我hook错误了,然后自己搞了个app,hook成功,能改端口号,但hook大佬的demo就无效?
以下是我hook大佬的demo时写的程序,发现hook无效。所以这个demo应该怎样hook "getDefaultHost" 和"getDefaultPort"这两个函数?还是大佬在demo中设置了反hook?
[Python] 纯文本查看 复制代码 import frida, sys
jscode = '''
Java.perform(function(){
var Proxy = Java.use("android.net.Proxy");
Proxy.getDefaultHost.implementation=function(){
return null;
}
Proxy.getDefaultPort.implementation=function(){
return 666;
}
});
'''
def on_message(message, data):
print(message)
device = frida.get_remote_device()
pid = device.spawn(['com.wuaipojie.demo'])
device.resume(pid)
process = device.attach(pid)
script = process.create_script(jscode)
script.on('message', on_message)
print('')
script.load()
sys.stdin.read() |