基于Python的漏洞扫描检测系统计

摘  要

在当今数字化时代,网络安全问题日益突出。通过开发一个漏洞扫描检测系统,可以及时发现并应对各种网络威胁,提高网络的整体安全性。该系统有助于识别各类网络攻击,如DDoS攻击、恶意软件传播等,从而帮助网络管理员更快速地做出反应,降低网络被攻击的风险。

本文设计了基于Django的漏洞扫描检测系统,本系统的核心功能是通过爬取实海量漏洞扫描的原始数据,并通过技术将原始数据存储、计算,并将分析的结果以可视化列表形式展示。

本论文的主要研究工作及取得的成果如下:

1、本系统基于Django的编程技术,实现漏洞扫描检测系统的构建。介绍了漏洞扫描检测系统的开发环境和运行平台、Python编程技术。使用MySQL数据库管理整个系统的后台数据。

2、使用基于Python语言对上传的原始数据包进行数据清洗后存储到计算机上。一个基于Python的漏洞扫描检测系统可以与和机器学习技术结合,提供更智能的网络分析和预测能力,满足社会对于智能化解决方案的需求。

关键词:漏洞扫描 ;分析; django;mysql

ABSTRACT

In today's digital age, network security issues are becoming increasingly prominent. By developing a network traffic analysis system, various network threats can be detected and addressed in a timely manner, improving the overall security of the network. This system helps to identify various types of network attacks, such as DDoS attacks, malware propagation, etc., thereby helping network administrators respond more quickly and reducing the risk of network attacks.

This article designs a network traffic analysis system based on Django. The core function of this system is to crawl the raw data of massive network traffic, store and calculate the raw data through big data technology, and display the analysis results in a visual list form.

The main research work and achievements of this paper are as follows:

1. This system is based on Django's programming technology to build a network traffic data management system. Introduced the development environment and operating platform of a network traffic data management system, as well as Python programming technology. Use MySQL database to manage the backend data of the entire system.

2. We used a web crawler based on Python language to crawl traffic from websites with high traffic. Clean the raw data crawled and store it on the computer. A Python based network traffic analysis system can be combined with big data and machine learning technologies to provide more intelligent network analysis and prediction capabilities, meeting the needs of society for intelligent solutions.

Keywords: network traffic; Big data analysis; Django; MySQL

目录

1 绪论

1.1研究背景与现状

1.2论文主要研究工作

2 技术总述

2.1 Django技术

2.2 Python技术

2.3 协议文本解析技术

2.4 本章小结

3 漏洞扫描检测系统实现

3.1系统功能

3.2可行性研究

3.2.1 经济可行性

3.2.2 技术可行性

3.2.3 运行可行性

3.2.4 时间可行性

3.3 系统实现流程

3.4系统平台架构

3.5 数据库设计

3.5.1 系统功能模块划分

3.6 IP解析程序设计

4 后台系统实现

4.1 开发环境与配置

4.1.1 开发环境

4.1.2 框架配置介绍

4.2 数据库的设计

4.3 系统功能模块实现

4.3.1首页功能

4.3.2协议字段解析功能

4.3.3漏洞扫描看板功能

4.4 本章小结

5 总结与展望

5.1 系统开发遇到的问题

5.2 总结与展望

参考文献

谢  辞

1 绪论

1.1研究背景与现状

在当今数字化时代,网络安全问题日益突出。通过开发一个漏洞扫描检测系统,可以及时发现并应对各种网络威胁,提高网络的整体安全性。该系统有助于识别各类网络攻击,如DDoS攻击、恶意软件传播等,从而帮助网络管理员更快速地做出反应,降低网络被攻击的风险。

