基于python的Web扫描器设计与实现开题报告

 2023-11-21 09:11

1. 研究目的与意义

随着网络安全的概念走向全社会,人们对网络安全的重视程度也在不断上升,习近平总书记也说过“没有网络安全就没有国家安全,就没有经济社会稳定运行,广大人民群众利益也难以得到保障“。有数据显示,预计到2027年,我国的网络安全人员缺口达327万人,为提高网络安全人员的工作效率,自动化的工具则必不可少。

网络的开放性以及黑客的攻击是造成网络不安全的主要原因。科学家在设计internet之初就缺乏对安全性的总体构想和设计,我们所用的tcp/ip 协议是建立在可信的环境之下,首先考虑的是网络互连,它是缺乏对安全方面的考虑的。而且tcp/ip协议是完全公开的,远程访问使许多攻击者无须到现场就能够得手,连接的主机基于互相信任的原则等等这一些性质使网络更加不安全。先进的技术是实现网络信息安全的有力武器,这些技术包括:密码技术、身份验证技术、访问控制技术、安全内核技术、网络反病毒技术、信息泄漏防治技术、防火墙技术、网络安全扫描技术、入侵检测技术等。而在系统发生安全事故之前对其进行预防性检查,及时发现问题并予以解决不失为一种很好的办法,于是web扫描器即应运而生。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

2. 课题关键问题和重难点

二、课题关键问题及难点

web扫描器具有以下功能:对网站基本的漏洞扫描,网站服务器真实ip查询,架设在同一个服务器上的网站进行查询,对于网站的敏感目录的扫描,web指纹扫描,服务器端口扫描,网站域名信息查询。最终可整合输出报表,根据扫描结果可进一步进行对目标网站进行渗透测试,以攻击者的角度对网站的脆弱性进行检测。本课题拟完成基于python的web扫描器的设计与实现 。

本课题的关键:

1.漏洞扫描模块的实现

2.网站真实ip的查询

3.各种功能进行整合

本课题难点:

1.根据漏洞的原理写出对应的漏洞检测代码(poc),用来验证漏洞是否存在。

2.查找真实 ip 对于测试来说非常关键,能不能查找到真实 ip,直接关系到旁站发现,端口扫描等环节的正确性。但是在真实场景中,很多时候目标主机都会部署 CDN,也叫做内容分发器。什么是 CDN 呢?简单来说就是多个地点,不同的网络上摆放的服务器节点。这些节点之间会动态的互相传输内容,对用户的下载行为最优化 ,减少带宽成本。这种情况下直接访问过去解析出来的 ip 只是 CDN 服务器的 ip 而不是网站服务器的真实 ip 。

3. 国内外研究现状(文献综述)

经济损失逐渐成为学术界和工业界一个迫在眉睫的热点问题。为了解决这一问题,我们借助异步无状态端口技术,相似度智能爬行算法和页面相似度算法,设计了一款基于Web应用安全的扫描器,并在实际参与某标准化专业委员会团体标准《服务机器人信息安全要求和测试方法》制定中,我们发现已有的安全扫描器并不能满足企业对Web应用程序漏洞检测覆盖率的要求。通过使用我们设计的Web应用安全扫描器,得到的测试结果表明:该Web应用安全扫描器相比普通的Burpsuit扫描器能提高系统近5倍漏洞扫描数量,能够爬取到超过2倍的URL链接数量,在保证一定扫描准确率的条件下,尽可能地提高系统的扫描效率,确保了网络信息系统安全有序地运行,这对于改善网络信息系统脆弱性,防患黑客冲击事件,加强网络空间安全建设,从而减少企业由于漏洞造成的经济损失具有非常重要的现实意义。

本文主要工作和创新点如下:1.针对目前端口扫描效率低且扫描不完整的问题,采用了基于异步无状态端口扫描和Nmap相结合的方法,对扫描目标进行全IP快速扫描,再结合Nmap进行端口服务、操作系统类型及版本探测。测试结果表明,针对同一台主机,使用Nmap进行全端口扫描至少耗时2个小时,利用异步无状态端口扫描方式,一台主机用时只有22秒,该方法比单独使用Nmap,提高了至少300倍的扫描效率,并保证了扫描的全面性。2.针对深度爬虫未考虑网页结构相似性,导致对相同表单重复检测的问题,提出了基于相似度的智能爬行算法。该算法分为三个阶段:第一阶段是基于Rabin指纹的URL去重。第二阶段是基于权重分配的页面相似度计算方法:将网页解析成DOM树,根据节点的位置、DOM树的深度以及深度相同的节点数量,平均分配权重给每个节点。第三阶段是采用聚合式层次聚类思想将具有相似结构的网页聚为一组并选取代表URL。利用该算法设计了智能爬虫,包括URL封装、HTTP发送请求、页面解析、URL去重、页面相似度和聚类等。实验结果表明,智能爬虫可有效去除93%以上的结构相似网页,减少大量相同表单的重复检测,提高扫描效率。3.针对系统复杂、难以管理的问题,该系统基于高内聚低耦合的设计原则,结合B/S三层架构,采用模块化、插件式的设计思想,降低了系统的复杂度,使系统方便扩展,易于管理。

