H2SO4T / ARES

Black-box tool that uses Deep Reinforcement Learning to test and explore Android applications
GNU Affero General Public License v3.0
70 stars 21 forks source link

Problem when running ARES #22

Open zhliao opened 1 year ago

zhliao commented 1 year ago

Hello,

I tried to test ARES with Ubuntu 20.04 and an emulator with Android 10.0 API 29 but failed. When running the tool, I get the following error: Broadcasting: Intent { act=intent.END_COVERAGE flg=0x400000 pkg=com.shazam.android } Broadcast completed: result=0 adb: error: failed to access 'path/to/ARES/rl_interaction/coverage/shazam-13-27-0-230420/SAC/0/18.ec': No such file or directory

node: no process found INFO | Android emulator version 32.1.11.0 (build_id 9536276) (CL:N/A) INFO | Found systemPath /home/zhliao/Android/Sdk/system-images/android-29/google_apis/x86/ INFO | Crashreporting disabled, not reporting crashes. INFO | Duplicate loglines will be removed, if you wish to see each indiviudal line launch with the -log-nofilter flag. WARNING | Please update the emulator to one that supports the feature(s): Vulkan WARNING | cannot add library /home/zhliao/Android/Sdk/emulator/qemu/linux-x86_64/lib64/vulkan/libvulkan.so: failed INFO | added library /home/zhliao/Android/Sdk/emulator/lib64/vulkan/libvulkan.so INFO | Setting display: 0 configuration to: 1080x2400, dpi: 420x420 INFO | Cold boot: requested by the user cmd: Can't find service: settings cmd: Can't find service: settings cmd: Can't find service: settings 2023-05-17 03:28:26.181 | INFO | main:main:122 - now testing: com.willianveiga.countdowntimer_4

2023-05-17 03:28:26.197 | INFO | main:main:137 - app: com.willianveiga.countdowntimer_4, test 0 of 1 starting Performing Streamed Install adb: failed to install ./apks/com.willianveiga.countdowntimer_4.apk: cmd: Can't find service: package 2023-05-17 03:28:26.400 | DEBUG | rl_interaction.RL_application_env:init:129 - ./apks/com.willianveiga.countdowntimer_4.apk START 2023-05-17 03:28:27.386 | ERROR | main:main:213 - Message: An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error: 'Command '/home/zhliao/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell 'settings delete global hidden_api_policy_pre_p_apps;settings delete global hidden_api_policy_p_apps;settings delete global hidden_api_policy'' exited with code 20'; Command output: cmd: Can't find service: settings cmd: Can't find service: settings cmd: Can't find service: settings

The command I use to launch the tool is as follows: python3 parallel_exec.py --instr_jacoco --list_devices "Pixel_6_API_29" --appium_ports "4273" --android_ports "5554" --path "./apks" --timer 60 --rotation --internet --emu headless --platform_version 10.0 --iterations 3 --algo SAC --timesteps 4000 --trials_per_app 3

I use Appium 1.22.3 with Appium-Python-Client 1.0.2, as this post suggested.

Thank you very much for your time.

MicheleDaniele commented 1 year ago

Good evening @zhliao, I am not a developer of the ##ARES tool, but I can give you a hand about it, since I also encountered this error.If you only need to test the application without needing the coverage you need to remove from the command python3 parallel_exec.py --instr_jacoco --list_devices "Pixel_6_API_29" --appium_ports "4273" --android_ports "5554" --path "./apks" --timer 60 --rotation --internet --emu headless --platform_version 10.0 --iterations 3 --algo SAC --timesteps 4000 ---trials_per_app 3 the '--instr_jacoco' flag, since that flag can only be used if the app has been instrumented through the COSMO tool, I'll leave you the link in case you want to try COSMO To be able to instrument the app though you need the source code of that app, and reading in your comment I see that you are trying to do black box analysis on the shazam app of which you don't have the code I think. So the command should become this: python3 parallel_exec.py --list_devices "Pixel_6_API_29" --appium_ports "4273" --android_ports "5554" --path "./apks" --timer 60 --rotation --internet --emu headless --platform_version 10.0 --iterations 3 --algo SAC --timesteps 4000 --trials_per_app 3 Let me know if the problem is solved, hope I was helpful!!! I wish you a good evening.

Hello,

I tried to test ARES with Ubuntu 20.04 and an emulator with Android 10.0 API 29 but failed. When running the tool, I get the following error: Broadcasting: Intent { act=intent.END_COVERAGE flg=0x400000 pkg=com.shazam.android } Broadcast completed: result=0 adb: error: failed to access 'path/to/ARES/rl_interaction/coverage/shazam-13-27-0-230420/SAC/0/18.ec': No such file or directory

node: no process found INFO | Android emulator version 32.1.11.0 (build_id 9536276) (CL:N/A) INFO | Found systemPath /home/zhliao/Android/Sdk/system-images/android-29/google_apis/x86/ INFO | Crashreporting disabled, not reporting crashes. INFO | Duplicate loglines will be removed, if you wish to see each indiviudal line launch with the -log-nofilter flag. WARNING | Please update the emulator to one that supports the feature(s): Vulkan WARNING | cannot add library /home/zhliao/Android/Sdk/emulator/qemu/linux-x86_64/lib64/vulkan/libvulkan.so: failed INFO | added library /home/zhliao/Android/Sdk/emulator/lib64/vulkan/libvulkan.so INFO | Setting display: 0 configuration to: 1080x2400, dpi: 420x420 INFO | Cold boot: requested by the user cmd: Can't find service: settings cmd: Can't find service: settings cmd: Can't find service: settings 2023-05-17 03:28:26.181 | INFO | main:main:122 - now testing: com.willianveiga.countdowntimer_4

2023-05-17 03:28:26.197 | INFO | main:main:137 - app: com.willianveiga.countdowntimer_4, test 0 of 1 starting Performing Streamed Install adb: failed to install ./apks/com.willianveiga.countdowntimer_4.apk: cmd: Can't find service: package 2023-05-17 03:28:26.400 | DEBUG | rl_interaction.RL_application_env:init:129 - ./apks/com.willianveiga.countdowntimer_4.apk START 2023-05-17 03:28:27.386 | ERROR | main:main:213 - Message: An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error: 'Command '/home/zhliao/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell 'settings delete global hidden_api_policy_pre_p_apps;settings delete global hidden_api_policy_p_apps;settings delete global hidden_api_policy'' exited with code 20'; Command output: cmd: Can't find service: settings cmd: Can't find service: settings cmd: Can't find service: settings

The command I use to launch the tool is as follows: python3 parallel_exec.py --instr_jacoco --list_devices "Pixel_6_API_29" --appium_ports "4273" --android_ports "5554" --path "./apks" --timer 60 --rotation --internet --emu headless --platform_version 10.0 --iterations 3 --algo SAC --timesteps 4000 --trials_per_app 3

I use Appium 1.22.3 with Appium-Python-Client 1.0.2, as this post suggested.

Thank you very much for your time.

zhliao commented 1 year ago

Thank you very much for your suggestion @MicheleDaniele. I will follow your idea and see if it works.