基于web漏洞扫描及分析系统设计_kaic

基于web漏洞扫描及分析系统设计

摘 要
随着信息技术的发展和网络应用在我国的普及,针对我国境内信息系统的恶意网络攻击也越来越多,并且随着黑客攻击技术的不断地更新,网络犯罪行为变得越来越难以应对,用户日常访问的网站是否安全对于普通网民而言难以辨别,保护人民不受不法侵害也是难上加难。如何识别网站的潜在危险性,以及网站出现安全性问题该如何防御,尽可能减少网站被攻击后造成的实际损失,是目前迫切需要解决的难题。
本文使用VMware虚拟机技术模拟真实的网络环境,使用渗透测试技术对模拟网络进行薄弱点测试信息收集、攻击测试等,再现了渗透测试的重要流程和技术方法。在对目标主机实施渗透测试时,会从系统层面和Web层面两个维度进行测试,扫描出存在的漏洞,根据网站源码分析导致漏洞的原因,给出应对普遍性问题的解决办法。本课题参考现有的PTES渗透测试执行标准,对真实的案例进行渗透测试,使最终得到的研究结果在实际中能够得以应用。
除此之外,本课题使用python语言设计实现适用于普通网民的SQL漏洞扫描工具。该工具会帮助用户测试目标网站安全性,并会根据扫描结果给出适合用户的安全提示,重点是SQL注入漏洞的提示。SQL注入检测工具让普通人能够在上网时进行主动防御,这对国家网络安全建设有着非常重要的意义。
关键词: Web安全;SQL注入;网络安全;漏洞扫描。

Research and implementation of injection vulnerability scanning tool and protection method based on Web penetration technology

Abstract
With the development of information technology and the popularization of network applications in China, there are more and more malicious network attacks against China's information systems. With the continuous updating of hacker attack technology, cyber crimes become more and more difficult to deal with. Whether the Websites users visit daily are safe or not is difficult for ordinary Internet users to distinguish, and it is even more difficult to protect people from illegal infringement. How to identify the potential danger of the Website and reduce the actual loss caused by the attack is an urgent problem to be solved
This paper will use VMware virtual machine technology to build a simulated company's network environment, use penetration testing technology to collect weak point test information and attack testing on the simulated network, and reproduce the important processes and technical methods of penetration testing. When performing penetration testing on the target host, it is tested from the two dimensions of system level and Web level, scans for existing vulnerabilities, analyzes the causes of vulnerabilities according to the Website source code, and gives solutions to common problems. This project refers to the existing PTES penetration testing implementation standards, and conducts penetration testing on real cases, so that the final research results can be applied in practice.
In addition, this topic uses Python language to design and implement SQL vulnerability scanning tool suitable for ordinary Internet users. The tool will help users test the security of the target Website and give security tips suitable for users according to the scanning results, focusing on the tips of SQL injection vulnerabilities. SQL injection detection tool enables ordinary people to take the initiative to defend when surfing the Internet, which is of great significance to the construction of national network security.
Key words: Web security;SQL injection;network security;vulnerability scanning.
目录
基于web漏洞扫描及分析系统设计
摘 要
Abstract
1、绪论
1.1 研究背景
1.2 研究现状
1.3 研究目的与内容
1.4 设计目标及论文结构
2、渗透测试概要及流程
2.1 PTES渗透测试标准
2.1.1 PTES渗透测试流程
2.1.2 PTES 标准的缺陷
2.2 定制化渗透测试流程
2.3本章小结
3、测试实验环境搭建
3.1测试目标网络拓扑结构
3.2 测试目标网络配置
3.3 测试主机及测试工具
3.3.1 Kali Linux概述
3.3.2 Windows 概述
3.3.3测试工具Metasploit Framework
3.3.4测试工具 Nmap
3.3.5其他测试工具
3.4 测试目标主机概述
3.4.1 Windows server2008 靶机
3.5本章小结
4、系统漏洞研究
4.1系统漏洞现状及攻击态势
4.2扫描活跃主机
4.2.1扫描目标主机
4.2.2其他探测结果
4.3 系统漏洞测试
4.3.1 系统漏洞复现
4.3.2 分析测试结果
4.4 本章小结
5、Web漏洞研究
5.1 Web安全现状
5.2 SQL注入漏洞概述
5.3 SQL注入漏洞复现过程
5.3.1 SQL注入漏洞产生原因分析
5.3.2 漏洞修复建议
5.4 本章小结
6、SQL注入漏洞检测工具
6.1 现状分析
6.2 功能需求分析
6.3 总体设计
6.4 模块设计与实现
6.4.1 用户输入模块
6.4.3 报告模块
6.4.4 扫描结果分析
6.5 功能测试及其他测试
6.6 本章小结
7、总结
参考文献
附 录
致 谢
 