通过深入分析漏洞扫描,可以发现潜在的性能瓶颈和问题,从而提供优化建议,提高网络运行效率。该系统有望实现对漏洞扫描的实时监测,使网络管理员能够及时了解网络状态并采取必要的措施,从而减小网络故障对业务的影响。通过对漏洞扫描数据的深度挖掘,可以生成详细的报告和可视化图表,为网络管理员提供科学、直观的数据支持,有助于更明智地做出决策。通过在这一领域进行研究,有望为学术界提供新的理论和方法,为漏洞扫描检测领域的研究做出贡献。该系统的成功实施可能在实际行业中得到广泛应用,为企业和组织提供强大的网络安全和性能监测工具。基于Python的漏洞扫描检测系统有望在网络安全、性能优化和实时监测等方面发挥积极作用,对于保障网络安全和提高网络效能具有重要的实际意义。

随着人工智能的迅速发展,对数据隐私的关注也越来越高。研究如何在人工智能应用中保护用户隐私,设计智能算法以减少潜在的隐私泄露,具有重要的社会和伦理意义。在网络连接愈发密切的时代,网络安全问题变得尤为突出。研究网络攻击和防御技术,设计有效的网络安全系统,有助于维护个人隐私和保护重要信息资产,针对数字化医疗领域,研究如何利用计算机技术处理和保护医疗数据,构建安全可靠的健康信息系统,提高医疗服务的质量和效率。社交媒体已成为信息传播的主要渠道。研究社交媒体中的信息传播模式、虚假信息检测与防范,对于维护社会信息的真实性和可靠性具有重要意义。随着深度学习的广泛应用,对模型决策的解释变得至关重要。研究可解释性人工智能,使机器学习模型的决策过程更为透明,有助于提高用户对人工智能系统的信任。利用计算机模拟技术研究气候变化对地球的影响,为制定环保政策和采取应对措施提供科学依据。随着远程工作和在线教育的普及,研究相关技术,如远程协作工具、虚拟教室技术等,以提高远程工作和学习的效率和体验。在计算机科学领域,关注如何设计更为环保、能效更高的计算系统,以减少对环境的负面影响。

研究如何设计和实施公正的算法,避免人工智能系统中的偏见和歧视,促进社会的公平和包容。研究区块链技术在金融、物流等领域的应用,以及数字货币对于货币体系和金融体系的影响。

1.2论文主要研究工作

本文旨在实现高效、可扩展且用户友好的功能。核心模块包括数据采集、数据预处理、分析算法、可视化与报告、用户界面、实验环境、安全性、技术支持与文档、模块化设计以及部署与维护。每个模块都具有清晰的功能描述和相应的技术实现,以确保系统的操作可行性、性能和安全性。通过模块化设计,系统具备易维护和扩展的特性,同时提供了详尽的技术文档和支持,以满足用户需求并适应不断变化的网络环境。

表1-1系统设计信息表

模块名称

功能描述

技术实现

数据采集

捕获实时或离线漏洞扫描数据

Scapy库

数据预处理

清理、过滤和格式转换原始数据

Pandas库

分析算法

实现漏洞扫描检测算法

Scikit-learn、TensorFlow等机器学习库

可视化与报告

展示分析结果,生成报告

Matplotlib、Seaborn、报告生成工具

用户界面

提供用户友好的界面

Tkinter、PyQt、Web框架(如Flask、Django)

实验环境

管理实验环境,支持模拟不同条件

集成真实网络环境,支持实时实验和测试

安全性

数据加密、身份验证和授权机制

加密算法、身份验证工具,权限管理

技术支持与文档

提供用户手册和技术文档

帮助文档、技术支持链接,社区支持

模块化设计

将系统划分为独立模块,易于维护

清晰的接口和功能设计,模块化编程

部署与维护

提供方便的部署和维护脚本

升级和更新机制,部署自动化工具

