본문 바로가기

Trouble shooting

[Trouble shooting] Failed to spawn: unexpectedly timed out while waiting for signal from process with PID 1234

반응형

Trouble

도메인을 이용하여 frida 명령어를 사용하면 다음과 같은 에러가 발생한다.

C:\test> frida -U -f example.com -l hook.js

Failed to spawn: unexpectedly timed out while waiting for signal from process with PID 1234

Trouble Shooting

안드로이드 10 버전 이상일 경우 해당 에러가 발생하는 거 같다. 안드로이드 10 버전 이상부터 존재하는 USAP 기능(빠른 앱 실행 기능) 을 비활성화하면 된다. 또는 PID값을 이용하여 요청을 보내도 되는 경우가 있다. 에러를 해결할 수 있는 3가지 방법을 정리해 봤다.

 

1. USAP기능 비활성화

C:\test> adb shell
> setprop persist.device_config.runtime_native.usap_pool_enabled false

 

2. PID 값으로 요청

프리다 명령어를 쓸 때 PID값을 이용하여 작성할 수 있어 해당 도메인 명의 PID 값을 이용하여 프리다를 실행시킬 수 있다. 

C:\test> frida -U -p 1234 -l hook.js

 

3. 최후의 수단

위 두 가지 방법으로 안 될 때가 있기 때문에 내가 자주 쓰는 방법이다.

> adb shell
> su
> mount -o remount,rw '/'
> chmod 777 /
> setenforce 0
> setprop persist.device_config.runtime_native.usap_pool_enabled false
> settings put system screen_off_timeout 100000000
> exit
> exit

 

만약 위 방법을 사용해도 frida -U -f example.com -l hook.js 실행 시 같은 오류가 발생한다면 PID값을 이용하여 프리다를 실행시킨 후 다시 도메인명을 이용하여 프리다를 실행시켜 본다. 그러면 정상적으로 실행될 때가 있다. 만약 그래도 실행이 되지 않는다면 프리다 서버 자체를 껐다가 다시 켜보는 방법도 해보는 것이 좋다.

C:\test> frida -U -f example.com -l hook.js
>> 오류 발생

C:\test> frida -U -p 1234 -l hook.js
>> 오류 발생

C:\test> frida -U -f example.com -l hook.js
>> 성공적으로 실행 됨
반응형