1、绪论
1.1 研究背景
随着互联网的快速普及,为了业务的方便快捷,各行各业都相继把重要的信息类业务搬到了网络上。因此信息网络安全与各行各业的关系越发紧密,所以保障网络运行稳定和安全也是在保护各大行业甚至国家的稳定运行。随着近些年来一些骇人听闻的网络安全事件的发生,各行各业都开始关注网络安全问题,尤其是规模较大的公司和企业以及政府的相关机构,网络安全成为了重中之重。
在一般情况下,开发人员会根据安全开发需求进行相应的应用开发,然而在开发时难免会出现考虑不在周全的现象,或者对于开发人员缺乏安全相关的培训,导致在开发时期察觉不到漏洞的存在,所以经常会在应用上线之后,漏洞被不法分子利用的情况发生。同时也会造成一系列难以弥补的损失。
科技在发展,渗透技术也在不断升级,更新的漏洞利用技术以及更新的恶意代码编制技术,都让计算机系统时时刻刻面临着被攻击的可能性。现如今,随着自动化测试工具的普及,在实施网络渗透时,攻击者只需要找出计算机系统的一个不起眼的漏洞,然后使用相应的自动化工具加以利用就可以上传恶意代码[5],然而这些不起眼的漏洞就会导致整个计算机系统陷入危险的境地。
网站数据泄露事件频发的今天,数据泄露事件最大的受害者最终还是普通网民。一些网站疏于管理[1],页面存在大量的不安全漏洞,作为普通人上网时难以辨别,所以本课题将设计并实现适用于普通网民的页面简洁、操作方便的SQL注入漏洞扫描工具,在上网时遇到需要采集重要信息的页面,用SQL注入扫描工具可以确定网站页面的安全性,判断是否存在容易被利用的SQL注入漏洞,能够在一定程度上保护人民信息财产的安全。这对国家信息安全的建设有着非常重要的意义。

1.2 研究现状
互联网时代,众多企业都会利用Web站点对外提供电子商务、电子政务、在线支付等服务。随着企业服务的多样化,庞大的计算机网络系统往往漏洞百出,不法分子进程会利用Web应用存在的漏洞进行非法获利。
目前,众多互联网安全厂商都推出了自己的网络安全设备,比如绿盟科技的漏洞扫描系统、天融信的防火墙设备、启明星辰的入侵防御系统。这些设备都能够对目前频发的不安全漏洞进行扫描或者修补。因为对应的漏洞必须在被发现并且研究过后,开发出对应的防御插件,还要及时更新到各设备上才能对受保护的网络系统进行对应的扫描或者防御。这个过程中包括对漏洞的发现、研究、设计开发插件、测试、发布更新[6]。这整个流程需要耗费大量的时间,经常是数周或者数月。然而,当一个漏洞被发现时,它已经是被不法分子利用过的,而且该漏洞的覆盖面也是相当广泛的,比如最近爆出的log4j中的第五个安全漏洞CVE-2021-44832,它影响日志库的所有版本,从 2.0-alpha7 到 2.17.0,2.3.2 和 2.12.4 除外。所以在计算机网络系统中部署过对应的安全设备后,也会被黑客绕过或者利用0day漏洞进行攻击。所以针对漏洞的被动防御往往存在滞后性。
目前网络安全问题主要集中在黑客攻击、应用软件漏洞和企业缺乏规范化管理。不法分子将木马程序或者病毒通过信息网络中存在的漏洞通过互联网的通讯数据传送到攻击目标服务器中达到犯罪目的。信息系统中应用软件作为企业对外提供服务的主体,随着业务的拓展升级,计算机系统上集成的应用软件越来越多元化,各应用软件的漏洞共同成为了整个信息系统的漏洞,无论哪个应用的都有可能导致整个系统的瘫痪。当计算机系统的运维管理人员缺乏规范性的管理也是信息系统的不安全因素之一。
为了保障计算机网络系统的相对安全和应对国家相关法律的规定,企业会对计算机网络实施模拟黑客攻击的渗透测试来评估计算机网络系统的安全性,测试人员通过标准的渗透测试流程对目标网络进行渗透。最终给被测单位提供记录系统中存在安全问题的渗透测试报告。
在互联网的网络安全形势日益严峻的今天,众多学者都在研究Web安全,比如蒲石对于SQL注入漏洞和XSS漏洞的形成原因和漏洞的验证方法的研究[30]、郑雷雷等人对Web应用常见的安全漏洞和测试方法的研究[31]、田伟提出了模型驱动的SQL注入渗透测试方法[32],能够提高对Web应用进行SQL注入的安全漏洞测试的准确性等等。通过这些学者的研究,发现以往的研究通常是集中于已经公布的高危漏洞的发现和防范[33]。以往对于渗透测试流程的研究往往是对渗透测试流程中的某一个步骤进行深入研究,对于整体的介绍相对较少,也没有对于渗透测试流程实施过后整体的效果进行分析研究。
对于自动化渗透测试工具的研究,研究人员的目标一般是开发出安全有效的渗透测试工具,以提高测试的效率和准确性,达到降低成本的目的。目前比较成熟的渗透测试工具有CoreImpact和Metasploit Framwork,这些工具为测试人员提供了极大的便利,但同时也会成为黑客的有力武器。