系统将解决漏洞扫描的监测与分析问题,包括实时和离线流量数据的捕获、处理、清理和转换。通过分析漏洞扫描,可以检测潜在的网络威胁、异常行为以及网络性能问题。主要解决网络中的异常行为和潜在的安全威胁。系统将实现基于机器学习等技术的异常检测算法,用于识别可能的攻击、恶意活动或网络漏洞,从而提高网络安全性。系统将进行漏洞扫描的分类,识别不同类型的流量(如视频、音频、数据传输等),以便进行性能优化。这有助于确保网络资源的有效利用和提高用户体验。解决了用户在理解漏洞扫描检测结果时的问题。系统将提供直观的可视化界面,呈现分析结果的图表和图形,并生成定期报告,使用户能够轻松理解网络状态和安全情况。系统将支持模拟不同的网络环境和攻击场景,以进行实验和测试。这有助于研究人员和网络管理员评估系统在各种情况下的性能,同时提供一种安全的实验环境。解决了处理漏洞扫描数据时可能涉及的用户隐私问题。系统将考虑隐私保护措施,确保在分析过程中对用户数据进行适当的保护,符合法规和伦理要求。

本系统首先需要提供给客户管理和使用的数据。本文使用基于Python语言的Scrapy框架的网络爬虫技术爬取用户使用率较高的漏洞扫描网站上实时的漏洞扫描以及公司信息作为数据来源,以此作为分析的关键数据支撑。然后使用Django,生态圈中分布式运算模型Django框架对海量的漏洞扫描数据进行数据清洗,数据融合,计算,分析等流程,数据通过处理后持久化到MySQL数据库中存储。在计算出分析结果数据后,使用Django等软件开发技术等框架完成基于Django分析平台系统的后台的开发。

本文开发一套Web系统将市面上的漏洞扫描通过技术进行存储、计算与智能化分析,将会给漏洞扫描检测人员提供巨大的好处。在提供漏洞扫描列表展示以及筛选功能的同时,还为用户提供个人信息管理,注册修改等功能,这样做便使得该系统成为功能相对完整,业务逻辑清晰,可大幅度提高效率。

2 技术总述

2.1 Django技术

Django是一个开放源代码Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯网络IP 集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。2019年12月2日,Django 3. 0发布 。

Django是高水准的Python编程语言驱动的一个开源模型.视图,控制器风格的Web应用程序框架,它起源于开源社区。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。这也正是OpenStack的Horizon组件采用这种架构进行设计的主要原因。另外,在Dj ango框架中,还包含许多功能强大的第三方插件,使得Django具有较强的可扩展性。Django 项目源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。其工作流程主要可划分为以下几步:

1.用manage .py runserver 启动Django服务器时就载入了在同一目录下的settings .py。该文件包含了项目中的配置信息,如前面讲的URLConf等,其中最重要的配置就是ROOT_URLCONF,它告诉Django哪个Python模块应该用作本站的URLConf,默认的是urls .py。

2.当访问url的时候,Django会根据ROOT_URLCONF的设置来装载URLConf。

3.然后按顺序逐个匹配URLConf里的URLpatterns。如果找到则会调用相关联的视图函数,并把HttpRequest对象作为第一个参数(通常是request)。

4.最后该view函数负责返回一个HttpResponse对象

2.2 Python技术

Python由荷兰数学计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言, 随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。

Python解释器易于扩展,可以使用C语言C++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。 Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码机器码

2.3 协议文本解析技术

Python 提供了多种用于文本解析的功能和库,可以用于处理各种形式的文本数据。以下是一些常用的 Python 文本解析功能介绍:

字符串操作:Python 提供了丰富的字符串操作方法,包括查找、替换、分割、连接等。通过使用字符串的内置方法和操作符,可以方便地对文本进行各种操作。

正则表达式:re 模块提供了正则表达式功能,可以用于在文本中搜索、匹配和替换特定模式的字符串。正则表达式是一种强大的模式匹配工具,能够实现复杂的字符串匹配和提取。

文本分词:文本分词是自然语言处理中的一个重要任务,可以将文本按照单词、词组或其他语言单位进行切分。Python 中常用的文本分词工具包括 NLTK(Natural Language Toolkit)、spaCy 等。

解析器库:Python 中有许多用于解析特定格式文本的库,例如:

csv 模块:用于读写逗号分隔值 (CSV) 文件。

json 模块:用于解析 JSON 格式的数据。

xml.etree.ElementTree 模块:用于解析 XML 格式的数据。

