
Java开发的安卓恶意软件检测系统源码及详细说明、数据库(适用于2024年毕业设计).zip
5星
- 浏览量: 0
- 大小:None
- 文件类型:ZIP
简介:
本资源包含一个用于检测安卓设备上恶意软件的Java开发系统源代码及相关文档,内附数据库支持。专为2024届计算机相关专业毕业生设计,适合用作毕业设计项目。
### 项目简介
Android 恶意软件检测系统 使用 Java 在 Windows 环境下执行 apktool 工具的反编译命令,对 APK 文件进行反编译,并提取特征集与恶意样本库中的数据比较计算相似度,以此来判断应用是否为恶意软件。
#### 数据库
- **数据库**:MySQL
- **Apk Tool版本**:apktool v3.0
### 实现步骤
**(一) 数据库预处理**
1. 反编译大量恶意样本的 APK 文件。
2. 提取 AndroidManifest.xml 中申请的系统权限,并保存到数据库中。
3. 提取和统计 smail 文件中的 API 调用及调用次数,将数据存入数据库。
**(二) 恶意检测**
1. 反编译待测应用 APK 文件,提取其权限与 API 调用信息。
2. 与数据库中恶意样本的记录进行比较计算相似度值。
3. 根据相似度判断是否为恶意软件及其所属类型。
### 使用说明
**导入数据库文件:malware.sql**
- 数据库中共有172个恶意软件的数据。
**Main.java 文件中的 main 方法是程序入口**
```java
public static void main(String[] args) {
init();
detection();
}
```
#### 注释与执行方法:
- **init() 方法用于数据库预处理:** 如果直接导入了数据库文件则无需运行此方法。
- 参照目录结构,将恶意 APK 文件存放到 D:\Decompile\decompile 目录下对应位置中;
- 注释 detection() 方法并调用 init();
- **detection() 方法用于检测待测应用:** 执行前需要注释掉 init(), 然后运行 detection().
- 将待测 APK 文件放置在 D:\Decompile\testApks\test_sw 目录下,执行结束后结果会显示在 IDEA 的控制台中。
#### 注意事项:
1. 反编译时间因 APK 大小不同而有所差异。
2. 若数据库密码不是 root,请修改 com.duan.db 包下的 DBMalwareHelper.java 文件中的 PASSWORD 变量(及 DATABASE_MALWARE)变量设置。
3. 每次检测仅限一个 APK,因此 D:\Decompile\testApks\test_sw 目录下只能放置单一待测文件且无其他无关内容;
4. 若进行大量恶意样本的预处理操作,则耗时较长(如172个文件需约半小时)。
### 项目说明
- **资源包含**:完整源码及详细资料,功能完善,确保可靠运行。适合初学者参考文档或远程指导完成部署。
- **难度适中**:满足毕业设计、课程设计要求;易于上手操作,附带详尽的使用指南和相关文档。
- 适用人群:
- 计算机专业在校生
- 高校教师与研究人员
- 公司软件开发人员
### 使用建议
项目解压后,请将文件夹名称改为英文名以避免中文路径导致的问题。此系统易于运行,使用过程中遇到问题可先搜索常见解决方案或联系作者交流探讨。
祝您顺利!
全部评论 (0)