1.3 研究目的与内容
基于规范化的安全开发,不免在开发结束后或者产品交付后会遇到一些逻辑上的,或者变量处理不全面等漏洞,为了使计算机系统相对比较安全,所以厂商一般会对自家的产品或者自家的计算机信息系统进行渗透测试,即模拟黑客攻击,以攻击者的视角对计算机信息系统的安全性进行较为全面的评估,从攻击者的角度对计算机系统的任何弱点、技术缺陷或者针对漏洞的主动分析,这样可以发现并消除大多数的漏洞,使得计算机信息系统在今后的使用中出现安全问题的可能性大大降低。这也能提高所有相关人士的网络安全防护意识,也能对企业或组织的信息系统安全做出深入且具体的安全风险评估。
本课题将会在VMware虚拟机上搭建模拟公司的网络环境,参考现有的渗透测试流程,设计出适合本次研究的测试流程,使用渗透测试技术对目标靶机进行信息收集、漏洞扫描、漏洞测试及利用。在测试过程中,会用到现如今渗透测试人员在实施项目时经常使用的扫描工具进行测试,一方面是因为使用渗透测试工具会大大提高测试的效率和准确性,另一方面为达到尽可能贴合现实,使研究出的成果能够高效的应用于现实的目的。

1.4 设计目标及论文结构
本论文中,将使用VMware搭建漏洞测试需要用到的靶机以及kali Linux攻击计算机。课题整体是通过系统漏洞和Web漏洞两个方面针对靶机进行渗透测试,并且通过对靶机存在的漏洞进行研究,得出漏洞的形成原因、防御方法和手段以及渗透测试的实施流程进行研究,将通过研究个别已存在的实例,挖掘上面的漏洞,研究分析网站源码,总给出能够解决一类问题的通性防御方法,这对于网络安全的防护有着实际的意义。
第一章中,整体是为了理清并分析当前网络安全行业的现状以及国家乃至全世界面临的共同问题,从中剖析出本课题的研究价值。
第二章,根据实际的需求,区分实验与现实,根据不同的渗透测试目标,定制符合需求的渗透测试流程,根据实验的深究性和实际的严谨性分别设计符合要求的渗透测试流程,针对不同步骤适当进行增加或精简。
第三章,本章主要会根据本课题中的漏洞研究涉及到的内容在VMware上搭建符合需求的虚拟测试环境,并且还会对实验中用到的系统、工具和网络环境等基本情况加以说明,对靶机的Web服务部署情况和漏洞检测工具的使用情况以及其在现实中的应用广度都会加以说明,以求实验达到映射实际的标准。
第四章,根据第二章制定的渗透测试流程从信息搜集阶段对目标主机系统进行黑盒测试,也会分析实验与现实的异同点,力求实验做得严谨,结果符合实际。
第五章,本章会通过对现实网络环境以及网络安全事件的具体内容进行分析、推理,找出威胁性最高、发生最频繁的Web漏洞进行研究,并在虚拟靶机上进行渗透测试,秉承着从无到有的合理发展原则,通过一步一步的推理、测试,找出漏洞、利用漏洞、研究漏洞最后给出解决这类问题的通用化方案。
第六章,经过调查,在过去几年内,网络诈骗的事件时常发生,罪犯们能够对受害者的信息掌握的及其详细,其中大部分的数据来源竟然是网络攻击。众所周知,作为一个Web应用网站,其内部的用户数据通常都保存在后台的数据库中。然而,许多公共网站运营者的不负责任,对于已知的漏洞不及时修复,总是想着能用就行,这就导致了犯罪分子利用漏洞盗取公民信息的恶性事件发生。从而引发了一系列悲剧的产生。所以,在本课题中设计并开发了针对SQL注入漏洞进行检测的轻量化扫描工具。能够让非专业的普通人拥有判断网站是否安全,是否可信的能力。开发SQL漏洞扫描工具的原则为:简单易用、扫描精准、提供安全上网建议。
第七章,本章会对整个课题研究的全过程进行总结,阐述自己的观点以及课题的研究成果。针对课题研究过程中遇到的问题进行总结和分析,为后续的学习计划指明方向。 

 

 

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

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

