go语言恶意代码检测系统--对接前端可视化与算法检测部分

Malware Detect System

1 产品介绍

恶意代码检测系统。

在这里插入图片描述

2 产品描述

2.1 产品功能

功能点详细描述
注册账号未注册用户注册成为产品用户,从而具备享有产品各项服务的资格
登录账号用户登录产品,获得产品提供的各项服务
上传恶意样本用户可以将上传自己的收集到的恶意样本及其样本属性,网站会对该恶意样本进行保存
获取恶意样本检测结果用户手动上传或使用oss方式上传待检测的恶意样本,系统检测样本后返回该样本属性
样本威胁分析报告系统返回用户根据检测结果,样本本身行为特征,并将其可视化。以报告的方式返回结果
训练检测模型系统每天固定时间点对恶意代码检测模型进行重新训练
分类所有恶意样本系统可以每天固定时间点计算恶意样本之间的相似度信息,进而对所有样本进行大类、家族分类
更新恶意代码榜单用户可查看该系统过去一段时间检测过的文件以及相关分析结果
      |

2.2 产品约束

约束约束解释
编程语言前端采用的语言为:HTML,CSS,JavaScript,前端采用的框架是:Vue;后端采用的语言为Golang,后端采用的框架为Gin
响应时间网页的响应时间应在1s以内(存疑)
算法模型算法训练的恶意代码检测模型的训练时间在2个小时以内,能对足够多种恶意代码家族种类进行检测,响应时间控制1分钟以内
界面友好性产品的界面应能体现对用户用户好性,具有一定的美观性
代码可读性产品的的代码应符合命名规范,命名与实际意义挂钩,具有可读性
代码健壮性产品的代码应避免过度耦合,以便后续迭代优化,对现有功能的扩展以及增添新的功能
项目计划产品的研发应严格遵循项目的管理流程,各阶段任务应避免延期,对后续阶段的开发造成影响

3. 具体需求

3.1 外部接口需求

3.1.1 用户界面

  1. 注册登陆界面

(扎心了,这一段还没有写前端log out的逻辑)

  1. 首页
    在这里插入图片描述

  2. 上传恶意代码界面
    在这里插入图片描述

  3. 分析报告界面
    在这里插入图片描述

  4. 恶意代码行为可视化界面

(扎心了,这一段还没有还没来及用element UI画一个动态的图出来,假装有一个这样的界面吧, 可视化内容大概长下面这个亚子)
在这里插入图片描述

3.1.2 软件接口

  • MacOS 操作系统;
  • Aapche Kafka;
  • etcd v3.4.15;
  • Nginx 1.19.8。

3.1.3 通信接口

HTTPS协议、TCP/IP协议。

3.2 功能需求

3.2.1 web模块

3.2.1.1 注册账号

用例名注册账号
基本事件流(1) 用户打开注册页面
(2) 用户填写密码,用户名等身份信息(A-1)(A-2)
(3) 用户点击注册按钮
(4) 系统验证该用户信息是否符合规范
(5) 系统验证该用户名是否被注册过
(6) 系统返回注册结果
备选事件流A-1 用户信息不符合规范
(1) 系统提示信息不符合规范
(2) 用户重新输入
A-2 用户被注册过
(1) 系统提示用户用户名重复
(2) 用户重新输入
补充约束
- 数据约束
(1) 密码不能为空
(2) 电话不能为空
补充约束
- 非功能需求
系统响应时间不超过15秒

3.2.1.2 登录账号

用例名注册账号
基本事件流(1) 用例起始于未登录用户想要登录系统
(2) 未登录用户点击【登录】按钮,系统跳转到登录页面(A-1)
(3) 用户在登录页面填入相关信息(D-1),点击【登录】(A-2)(A-3)(A-4)
备选事件流A-1 系统繁忙或网络出现问题
(1) 系统提示:系统繁忙,请稍后再试
A-2 用户的账户未注册
(1) 系统提示:该账户不存在,请注册后再使用
(2) 系统跳转到注册页面
A-3 用户登录成功
(1) 系统提示:登录成功
(2) 系统跳转到主页或用户之前浏览的页面
A-4 用户登录失败
(1) 系统提示:登录信息不正确,请重新输入
补充约束
- 数据约束
D-1 提交的数据需要包含账户名,密码
补充约束
- 非功能需求

3.2.1.3 上传恶意样本

用例名注册账号
基本事件流(1) 点击上传
(2) 系统提示上传成功并修改数据库(A-1)
备选事件流A-1 系统繁忙或网络出现问题
系统提示:系统繁忙,请稍后再试
补充约束
- 数据需求
提交数据包括用户字段和恶意样本
补充约束
- 非功能需求
暂无

3.2.1.4 获取恶意样本检测结果与样本威胁分析报告

