Web漏洞扫描系统中的智能爬虫技术研究
【摘要】:针对Web安全问题,目前最常用的技术是采用Web漏洞扫描系统进行检测。网络爬虫是Web漏洞扫描器重要组成部分,负责抓取站点的页面信息,为Web漏洞扫描器提供数据源及扫描入口。网络爬虫是一个智能抓取网页的程序,论文主要研究网络爬虫技术。
所做的主要工作包括以下几部分:
1)介绍了网络爬虫及其采用的爬行策略,论述了通用爬虫、聚集爬虫、深层爬虫三种典型网络爬虫技术,详述了聚集爬虫使用的几个重要网页分析算法,分析了已有的基于爬虫技术的Web漏洞扫描系统。
2)通过对扫描对象特点的分析,提出了一种基于属性标签的Web数据挖掘的算法。即利用网页的所有标签,构造带有属性标签的DOM树;通过属性标签对子树做比较,发现标签序列的重复模式;制定了三个规则排出干扰模式,找到数据区域,用向量记录包含有用数据的重复模式;通过向量提取出数据记录。验证该方法有效性的实验对象是卓越网各类目,从实验的数据可以发现,该方法可以卓越网页中提取出大约90%的数据,正确率与覆盖率都很高。
3)基于属性标签的Web数据挖掘的方法可以挖掘很多网页的重复数据,但对重复模式只具备相似性不具备一致性的网页不起作用。针对这个问题,提出了一种基于编辑距离的Web数据挖掘算法。把树编辑距离转化为字符串编辑距离的计算,利用字符串编辑距离评价树的相似度,进而找到网页中的重复模式,提取数据。通过针对不同重复模式特征的网页的实验说明,该算法不仅能挖掘具有特征一的网页的数据,也能挖掘具有特征二的网页的数据,能把20个百度贴吧网页包含的1000个数据都提取出来。
4)最后设计并实现了一个智能爬虫程序。详述了各个模块功能,绘制了各个模块的流程图。根据流程图用Java编程实现,并用实验证明模块达到预定的功能。该爬虫将论文提出的新算法运用于爬虫策略制定,能很好地从交互性强的站点如电子商务、贴吧、论坛等抓取出网页。