基于Vue+SpringBoot的木马文件检测系统

在这里插入图片描述
项目编号: S 041 ,文末获取源码。 \color{red}{项目编号:S041,文末获取源码。} 项目编号:S041,文末获取源码。


目录

  • 一、摘要
    • 1.1 项目介绍
    • 1.2 项目录屏
  • 二、功能模块
    • 2.1 数据中心模块
    • 2.2 木马分类模块
    • 2.3 木马软件模块
    • 2.4 安全资讯模块
    • 2.5 脆弱点模块
    • 2.6 软件检测模块
  • 三、系统设计
    • 3.1 用例设计
    • 3.2 数据库设计
      • 3.2.1 木马分类表
      • 3.2.2 木马软件表
      • 3.2.3 资讯表
      • 3.2.4 脆弱点表
      • 3.2.5 软件检测表
  • 四、系统实现
  • 五、核心代码
    • 5.1 查询木马分类
    • 5.2 查询木马文件
    • 5.3 新增软件检测
    • 5.4 查询脆弱点
    • 5.5 新增安全资讯
  • 六、免责说明


一、摘要

1.1 项目介绍

基于JAVA+Vue+SpringBoot+MySQL的木马文件检测系统,包含了木马类型、木马软件档案、安全资讯、软件脆弱点、软件检测模块,还包含系统自带的用户管理、部门管理、角色管理、菜单管理、日志管理、数据字典管理、文件管理、图表展示等基础模块,木马文件检测系统基于角色的访问控制,给软件管理员、普通用户使用,可将权限精确到按钮级别,您可以自定义角色并分配权限,系统适合设计精确的权限约束需求。

1.2 项目录屏

源码下载


二、功能模块

木马是网站开发者与网站管理员所烦恼却难以清除的木马,在当前,还没有一个杀毒软件或者是检测软件能够准确的标记出木马的位置并将其清除,所以开发一套自动检测木马的软件很有意义,可以为管理员对网站的维护节约大量的时间和精力.这样的软件应该被大多数网站管理员所接受并使用,这套系统为网站的安全性增添了一项保障。

在这里插入图片描述

木马文件检测系统的功能性需求主要包含数据中心模块、木马分类模块、木马软件模块、安全资讯模块、脆弱点模块和软件检测模块这五大模块,系统是基于浏览器运行的web管理后端,其中各个模块详细说明如下:

2.1 数据中心模块

数据中心模块包含了木马文件检测系统的系统基础配置,如登录用户的管理、运营公司组织架构的管理、用户菜单权限的管理、系统日志的管理、公用文件云盘的管理。
其中登录用户管理模块,由管理员负责运维工作,管理员可以对登录用户进行增加、删除、修改、查询操作。
组织架构,指的是高校的组织架构,该模块适用于管理这些组织架构的部门层级和教师的部门归属情况。
用户菜单权限管理模块,用于管理不同权限的用户,拥有哪些具体的菜单权限。
系统日志的管理,用于维护用户登入系统的记录,方便定位追踪用户的操作情况。
公用云盘管理模块,用于统一化维护木马文件检测系统中的图片,如合同签订文件、合同照片等等。

2.2 木马分类模块

不同的木马有着不同的类型,不同类型的木马需要采用不同的方式去检测,所以需要建立木马分类模块,木马分类的数据包括类型名称、类型状态、排序值、备注、创建人、创建时间、更新人、更新时间,管理员可以新增、删除、编辑和条件查询木马类型数据,用户可以查询管理员发布的木马类型数据。

2.3 木马软件模块

木马是木马文件检测系统的核心,所以需要建立木马软件模块,木马软件的数据包括软件名称、软件描述、软件类型、文件、创建人、创建时间、更新人、更新时间,管理员和用户都可以新增、删除、编辑和条件查询木马数据。

2.4 安全资讯模块

安全资讯模块是用于将有关于木马安全防范的加以存档,由管理员定期维护。安全资讯的字段包括资讯标题、资讯内容、状态、排序值、发布人、发布时间、更新人、更新时间,管理员可以新增、删除、编辑和条件查询安全资讯数据,用户可以查询管理员发布的安全资讯数据。

2.5 脆弱点模块

木马不是凭空产生的,当软件有了脆弱点之后,木马才能乘虚而入,所以需要对软件的脆弱点进行管理。脆弱点字段包括脆弱点名称、脆弱点介绍、状态、备注、创建人、创建时间、更新人、更新时间,管理员可以新增、删除、编辑和条件查询脆弱点数据,用户可以查询管理员发布的脆弱点数据。

