Web漏洞风险扫描技术分析

2022-12-28 05:28张伟
网络安全技术与应用 2022年6期
关键词:爬虫插件漏洞

◆张伟

(滨州市医疗保险事业中心 山东 256600)

近几年,计算机在诸多领域得到了广泛应用,在网络规模持续扩大的背景下,安全事故发生频率也较之前有所增加,一旦网络自带安全系统被不法分子突破,不仅会导致服务器被病毒入侵,还会使网络资源遭受到难以补救的毁灭性打击,由此可见,要想使计算机优势得到更充分的发挥,关键是要对安全风险进行科学扫描与评估。而漏洞扫描的关键是以漏洞数据库为基础,充分利用扫描技术对系统进行全面检测,确保潜在漏洞可被及时发现并得到处理,通过弱化系统所具有安全脆弱性的方式,为使用者提供理想的网络环境。

1 研究背景

1.1 什么是漏洞扫描

Web漏洞是指系统、软件协议或硬件实体所应用安全策略的弱点,一旦存在Web漏洞,不法分子便能突破系统防护对其进行访问或破坏,由此来获取自身所需信息[1]。现有技术并不能杜绝漏洞出现,要想最大程度弱化Web漏洞所造成影响,实证有效的方法便是全面检查计算机系统,确保潜在漏洞可尽快得到处理。在此背景下,漏洞扫描技术应运而生,该技术可以简单地理解为以Web为载体,对主机、目标网络所具有弱点及安全性进行全面检测的技术,具体检测原理如下:以利用文件、脚本模拟安全审计与攻击实验为前提,在深入分析模拟结果的基础上,通过扫描漏洞的方式明确服务器各端口所对应服务类型及分配情况,同时明确各版本软件和服务所存在安全漏洞。

1.2 扫描Web漏洞的意义

基于访问控制视角进行分析可知,若安全策略、系统操作存在冲突,则有较大概率出现Web漏洞,而从技术的角度来看,导致Web较易被外界所攻击的原因,主要是网络协议、软件配置不对等。漏洞产生的源头并不固定,既有可能是系统、应用软件存在缺陷,又有可能是编码遗留所造成的错误,还有可能是业务处理流程存在逻辑缺陷或是设计缺陷。

Web漏洞的影响范围极广,既包括系统本身,系统内部所安装防火墙、支撑组件与路由设备,同时还包括软硬件设备。考虑到系统需要借助信息载体完成交互操作,完美的主机并不存在,换言之,在不同种设备间、相同设备的不同版本间,均有相应的漏洞风险存在,通过全面扫描的方式,使潜在漏洞被及时发现并得到处理,其现实意义有目共睹[2]。

1.3 研发全新扫描技术的必要性

Web漏洞库是确保漏洞扫描相关操作得以有序开展的前提,而确认系统漏洞的操作,通常需要依托系统所提供规则库才能取得应有效果。由系统所提供规则库往往存在以下局限:其一,若规则库所采取设计方案存在漏洞,则无法保证预报结果准确。其二,规则库通常以现有安全漏洞为依据,对相关操作进行规划,但网络系统所遭受安全威胁多源于未知漏洞,只有及时更新规则库内容,才能使预报准确度达到理想水平。其三,漏洞库所能覆盖范围有限,无法保证各类系统漏洞均有触发条件对应,不触发规则的漏洞自然无法得到及时且准确的检测。由此可见,通过定期扩充并修正规则库的方式,确保漏洞库得到完善极为重要,未来相方面关工作将是业内人士研究的重点。

2 Web漏洞的扫描原理

2.1 扫描方式

2.1.1 被动扫描

该策略需要配合中间代理或其他方式,才能对漏洞进行准确扫描。实践所积累经验表明,被动扫描对主机具有极强的依赖性,既能够被用来对系统所存在弱口令和非法设置进行扫描,又可以保证不符合安全规则的软硬件设备及服务得到处理,为系统打造安全且理想的运行环境,使其价值得到充分实现。

2.1.2 主动扫描

主动策略强调直接发出扫描请求并完成扫描工作。该策略通常以智能网络为载体,通过借助现有脚本文件对系统攻击进行模拟,同时对系统映射进行序列化处理的方式,确保潜在漏洞能够被及时发现并得到有效处理。

2.2 探测分析

2.2.1 检测主机