相关文章

Mysql主从复制及读写分离

🍓 简介:java系列技术分享(👉持续更新中…🔥) 🍓 初衷:一起学习、一起进步、坚持不懈 🍓 如果文章内容有误与您的想法不一致,欢迎大家在评论区指正🙏 🍓 希望这篇文章对你有所帮助,欢…

LaTeX插入参考文献

接着上一篇,用EndNote组织参考文献,然后再导入到LeTex中感觉不太好用,然后就学习了一下BibTeX来管理参考文献,发现还可以,这里记录一下,方便以后查阅。 LaTeX插入参考文献 thebibliographyBibTeX参考资料 t…

前端 sentry 接入钉钉机器人

sentry 接入钉钉机器人 打开钉钉,添加机器人 此时会得到Webhook地址,记录一下,以后会用到 sentry 端设置 看看这里有木有钉钉插件,有的话开启插件,并配置这里我说一下没有的情况下,我们何如设置 这里需要填写webhook url 这个的url 需要是一个公网的地址,不可以是本地…

使用Unity开发一个独立的区块链

Arouse Blockchain [Unity独立区块链] ❗️千万别被误导,上图内容虽然都在项目中可寻,但与目前区块链的业务代码关联不大,仅供宣传作用(总得放些图看着好看)。之所以有以上内容是项目有个目标功能是希望每个用户在区块链上都有一个独一无二的…

View UI Plus (iview)表格单选实现教程

View UI Plus 是 View Design 设计体系中基于 Vue.js 3 的一套 UI 组件库,主要用于企业级中后台系统 View UI,即原先的 iView,从 2019 年 10 月起正式更名为 View UI,并使用全新的 Logo View UI Plus 实现表格单选,这…

首次使用云服务器搭建网站(二)

书接上文,我们已经完成了服务器的租赁,宝塔面板的下载与安装。 接下来我们将正式开始网站搭建。 一、网站创建 点击网站、添加站点 输入网站域名、数据库选择MySQL数据库,选择utf8,数据库账号密码会自动生成。无论你要创建什么样…

互联网行业-镭速文件传输系统方案

互联网行业是一个快速变化和高度竞争的行业,这一行业需要传输大量的数据、代码和文件。在互联网企业的生产和运营过程中,需要传输各种敏感和大型的文件,例如业务报告、数据分析、软件代码等。这些文件需要在不同的部门、不同的地点之间高效地…

用敏捷工具Leangoo领歌做敏捷需求管理

传统的瀑布工作模式使用详细的需求说明书来表达需求,需求人员负责做需求调研,根据调研情况编制详细的需求说明书,进行需求评审,评审之后签字确认交给研发团队设计开发。在这样的环境下,需求文档是信息传递的主体&#…

