Фрида python перенаправить вывод в файл - PullRequest
0 голосов
/ 28 мая 2020

Я использую frida- python для подключения функции android и пытаюсь перенаправить вывод в файл.

Я пытался перенаправить stdout в файл:

sys.stdout = open(os.path.join(self.dump_path,'apk_hook.txt'), 'w')

перед вызовом

script = self.session.create_script(open("java_hook.js").read())
script.load()

Но это перенаправляет все, а не только результат frida- python.

Я также пытался записать результат в файл непосредственно в файле javascript (java_hook. js), но я не знаю, как передать мою переменную self.dump_path из моего python файла в мой javascript файл.

Java.use('java.net.URL').$init.overload('java.lang.String').implementation = function(str1) {
     var file = new File(How_can_i_pass_this_dynamic_variable,"w");
     file.write("helloworld");
     return this.$init(str1);
};

Знаете, как это сделать ??

Спасибо.

1 Ответ

0 голосов
/ 30 мая 2020

Используйте send

Java.use('java.net.URL').$init.overload('java.lang.String').implementation = function(str1) {
     send(dynamic_variable);
     return this.$init(str1);
};

На стороне python

f = open('/tmp/log', 'w')    
# ...
def on_message(msg, _data):
    f.write(msg['payload'] + '\n')
# ...
script.on('message', on_message)

Если вы не хотите записывать в файл на телефоне

    var f = new File("/sdcard/log.txt", "w");
    f.write("line\n");
    f.flush();
    f.close();

...