2.6 软件检测模块

软件检测室木马文件检测系统的核心业务,软件检测字段包括软件ID、软件名称、软件介绍、提交人、检测状态、过程报告、软件漏洞、检测人,用户可以发起软件检测申请,管理员对软件进行检测反馈,上传过程包括和复现软件漏洞。


三、系统设计

3.1 用例设计

UML是面向对象的图形化建模语言,具有表示容易,定义友好,适用范畴广泛,功能强大。用例图是用例模型的一种,需求分析人员可采用用例图表示用户操作行为。木马文件检测系统的用例图设计主要包括用户用例设计和管理员用例设计。

在这里插入图片描述

3.2 数据库设计

3.2.1 木马分类表

在这里插入图片描述

3.2.2 木马软件表

在这里插入图片描述

3.2.3 资讯表

在这里插入图片描述

3.2.4 脆弱点表

在这里插入图片描述

3.2.5 软件检测表

在这里插入图片描述


四、系统实现

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


五、核心代码

5.1 查询木马分类

@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询木马分类")
public Result<IPage<TrojansType>> getByPage(@ModelAttribute TrojansType trojansType ,@ModelAttribute PageVo page){
    QueryWrapper<TrojansType> qw = new QueryWrapper<>();
    if(!ZwzNullUtils.isNull(trojansType.getTitle())) {
        qw.like("title",trojansType.getTitle());
    }
    if(!ZwzNullUtils.isNull(trojansType.getStatus())) {
        qw.eq("status",trojansType.getStatus());
    }
    IPage<TrojansType> data = iTrojansTypeService.page(PageUtil.initMpPage(page),qw);
    return new ResultUtil<IPage<TrojansType>>().setData(data);
}

5.2 查询木马文件

@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询木马文件")
public Result<IPage<Trojans>> getByPage(@ModelAttribute Trojans trojans ,@ModelAttribute PageVo page){
    QueryWrapper<Trojans> qw = new QueryWrapper<>();
    if(!ZwzNullUtils.isNull(trojans.getTitle())) {
        qw.like("title",trojans.getTitle());
    }
    if(!ZwzNullUtils.isNull(trojans.getType())) {
        qw.like("type",trojans.getType());
    }
    IPage<Trojans> data = iTrojansService.page(PageUtil.initMpPage(page),qw);
    return new ResultUtil<IPage<Trojans>>().setData(data);
}

5.3 新增软件检测

@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增软件检测")
public Result<Check> insert(Check check){
    Trojans trojans = iTrojansService.getById(check.getTrojansId());
    if(trojans == null) {
        return ResultUtil.error("软件不存在");
    }
    check.setTrojansName(trojans.getTitle());
    check.setTrojansContent(trojans.getContent());
    User currUser = securityUtil.getCurrUser();
    check.setUserId(currUser.getId());
    check.setUserName(currUser.getNickname());
    check.setStatus("未检测");
    check.setAns("");
    check.setVulnerability("");
    check.setWorkId("");
    check.setWorkName("");
    check.setWorkTime("");
    iCheckService.saveOrUpdate(check);
    return new ResultUtil<Check>().setData(check);
}

5.4 查询脆弱点

@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询脆弱点")
public Result<IPage<Vulnerability>> getByPage(@ModelAttribute Vulnerability vulnerability ,@ModelAttribute PageVo page){
    QueryWrapper<Vulnerability> qw = new QueryWrapper<>();
    if(!ZwzNullUtils.isNull(vulnerability.getTitle())) {
        qw.like("title",vulnerability.getTitle());
    }
    if(!ZwzNullUtils.isNull(vulnerability.getContent())) {
        qw.like("content",vulnerability.getContent());
    }
    IPage<Vulnerability> data = iVulnerabilityService.page(PageUtil.initMpPage(page),qw);
    return new ResultUtil<IPage<Vulnerability>>().setData(data);
}

5.5 新增安全资讯

@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增安全资讯")
public Result<News> insert(News news){
    User currUser = securityUtil.getCurrUser();
    news.setSendUser(currUser.getNickname());
    news.setSendTime(DateUtil.now());
    iNewsService.saveOrUpdate(news);
    return new ResultUtil<News>().setData(news);
}

