rohanteja09/Android-Malware-Detection-using-Static-and-Dynamic-Analysis

GitHub: rohanteja09/Android-Malware-Detection-using-Static-and-Dynamic-Analysis

结合静态权限分析与动态网络流量分析,利用机器学习和深度学习模型对 Android 应用进行恶意软件分类与检测的研究型项目。

Stars: 0 | Forks: 0

本项目展示了一个 Android 恶意软件检测系统,该系统结合了静态分析(基于权限)和动态分析(基于网络流量),并使用了机器学习和深度学习技术。 该系统能够根据行为模式将 Android 应用程序分类为良性或恶意。 这项工作已发表在 ICICST 2026(NIT J 会议)上。 🚀 功能 🔍 基于权限特征的静态分析 🌐 基于网络流量数据的动态分析 🤖 多种机器学习模型:KNN、Gaussian Naive Bayes、Decision Tree、Random Forest 🧠 深度学习模型:一维卷积神经网络(1D-CNN) 📊 使用 Accuracy、Precision、Recall、F1-score 和 Cohen’s Kappa 进行模型评估 🏆 模型比较和排名,以选择性能最佳的算法 💻 使用 HTML 和 CSS 构建的前端 Web 界面,用于用户交互 🛠️ 技术栈 编程语言:Python 库:Pandas、NumPy、Scikit-learn、TensorFlow/Keras 前端:HTML、CSS 工具:Jupyter Notebook、Anaconda 📂 数据集 本项目使用了两个数据集: 静态数据集 从 Android 应用程序中提取的基于权限的特征 动态数据集 网络流量特征,例如: TCP 数据包 UDP 数据包 DNS 查询 字节传输值 ⚙️ 工作原理 从静态和动态数据集中收集数据 进行数据预处理: 缺失值处理 异常值剔除 Label encoding 特征缩放(RobustScaler) 训练并评估多种机器学习模型 在动态特征上训练 1D-CNN 模型 使用排名方法对模型进行比较 选择表现最佳的模型进行预测 🌐 Web 应用程序 使用 HTML 和 CSS 开发了一个简单的前端界面,其中: 用户可以输入特征值 训练好的模型处理输入 系统预测应用程序是否为: ✅ 良性 ❌ 恶意 📊 结果 在静态和动态分析中均实现了高准确率 Decision Tree 和 Random Forest 在静态/动态模型中表现良好 1D-CNN 提高了对复杂行为模式的检测能力 📌 未来展望 与实时移动设备监控集成 部署为基于云的恶意软件检测服务 开发带有后端 API 的全栈 Web 应用程序 使用更新的恶意软件数据集进行持续学习 📜 发表 这项研究工作已发表在 ICICST 2026(NIT J 会议)上。 👨‍💻 作者 Rohan Teja Nallapaneni
标签:Android恶意软件检测, Apex, NoSQL, Python, TensorFlow, 云安全监控, 多模态安全, 无后门, 机器学习, 深度学习, 逆向工具, 静态分析