本系统在功能上分为三大模块:扫描配置模块、爬虫模块、漏洞检测模块。漏洞检测模块主要分为鲎幽?#65533;:XSS漏洞检测模块、SQL漏洞检测模块、目录遍历漏洞检测模块,且网络用户可自定义扫描的类型和范围。以上对Web应用安全扫描器扫描效率的提高和改善,扫描配置方法的优化,使得Web应用安全扫描器在实际业务场景中发挥着至关重要的作用,实际上,在参与某标准化专业委员会团体标准的制定中,我们发现已有的Web安全扫描器难以达到企业的实际需求,通过我们设计和实现的Web应用安全扫描器,能够改善系统扫描功能,提高网络空间的安全性,从而防患由于Web应用程序漏洞造成的潜在损失(例如:经济损失和勒索敲诈等)。因此,我们设计的Web应用安全扫描器能够尽可能的应对网络空间安全中的考验和挑战,从而面对“互联网 ”时代的网络信息安全问题。

【参考文献】

[1] 第47次《中国互联网络发展状况统计报告》发布[J]. .中国广播,2021(04)

[2] 国家工业信息安全发展研究中心发布《工业和信息化蓝皮书(2019-2020)》[J]. .信息网络安全,2020(09)

[3] SQL注入攻击及漏洞检测防范技术[J]. 吴斌;刘循.网络安全技术与应用,2017(01)

[4] 基于SQL语法树的SQL注入过滤方法研究[J]. 韩宸望;林晖;黄川.网络与信息安全学报,2016(11)

[5] SQL注入绕过技术与防御机制研究[J]. 宋超臣;黄俊强;吴琼;郭轶.信息安全与通信保密,2015(02)

[6] 基于反过滤规则集和自动爬虫的XSS漏洞深度挖掘技术[J]. 吴子敬;张宪忠;管磊;胡光俊.北京理工大学学报,2012(04)

[7] SQL注入漏洞检测与防御技术研究[J]. 马小婷;胡国平;李舟军.计算机安全,2010(11)

[8] 注入攻击原理及防范措施[J]. 方昕.福建电脑,2010(04)

[9] 编程实现基于Cookie验证的HTTP请求的发送[J]. 邱小果.微型机与应用,2003(07)

[1] An automated framework for evaluatingopen-source web scanner vulnerability severity[J]. Richard Amankwah;JinfuChen;Patrick Kwaku Kudjo;Beatrice Korkor Agyemang;Alfred AdutwumAmponsah.Service Oriented Computing and Applications,2020(prep)

[2] Hunting for DOM-Based XSS vulnerabilitiesin mobile cloud-based online social network[J]. Shashank Gupta;;B.B.Gupta;;Pooja Chaudhary.Future Generation Computer Systems,2018

[3] Systematic review of web applicationsecurity development model[J]. Bala Musa Shuaibu;;Norita Md Norwawi;;MohdHasan Selamat;;Abdulkareem Al-Alwani.Artificial Intelligence Review,2015(2)

[4] Cross Site Scripting (XSS) inAction[J]. Felician ALECU.Oeconomics of Knowledge,2012(3)

[5] Prevention Of Cross-Site ScriptingAttacks (XSS) On Web Applications In The Client Side[J]. Shalini, S;Usha,S.International Journal of Computer Science Issues (IJCSI),2011(4)

[6] SQL injection attack and guardtechnical research[J]. Xue Ping-Chen.Procedia Engineering,2011(C)

[7] An Approach to Detection of SQLInjection Attack Based on Dynamic Query Matching[J]. Debasish Das;;UtpalSharma;;D.K. Bhattacharyya.International Journal of ComputerApplications,2010(25)

[8] A lightweight web-based vulnerabilityscanner for small-scale computer network security assessment.[J]. PeteDavies;Theodore Tryfonas.J. Network and Computer Applications,2009(1)

[9] Static detection of cross-sitescripting vulnerabilities[J]. Wassermann G.;Su Z..Proceedings - InternationalConference on Software Engineering,2008

4. 研究方案

1. 系统功能结构

系统总体功能结构如图1所示

1 基于pythonweb扫描器功能结构

1)模块功能

真实ip查询:该模块查询了网站的真实ip,防止cdn对影响真实ip,从而干扰渗透测试后续工作。

域名信息查询:该模块是对网站的域名信息进行查询,对子域名进行收集。

端口扫描:该模块基于网站真实ip的情况下,扫描网站的端口,收集开放端口,发现存在漏洞的应用服务,有利于拓宽攻击面。

旁站查询:该模块是对于目标网站服务器上架设的其余网站进行查询,可多方面的对目标主机进行攻击。

网站指纹扫描:该功能是对网站的指纹,包括操作系统、中间件、脚本语言、数据库、服务器、web容器、前端框架和CMS类型等等进行信息收集。

敏感目录扫描:该模块使用字典对敏感目录进行爆破,获取一些泄露的敏感信息。

基础漏洞扫描:该模块可以对目标网站进行简单的漏洞扫描,通过对目标网站发送相关代码,对返回的信息进行分析比对,从而发现目标网站的漏洞。

2.核心功能流程图

2真实ip查询流程图

3 漏洞扫描流程图

3.研究方案

1)扫描器界面展示。可视化操作界面,输入输出更加简单方便,降低操作难度,如所示。

5. 工作计划

2022-2022-1学期:

第15-16周:完成选题,查阅相关中英文资料。

第17周:与导师沟通进行课题总体规#65533;

剩余内容已隐藏,查看该篇文章全部内容请联系客服!

课题毕业论文、文献综述、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。