小雉系统U盘安装包制作

​ 本文原地址: http://www.feitianzhi.com/boke/index.php/archives/57/ 概述 小雉系统可从线上系统制作安装包到U盘,制作的安装包可用于新系统的安装; 小雉系统只提供升级包,对应的安装包均是客户在应用升级包后按本文或http://www.f…

vite预渲染 vite-plugin-prerender 大坑记录

本文部分配置转自:vite预渲染怎么实现_猿耳盗铃的博客-CSDN博客 懒得重新写,贴下版本和自己踩的各种坑吧 以下为版本,本文只给vite vue3的建议,不一定适用,因为正常情况能build成功,我昨天中午之前一直没…

招商基金资深架构师教你如何搭建统一监控平台

随着数字化进程的加速和业务的高速发展,系统的复杂程度日益升级,为确保业务系统的连续性和稳定性,越来越多的企业想要建设统一的监控平台,但却不知道从哪里开始着手。比如: 有些企业会直接将监控系统页面集成到统一监…

Jmeter实现Dubbo接口测试

目录 前言: 一、准备 二、编写我们的测试工程 三、Jmeter来测试这个工程 前言: JMeter可以用来测试Dubbo接口的性能和负载。Dubbo是阿里巴巴的高性能RPC框架,常用于分布式服务的调用。为了测试Dubbo接口,需要使用JMeter提供的…

为什么说2023年最难招聘的岗位是高性能计算工程师?

随着毕业季的临近,高校毕业生将进入就业关键阶段。据统计,2023届全国高校毕业生预计达到1158万人,同比增加82万人,再创新高。尽管有千万的大学毕业生,但是企业反馈依然很难招聘到合适的高性能计算工程师。 这主要归因于…

「OceanBase 4.1 体验」OceanBase:解读领先的分布式数据库系统,功能与体验全解析

文章目录 前言一、关于 【OceanBase 4.1】征文活动(可跳过)二、OceanBase 产品了解2.1 初识 OceanBase2.2 什么是 OceanBase2.3 OceanBase 相关链接2.4 OceanBase 与传统数据库对比有何特别之处2.5 OceanBase 相关概念以及术语2.5.1 OceanBase 基本概念2…

【Docker】什么是Docker,它用来干什么

作者简介: 辭七七,目前大一,正在学习C/C,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: 七七的闲谈 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖&#x1f…

软件测试面试题(大全)

1.B/S架构和C/S架构区别 B/S 只需要有操作系统和浏览器就行,可以实现跨平台,客户端零维护,维护成本低,但是个性化能力低,响应速度较慢 C/S响应速度快,安全性强,一般应用于局域网中,因…

【Git原理与使用】-- 初步认识

目录 Git版本控制器的引入 版本控制器 Git安装(已安装可以跳过) Linux-centos Linux-ubuntu Git基本操作 创建Git本地仓库 配置 Git 认识工作区、暂存区、版本库 工作区、版本库 stage暂存区 工作区内容使用Git管理 Git版本控制器的引入 #&…

今年十八,期末速刷(操作系统篇1)

马上期末了,想问问各位期末考几科 我家学校网安考7科呜呜呜 只能出点文章一把梭了。。。 争取只挂一科 先来先算法(FCFS) 算法思想 我今天学FCFS只有一个要求 公平、公平 还是tnd公平 算法规则 按照进程的先后顺序来进行服务。 是否…

获得忠实铁粉?你也可以

获得忠实铁粉?你也可以 何为铁粉铁粉与普通粉丝区别铁粉规则如何获得铁粉 何为铁粉 在CSDN中,铁粉通常指对某个知名开发者、博主或组织非常支持、崇拜、追随的粉丝。他们可能会关注该开发者或博主的所有文章、博客、视频等,积极参与讨论并分…

C++ 设计模式----“单一职责“模式

二、“单一职责”模式 在软件组件的设计中,如果责任划分的不清晰,使用继承得到的结果往往是随着需求的变化,子类急剧膨胀,同时充斥着重复代码,这时候的关键是划清责任。  典型模式 • Decorator • Bridge 【1】D…