用例名获取推荐
基本事件流(1) 用户注册后进入上传样本界面
(2) 可在页面上查看本次或历史检测结果(A-1) (3) 点击查看报告,可返回样本分析报告(A-2)
备选事件流A-1、A-2 系统繁忙或网络出现问题 系统提示:系统繁忙,请稍后再试
补充约束- 数据需求提交的数据包括用户字段和用户本次上传的样本id
补充约束- 非功能需求暂无

3.2.1.5 更新恶意代码榜单

记录用户的检测记录

3.2.2 算法模块

训练生成模型、分类所有样本和样本预测三个部分

3.2.2.1 训练生成模型

用例名训练生成模型
基本事件流(1) 读取模型参数
(2) 恶意样本特征预处理
(3)构造出异构图, 并使用三种数据增强方式进行正负样本的生成
(4) 微调模型参数并保存

3.2.2.2 分类所有样本

用例名分类所有样本
基本事件流(1) 将样本构造成异构图的形式
(2) 加载既有的对比学习模型,生成异构图的表征
(3) 根据表征,对异构图进行分类

3.2.2.3 样本预测

用例名分类所有样本
基本事件流(1) 将待预测的样本构造成异构图的形式
(2) 加载既有的对比学习模型,生成异构图的表征
(3) 根据表征,对异构图进行分类

3.2.3 调度模块

3.2.3.1 触发训练任务

通过定时任务触发训练任务,将训练任务元数据序列化并存入任务队列

用例名分类所有样本
基本事件流(1)用例起始于每天凌晨02:00自动运行
(2)将待预测的样本编号序列化后,推送至任务队列
(3)从任务状态队列中轮训任务状态(A-2)
补充约束-数据约束元数据要求符合数据库约束,同时限制任务大小。
补充约束-业务约束任务提交失败时需要自动跳过错误数据并重试。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode 279. 完全平方数

2023.8.18 与零钱兑换相似&#xff0c;本题属于完全背包问题&#xff1a;完全平方数为物品&#xff0c;整数n为背包。 直接上代码&#xff1a; class Solution { public:int numSquares(int n) {vector<int> dp(n1 , INT_MAX);dp[0] 0;for(int i1; i*i<n; i){for(in…

九耶丨阁瑞钛伦特-Spring boot与Spring cloud 之间的关系

Spring Boot和Spring Cloud是两个相互关联的项目&#xff0c;它们可以一起使用来构建微服务架构。 Spring Boot是一个用于简化Spring应用程序开发的框架&#xff0c;它提供了自动配置、快速开发的特性&#xff0c;使得开发人员可以更加轻松地创建独立的、生产级别的Spring应用程…

高效实用小工具之Everything

一&#xff0c;简介 有时候我们电脑文件较多时&#xff0c;想快速找到某个文件不是一件容易的事情&#xff0c;实用windows自带的搜素太耗时&#xff0c;效率不高。今天推荐一个用来搜索电脑文件的小工具——Everything&#xff0c;本文将介绍如何安装以及使用everything&…

FPGA中锁存器(latch)、触发器(flip-flop)以及寄存器(register)详解

文章目录 1 定义1.1 锁存器&#xff08;latch&#xff09;1.2 触发器&#xff08;flip-flop&#xff09;1.3 寄存器&#xff08;register&#xff09; 2 比较2.1 锁存器&#xff08;Latch&#xff09;危害即产生原因2.2 寄存器和锁存器的区别2.3 锁存器和触发器的区别 3 结构3.…

如何将常用的jdbc方法封装起来???

你是否还在为每次新建项目连接数据库而烦恼&#xff1f;&#xff1f;&#xff1f;&#xff08;教你一次代码&#xff0c;简单完成每次连接&#xff09; 1.建立maven项目 还没下载安装或者不会建立maven项目的可以看这里哦&#xff1a;maven的下载安装与配置环境变量&#xff0…

主机防护的重要性和方式

01 主机防护的重要性 主机防护是网络安全的重要组成部分。在互联网时代&#xff0c;网络攻击成为了一种常见的威胁&#xff0c;而主机防护则是保护计算机系统免受网络攻击的重要手段。 主机防护可以防范各种网络攻击&#xff0c;如病毒、木马、黑客攻击等&#xff0c;从而保…

如何利用 ChatGPT 进行自动数据清理和预处理

推荐&#xff1a;使用 NSDT场景编辑器助你快速搭建可二次编辑的3D应用场景 ChatGPT 已经成为一把可用于多种应用的瑞士军刀&#xff0c;并且有大量的空间将 ChatGPT 集成到数据科学工作流程中。 如果您曾经在真实数据集上训练过机器学习模型&#xff0c;您就会知道数据清理和预…

《Kubernetes部署篇:Ubuntu20.04基于外部etcd+部署kubernetes1.24.16集群(多主多从)》

一、架构图 如下图所示: 二、环境信息 1、部署规划 主机名K8S版本系统版本内核版本IP地址备注k8s-master-631.24.16Ubuntu 20.04.5 LTS5.15.0-69-generic192.168.1.63master节点 + etcd节点k8s-master-641.24.16Ubuntu 20.04.5 LTS5.15.0-69-generic192.168.1.64master节点 + …