beautifulsoup4、lxml 等库:用于解析 HTML 格式的数据。

yaml 模块:用于解析 YAML 格式的数据。

自然语言处理工具:Python 中有许多用于自然语言处理(NLP)的库和工具,例如:

NLTK(Natural Language Toolkit):提供了许多自然语言处理的功能和工具,包括词性标注、命名实体识别、文本分类等。

spaCy:一个用于自然语言处理的高性能库,提供了词性标注、依存句法分析等功能。

Gensim:用于主题建模和文档相似性分析的库。

数据清洗和预处理:文本解析通常涉及到数据的清洗和预处理,例如去除停用词、词干提取、标准化文本格式等。Python 中的 NLTK、spaCy 等库提供了许多用于文本预处理的功能。

通过结合这些功能和工具,可以实现对各种形式的文本数据进行解析、处理和分析,从而应对各种文本处理任务。

2.4 本章小结

本章主要分析了系统开发过程中使用到的技术点和框架,通过研究这些技术的原理后,在本设计中加以应用,包括Django技术,数据持久化存储技术,以及基于Django框架的系统后台技术,通过预研上述技术点并加以应用从而开发出漏洞扫描数据分析系统。

3 漏洞扫描检测系统实现

3.1系统功能

通过前面的功能分析可以将基于Django漏洞扫描检测平台的研究与实现的功能主要包括用户登录漏洞扫描检测数据分析等内容。后台管理是针对已登录的用户看到满意的漏洞扫描数据分析而设计的。

3.2可行性研究

通过对系统研究目标及内容的分析审察后,提出可行性方案,并对其进行论述。主要从技术可行性出发,再进一步分析经济可行性和操作可行性等方面。

3.2.1 经济可行性

开发系统所涉及到的资料,一般是在漏洞扫描 馆查阅,或是在网上进行查找收集。所需要的一些应用软件也都是在网上可以免费下载的,因此,开发成本是几乎为零。但是开发出来的系统,还是具有高效率,低成本,较高质量的。所以,从经济可行性的角度,该系统符合标准。

3.2.2 技术可行性

技术可行性是考虑在现有的技术条件下,能否顺利完成开发任务。以及判断现有的软硬件配置是否能满足开发的需求。而本系统采用的是Django开发框架,并非十分困难,所以在技术上是绝对可行的。此外,计算机硬件配置是完全符合发展的需要。

3.2.3 运行可行性

当前计算机信息化的知识已经十分普及了,现在的操作人员也都是对系统环境有很强的适应性,各类操作人员大都是有过培训补充的,因此完全不影响组织结构,所以在运行上也是可行的。

3.2.4 时间可行性

从时间上看,在大四的最后一个学期,在实习工作与完成毕设两件大事相交叉的时间里,结合之前学习的相关知识,并开发系统,时间上是有点紧,但是也不是完全没可能实现,通过这段时间的努力功能基本实现。

3.3 系统实现流程

(1)需求分析与问题定义:

开始研究的第一步是对系统需求进行深入分析。这包括明确定义系统的目标、用户需求、功能需求以及可能的问题和挑战。这一步将帮助确定系统的范围和关键特性。

(2)系统架构设计:

根据需求分析的结果设计系统的总体架构。确定系统的主要模块,包括数据采集、预处理、分析算法、可视化、用户界面等。考虑系统的灵活性、可扩展性和模块化。

(3)技术选型:

选择合适的技术工具和库,特别关注Python中与漏洞扫描检测相关的库和框架。考虑使用的机器学习算法、可视化工具、网络库等。

(4)数据采集与预处理:

实施数据采集模块,选择适当的工具捕获漏洞扫描数据。进行数据预处理,包括清理、过滤、格式转换,以确保后续分析所需的高质量数据。

(5)漏洞扫描检测算法实现:

使用Python实现漏洞扫描检测算法。这可能包括基于机器学习的异常检测、流量分类、入侵检测等算法。确保算法能够适应不同的网络场景。

(6)可视化与报告模块实现:

