ANGEL is a script designed to automate the collection of essential data from Android devices.
ANGEL is a powerful script designed for Android devices, aimed at automating the collection of essential data. This tool simplifies the process of gathering critical information, making it invaluable for developers, testers, and forensic analysts.
Developed as part of a cybersecurity project, ANGEL serves as a crucial tool for professionals in digital forensics, providing a fast and efficient way to gather necessary data from Android devices. It's particularly useful for scenarios involving security analysis, data recovery, and educational purposes
Key features of ANGEL include automated data extraction, compatibility with a wide range of Android devices, and user-friendly operation, ensuring that even those with minimal technical expertise can effectively utilize the tool
To test ANGEL in a virtual environment, follow these steps:
press keyboard's "windows key" button and "r" button will pops up "run.exe" type sysdml.cpl
you can see system properties then get to the Advance tab
when you reached advanced tab press Environment Variables
now select System variables's Path
add your adb path ex) "C:\Users\yourusername\AppData\Local\Android\Sdk\platform-tools"
(if you set adb environment properly, cmd will show like this)
if you followed all step described above run adb on cmd if your terminal already executed exit that terminal then retry it
- Enable Root Access: Ensure that the option to get Root privilege is enabled in Nox Player.
- Connect Your Nox Player: Establish a connection with your Nox player.
- Execute Shell: Access the shell with root privileges.
- Open avd: Open Android Virtual Device
- Select Hardware: Select Hardware which has Play Store mark
- Select System Image: Select System Image which has Target's "~~~ Google APIs"
q) why should i choose Target's Google API -> a) Because we need root access so the virtual device already rooted status - type adb devices: make sure you should type adb devices before execute adb shell
- type adb root: now get root access
- type adb shell: now you got access to Android shell
As shown above, you can access the shell with root access.
Determine the architecture of your environment.
getprop ro.product.cpu.abi
or you can try follow command
uname -m
For example, the output above indicates an x86 architecture.
Push the ANGEL scripts and the Frida server to your environment. You can download the Frida server from following link:
https://github.com/frida/frida/releases
After completing your tasks using ADB, it's recommended to properly disconnect the session, especially when working with specific IP addresses and port numbers. To disconnect from an ADB session and if you want to ensure that all ADB processes are terminated and to reset the ADB server, use the following command:
(Please note that the following command examples are based on the scenario where ADB was connected to a NOX Player. They demonstrate how to proceed with the disconnection in this specific context)
adb disconnect 127.0.0.1:62001
and
adb kill-server
[*] Error handling
If you encounter issues where characters appear shattered after executing Android_main.sh, it may be due to the text type being CRLF instead of LF. In this case, you can convert the line endings using the following command:
- Command Example -
sed -i 's/\r$//' [yourfilename]
(Note: Since we've set the document format to LF in .gitattributes, related issues are unlikely to occur. However, this information is provided just in case.)
The primary requirement for this project is ADB (Android Debug Bridge). If you only need ADB without the full Android Studio suite, you can download the Android SDK Platform-Tools from Google. This package includes ADB and other essential tools.
- Download link: Android SDK Platform-Tools
After downloading, unzip the package to your desired location and set up the ADB path in your system's Environment Variables to use ADB from the command line or terminal.
Ensure that the steps are clearly numbered or bulleted for easy following. Check for any technical jargon that might be unclear to a general audience and clarify or simplify as needed.
Currently, Our Project uses MIT License
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated. For detailed guidelines, please refer to our CONTRIBUTING.md.