“unable to inject library into process without libc” when attach to child process that origin=exec
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- android, python
- Área
- devtools, mobile-dev
Línea de trabajo
Comienza con examples/child_gating.py y reproduce la secuencia child-added de Android en la que origin cambia de fork a exec. Sigue la ruta de attach a través de frida/core.py y del sitio de llamada indicado en frida_tools/application.py, comparando el attach exitoso de fork con el attach fallido de exec. Se considera terminado cuando el caso exec indicado está resuelto o su comportamiento no compatible está claramente establecido y cubierto por una comprobación de regresión adecuada.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
this is my environment:
genymotion: 3.2.1 + Samsung Galaxy S7 6.0-API 23,also test on Google Nexus 5X 8.0-API 26
frida-server: frida-server-15.1.17-android-x86,also tested frida-server-15.1.14-android-x86 and frida-server-15.0.0-android-x86
script: https://github.com/frida/frida-python/blob/master/examples/child_gating.py
I only changed the argv to myappid
def _start(self):
argv = [myappid]
and I got these outputs:
✔ spawn(argv=['myappid'])
✔ attach(pid=4486)
✔ enable_child_gating()
✔ create_script()
✔ resume(pid=4486)
⚡ child_added: Child(pid=4602, parent_pid=4486, origin=fork)
✔ attach(pid=4602)
✔ enable_child_gating()
✔ create_script()
✔ resume(pid=4602)
⚡ child_removed: Child(pid=4602, parent_pid=4486, origin=fork)
⚡ child_added: Child(pid=4602, parent_pid=4602, origin=exec, ......)
✔ attach(pid=4602)
Exception in thread Thread-1:
Traceback (most recent call last):
File "/home/nothing/miniconda3/lib/python3.7/threading.py", line 926, in _bootstrap_inner
self.run()
File "/home/nothing/miniconda3/lib/python3.7/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/nothing/miniconda3/lib/python3.7/site-packages/frida_tools/application.py", line 765, in _run
work()
File "lavpn.usa_spawn_gating.py", line 20, in
self._device.on("child-added", lambda child: self._reactor.schedule(lambda: self._on_child_added(child)))
File "lavpn.usa_spawn_gating.py", line 61, in _on_child_added
self._instrument(child.pid, child)
File "lavpn.usa_spawn_gating.py", line 45, in _instrument
session = self._device.attach(pid)
File "/home/nothing/miniconda3/lib/python3.7/site-packages/frida/core.py", line 26, in wrapper
return f(*args, **kwargs)
File "/home/nothing/miniconda3/lib/python3.7/site-packages/frida/core.py", line 165, in attach
return Session(self._impl.attach(self._pid_of(target), *args, **kwargs))
frida.NotSupportedError: unable to inject library into process without libc
We can see that when attach the child process which origin is fork,it's ok.
but when attach the same process which origin changed to exec,the error occurs.
I searched and find https://github.com/frida/frida/issues/936,but no lucky.
I think maybe because I used genymotion emulator, but why first attach is ok?
- Lenguaje dominante
- Python
- Estrellas
- 873
- Forks
- 173
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de frida/frida-python
-
Custom agent with Java bridge Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
frida/frida-python#265 · 2 comentarios ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
frida/frida-python#262 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
frida/frida-python#247 · 2 comentarios · 2 reacciones ·
-
After a long period of hooking applications on Ubuntu, Python and JavaScript are unable to interact. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
frida/frida-python#246 ·
-
How can I connect to Ipv6? Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
frida/frida-python#243 ·
Todos los issues de frida/frida-python
Issues similares
-
[Bug] reef-hermes tells me to resume with hermes --resume, which does not work from my shell Abiertoarea: harness bug status: needs-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Human-Agent-Society/reef#625 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 80/100
learningequality/kolibri#15351 · 2 comentarios ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Name consistency Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
eellak/triplestore#65 · 1 comentario ·