设计并实施可视化模块,使用Python的可视化库创建图表和图形,使用户能够直观地理解分析结果。同时,实现报告模块,生成详细的报告以便用户深入了解网络状态。

(7)用户界面设计与实现:

根据系统设计,设计用户友好的界面。选择合适的GUI库或Web框架,确保用户能够轻松配置系统参数、查看分析结果。

(8)实验环境搭建与测试:

提供实验环境模块,支持模拟不同网络条件和攻击场景。进行系统性能测试,确保系统在各种情况下的稳定性和可靠性。

(9)安全性设计与实现:

设计并实施系统的安全性措施,包括数据加密、用户身份验证和授权机制。确保系统对潜在攻击具有防范能力。

3.4系统平台架构

在任何信息系统当中有价值的数据都是必不可少的重要部分,如何通过手上

的资源获取得到有价值的数据便是开发系统。首先需要考虑的问题根据系统的功

能设计数据获取和处理的流程以及其实现方法都已经基本上确定获取和处理流

程。

3-1漏洞扫描检测系统架构

3.5 数据库设计

本系统采用模块化设计理念,面向对象的编程思想,实现系统各个模块的共功能,先将系统的总框架描绘出来,将功能模块嵌入框架中并描绘出流程图,逐步精确。

3.5.1 系统功能模块划分

目前,主要的信息管理系统通常采用三层架构开发。主要原因是:信息管理系统的三层架构,各层结构清晰,便于标准化,方便维护,降低维护的成本。

三层架构分别是:表示层(页面)、数据访问层和业务层。表示层:即系统页面和用户之间的响应式交互,数据访问层:用于处理用户请求的数据,业务层:是系统提供核心功能的层,因此业务它被用来处理系统中各个功能的业务逻辑。

本系统主要采用Python进行开发,搭配MySQL数据库,根据需进行模块的划分,分配模块的信息输入和输出,最后进行数据库的设计,得出系统的模块划分。

数据库采用MySQL数据库,数据库是实现本系统的重要工具,好的数据结构可以使系统顺利的运行,本系统的数据针对个人用户和管理员进行设计,在个人模块中主要包括个人基础信息表、角色表、用户角色表。管理员模块中只要包括用户信息表、漏洞扫描检测表、管理员表。

3.6 IP解析程序设计

visualize_vulnerabilities 函数接收一个漏洞列表作为输入,并根据不同类型的漏洞统计漏洞的数量。然后,使用matplotlib库创建一个柱状图,横轴为漏洞类型,纵轴为漏洞数量,以及一些必要的标签和标题。最后,调用 plt.show() 函数显示生成的图表。表3-2漏洞扫描检测可视化代码

admin.site.site_title = "漏洞扫描检测可视化系统"

admin.site.site_header = "漏洞扫描检测可视化系统"

class ExportExcelMixin(object):

    def export_as_excel(self, request, queryset):

        meta = self.model._meta

        field_names = [field.name for field in meta.fields]

        response = HttpResponse(content_type='application/msexcel')

        response['Content-Disposition'] = f'attachment; filename={meta}.xlsx'

        wb = Workbook()

        ws = wb.active

        ws.append(field_names)

        for obj in queryset:

            for field in field_names:

                data = [f'{getattr(obj, field)}' for field in field_names]

            row = ws.append(data)

        wb.save(response)

        return response

    export_as_excel.short_description = '导出Excel'

@admin.register(Case_item)

class Case_item_Admin(admin.ModelAdmin, ExportExcelMixin):

    list_display = ("name",  "case_id", "pingfen", "text","itype","zuozhe",)

    actions = ['export_as_excel']

    search_fields = ("name",  "pingfen", "text","itype","zuozhe",)

    list_filter = ['itype']

@admin.register(Users)

class Users_Admin(admin.ModelAdmin, ExportExcelMixin):

    list_display = ("username", "email", "password","jianjie","set","age",)

    actions = ['export_as_excel']

    search_fields = ("username",  "email", "jianjie","set",)

@admin.register(PingLun)