六、免责说明

  • 本项目仅供个人学习使用,商用授权请联系博主,否则后果自负。
  • 博主拥有本软件构建后的应用系统全部内容所有权及独立的知识产权,拥有最终解释权。
  • 如有问题,欢迎在仓库 Issue 留言,看到后会第一时间回复,相关意见会酌情考虑,但没有一定被采纳的承诺或保证。

下载本系统代码或使用本系统的用户,必须同意以下内容,否则请勿下载!

  1. 出于自愿而使用/开发本软件,了解使用本软件的风险,且同意自己承担使用本软件的风险。
  2. 利用本软件构建的网站的任何信息内容以及导致的任何版权纠纷和法律争议及后果和博主无关,博主对此不承担任何责任。
  3. 在任何情况下,对于因使用或无法使用本软件而导致的任何难以合理预估的损失(包括但不仅限于商业利润损失、业务中断与业务信息丢失),博主概不承担任何责任。
  4. 必须了解使用本软件的风险,博主不承诺提供一对一的技术支持、使用担保,也不承担任何因本软件而产生的难以预料的问题的相关责任。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/197693.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】八大排序(二)

目录 前言&#xff1a; 冒泡排序 冒泡排序代码实现 冒泡排序特性总结 快速排序 单趟排序hoare版本 单趟排序挖坑法 单趟排序快慢指针法 快速排序整体概览 快排的优化 三数取中法选key 小区间优化 前言&#xff1a; 上文介绍了直接插入排序&#xff0c;希尔排序&…

C# ReadOnlyRef Out

C# ReadOnly ReadOnly先看两种情况1.值类型2.引用类型 结论 Ref Out ReadOnly官方文档 ReadOnly 先看两种情况 1.值类型 当数据是值类型时&#xff0c;标记为Readonly时&#xff0c;如果再次设置值&#xff0c;会提示报错&#xff0c;无法分配到只读字段 public class A {pri…

基于LNMP快速搭建WordPress平台

目录 1 LNMP简介 2 WordPress简介 3 安装MySQL环境 3.1 安装MySQL 3.1.1 下载wget工具 3.1.2 下载MySQL官方yum源安装包 3.1.3 安装MySQL官方yum源 3.1.4 mysql安装 3.2 启动MySQL 3.3 获取默认密码 3.4 登录MySQL ​ 3.5 修改密码 3.6 创建WordPress数据库并授权 3.6.1 创…

WPF创建进度条

使用wpf做一个原生的进度条&#xff0c;进度条上面有值&#xff0c;先看效果。 功能就是点击按钮&#xff0c;后台处理数据&#xff0c;前台显示处理数据的变化&#xff0c;当然还可以对进度条进行美化和关闭的操作&#xff0c;等待后台处理完毕数据&#xff0c;然后自动关闭。…

设计师福利!2024在线图标设计网站推荐,不容错过的宝藏!

在当今竞争激烈的商业环境中&#xff0c;公司或个人品牌的视觉识别元素已经成为区分你和竞争对手的关键因素之一。一个独特而引人注目的标志可以深深扎根于人们的心中&#xff0c;并在消费者心中建立一个强烈的品牌印象。如果你正在寻找合适的工具来创建或改进你的标志&#xf…

js数组map()的用法

JavaScript Array map() 方法 先说说这个方法浏览器的支持&#xff1a; 支持五大主流的浏览器&#xff0c; 特别注意&#xff1a;IE 9 以下的浏览器不支持&#xff0c;只支持IE 9以上的版本的浏览器 特别注意&#xff1a;IE 9 以下的浏览器不支持&#xff0c;只支持IE 9以上的…

基于mvc电影院售票预订选座系统php+vue+elementui

本影院售票系统主要包括二大功能模块&#xff0c;管理员功能模块和用户功能模块。 &#xff08;1&#xff09;管理员模块&#xff1a;系统中的核心用户管理员登录后&#xff0c;通过管理员功能来管理后台系统。主要功能有&#xff1a;首页、个人中心、电影类型管理、场次时间管…

Corel产品注册机Corel Products KeyGen 2023 – XFORCE解决会声会影2023试用30天

CorelDRAW注册机2023支持全系列产品_Corel Products KeyGen 2023 X-FORCE v8 CorelDRAW注册机2023支持全系列产品_Corel Products KeyGen 2023 X-FORCE v8&#xff0c;Corel产品注册机&#xff08;Corel Products KeyGen 2023 – XFORCE&#xff09;&#xff0c;支持Corel旗下所…

jQuery_07 函数的使用

