After a long period of hooking applications on Ubuntu, Python and JavaScript are unable to interact.
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
- Tipo di issue
- Bug
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- javascript, python, ubuntu, unity
- Ambito
- devtools, operating-systems, reverse-engineering
Direzione di ricerca
Inizia riproducendo il caso di lunga durata dal punto di ingresso principale fornito, dal gestore dei messaggi Python e dalla funzione JavaScript handleGetCount con Python 3.10.12 e Frida 16.4.7 su Ubuntu. Verifica se il problema riguarda i messaggi dello script, le chiamate recv o entrambi; il lavoro è completato quando è stata identificata una causa riproducibile e la comunicazione è stata ripristinata senza un errore silenzioso.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Long-term hooking in Ubuntu causes the Python script to be unable to print logs from Frida and receive remote calls from Frida.
The scenario involves hooking into an IL2CPP Unity game on Ubuntu, but after running for a while, the aforementioned problem occurs. Python continues to run, and Frida is also hooking into the application normally, but there is no interaction between the two.
main
if __name__ == '__main__':
manager = frida.get_device_manager()
device = manager.get_local_device()
pid = device.spawn(['my-application'])
process = device.attach(pid)
script = process.create_script(test_js)
script.on('message', on_message)
t1 = Thread(target=reportMatch)
t1.start()
print('[*] Running')
script.load()
device.resume(pid)
sys.stdin.read()
python handle send function
if message['type'] == 'send':
data = "{0}".format(message['payload'])
if message['payload']["type"] == "sendCount":
playersCount = message['payload']['count']
print(playersCount)
js handle handleGetCount function
recv("getPlayersCount", handleGetCount);
function handleGetCount() {
recv("getPlayersCount", handleGetCount);
//some function to get count
send(new countData(count + "/" + maxCount));
}
There is continuous interaction between them; Python calls a method in JavaScript every 5 seconds to retrieve some content, so there is no long period of inactivity. However, the situation mentioned above still occurs where it seems like Python and Frida have lost connection, yet they are both running normally without any exceptions. It is hoped that this issue can be resolved.
python version:3.10.12
frida version:16.4.7
The hook is for a local application, not a remote call, so theoretically, there should be no network-related reasons.
I'm looking forward to resolving this issue. If necessary, you can provide your email address to me, and I can provide more information. This issue is really troubling me~
- Lingua principale
- Python
- Stelle
- 873
- Fork
- 173
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di frida/frida-python
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
frida/frida-python#265 · 2 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
frida/frida-python#262 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
frida/frida-python#247 · 2 commenti · 2 reazioni ·
-
How can I connect to Ipv6? Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
frida/frida-python#243 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 42/100
frida/frida-python#242 · 1 commento ·
Tutte le issue di frida/frida-python
Issue simili
-
area: harness bug status: needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
Human-Agent-Society/reef#625 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 80/100
learningequality/kolibri#15351 · 2 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Name consistency Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
eellak/triplestore#65 · 1 commento ·