该技术强调以被动扫描策略为基础,对系统潜在漏洞进行全面检测。该技术的优点在于能够深入系统内核,针对操作系统所存在修复及更新补丁、文件基本属性展开检测。加之该技术新增了口令解密,可使简单弱口令得到有效筛除,确保系统所存在问题能够得到准确且快速的定位,以免Web漏洞造成更严重的后果。当然,该技术也有较为明显的不足存在,具体表现为日常应用需要投入大量精力与时间进行维护,同时技术优势往往难以得到充分发挥,导致上述问题出现的原因,主要是对相关技术进行设计并应用,通常需要对软硬件条件加以考虑,且技术应用效果极易被外界因素所影响[3]。

2.2.2 检测网络

基于主动扫描策略对系统脆弱性进行检验,根据检验结果推测出系统对外界攻击所具有的抵抗能力。借助脚本文件对系统可能遭遇的攻击行为进行模拟,在深入分析模拟所得结果的基础上,完成对已知漏洞进行检验的工作。

2.2.3 检测应用

相关技术的扫描原理如下:以被动扫描策略为依托,通过对应用软件包当前设置、软件包内部所存储信息进行检查的方式,达到发现潜在安全漏洞的目的。

2.2.4 检测目标漏洞

该技术同样属于被动扫描技术,通常需要在相关策略的驱使下,才能完成对文件参数、系统内部属性进行检测的工作。在实际操作中,有关人员需借助消息文摘算法对文件实际加密数进行校验,该算法的特点是可实现闭环运行,即:在运行期间重复进行业务处理——目标设定——目标属性设定等操作,获得闭环内所对应标志值后,通过对比初始标志值、闭环内所对应标志值的方式,得出最终结论。若二者数值不匹配,则表明系统有漏洞存在,此时,便需要尽快通知管理人员及使用者,以免造成更严重的后果。

3 扫描技术的研发步骤

3.1 收集信息

扫描系统借助爬虫程序对整个网站进行扫描,由此来获得网站敏感信息、相关链接、指纹信息还有子域名。爬虫程序是指按照特定规则,对万维网信息进行自动抓取的脚本及程序。作为可对网页进行自动提取的程序,爬虫程序对搜索引擎正常运行具有重要作用,目前,得到广泛应用的爬虫程序主要分为通用爬虫以及聚焦爬虫两类,其中,通用程序的运行原理如下:通过对网页URL进行抓取的方式,得到相应URL队列,待URL数量达到系统要求,方可停止抓取。聚焦程序则需要以网页分析算法为依据,在对无关链接进行过滤的前提下,将相关链接放入URL队列,随后,基于特定搜索策略对网页URL进行筛选,直至RUL队列满足系统条件,方可停止抓取操作。由爬虫所抓取网页均会被存储在系统内,经过分析与过滤后,通过建立相关索引的方式,为日后的检索及查询操作提供便利。由聚焦程序所得出分析结论,还可被用来为后续抓取操作提供指导,要想使聚焦程序优势得到充分发挥,关键要解决以下问题:首先是准确定义抓取目标。其次是快速分析并准确过滤网页数据。最后是基于URL特征对相应搜索策略进行制定。

在对扫描漏洞所用爬虫程序链接进行设计时,下列内容需要引起重视:其一是对计划访问的URL进行定义,借助urllib2模块对相关内容进行读取,基于Beautiful Soup库完成URL解析的操作,确保当前网页与标签相关的属性值均能够得到快速且精准的提取。其二是对特定网页链接信息进行获取,将所获取链接视为全新定义的URL,通过递归查询的方式,得出其他漏洞判断所需信息。其三是对数据库进行设计,对网站目录进行导入并生成相应字典,在将已存字典导出后,便可完成后续的爬取操作。

3.2 发现漏洞

对发现漏洞技术进行设计时,研究人员应对以下模块引起重视:其一,面向端口模块——对端口服务进行识别并爆破。其二,面向文件模块——对备份目录及文件进行审查,提炼并整合跨站脚本攻击、高频访问文件,同时对潜在脚本错误进行展示。其三,面向版本模块——该模块所涵盖内容主要有Web服务器和该服务器所使用各项技术。其四,面向目录模块——定期浏览常见文件,对敏感目录、文件加以确定,保证路径所存在跨站脚本攻击能够被及时发现并得到处理。其五,面向URL模块——对代码执行、跨站脚本攻击以及注入攻击等参数进行识别。其六,面向CMS模块——对指纹进行识别,通过入库匹配的方式,获得指纹对应POS。其七,面向HTTP模块——该模块主要负责改变参数并完成Fuzz。事实证明,只有立足实际对上述模块进行科学设计,确保各模块均能够发挥出应有作用,才能使Web漏洞得到全面且准确的扫描,鉴于此,这一环节需要有关人员引起重视。