【算法刷题之数组篇(1)】

目录 1.leetcode-59. 螺旋矩阵 II&#xff08;题2.题3相当于二分变形&#xff09;2.leetcode-33. 搜索旋转排序数组3.leetcode-81. 搜索旋转排序数组 II(与题目2对比理解)&#xff08;题4和题5都是排序双指针&#xff09;4.leetcode-15. 三数之和5.leetcode-18. 四数之和6.leet…

ByteV“智农”平台--数字乡村可视化

“智农”平台基于自主可控的数字孪生技术、物联网技术、大数据技术&#xff0c;构建全流程的新型农业一体化管理平台&#xff0c;围绕产运销管理全流程&#xff0c;实现生产->存储->包装->运输->销售的全链条管理。融合农业数据管理、农业数据预警显示、多维数据综…

回归预测 | MATLAB实现IPSO-SVM改进粒子群优化算法优化支持向量机多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现IPSO-SVM改进粒子群优化算法优化支持向量机多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09; 目录 回归预测 | MATLAB实现IPSO-SVM改进粒子群优化算法优化支持向量机多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xf…

Java智慧工地系统源码(微服务+Java+Springcloud+Vue+MySQL)

智慧工地系统是依托物联网、互联网、AI、可视化建立的大数据管理平台&#xff0c;是一种全新的管理模式&#xff0c;能够实现劳务管理、安全施工、绿色施工的智能化和互联网化。围绕施工现场管理的人、机、料、法、环五大维度&#xff0c;以及施工过程管理的进度、质量、安全三…

WPF国际化的实现方法(WpfExtensions.Xaml)

https://blog.csdn.net/eyupaopao/article/details/120090431 resx资源文件实现 resx资源文件&#xff0c;实现的过程比第一种复杂&#xff0c;但resx文件本身编辑比较简单&#xff0c;维护起来比较方便。需要用到的框架&#xff1a;WpfExtensions.Xaml 为每种语言添加.resx资…

Nginx的介绍

本资料转载于传智教育-解锁你的IT职业薪未来&#xff0c;仅用于学习和讨论&#xff0c;如有侵权请联系 视频地址&#xff1a;04-Nginx的优点_哔哩哔哩_bilibili 资源文档&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1RlFl92FdxRUqc858JSxPSQ 提取码&#xff1a;12…

Postman接口自动化测试实例

一.实例背景 在实际业务中&#xff0c;经常会出现让用户输入用户密码进行验证的场景。而为了安全&#xff0c;一般都会先请求后台服务器获取一个随机数做为盐值&#xff0c;然后将盐值和用户输入的密码通过前端的加密算法生成加密后串传给后台服务器&#xff0c;后台服务器接到…

每个.NET开发都应掌握的C#委托事件知识点

上篇文章讲述了C#接口的知识点&#xff0c;本文将介绍C#委托事件知识点。C#作为.NET开发的核心语言之一&#xff0c;提供了丰富的特性来支持面向对象编程和事件驱动的模型。其中&#xff0c;委托和事件是C#中不可或缺的关键概念&#xff0c;每个.NET开发者都应该深入理解它们的…

常用字符串匹配算法

一、BF匹配 BF算法中的BF是Brute Force的缩写&#xff0c;中文叫作暴力匹配算法&#xff0c;也叫朴素匹配算法。 BF算法的时间复杂度很高&#xff0c;是O(nm)&#xff0c;但在实际的开发中&#xff0c;它却是一个比较常用的字符串匹配算法。 第一&#xff0c;实际的软件开发中…

JVM——配置常用参数,GC调优策略

文章目录 JVM 配置常用参数Java内存区域常见配置参数概览堆参数回收器参数项目中常用配置常用组合 常用 GC 调优策略GC 调优原则GC 调优目的GC 调优策略 JVM 配置常用参数 Java内存区域常见配置参数概览堆参数&#xff1b;回收器参数&#xff1b;项目中常用配置&#xff1b;常…

【nodejs】用Node.js实现简单的壁纸网站爬虫

1. 简介 在这个博客中&#xff0c;我们将学习如何使用Node.js编写一个简单的爬虫来从壁纸网站获取图片并将其下载到本地。我们将使用Axios和Cheerio库来处理HTTP请求和HTML解析。 2. 设置项目 首先&#xff0c;确保你已经安装了Node.js环境。然后&#xff0c;我们将创建一个…

cuOSD(CUDA On-Screen Display Library)库的学习

目录 前言1. cuOSD1.1 Description1.2 Getting started1.3 For Python Interface1.4 Demo1.5 Performance Table 2. cuOSD案例2.1 环境配置2.2 simple案例2.3 segment案例2.4 segment2案例2.5 polyline案例2.6 comp案例2.7 perf案例 3. cuOSD浅析3.1 simple_draw函数 4. 补充知…