naman374/Android-Malware-Analysis

GitHub: naman374/Android-Malware-Analysis

基于静态分析与机器学习的 Android 恶意软件检测项目,通过提取 APK 权限与 API 调用等特征训练分类器以区分良性与恶意应用。

Stars: 0 | Forks: 0

# 使用静态分析的 Android 恶意软件分析 ## 概述 本项目专注于对 Android 应用进行静态分析,以识别通常与恶意软件相关的特征。该分析过程无需执行应用程序,从而确保了过程的安全性和高效性。 ## 目标 * 使用静态分析技术分析 Android APK 文件。 * 提取与安全相关的特征,如权限和 API 调用。 * 识别恶意应用中常见的模式。 * 构建机器学习分类器,以区分良性和恶意应用。 ## 工具和技术 * Python * APKTool * JADX * Pandas * Scikit-learn * Kali Linux ## 项目结构 android_malware_lab/ ├── static_analysis/ │ ├── main_analysis.py │ ├── classifier.py │ ├── preprocess_and_train.py │ └── android_dataset_final.csv ├── datasets/ (不包含在代码库中) └── README.md ## 方法论 ### 1. APK 反编译 使用 APKTool 和 JADX 对 APK 文件进行反编译,以检查其内容。 ### 2. 特征提取 提取的特征包括: * 请求的权限 * 敏感 API 的使用 * Manifest 信息 * 与安全相关的指标 ### 3. 数据预处理 对提取的特征进行清理,并将其转换为机器学习可用的格式。 ### 4. 分类 训练一个机器学习模型,将应用程序分类为: * 良性 * 恶意软件 ### 5. 数据集 由于 GitHub 的文件大小限制以及分发恶意软件样本带来的安全风险,本仓库不包含项目期间使用的原始 APK 数据集。 有兴趣复现本研究的人员可以从以下公开来源获取 Android 恶意软件数据集: * Drebin Dataset * AndroZoo Dataset * CICMalDroid 2020 * AMD (Android Malware Dataset) 下载数据集后,请根据脚本预期的目录结构对其进行整理,并在必要时更新数据集路径。 用于训练和评估的最终处理后的特征数据集 (`android_dataset_final.csv`) 可能会包含在本仓库中,以便在无需重新分发恶意软件样本的情况下实现复现。 ## 结果 本项目成功演示了静态分析技术在 Android 恶意软件检测和分类中的应用。 ## 免责声明 本仓库仅供教育和研究目的使用。本仓库不包含恶意软件样本和 APK 数据集。
标签:Apex, DAST, Python, 云安全监控, 云资产清单, 恶意软件分析, 指令注入, 无后门, 机器学习, 目录枚举, 移动安全, 逆向工具, 逆向工程, 静态分析