class PingLun_Admin(admin.ModelAdmin, ExportExcelMixin):

    list_display = ("case", "biaoqian","data",)

    actions = ['export_as_excel']

    search_fields = ("case", "biaoqian",)

@admin.register(Borrowing)

class Borrowing_Admin(admin.ModelAdmin, ExportExcelMixin):

    list_display = ("user", "case", "data","status","data_new")

    actions = ['export_as_excel']

    search_fields = ("user",  "case",  list_filter = ['status']

parse_packet 函数接收一个数据包作为输入,并返回解析后的数据部分。首先,它将数据包按竖线分割成长度和数据两部分,然后将长度部分转换为整数。接着,它检查数据部分的实际长度是否与指定长度相同,如果不同则抛出异常。最后,它返回解析后的数据部分。。下表3-4为漏洞扫描所属行业Django作业管理类的主要逻辑。

3-4 协议解析代码

def parse_packet(packet):

    # 按照竖线分割数据包,第一部分是长度,第二部分是数据

    length, data = packet.split("|", 1)

    

    # 将长度转换为整数

    length = int(length)

    

    # 检查数据长度是否与指定长度相同

    if len(data) != length:

        raise ValueError("Packet length does not match specified length"

    return data

# 测试数据包解析

packet = "5|Hello"

parsed_data = parse_packet(packet)print("Parsed data:", parsed_data)

4 后台系统实现

基于Django漏洞扫描检测平台的基本业务功能是采用Django框架实现的, 在本文的第四章将详细介绍后台系统的实现部分,包括详细阐述了系统功能模块的具体实现,并展示说明了部分模块的功能界面。

4.1 开发环境与配置

4.1.1 开发环境

本系统设计基于B/S架构,其中服务器包括应用服务器和数据库服务器。这种架构模式,使用户只需要在有网络的地方即可通过浏览器访问,而不需要再安装客户端软件,交互性更强。基于Django漏洞扫描检测平台使用Pycharm集成开发工具。而系统运行配置时,选择应用本地来部署Web服务器来保障平台的正常运行。本系统的主要开发环境以及开发工具如表4-1所示。

表4-1 系统开发环境和工具

项目

系统环境及版本

硬件环境

Windows 64 位操作系统

Python

Python2.6

数据库

MySql

开发工具

Pycharm

项目架构

Django

4.1.2 框架配置介绍 

本系统使用集成开发工具Pycharm进行开发,由于 Pycharm 中本地配置详细资料有很多,不做详细赘述, 本文主要介绍 Django框架及Shiro 框架的配置。首先需要在项目中中引入各框架以及数据库连接等所需要工具包。

4.2 数据库的设计

数据库设计是系统设计中特别重要的一部分。数据库的好坏决定着整个系统的好坏,并且,在之后对数据库的系统维护、更新等功能中,数据库的设计对整个程序有着很大的影响。

根据功能模块的划分结果可知,本系统的用户由于使用账号和密码进行登录,因此在本系统中需要分别进行数据记录。首先根据如下3个数据实体:用户、协议字段等数据库表。

图4-1 协议实体属性图

用户的属性包括用户编号、用户名、密码和性别、注册账号的时间。用户实体属性图如图4-2所示:

图4-2 用户实体属性图

根据以上分析,各个实体之间有一定的关系,使实体与实体可以联系起来,建立成整个系统的逻辑结构,本系统中,普通用户通过对漏洞扫描的管理,使漏洞扫描与用户实体存在对应关系。

4.3 系统功能模块实现

4.3.1首页功能

漏洞扫描检测系统后主界面如下图所4-3所示:

图4-3用户登录界面

系统启动后,系统会成功跳转至首页,在首页中,位于上方的横栏是对本系统的基本信息的描述和欢迎登录效果,左边菜单也会显示在首页中,可直接表明可以点击菜单进行跳转。左侧则是本系统的导航菜单,可折叠展示,较为方便,右方则为欢迎页效果。

图4-4系统首页界面

4.3.2协议字段解析功能

漏洞扫描检测功能是对漏洞扫描进行查询,删除等操作的功能集合,漏洞扫描信息管理功能使用到了漏洞扫描表t_ device,漏洞扫描表t_device的主要数据字段,结构,类型及描述如下表4-2所示。

表4-2 漏洞扫描表字段

字段名称

数据类型

是否允许为空

描述

id

int

不允许

自增主键,唯一ID

name

String

允许

数据包名称

network

String

允许

网络IP名称

network_size

String

允许

网络IP源

education

String

允许

网络IP目标

experience

String

允许

网络协议

industry

String

允许

长度

recruiter

String

允许

其他信息

salary

String

允许

时间

漏洞扫描检测系统的漏洞扫描协议解析功能界面如下图所4-4所示:

图4-5 漏洞扫描协议解析功能流程图

漏洞扫描协议解析功能流程功能图如图4-5所示,通过“漏洞扫描检测”按钮,进入漏洞扫描检测界面,用户可以看到漏洞扫描列表,例如:漏洞扫描名称、所属类别、长度、漏洞扫描目的地、漏洞扫描源、漏洞扫描时间的详细信息。通过此界面,用户可以对漏洞扫描进行删除管理操作。

图4-6 漏洞扫描协议解析功能流程图

4.3.3漏洞扫描看板功能

数据可视化模块就是对我们采集和计算的分析结果的展示。数据分析模块的

数据进行一个精美而又直接的展示,我们采用大屏的方式进行展示,展示数据结

构分明,背景具有科技感,把相对复杂的、抽象的数据通过可视的、交互的方式

进行展示,从而形象直观地表达数据蕴含的信息和规律。

图4-7 漏洞扫描大屏分析流程图

图4-8 漏洞扫描大屏分析界面

漏洞扫描分析可视化开发的难点并不在于图表类型的多样化,而在于如何能在简单的一页之内让用户读懂漏洞扫描数据之间的层次与关联,这就关系到布局、色彩、图表、动效的综合运用。如排版布局应服务于业务,避免为展示而展示;配色一般以深色调为主,注重整体背景和单个视觉元素背景的一致性。本文使用Echarts中地图、线条等组件,将分析结果较为直观的展示给平台用户,使得用户能够简便的获取有效的信息。

4.4 本章小结

本章主要分析了基于Django的漏洞扫描检测系统开发过程中使用到的技术和具体的实现步骤,这其中主要介绍了基于Django框架的漏洞扫描检测系统的搭建环境和开发步骤,包括程序中的一些数据库配置等。前端页面采用的是html实现。

5 总结与展望

5.1 系统开发遇到的问题 

由于基于Django漏洞扫描检测平台是由本人独立开发,因此在系统设计和业务逻辑方面更多地借鉴了目前市场上较为流行的框架和技术点,包括技术,很多是不熟悉没接触过的,在开发过程中不断学习新知识。另外由于本人的时间和精力的原因,在系统开发过程中有很多地方可能并不能够完全尽如人意,还有许多需要补充的功能与模块。

5.2 总结与展望 

漏洞扫描系统是在对相关管理范畴进行详细调研后,确定了系统涉及的领域,包括数据库设计、界面设计等,是一个具有实际应用意义的管理系统。根据本毕业设计要求,经过四个多月的设计与开发,漏洞扫描系统基本开发完毕。其功能基本符合用户的需求。

为保证有足够的技术能力去开发本系统,首先本人对开发过程中所用到的工具和技术进行了认真地学习和研究,详细地钻研了基于Python的网络爬虫技术以及Echarts, CSS, HTML等前端开发技术,同时还研究了开发技术等。

从漏洞扫描检测分析平台需求分析开始,到整体框架的设计以及各个详细功能的设计具体实现,最后基于Django平台的漏洞扫描检测系统的基础架构和详细功能已经大致开发完毕,并将其部署在本地服务器当中运行,用户可以登录使用该系统进行漏洞扫描的筛选,同时查询的分析结果。


参考文献

[1]赵红亮, 徐琳琳, 李国琦. (2017). "基于Python的漏洞扫描检测及可视化." 电脑知识与技术, 13(8), 190-192.

[2]杨光, 张才鹏, 等. (2018). "Python漏洞扫描检测工具设计与实现." 计算机应用, 38(3), 765-769.

[3]朱家欣, 张世雄, 等. (2016). "基于Python的漏洞扫描检测系统设计与实现." 计算机工程与设计, 37(12), 4857-4862

[4]杨志威, 陈永亮. (2019). "基于Python的漏洞扫描异常检测技术研究." 信息网络安全, 3(10), 51-55.

[5]刘东, 陈颖颖, 等. (2015). "Python在漏洞扫描检测中的应用研究." 网络与信息安全学报, 1(2), 30-36.

[6]陈怡, 孙燕. (2019). 基于深度学习的漏洞扫描检测与入侵检测. 计算机工程与设计, 40(3), 799-805.

[7]赵蓉, 于军. (2020). 漏洞扫描检测技术在网络安全中的应用. 计算机科学.34(2),23-25

[8]董亚东, 郑宇, 王秀军. (2017). 基于机器学习的漏洞扫描分类研究. 电脑应用与软件.6(2),60-64

[9]李晓宁, 葛佳. (2018). Python在漏洞扫描检测中的应用. 现代计算机, (7), 132-134.

[10]秦虹蕙,韦广平,韦淞文,赵永丽,刘瑞红,何素华,秦福红.崇左市水果销售市场现状及对策[J].商业文化,2020(11):67-71

[11]苏艳玲,马耀川.高校线上水果销售平台的研究分析与设计——以陕西服装工程学院为例[J]. 食品安全导刊,2021(28):159-160.

[12]孙晓娟.基于移动App的水果微商城设计研究[J].中国管理信息化,2016,19(02):157-158

[13]马静.基于微信小程序的购物商城系统的设计与实现[J].微型电脑应用,2021,37(03):31-34.

[14][8]陆兆洁,陆金请,粟冬连,柳长青.“互联网+”视域下水果类农产品网络销售模式创新研究[J].投资与创业,2021,32(07):47-49.

[15]付昕,饶日楠,胡萍,龚雪梅,黄凯丽,陈庆梅.基于app的水果线上线下销售平台设计与实践[J].科技视界,2020(01):171-173

Khan, S., Zaidi, S. M. H., & Khan, A. (2018). "A Survey of Python for Cyber Security." Procedia Computer Science, 132, 1496-1503

[16]Giorgioni, G., Cinque, M., & Rafique, W. (2018). "Python for Network Traffic Analysis." Procedia Computer Science, 131, 882-889.

[17]Lohar, P., & Srinivasa, K. G. (2017). "Python based Network Intrusion Detection System for Smart Grids." In 2017 2nd IEEE International Conference on Recent Trends in Electronics, Information & Communication Technology (RTEICT).

[18]Kaur, A., & Goyal, R. (2017). "A Survey of Techniques for Network Traffic Classification Using Machine Learning." Procedia Computer Science, 122, 970-977.

[19]Babaei, S., & Dehghantanha, A. (2017). "Network Forensics Investigation Using Python Scripts and IPFIX Data." In 2017 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData).

[20]Zargar, S. T., & Ghorbani, A. A. (2014). "A survey of defense mechanisms against distributed denial of service (DDoS) flooding attacks." IEEE Communications Surveys & Tutorials, 15(4), 2046-2069.


谢  辞

时光飞逝,四年的本科生生涯即将结束。在这四年的时光里,有遇到难题时的手足无措,有获得专业进步时的开心。经历了许多的事情,自己也在不知不觉中成长了很多,心中充盈最多的仍是感激。

首先感谢我的导师,她严谨的治学态度深深地影响每位同学。我要感谢我的父母,他们总是默默的付出,在生活上给与我最大的帮助,在学习上也给我很多建议。

最后,由衷的感谢各位评审老师在百忙之中抽出时间来参与我的论文评审和答辨。

                                             

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值