4 如何高效扫描Web漏洞

4.1 新增功能插件

插件是应用程序接口遵循相应规范所编写的程序,此类程序只能依托指定系统平台运行,而不具备单独运行的功能,这是因为此类程序要想发挥出应有作用,通常要对纯净系统现有数据、函数库进行调用[4]。

本文所讨论技术新增了漏洞发现及漏洞利用插件,运行流程如下:以漏洞发现插件采集并提供信息为依据,根据信息分析所得结论,对漏洞利用插件进行科学调用。可供相关技术调用的插件较多,主要有利用Python脚本对网站是否存在XSS漏洞进行检测的插件,利用脚本对网站是否存在CSRF漏洞、DDOS漏洞进行检测的插件,对SQL注入及LDAP注入情况进行检测的插件,对SQL盲注进行检测的插件,对文件是否存在上传漏洞进行检测的插件,对缓冲区是否存在溢出漏洞存在进行检测的插件。在实际应用中,有关人员可视情况对其他插件进行增设,确保Web漏洞得到系统且全面的扫描。

4.2 新增人工智能

近几年,人工智能逐渐走进人们的生活,越来越多领域选择对该技术加以应用。对漏洞扫描而言,人工智能的作用主要体现在以下方面:通过智能清洗并系统过滤相关数据的方式,对网站敏感内容进行提取,根据敏感内容对其所属风险等级进行评估。待分析网络的环节告一段落,便可生成相应的漏洞报告,确保漏洞情况得到清晰罗列,为使用者向漏洞网站反馈漏洞风险提供便利。

4.3 新增数据库

数据库是指以数据结构为依据,对数据进行组织、管理并存储的“仓库”,其特点可被概括为可共享、有组织以及能够统一管理。作为以数据结构为基础开展各项工作的软件系统,数据库这一概念往往包括两方面含义:一是将数据库视为对数据进行科学保管的实体“仓库”,使用者可将需要管理的数据信息存放在仓库内。二是将数据库视为对数据进行管理的技术方法,该方法具有能够科学组织数据、有效维护数据、全面管控数据、充分利用数据的特点。对本技术而言,新增数据库的关键是将MySQL打造成后端数据库,先对采集所得URL进行存储,再对标志字段进行添加,以此来说明URL的扫描及爬取情况。随后,基于正则表达式完成匹配操作,以免出现重复扫描相同网站的问题,导致资源系统出现不必要的浪费。

4.4 生成扫描报告

待上述扫描技术投入应用,相关扫描系统可对扫描数量、已发现漏洞数量、漏洞类型及相关信息、分析结果等参数进行实时显示,同时根据使用者的需求,自动生成Excel或HTML报告,确保漏洞信息能够得到完整且直观的显示。随后,借助该系统所具有插件功能,对可有效解决此类漏洞的方案加以显示,使扫描过程变得更加完善。而新增多任务UI的作用,主要是确保计算机所具有硬件资源能够得到最大程度的利用。

综上,基于智能网络所设计主动扫描技术,新增实时检测、自动爬虫功能,无需工作人员手动进行配置,便可对网络空间进行自动扫描。另外,该技术还新增了智能分析功能,确保潜在漏洞能够被及时发现,将漏洞提交至对应网站,由专业人员对其加以解决。

猜你喜欢
爬虫插件漏洞
利用网络爬虫技术验证房地产灰犀牛之说
漏洞
基于CTK插件框架的太赫兹人体安检系统软件设计
基于Python的网络爬虫和反爬虫技术研究
自编插件完善App Inventor与乐高机器人通信
目前互联网中的网络爬虫的原理和影响
基于selenium的SQL注入漏洞检测方法
基于OSGi的军用指挥软件插件机制研究
大数据背景下校园舆情的爬虫应用研究
基于jQUerY的自定义插件开发