A machine learning tool for quantitative risk analysis of Android apps by analyzing declared and actual permission usage.
RiskInDroid is a tool for quantitative risk analysis of Android applications that uses machine learning techniques to assign a risk score between 0 and 100. It analyzes both declared permissions in the app manifest and actual permission usage in the bytecode through static analysis, providing a more comprehensive security assessment than traditional methods.
Security researchers, Android developers, and organizations needing to assess the security risk of Android applications, particularly those concerned with permission misuse and malware detection.
Unlike simpler permission checkers, RiskInDroid uses multiple machine learning classifiers and deep static analysis to provide a quantitative risk score based on actual code behavior, validated on large malware and benign app datasets.
A tool for quantitative risk analysis of Android applications based on machine learning techniques
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Extracts four permission sets (declared, exploited, ghost, useless) through bytecode static analysis, providing insights beyond simple manifest checks, as detailed in the README.
Uses multiple scikit-learn classifiers trained on over 118,000 apps to compute a quantitative risk score, validated empirically on malware and benign datasets.
Offers a web UI for easy APK upload and result visualization, demonstrated in the demo GIF, making it accessible without command-line expertise.
Provides a Docker image for quick setup, reducing dependency management overhead, as highlighted in the installation section.
Models are based on a 2016 dataset, which may not reflect current Android permissions or malware trends, as noted in the README's caution about potential differences.
Requires Python 3.9+, Java 8+, and tools like p7zip, making setup from source more involved than the Docker option, per the prerequisites.
The PermissionChecker.jar component is restricted to research use only, potentially hindering commercial adoption, as stated in the license section.