在jQuery中&#xff0c;如何使用函数呢&#xff1f; 1.基本函数 函数(常用的) 其实有很多函数&#xff0c;但是我们只需要掌握常用的函数即可 1.val 操作dom对象的value val() 没有参数 获取dom数组中第一个dom对象的value值 val(value) 有参数 设置dom数组中所有dom对象的…

Zotero | 取消翻译后自动添加笔记

目录 Step1&#xff1a;点击 “编辑” << “首选项” Step2&#xff1a;“翻译” << 取消勾选 “自动翻译批注” 在 Zetoro 中&#xff0c;选择颜色标记勾画的内容&#xff0c;将会自动生成一条笔记&#xff0c;如下图所示&#xff1a; 本人觉得很鸡肋&#xff0…

记录本地与服务器之间数据传输方法(上传、下载文件)

文章目录 一、使用scp命令实现参数说明示例说明 二、使用工具实现windows系统苹果系统如有启发&#xff0c;可点赞收藏哟~ 一、使用scp命令实现 scp 是 secure copy &#xff08;安全复制&#xff09;的缩写, scp 是基于 ssh 登陆进行安全的远程文件拷贝命令。相当于 cp 命令 …

渗透测试考核--两层内网 cs windows socks5

这里考核为渗透 这里是网络拓扑图 这里记录一下 两台外网 两台内网 首先拿到C段 nmap进行扫描 外网1 nmap -p 80 172.16.17.2/24 主机存活 一般都是web服务入手 所以我们指定80端口 然后去查找开放的 最后获取到2个ip Nmap scan report for 172.16.17.177 Host is u…

哈希函数:保护数据完整性的关键

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

WebSocket快速入门

WebSocket 借鉴&#xff1a; https://blog.csdn.net/weixin_45747080/article/details/117477006 https://cloud.tencent.com/developer/article/1887095 简介 WebSocket 是一种网络传输协议&#xff0c;可在单个 TCP 连接上进行全双工通信&#xff0c;位于 OSI 模型的应用…

Android Bitmap保存成至手机图片文件,Kotlin

Android Bitmap保存成至手机图片文件&#xff0c;Kotlin fun saveBitmap(name: String?, bm: Bitmap) {val savePath Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).toString()if (!Files.exists(Paths.get(savePath))) {Log.d("保存文…

DHCP协议及实验omnipeek抓包工具分析 IPv4协议

一 抓包命令 adb shell tcpdump -i wlan0 -w /data/tcpdump.pcap 抓包后截图如下 二 DHCP是什么 2.1 DHCP定义 DHCP( Dynamic Host Configuration Protocol, 动态主机配置协议)定义: 存在于应用层(OSI) 前身是BOOTP(Bootstrap Protocol)协议 是一个使用UDP(User …

【Unity实战】按物品掉落率,随机掉落战利品物品系统(附项目源码)

文章目录 前言开始参考源码完结 前言 当开发游戏时&#xff0c;一个常见的需求是实现一个物品随机掉落系统。这个系统可以让玩家在击败敌人或完成任务后获得随机的物品奖励&#xff0c;增加游戏的可玩性和乐趣。 在Unity中&#xff0c;我们可以通过编写代码来实现这样的战利品…

Open Feign 源码解析(一) --- FactoryBean的妙用

什么是Open Feign? OpenFeign 是 Spring Cloud 全家桶的组件之一&#xff0c; 其核心的作用是为 Rest API 提供高效简洁的 RPC 调用方式 搭建测试项目 服务接口和实体 项目名称 cloud-feign-api 实体类 public class Order implements Serializable {private Long id;p…

windows中打开psql命令行

一、第一种方式 1.点击下方的psql&#xff0c;打开命令行窗口 2.中括号中的是默认值&#xff0c;直接回车就行 3.成功 二、第二种方式 双击安装目录中的执行文件 “D:\soft\postgresql\catalogue\scripts\runpsql.bat” 三、第三种方式 1.加到环境变量 把“D:\soft\postg…

ubuntu vmware开启3d加速画面异常

在ubuntu上开启vmware&#xff0c;进入全屏就会出现左上角和右下角两个不同的画面&#xff0c;并来回闪&#xff0c;不使用3d加速&#xff0c;一切正常&#xff0c;但是画面模糊。在ubuntu18 20 22上测试&#xff0c;vmware 15 16 17问题依旧。 原因 经过测试&#xff0c;原…
最新文章