abnerrebello/malware-detection-using-ml

GitHub: abnerrebello/malware-detection-using-ml

基于动态 API 调用序列分析和机器学习的恶意软件检测框架,用于区分恶意程序与良性程序。

Stars: 0 | Forks: 0

# 使用机器学习的动态恶意软件检测 ## 概述 本项目提出了一个通过分析动态 API 调用序列来检测恶意软件的机器学习框架。该系统不依赖静态特征,而是分析应用程序的运行时行为,将其分类为恶意或良性。本项目对深度学习和传统机器学习方法均进行了评估,并使用标准的分类指标对它们的性能进行了比较。 ## 功能特性 * 使用 API 调用序列分析的动态恶意软件检测 * 数据预处理和特征工程 * 深度学习和机器学习模型 * 用于改善分类效果的集成学习 * 使用多种性能指标进行模型评估 * 使用 ROC 曲线和混淆矩阵进行性能可视化 ## 项目结构 malware-detection-using-ml │ ├── dataset/ # 用于训练和评估的数据集 ├── images/ # 工作流图表和项目图像 ├── notebooks/ # Google Colab / Jupyter 笔记本 ├── report/ # 项目报告 ├── results/ # ROC 曲线、混淆矩阵及其他结果 ├── src/ # 源代码 ├── README.md ├── requirements.txt └── .gitignore ## 数据集 本项目使用了两个数据集: * 动态 API 调用序列数据集 * 恶意软件特征数据集 这些数据集在训练前经过了预处理,以提高模型性能和一致性。 ## 方法论 整体工作流如下: 1. 数据收集 2. 数据预处理 3. 特征提取 4. 模型训练 5. 模型评估 6. 性能比较 其实现包含预处理技术、深度学习模型、传统机器学习模型,以及用于恶意软件分类的集成方法。 ## 使用的技术 * Python * PyTorch * Scikit-learn * XGBoost * Pandas * NumPy * Matplotlib * Seaborn * Google Colab ## 结果 模型使用以下指标进行了评估: * 准确率 * 精确率 * 召回率 * F1-Score * ROC-AUC 性能可视化结果可在 `results` 文件夹中查看。 ## 仓库结构 * `notebooks/` 包含完整的实现代码。 * `dataset/` 包含用于实验的数据集。 * `results/` 包含评估图表和可视化结果。 * `report/` 包含完整的项目报告。 ## 未来改进 * 改进对零日漏洞恶意软件的检测。 * 评估基于 transformer 的架构。 * 优化框架以实现实时的恶意软件检测。 * 在更大且更具多样性的恶意软件数据集上进行训练。 ## 作者 Abner Rebello B.Tech 计算机科学(网络安全) NMIMS Mukesh Patel School of Technology Management & Engineering
标签:Apex, API调用分析, NoSQL, Python, 人工智能, 凭据扫描, 无后门, 机器学习, 深度学习, 用户模式Hook绕过, 自定义DNS解析器, 逆向工具