Python毕业设计-基于Django框架的网络漏洞扫描工具系统项目实战(附源码+论文)
·
大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。
💞当前专栏:Python毕业设计
精彩专栏推荐👇🏻👇🏻👇🏻
开发环境
- 开发语言:Python
- 框架:django
- Python版本:python3.7.7
- 数据库:mysql 5.7(一定要5.7版本)
- 数据库工具:Navicat11
- 开发软件:PyCharm
- 浏览器:谷歌浏览器
演示视频
python223网络漏洞扫描工具的开发与优化演示
论文目录
【如需全文或源码请按文末获取联系】

一、项目简介
在整个实现过程中本文实现过程中对背景和意义进行了阐述,深入的分析了目前网络安全的背景和漏洞扫描工具的重大意义。随后详细阐述了基于Python语言的开发环境和相关技术栈的选择,包括PyCharm和VSCode作为主要的编程环境,Python3.6以上版本作为开发语言,MySQL8作为后端数据库,以及Nmap作为第三方工具的调用服务和API[1]。在这些技术的支持之下以及开发环境应用之下,最后成功实现了本次的漏洞扫描工具。
二、系统设计
2.1软件功能模块设计

2.2数据库设计

三、系统项目部分截图
3.1用户模块
(1)登录:
(2)漏洞扫描:
(3)漏洞详情:
(4)统计结果:
(5)端口扫描:
3.2后台管理员
(1)后台首页:
(2)漏洞管理:
四、部分核心代码
"""
Django settings for Sec_Tools project.
Generated by 'django-admin startproject' using Django 3.1.4.
For more information on this file, see
https://docs.djangoproject.com/en/3.1/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/3.1/ref/settings/
"""
import os
from pathlib import Path
# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/3.1/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'o=g9x)0%m*2xd9+=-@f38yeofw6_&u0#w=%d+@o$-(z+32+a0k'
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = ['*']
# STATICFILES_DIRS = [
# os.path.join(BASE_DIR, "static")
# ]
STATIC_ROOT = os.path.join(BASE_DIR, "static")
# Application definition
INSTALLED_APPS = [
'simpleui',
'password_reset',
'import_export',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'webscan.apps.WebscanConfig',
'login.apps.LoginConfig',
'webscan_backend.apps.WebscanBackendConfig',
'dirscan.apps.DirscanConfig',
'vulnscan.apps.VulnscanConfig',
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
#'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
ROOT_URLCONF = 'security_tools.urls'
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')]
,
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'django.template.context_processors.media',
],
},
},
]
WSGI_APPLICATION = 'security_tools.wsgi.application'
# Database
# https://docs.djangoproject.com/en/3.1/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'security_tools',
'USER': 'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': '3306'
}
}
# Password validation
# https://docs.djangoproject.com/en/3.1/ref/settings/#auth-password-validators
AUTH_PASSWORD_VALIDATORS = [
{
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
},
]
# Internationalization
# https://docs.djangoproject.com/en/3.1/topics/i18n/
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/3.1/howto/static-files/
STATIC_URL = '/static/'
LOGIN_URL = '/login/'
MEDIA_ROOT = os.path.join(BASE_DIR,'media')
MEDIA_URL = '/media/'
#SimpleUi后台设置
#SIMPLEUI_LOGO = 'https://jwt1399.top//medias/logo.png' #登录页和后台logo
SIMPLEUI_ANALYSIS = False #是否向SimpleUi收集分析信息
SIMPLEUI_LOADING = False #是否打开Loading遮罩层
SIMPLEUI_LOGIN_PARTICLES = True #登录页粒子动画
SIMPLEUI_STATIC_OFFLINE = True #是否以脱机模式加载静态资源,为True的时候将默认从本地读取所有资源,即使没有联网一样可以。适合内网项目,不填该项或者为False的时候,默认从第三方的cdn获取
SIMPLEUI_HOME_INFO = False #是否打开SimpleUi服务器信息
SIMPLEUI_DEFAULT_THEME = 'simpleui.css' #默认主题 https://simpleui.88cto.com/docs/simpleui/QUICK.html#%E9%BB%98%E8%AE%A4%E4%B8%BB%E9%A2%98
SIMPLEUI_HOME_QUICK = True #后台页面是否显示最近动作
# A S URL和API key 服务器版本
API_URL = 'https://127.0.0.1:3443'
API_KEY = '1986ad8c0a5b3df4d7028d5f3c06e936c7dca89f939a54bb9acdd64753716c712'
#自定义后台菜单
SIMPLEUI_CONFIG = {
'system_keep': False, #去除系统模块
'menus': [{
'name': '导航管理',
'icon': 'fas fa-book-open',
'models': [{
'name': '分类',
'icon': 'fas fa-list',
'url': '/admin/webscan/category/'
},{
'name': '条目',
'icon': 'fas fa-tags',
'url': '/admin/webscan/item/'
}]
}, {
'name': '端口列表',
'icon': 'fab fa-battle-net',
'url': '/admin/webscan/portlist/'
}, {
'name': '中间件扫描',
'icon': 'fab fa-battle-net',
'url': '/admin/vulnscan/middleware_vuln/'
}, {
'name': '漏洞管理',
'icon': 'fab fa-battle-net',
'url': '/admin/vulnscan/loudong/'
}, {
'app': 'auth',
'name': '用户和授权',
'icon': 'fas fa-user-shield',
'models': [{
'name': '用户',
'icon': 'fa fa-user',
'url': 'auth/user/'
},{
'name': '权限组',
'icon': 'fas fa-users-cog',
'url': 'auth/group/'
}]
}]
}
获取源码或论文
如需对应的论文或源码,以及其他定制需求,也可以下方微❤联系。
更多推荐
所有评论(0)