Android Malware Detection - A tool for quantitative risk analysis of Android applications based on machine learning techniques. Android Malware Detection is a tool for quantitative risk analysis of Android applications written in Java, which is used to check the permissions of the apps, and Python, which is used to compute a risk value based on apps' permissions. The tool uses classification techniques through scikit-learn, a machine learning library for Python, in order to generate a numeric risk value between 0 and 100 for a given app. In particular, the following classifiers of scikit-learn are used in Android Malware Detection (this list is chosen after extensive empirical assessments): * Support Vector Machines (SVM) * Multinomial Naive Bayes (MNB) * Gradient Boosting (GB) * Logistic Regression (LR) Unlike other tools, Android Malware Detection does not take into consideration only the permissions declared in the app manifest, but carries out reverse engineering on the apps to retrieve the bytecode and then infers through static analysis which permissions are actually used and which are not. In this way, it extracts four sets of permissions for every analyzed app: * Declared permissions: extracted from the app manifest * Exploited permissions: declared and actually used in the bytecode * Ghost permissions: not declared but with usages in the bytecode * Useless permissions: declared but never used in the bytecode