CN104363253A - 网站安全检测方法与装置 - Google Patents

网站安全检测方法与装置 Download PDF

Info

Publication number
CN104363253A
CN104363253A CN201410771605.0A CN201410771605A CN104363253A CN 104363253 A CN104363253 A CN 104363253A CN 201410771605 A CN201410771605 A CN 201410771605A CN 104363253 A CN104363253 A CN 104363253A
Authority
CN
China
Prior art keywords
link
website
known specific
new url
specific website
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410771605.0A
Other languages
English (en)
Other versions
CN104363253B (zh
Inventor
龙专
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qianxin Technology Group Co Ltd
Secworld Information Technology Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201410771605.0A priority Critical patent/CN104363253B/zh
Publication of CN104363253A publication Critical patent/CN104363253A/zh
Application granted granted Critical
Publication of CN104363253B publication Critical patent/CN104363253B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种网站安全检测方法,包括以下步骤:获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包;利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;对所述新链接相对应的网页实施漏洞扫描检测。相应的,本发明还提供一种网站安全检测装置。本发明可以及时发现已知特定网站及其新链接以及利用已存在的已知特定网站链接构造新链接,可以实时对这些新链接实施漏洞检测,避免漏检测,具有高效、及时、智能维护网站安全的优点。

Description

网站安全检测方法与装置
技术领域
本发明涉及互联网安全技术,尤其涉及一种网站安全检测方案与装置。
背景技术
网站访问存在着各种各样的安全隐患,比如:COOKIE中毒、应用程序缓冲溢出、跨站脚本攻击、已知安全漏洞等等,这些网站安全问题会进一步导致用户数据的安全问题。因此,网站访问者希望了解网站的安全程度,自然地倾向于使用较为安全的网站,而网站管理者更希望能够及时修复漏洞,克服其网站的安全问题,为网站访问者提供更加安全的浏览平台。
网站安全检测的方法,通常是借助扫描器通过爬虫技术去主动抓取网页,并针对所抓取的网页进行安全性测试。为了避免实施爬虫技术造成增加网站服务器的负荷,通常,网站的安全性测试通过定时或者用户手动触发的方式去执行网页抓取。然而,在信息高度发达的今天,作为信息载体的网站业务(代码)更新频繁,而且,每个公司配备的信息安全人员不足以支持如此多和频繁的安全测试。这就导致一对矛盾,即扫描器频繁扫描所导致的服务器压力增大、人力资源不足,以及扫描器间隔扫描所导致的新网页安全性检测不及时两者之间的矛盾。具体而言,涉及网站网页安全性测试的现有技术所造成的纰漏包括但不限于出现如下问题:
例如,孤岛页面是爬虫抓不到的页面,如果存在漏洞又被黑客发现了的话,会导致极大的安全风险。现有的漏洞扫描器都是基于蜘蛛技术来抓取网站链接后再进行安全测试的,不能及时扫描新上线的域名和不能检测到孤岛页面存在的漏洞。
再如,大型网站(如新闻类、电商类等)每天都会有大量的新网页上线,定时扫描并不能及时对新上线的网页进行安全性测试。比如网站管理员设定每天0点对网站进行检测,则1点上线的网页要过23个小时之后才能进行检测。如果这些新上线的网页存在漏洞的话,在这段时间内将使网站陷于不安全的境地。
除上述问题之外,利用爬虫技术去实施网页抓取的过程,在一种同时存在两个抓取设备的情况下,也可能陷入某种程度上的死循环,造成意外。因此,在进行网页安全检测时,不管是否考虑其获取链接的方式,也应当考虑这种情况。
具体而言,如果针对同一网站服务器存在两个以上实施了爬虫技术的检测设备,均配置有“360鹰眼”软件,这一软件运用爬虫技术用于实施对网站服务器中的网页的漏洞扫描检测,因此,两个检测设备基于相同原理而运作。根据爬虫技术原理,两个检测设备均利用同一手段,在已经存在的链接的基础上去构造新链接并尝试访问,以测试该构造的新链接所指向的网页是否存在漏洞,例如:针对代表某一已知特定网站的链接ws.360.cn,检测服务器A会按照规则构造ws.360.cn/admin.php(这仅是一个示例,实践中会构造很多更为复杂的链接),admin.php由于属于默认的管理页面,因而成为恶意程序的重点攻击对象,如果存在这类页面,则该网站存在风险。检测服务器A构造这一请求去尝试访问网站服务器时,会在交换机上留下一个访问请求,如果这一访问请求被检测服务器B捕获,检测服务器B又依据爬虫技术原理将之视为一个网页请求,继而针对该“网页”进行测试,即针对ws.360.cn/admin.php进行检测,构造ws.360.cn/admin/admin.php等等链接进行访问,这样再次在交换机上留下访问请求。此时检测服务器A又会捕获该请求,并进一步进行测试ws.360.cn/admin/admin/admin.php……如此周而复始,相互构造新链接,便会形成死循环,大量消耗检测服务器的运行资源,最终导致检测服务器死机。
发明内容
本发明的目的在于克服上述问题的一个或多个方面,而提供一种网站安全检测方法及装置。
为实现本发明的目的,本发明采取如下技术方案:
本发明的一种网站安全检测方法,包括以下步骤:
获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包;
利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;
对所述新链接相对应的网页实施漏洞扫描检测。
根据本发明的一个实施例所揭示,所述获取通过旁路侦听而获得的超文本传输协议请求包的步骤中,过滤掉所有由特定IP地址发起的请求包。可选的,所述特定IP地址预先给定或者通过检测单位时间内某IP地址发起的请求包数量超过预设阈值而确定。
根据本发明的另一实施例所揭示,利用属于已知特定网站的所述请求包所包含的链接构造更深层新链接之前,先测试所述请求包所包含的链接的网页是否存在,当该链接所指向的网页不存在时,放弃依据该链接构造新链接。
根据本发明的一个实施例所揭示,通过本机网卡实施旁路侦听而获得所述请求包。较佳的,本机接入架设所述已知特定网站的服务器所接入的交换机实现旁路侦听。
根据本发明的另一实施例所揭示,通过远程端口接收而获得所述通过旁路侦听而得的请求包。
根据本发明的一个实施例所揭示,所述已知特定网站通过图形用户界面接收用户设定而预先给定,其给定形式包括域名、IP地址、链接中的一项或任意多项。
较佳的,设有已知特定网站列表用于记录一个或多个所述的已知特定网站的域名、链接和/或其相应的IP地址。
进一步,利用属于已知特定网站的所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测。
进一步,通过统计单位时间内由旁路侦听获得的请求包流量,当其超过预设阀值时,利用所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测;否则利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接。
较佳的,在确定属于已知特定网站的关联新链接之前,汇总所述请求包所包含的链接并去除其中的重复链接。
根据本发明的一个实施例所揭示,所述去除重复链接的步骤包括如下细分步骤:
将访问数据库而形成的仅其变量不同的多个链接确定为重复链接;
仅保留重复链接其中之一实现去除重复链接。
根据本发明另一实施例所揭示,所述去除重复链接的步骤包括如下细分步骤:
将具有相同签名的多个链接确定为重复链接;
仅保留重复链接其中之一实现去除重复链接。
根据本发明的一个实施例所揭示,通过确定请求包中的链接所指向的IP地址属于所述已知特定网站所指向的IP地址或其所属IP地址段而将该链接确定为属于已知特定网站的关联新链接。
根据本发明的又一实施例所揭示,通过比较所述请求包中的链接的域名的注册特征信息与已知特定网站的域名的注册特征信息相同而将该链接确定为属于已知特定网站的关联新链接。
进一步,所述利用所述请求包所包含的链接确定属于已知特定网站的关联新链接的步骤,包括如下细分步骤:
提取已获取的所有请求包的链接;
去除所提取的链接中指向具有相同代码的网页的重复链接;
确定其中的新链接,将该新链接添加至待扫描队列。
根据本发明的一个实施例揭示,进一步,所述对所述新链接相对应的网页实施漏洞扫描的步骤,包括如下细分步骤:
从用于记载所述新链接的待扫描队列中获取所述新链接;
对所述新链接映射的网页实施漏洞扫描检测。
根据本发明的另一实施例揭示,进一步,所述对所述新链接相对应的网页实施漏洞扫描的步骤,包括如下细分步骤:
从用于记载所述新链接的待扫描队列中获取所述新链接;
获取所述待扫描队列中的新链接所映射的网页并添加至本地网页库;
对依据新链接下载的网页库中的网页实施漏洞扫描检测。
进一步,该方法包括后续步骤:显示图形用户界面以输出实施漏洞扫描检测的结果信息。
本发明提供的一种网站安全检测装置,包括:
抓包单元,用于获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包;
查新单元,被配置为利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;
检测单元,用于对所述新链接相对应的网页实施漏洞扫描检测。
根据本发明的一个实施例所揭示,所述抓包单元,被配置为过滤掉所有由特定IP地址发起的请求包。可选的,所述特定IP地址预先给定或者通过检测单位时间内某IP地址发起的请求包数量超过预设阈值而确定。
根据本发明的另一实施例所揭示,所述查新单元,被配置为先测试所述请求包所包含的链接的网页是否存在,当该链接所指向的网页不存在时,放弃依据该链接构造新链接。
根据本发明的一个实施例所揭示,所述抓包单元,被配置为通过本机网卡实施旁路侦听而获得所述请求包。较佳的,本机与架设所述已知特定网站的服务器所接入的交换机相连接以实现旁路侦听。
根据本发明的另一实施例所揭示,所述抓包单元,被配置为通过远程端口接收而获得所述通过旁路侦听而得的请求包。
根据本发明的一个实施例所揭示,该装置还包括设定单元,用于显示图形用户界面以接收用户设定,由此而预先给定所述已知特定网站的域名、IP地址、链接中的一项或任意多项。
较佳的,设有已知特定网站列表用于记录一个或多个所述的已知特定网站的域名、链接和/或其相应的IP地址。
进一步,所述查新单元,还被配置为利用属于已知特定网站的所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测。
进一步,所述的查新单元,被配置为用于统计单位时间内由旁路侦听获得的请求包流量,当其超过预设阀值时,运行确定单元,用于利用所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测;否则,运行构造单元,用于利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接。
较佳的,所述查新单元,被配置为在确定属于已知特定网站的关联新链接之前,汇总所述请求包所包含的链接并去除其中的重复链接。
根据本发明的一个实施例所揭示,所述查新单元包括:
查重子模块,用于将访问数据库而形成的仅其变量不同的多个链接确定为重复链接;
去除子模块,适于实施仅保留重复链接其中之一实现去除重复链接。
根据本发明另一实施例所揭示,所述查新单元包括:
查重子模块,用于将具有相同签名的多个链接确定为重复链接;
去除子模块,适于实施仅保留重复链接其中之一实现去除重复链接。
根据本发明的一个实施例所揭示,该装置还包括设定单元,被配置为通过确定请求包中的链接所指向的IP地址属于所述已知特定网站所指向的IP地址或其所属IP地址段而将该链接确定为属于已知特定网站的关联新链接。
根据本发明的又一实施例所揭示,该装置还包括设定单元,被配置为通过比较所述请求包中的链接的域名的注册特征信息与已知特定网站的域名的注册特征信息相同而将该链接确定为属于所述已知特定网站的关联新链接。
进一步,所述查新单元包括:
提取模块,用于提取已获取的所有请求包的链接;
去重模块,用于去除提取模块提取的链接中指向具有相同代码的网页的重复链接;
添加模块,用于确定其中的新链接,将该新链接添加至待扫描队列。
根据本发明的一个实施例揭示,进一步,所述检测单元包括:
获取单元,被配置为从用于记载所述新链接的待扫描队列中获取所述新链接;
实施单元,用于对所述新链接映射的网页实施漏洞扫描检测。
根据本发明的另一实施例揭示,进一步,所述检测单元包括:
获取单元,被配置为从用于记载所述新链接的待扫描队列中获取所述新链接;
下载单元,用于下载所述待扫描队列中的新链接所映射的网页并添加至本地网页库;
实施单元,用于对依据新链接下载的网页库中的网页实施漏洞扫描检测。
进一步,该装置包括显示单元,用于显示图形用户界面以输出实施漏洞扫描检测的结果信息。
相较于现有技术,本发明至少具有如下优点:
1、本发明通过旁路侦听的方式,从网站接收交换机的数据,可以借助交换机获取接入该交换机的架设有已知特定网站的服务器即将收到的请求包,无论是通过本机监听网卡而获取所述的请求包,还是由其他设备监听网卡获取所述的请求包后汇聚到本机,本发明均能对这些请求包进行集中的后续处理,构造和/或确定出这些请求包中的新链接,然后针对这些新链接所指向的网页实施漏洞扫描。本发明一来能够明确针对已知特定网站筛选新链接实施扫描,二来可以通过旁路侦听的方式实时接收数据,而实时获取的新链接的数量相对于所有已知特定网站的链接数量而言是极小的,通常非新链接已经在历史使用过程中已经被扫描,不必重复扫描,而对这些新链接实施的漏洞扫描的运算量较低,对服务器造成的响应压力也非常小,因此,本发明为实时扫描特定网站新上线的新链接所指向的网页的漏洞提供了技术条件,避免出现定时或不定时扫描所形成的时间空档期间造成的漏扫描而可能出现的安全事故,为网络管理者提供了更为有效的漏洞检测技术工具。
2、本发明进一步通过提供过滤手段,或者通过识别接收到的请求包是否来源于预设的特定IP地址,或者通过识别单位时间内发起的请求是否超过预定阈值来识别预设的特定IP地址,或者通过检测已经构造的新链接所指向的网页是否存在,当出现这些情况时,过滤掉相应的请求包或新链接,来达到避免应用了相同方法或装置的设备与本机之间造成相互利用对方在交换机中留下的访问请求来构造新链接从而造成死循环的情况,很好地保护了本机自身的正常运行,不会出现因为这种情况出现本机资源不足甚至导致死机的情况。
3、众所周知的,对于一个网站而言,其上线新链接的首次访问请求一般由网管员出于调试的需要而发起,而本发明实施旁路侦听,所获取的请求包正是来源于架设该网站的服务器所接入的交换机,是网管员发起的请求的必经之路,因而,能够在绝大数情况下获取进入相关交换机的全量请求包,理论上可以涵盖所有的网页,包括孤岛网页在内。然而最终进行漏洞扫描的又只是这些请求包中属于新链接的部分。因此,本发明可以避免现有技术中每次均需全量检测以避免漏扫描的弊端,从而通过更为轻量的方式,实现了全面的安全扫描效果。
4、本发明通过单位时间内对请求包的流量进行统计,与预设阀值相比较,当高于该阀值时,则采用上述的方式确定这些请求包中是否包含关联新链接,对这些关联新链接实施漏洞扫描,而当流量较低时,则可以利用已经存在的已知特定网站(的链接)去主动构造新链接,是爬虫技术在本发明中的进一步结合应用,然后再去扫描漏洞。借助这一技术手段,使得本发明的安全检测技术更趋智能化。
5、本发明进一步通过去除新链接中的重复链接,减少对实质上属于同一代码的网页进行重复的扫描,对于诸如新闻网页、论坛网页之类的链接而言,进行了大大的优化,去重率非常高,进一步降低漏洞扫描时的无效运算量,提高了机器的整体运行效率。
6、本发明的请求包的来源,虽然限定了旁路侦听的方式获得,但并不局限于必须通过本机对接入交换机的网卡实施监听而获得,还可以通过汇聚网络上其它接入架设已知特定网站的服务器所接入的交换机的请求包而获得,因此,这些请求包不仅可以来源于本机,还可以来源于其它终端,既可以通过网站来获取,还可以通过在发起请求的请求方的浏览器上增加插件来获取,甚至可以通过在架设所述已知特定网站的服务器上安装客户端来获取等,整个实现架构非常灵活和开放,有利于进行二次开发。
7、本发明既允许用户通过图形用户界面添加已知特定网站,又提供了由程序自身动态确定已知特定网站的方式,并且,在漏洞扫描后还能进行相应的警示,具有非常强的交互性和较为优异的人机交互效果。
综上所述,本发明实现了更加全面、高效且智能的网站安全检测技术方案。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明的网站安全检测设备接入一个现有网络拓扑的示意图;
图2是由图1变化而得的一个现有网络拓扑的示意图;
图3是本发明一种网络安全检测方法的一个实施例的流程示意图;
图4是本发明一种网络安全检测方法的步骤S12的细分流程示意图;
图5是本发明一种网络安全检测方法的另一实施例的流程示意图;
图6是本发明一种网络安全检测装置的一个实施例的原理示意图;
图7是本发明一种网络安全检测装置的另一实施例的原理示意图;
图8是本发明一种网络安全检测装置中的查新单元的结构示意图;
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(Personal Communications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(PersonalDigital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本技术领域技术人员可以理解,这里所使用的服务器、云端、远端网络设备等概念,具有等同效果,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云。在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。本发明的实施例中,远端网络设备、终端设备与WNS服务器之间可通过任何通信方式实现通信,包括但不限于,基于3GPP、LTE、WIMAX的移动通信、基于TCP/IP、UDP协议的计算机网络通信以及基于蓝牙、红外传输标准的近距无线传输方式。
本领域技术人员应当理解,本发明所称的“应用”、“应用程序”、“应用软件”以及类似表述的概念,是业内技术人员所公知的相同概念,是指由一系列计算机指令及相关数据资源有机构造的适于电子运行的计算机软件。除非特别指定,这种命名本身不受编程语言种类、级别,也不受其赖以运行的操作系统或平台所限制。理所当然地,此类概念也不受任何形式的终端所限制。
本发明的方法及其装置,可以通过编程实现为软件,安装到计算机设备中进行运行,从而构成一台网站检测设备。为了进一步说明本发明的各个实施例,可以先了解企业网站服务器实现的架构。每家企业可能包括一个或多个网站,每个企业网站均可以分布架设到一个到多个服务器中。一般而言,如图1所示,简单的企业网站可能将各个服务器81、82直接接入一个交换机80而提供服务,网站检测设备8接入该交换机80中,更为复杂的,如图2所示的网络拓扑中,多个服务器81、82可能分别接入不同的交换机80来提供服务。安装有本发明的软件的设备,特别是其用于采集交换机数据的功能逻辑部份,而不一定是该软件本身,配置有这一功能逻辑的计算机设备,适宜接入最靠近服务器的交换机处。当然,理论上也可接入这些交换机的上级交换机中。可见,这种架构的形成,是基于网络拓扑原理、是否分布式设计而实施的,理论上并不影响本发明的实现,但却在某种程度上要求本发明实现具有灵活适应性的开放架构。
图3通过步骤流程的形式揭示了本发明的一个实施例,该实施例属于对本发明的网站安全检测方法的核心技术的具体实现,包括如下步骤:
步骤S11、获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包。
旁路侦听技术本身属于本领域的公知技术,基于交换机的“共享”原理,所有接入该交换机的计算机设备将共同接收到相同的数据包,即当一台计算机向网络上另一台计算机发送数据的时候,或者一个请求进入该交换机的时候,尽管最终可能只有一台计算机接收该数据或请求,其实该网络上的其他计算机也能收到该数据或请求,只不过其他计算机的网卡识别到该数据或请求的目的地不是自身时,直接将该数据或请求过滤掉了。也就是说,以太网卡都构造了硬件的“过滤器”,这个过滤器会忽略与自身MAC地址不相符合的信息。旁路侦听技术正是利用这一特点,通过主动关闭网卡的过滤器,来接收整个交换机中的数据信息,实现侦听。因此,可以知晓,实施旁路侦听适宜在最接近目标服务器的交换机处实现,理论上,只要将配置有旁路侦听技术环境的计算机设备接入该交换机,即可实现侦听,从而获取交换机的数据信息,提取相关数据。
尽管旁路侦听技术接入了交换机,工作于数据链路层,但利用数据链路层的数据包来还原为其它协议层的数据已是现有技术,因此,旁路侦听的具体实现方式,应亦不影响本发明的实施。例如,现有技术中可以借助Linux系统的TcpDump命令来实现抓包和数据提取,获得超文本传输协议请求包。
所述超文本传输协议(HTTP)请求包,对网站访问而言,包括两种形式,即get和post请求。两种请求虽不同,但亦均属本发明的处理对象。通常而言,HTTP请求包的格式主要包括:协议、服务器域名、端口号、请求包路径、get参数名、post参数名、扩展名、目标服务器网段等。无论是get请求包还是post请求包中均包含网页的url。网页的URL,即超链接,自其域名到其页面,有约定的格式。其中,链接的末端为其指向的资源的描述,除此之外的前面部分为其路径。例如网址http://www.360.cn/test/admin.php,其中http://表征协议格式,www.360.cn为其域名,test为该网站中的目录,admin.php为指向的资源页面,http://www.360.cn/test/相对于admin.php页面而言,便是该链接的路径。而http://www.360.cn/test/admin/admin.php显然便是http://www.360.cn/test/admin.php的更深层的链接。
适用不同的网络架构,可以以如下多种方式任意之一或其结合来获取所述由旁路侦听技术获取的HTTP请求包:
一、通过将本机接入架设已知特定网站的服务器所接入的交换机。
这里所称的本机,便是指安装有实现了本方法的计算机设备,将该计算机设备接该交换机,使其与所述的服务器置于同一本地网中,共享交换机中的数据信息,从而,便可借助旁路侦听技术来直接获取向该本地网中的服务器发起的请求数据,从而获得相应的HTTP请求包。
二、通过本机的远程端口接收其他机器获取的由旁路侦听技术获得的HTTP请求包。
本例中,所述的计算机设备,并不需要直接接入架设已知特征网站服务器所接入的交换机,而可以位于更为远程的地理位置,仅仅通过其远程端口接收其它计算机设备发送给它的由旁路侦听技术获得的HTTP请求包即可。对于这里所称的“其它计算机设备”,则应直接接入架设已知特征网站服务器所接入的交换机,以便直接获取相应的数据,并且这些其它计算机设备上还应能与实现本方法的计算机设备进行通信,以便提供各个交换机的HTTP请求包。
顾及到行文结构,关于本发明所定义的已知特定网站的阐释,将在下一步骤中进行。
后文也将关联性地述及本步骤的变化实施例,即为了避免使得多台相同的检测设备陷入互相利用对方在交换机留下的访问请求而出现重复构造相对于彼此请求中的链接的更深层的下级链接的情形,在本步骤中通过限定IP地址来克服这种情况。具体请参阅背景技术部分的示例性说明,其中,有关检测服务器A与检测服务器B之间,互相利用对方在交换机留下的访问请求,以至于消耗系统资源,造成死机现象。因此,可以在本步骤中采用两种具体实施方式加以避免:
其一,识别由旁路侦听获得的请求包中的来源IP地址,判断该来源IP地址是否是预先给定(例如通过用户界面输入并保存在系统设置中)的特定IP地址,如果是,则过滤掉所有来自该特定IP地址的请求包。例如,检测服务器A知晓检测服务器B的IP地址,将其IP地址作为特定IP地址加以保存,这样,检测服务器A便可以过滤来源于检测服务器B的请求包,避免重复利用对方的请求。同理,在检测服务器B中也可以设置检测服务器A的IP地址来避免同一问题。
其二,检测单位时间内所收到的请求包中,是否有大量请求包来源于同一IP地址,例如每分钟超过预设的2000个请求的阈值(仅示例,可灵活设定具体数量),当存在这种现象时,判定该IP地址便是所述的特定IP地址,从而智能化地过滤掉该特定IP地址的请求包。例如,检测服务器A在单位时间内收到超过预设阈值的来源于同一IP地址的请求包,则可认为该IP地址为特定IP地址,从而不再利用该特定IP地址的请求包中的链接构造新链接。当然,进一步可以具体到该请求包访问的是否同一服务器(可通过请求包的目的IP地址来判断),当特定IP地址访问同一服务器并到达预设阈值时,才过滤掉该特定IP地址发起的请求包,也是可行的。
通过上述给出的两个过滤实例的任意之一,分别可以有指向性地或者动态智能地避免对同类功能的检测设备的请求包的利用。因此,本发明也可以同时运用该两个过滤实例,分别实现手动配置和自动计算的效果,以便丰富本发明的功能。
但是,以上两个过滤实例与后续的步骤中即将述及的另一过滤实例之间,三者可以择一应用于本发明中,也可任意数量个实例相结合应用于本发明中,彼此不存在互斥关系,属于殊途同归的几种有助于实现本发明的有益效果的重要技术手段。依据这一分析,可以知晓,本发明以过滤实例为变化要素,也便相当于揭示了本发明的多个变化实施例。
上述两种不同的获取请求包的方式,是基于不同的网站服务器实现架构而提出的。无论采用何种具体方式,由旁路侦听技术所获取的交换机数据包均能借助现有技术自动识别出所述HTTP请求包,以便该些HTTP请求包能被进一步处理。
步骤S12、本步骤中,可以以两种实施例对其不同层次进行实现。第一个层次中,参阅图3,仅考虑利用爬虫技术构造新链接的情况,这种情况下,本步骤利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;第二个层次中,参阅图4,增补不同于爬虫技术的实现方式,通过统计单位时间内由旁路侦听获得的请求包流量,当其超过预设阀值时,利用所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测;否则利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接。也就是说,本步骤可以通过两种实施例来实现,后者用于进一步扩充、完善本发明所达到的效果,但并不影响前者的实施。由于两个层次之间存在递进或并行关系,因此,以下有关本步骤的描述,为简化的方便,在描述形式上并未严格区分这两种情况,本领域技术人员应当依据此处的先导说明对后文加以理解。
本发明所针对的网站是特定的,一般是应用本发明的方法的企业自身的一个或多个已知网站,这些网站拥有一些共同特征,其链接均解释到特定的一些IP地址段上、其域名所有人均为该企业或该企业的客户,或者,是该企业参与管理的目标网站。更具体而言,这种特定关系,是指以本方法实现的软件所需关注的网站。而是否属于该软件所需关注的网站,在技术层面上,是以本发明的方法进行判断的,具体既可以提供界面人为设定,也可以是以链接和/或IP地址和/或域名注册特征信息为基础进行综合判断。因此,本发明的已知特定网站的识别依据,不能仅仅理解为某个域名或其IP地址,还应包括虽未进行人为明文设定,但实质上是该企业所要纳入的检测对象,包括任何解析到实质上属于部分已知特定网站已经占据的IP地址的新增域名的链接。
由此可知,本发明实现其第二个层次的实施例时,相对于爬虫技术,虽不需精心挑选种子URL,但有必要提供有关一些特定网站的基础设置,以设定本发明的已知特定网站。然而,应当知晓,所提供的这些已知特定网站本身也是链接,显然也可以作为本发明实现第一层次和第二层次的实施例时用到的爬虫技术的种子URL,并且据此构造新链接。因此,这些已知特定网站的预先设定是有益于本发明的实施的。相应于前述说明,设定这些已知特定网站的方式也是多种多样的。给出已知特定网站的过程,不管给出的内容是IP地址还是域名之类的资源定位符,在本质上都是给出网站的链接,因此这个过程本质上也是确定本发明的新链接的过程。以下进一步综合地揭示本发明用于确定已知特定网站和/或其新链接的几种具体方法:
一、利用图形用户界面设置已知特定网站和/或其关联新链接。
具体而言,以本发明实现的软件在首次运行时,将提供一图形用户界面,用于提供给用户进行部分已知特定网站的设定,用户通过向该图形用户界面输入与这些已知特定网站有关的内容而完成设定,从而预先给定一个或多个已知特定网站。这些预先给定的内容,既可以是一个或多个域名,例如so.com、360.cn等,也可以是与服务器相对应的IP地址,以及由IP地址构成的连续IP地址段或离散IP地址段区间。这些设置内容,如前所述,本质上可以被理解为一个关联新链接或者种子URL,可以被存储于一个已知特定网站列表中,以便本方法的后续调用。需要指出的是,这个已知特定网站列表,实质上也相当于一个链接库,因此,可以被视为链接库进行后续利用,或者将之视为链接库的数据来源。这里所称的链接库,依据爬虫技术原理,可以被直接用作后续的待扫描队列,也可以仅仅是为后续的待扫描队列提供基础数据。因此可知,在这个基础上,这些用于确定部分已知特定网站的域名或者IP地址以及相关信息,便构成了本发明的新链接,或者至少可用于构造本发明的新链接,成为本发明的软件首次实施扫描的处理对象。而在后续维护时利用这种方式来继续添加新链接,当该新链接的域名不同于其它已知特定网站域名时,实质上也就是通过扩展更多域名而添加了新的已知特定网站。
二、利用域名注册信息确定已知特定网站的关联新链接。
已知特定网站的关联新链接,包括属于已经登记的网站(可以通过包含已登记域名识别)之下的所有链接和/或域名未经登记的网站的所有链接。对于后者,是指本步骤从所述请求包获得的链接,包含新域名,不属于目前已存在的已知特定网站的链接范围时,无法确定该链接是否属于企业自有网站、是否需要视为属于已知特定网站的关联新链接时,需要通过技术手段进一步确定是否应将其视为已知特定网站的关联新链接。因此,可以通过调用域名注册网站提供的接口,来对这个链接中的新域名进行查询,确定其注册特征信息,具体包括例如域名所有人、域名备案号等,这些注册特征信息是否与目前存在的已知特定网站域名的注册特征信息相同,当两者相同时,则将该新链接视为已知特定网站的关联新链接,在本方法中运用;否则丢弃该请求包不予处理。继而可直接将该新域名和/或下层新链接添加到一个如前所述的已知特定网站列表中备用。显然,查询新域名注册特征信息的操作,既可以是人为的,也可以是利用软件实现的。当为前者时,实际上是对前述第一种方式的后续维护。当为后者时,则使本发明实现了对已知特定网站列表的动态扩展维护。如果该已知特定网站列表即为所述链接库或所述的待扫描队列,则本质上便是在维护一个新链接列表,该新链接列表自然可用做本发明后文所需的多个相关处理环节的数据基础。
三、利用IP地址来动态确定已知特定网站的关联新链接。
众所周知的,域名与IP地址之间具有映射关系。因此,通过已知的域名可以确定相应的IP地址,同一个网站可能由多个IP地址所指向的服务器提供服务,因此,网站与IP地址间可能存在一对多、多对多的映射关系。实践中,企业网站通常使用由连续IP地址构成的IP地址段来架设其服务器。有鉴于此,利用目前已经存在的已知特定网站,可以确定其所占据的IP地址段。当请求包的链接中的新域名包含不属于目前已经存在的已知特定网站的域名之一时,这时可以比较该新域名所指向的IP地址是否属于目前已经存在的已知特定网站所占有的IP地址之一,如果是,则同理可将该请求包的所述链接视为新的已知特定网站关联新链接而添加到一个如前所述的已知特定网站列表中。同理,如果该已知特定网站列表即为所述链接库或所述的待扫描队列,本处理方式本质上便是在维护一个新链接列表,该新链接列表自然可用做本发明后文所需的多个相关处理环节的数据基础。
由此可知,本发明尽管运用了传统爬虫技术原理,但仍有区别于爬虫技术的重点,在于本发明具有确定的已知特定网站,并且,这些已知特定网站,既可以初始化人为给定,也可以由以本方法实现的软件动态识别添加,而不必有如传统爬虫技术般严格依赖于无明确指向的种子URL。而且,这些已知特定网站在本质上是一系列的链接,既可以使用一个列表进行独立维护,也可以将这个列表用作链接库,甚至直接将这个列表用作待扫描队列。具体如何利用这一列表,只是数据库技术在本方法中的灵活结合运用,对本领域技术人员而言是显而易见的。例如,一种方式中,已知特定网站列表本质上即是本发明的待扫描队列,对于新链接,顺序追加到列表并附上相应的表征未扫描的标识即可,扫描后更改这些标识为表征已扫描的描述。另一种方式,该列表是独立的,主要用于记录各个域名和相应的IP地址,而另外设置待扫描队列,当识别出关联新链接时,新链接的域名将被添加到该列表中,而新链接本身则被添加到待扫描队列中,以后凡是包含此域名的链接也均不必再行解析,而直接将其添加到待扫描队列中。再一种方式,已知特定网站列表、链接库、待扫描队列均是相互独立的,已知特定网站列表仅已知特定网站有关的存储域名,该链接库用于存储所有已经识别的与已知特定网站有关的链接,而待扫描队列仅用于存储从链接库中获得的新链接,这种方式保证了各类型数据的独立性,可用做更为复杂的用途。
如前所述,以上三种方式任意之一,不仅可以用于确定本发明的已知特定网站,而且,本质上也是本发明用于确定是否属于已知特定网站的关联新链接的过程。为了简化后续的说明和理解,有必要交待,以下的描述中,按照前文的一种方式,将上述的已知特定网站列表完全等同于本发明后文揭示的待扫描队列。但这种简化应足以让本领域技术人员将其扩展到包括利用链接库保存有效链接的应用场景中。
在经过上述内容的揭示后,理解了本发明的已知特定网站的概念,本领域技术人员应当足以实施本发明第二层次实施例中关于利用请求包的链接确定属于已知特定网站的关联新链接的内容。进一步,上述给出了已知特定网站的确定以及属于已知特定网站的关联新链接的判定方法之后,将更有助于本领域技术人员对本步骤的更深入的该第二层次实施例的理解。也就是说,以上给出了利用请求包的链接确定属于已知特定网站的关联新链接的两个不同层次的变例,因此,利用所述请求包所包含的链接,并确定属于已知特定网站的关联新链接,这一技术手段的实施已经获得充分的公开。为了进一步体现发明的优越性,如下进一步揭示本步骤利用请求包的链接确定属于已知特定网站的关联新链接的细分步骤,来体现依据本步骤实现的另一实施例。请参阅图4,本步骤的细分步骤包括:
步骤S121、提取已获取的所有请求包的链接。
由本方法实现的软件,汇总所有的由旁路侦听获得的请求包之后,对请求包进行链接提取。由于http请求包中包含了网页的url,对应地,从http请求包中可以还原得到相应的链接,即网页的url。可以先行对这些链接进行公知的一些技术分析,如分析其是否有效链接。
有效链接指能够正常打开网页或下载文件的链接。无效链接指页面已经无效,无法对用户提供任何有价值信息的页面。当某一链接出现无域名、域名不全、链接不完整、post协议数据包没内容等现象时则将该链接判定为无效链接。以域名为abcd.com的某一链接为例,若链接中没有出现域名abcd.com或只出现域名的一部分如ad.com,则该链接为无效链接。
对从请求包中获取的链接进行分析,判定该链接是否为有效链接,若链接出现无域名、域名不全、链接不完整、post协议数据包没内容等现象则判定链接为无效链接,无效链接不参与后续的处理;若否则为有效链接,后续只处理有效链接。
可以看出,本子步骤也可实现于步骤S11中,并可与其过滤实例相结合运用。
步骤S122、去除所提取的链接中指向具有相同代码的网页的重复链接。
每条所提取的链接,主要是指其中的有效链接,本质上均指向相应的已知特定网站的一个网页,但是,这些有效链接中还可能存在大量的重复链接。所谓重复链接,是指这些链接,指向的网页是具有相同代码的网页,只是提供给原始网页以不同的数据库访问变量,而导致网页在链接内容上呈现出不同,但这些网页的漏洞点是完全相同的。
例如,两条有效链接,彼此开头部分相同,而末尾处分别为/a.php?=1与/a.php?=2,这两条链接事实上仅仅是从数据库里提取的数据不同而已,其中“1”、“2”可以视为变量,故而两条链接的不同实际上只是变量不同,这种情况下,利用其中任意一条链接即可指向其它链接所指向的网页,因此,只需保留其中一条链接即可。进一步,可以去除其尾部变量,直接将链接的末尾处改成/a.php,而删除所有带变量的相关链接,也可起到相同的效果。这种重复链接网页多见于论坛中。
又如,新闻网站中的网页末尾处常见/data/2011201与/data/2011202这样的链接描述,其中2011201和2011202同理应视为变量,除了这两个变量不同之外,两条链接的其余文字均相同,因此,本质上也是指向具有相同代码的网页的两条重复链接。
为了提高本发明的运算效率,本领域技术人员应当借助包括公知技术在内的手段为提取出的链接去除其中的重复链接。为了更有助于本领域技术人员实施本发明,以下列出两种可选的或者并用的由本发明创新的去除重复链接的方法供参照实施:
方法一:先对链接进行排序,取相邻链接进行比较分析,当发现各链接仅变量不同其余内容完全相同时,将其确定为是因为访问数据库而形成的仅其变量不同的多个链接,因而确定为重复链接,这种情况下,仅保留诸多重复链接中的一条,其余全部删除,以去除重复链接。
方法二:先对链接进行排序,取相邻链接所指向的网页签名进行比较,当发现签名相同时,确定这些链接属于重复链接,仅保留其中的一条链接,删除其它链接,从而实现去除重复链接。
上述两种方法中的排序,以及取相邻链接的手段,并非必须,本领域技术人员可以动用一切可以有助于提高比较的公知算法加以代替,恕不赘述。可以看出,通过对重复链接进行去重,所得到的链接便具有一定的唯一性网页指向,显然有助于提高后续步骤的执行效率。
步骤S123、确定经前一步骤处理后的链接中的关联新链接,将该新链接添加至待扫描队列。
如前所述,确定新链接的过程,其实质上也是在确定该链接是否与目前已存在的已知特定网站存在关联关系,因此而确定属于已知特定网站的关联新链接,不仅包括已经记录到已知特定网站列表(待扫描队列)中的域名、IP地址或者更具体的链接等,还包括一些其域名未出现在该列表中、而其映射的IP地址却已经被记录到该列表中或者落入该列表中已记录的IP地址所构成的IP地址段或IP地址段区间的链接。因此,在本步骤中确定关联新链接,也即对上述揭示的三种确定属于已知特定网站或属于其关联新链接的方法进行灵活运用的过程。显然,容易理解,运用上述三种方法是灵活的,可以仅选其中一种,也可同时选择任意多种。其中第一种,通过手动登记的方式,适于从中登记一个网站域名,此后所有该域名之下的未曾扫描的具体链接(如前所述可以通过在链接库中或者待扫描队列中标识状态来识别),均视为该网站的关联新链接;其中的第二种,利用域名注册特征信息来登记,无论是通过人为查询还是程序实现,均能起到如第一种同理的效果,但在程序中实现的方式是本步骤可采用的关键,能够藉此提高程序的智能化和自动化程度;其中的第三种,通过比较请求包链接所指向的IP地址是否落入目前存在的已知特定网站列表中的链接所指向的IP地址或由其构成的连续IP地址段范围,来决定是否将该请求包链接视为属于已知特定网站的关联新链接,这种方式能够自动扩展已知特定网站列表,如果已知特定网站是单列一个列表,那么,可以将该新链接的域名添加到该列表中,而将该新链接添加到链接库(如有)和待扫描队列中;如果已知特定网站列表即同时用做待扫描队列,那么,直接添加该新链接到已知特定网站列表也便是将该新链接添加到待扫描队列的过程。
以下再进一步揭示本发明的第一和第二层次的实施例中共同用到的利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接的具体实施方式。
前文虽然详细揭示了本发明部分技术与传统爬虫技术之间的区别,但本发明同时也将对爬虫技术进行运用。具体而言,现有爬虫技术中,通过一个种子URL,适用变化规则,可以基于该种子URL构造相关的网页新链接,抓取这些网页,或者直接下载种子URL指向的网页并对这些网页做进一步的分析,提取其中属于本种子URL相关的新链接。简言之,给定一个网站链接作为种子URL,则爬虫技术理论上便能够利用该网站链接获得其下的绝大部分的未记载到链接库的新链接,在获取这些新链接之后,添加到链接库,再对其实施网页抓取;或者,爬虫技术也可直接利用种子URL结合变化规则而构造出诸多新链接。可见,利用种子URL构造新链接,便是爬虫技术赖以实现其网页全面抓取功能的基础之一。同理,本发明也运用了这一爬虫技术原理,利用已存在于已知特定网站列表、链接库(如有)或待扫描列表的已知特定网站或其具体链接,视为原始链接,适用预定的变化规则,在原始链接的基础上变化出新链接,例如前文示例中的http://www.360.cn/test/admin.php若存在,则本发明可以进一步利用这一链接构造出包含前者的路径的新链接:http://www.360.cn/test/admin/admin.php,该新链接便是本发明最终构造成形的新链接。其中,/admin/这一目录便是利用变化规则添加的。这些变化规则是公知且多变的,本领域技术人员应当知晓,因此,不应以该示例限制本发明的实施。而且,这样的变化原理应不局限于对一个层级的链接的构造,而应推广到利用第一级网页构造出第N级网页的情况。由此可见,借助对爬虫技术的这种改造式运用,可以构造出与所述原始链接相关联的更多的深层新链接,用于本发明后续进行漏洞扫描。
从原始链接到最终待扫描漏洞的新链接的过程,是一个中间过程,因此,中间产生的新链接可以直接存入前述所称的已知特定网站列表、链接库(如有)或待扫描队列,只要按照本发明的要求最终在待扫描队列中形成一些明确的待实施漏洞扫描的新链接即可。所述作为用于构造更深层链接的种子URL的原始链接,也不应局限于来源于所述交换机的请求包,而应扩展到对所述已知特定网站列表、链接库、待扫描队列中的链接的灵活利用。
由此可以看出,本发明有两大类手段可以获取待扫描漏洞的新链接,其一是通过已知特定网站原始链接确定属于已知特定网站的关联新链接,其二是利用已知特定网站的原始链接运用改进的爬虫技术构造出属于已存在特定网站的内部新链接。这两类技术手段可以灵活运用,第二种手段可以独立地存在于所述第一层次的实施例中,也可以与第一种手段相结合存在于所述第二层次的实施例中。
当前述两种实现获取新链接的手段并存时,可以并行不悖地实施,也可以为两种手段提供择一的选用逻辑。具体而言,本发明中,预设一流量阀值,通过统计单位时间内的请求包流量是否超过这一阀值,来确定选用何种手段。当单位时间内的请求包流量高于该流量阀值时,则利用请求包中的链接来确定属于已知特定网站的关联新链接;当单位时间内的请求包流量低于和/或等于该流量阀值时,则利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接,由此,使得本发明具备了任务调度能力,更为智能化。
统计请求包流量的方式,可以灵活实施。方式之一是直接统计某个交换机的请求包流量,方式之二是统计本机所接收的所有交换机请求包的流量,前者适用于本机接入单个交换机的情况,后者适用于通过远程端口接收多个交换机请求包汇聚结果的情况。当然,本领域技术人员还可利用流量/单位时间这一关系灵活实现对这种流量关系的统计。
注意到前述步骤S11中揭示了两个对请求包进行过滤的实施例,其目的在于避免同类型检测设备与本机相互对对方的交换机请求的循环利用。基于同一目的,本步骤中也可以可选地设置第三种过滤实例,具体而言,在利用交换机的链接构造新链接之前,可以先发起针对该交换机链接访问,如果访问请求获得404页面(错误页面)作为应答,意味着该链接是不存在的,为无效链接,因此,即不对依该链接构造新链接,从而也可避免所述的循环利用。
进一步,需要指出的是,运用爬虫技术构造的新链接,也可能存在重复的现象,因此理论上本发明对链接进行去重的技术也适用于这些新链接;本发明利用爬虫技术原理构造的新链接被添加到本地后,同理也已经成为已保存的已知特定网站的基础数据,可作为本发明确定属于已知特定网站的关联链接和构造更深层的新链接的基础数据,这些基础数据也同理可以被据以实施漏洞扫描检测。
借助上述揭示的两大层次的几种方式任意之一对本发明的有效链接进行了有关新链接的上述过程的确定、构造、筛选和扩展之后,所得到便是所有新链接,为了便于后续步骤的执行,将该些新链接添加到如前所述的待扫描队列中。不管该待扫描队列是否与已知特定网站列表共用一表,还是进一步与所述链接库共用一表,或者待扫描队列是单独的一表,等等,如前所述,本领域技术人员均能够利用寻常知识在该待扫描队列中登记所有确定的新链接,并在后续仅仅对该些新链接实施漏洞扫描。
步骤S13、对所述新链接相对应的网页实施漏洞扫描检测。
在经过上述步骤灵活的多种变例进行处理,最终从所有请求包链接中确定和/或构造了所有新链接之后,可以集中对这些新链接相对应的网页实施漏洞扫描检测。当然,所谓的集中,在时间上可以一般是周期性的。因为用户请求不断发生,本方法能不断获取请求包,并可不断对请求包进行分析,但不可能等到用户不再发送请求时才开始进行扫描检测。因此,本步骤与其它步骤只有逻辑上的关系,不应以这种逻辑关系排除其在时间上的穿插关系。例如,可以一边确定新链接,一边对之前已确定的新链接进行扫描。可以以一个进程不断确定接收请求包并确定新链接,将新链接存入待扫描队列,而另一进程则不断地对待扫描队列中的新链接实施扫描。不管其它步骤如何灵活变通实现,本步骤仅需关注所述待扫描队列中的新链接,同理,无论本步骤如何灵活变通实现,前述各步骤最终提供的接口也在于一个存储有新链接的待扫描队列,待扫描队列无疑成为本步骤与之前的步骤之间的接口,本领域技术人员应当知晓此一原理。
本发明所称新链接相对应的网页中的对应关系,既可以是指由新链接利用域名与IP地址的关系直接映射到网站服务器中相应的网页的关系,也可以是指将该相应网页下载后存储于本地网页库中的这种间接的一一对应关系。因此,适应这两种具体的对应关系,可以采取以下两种方式任意之一对本发明确定的新链接所指向的网页进行漏洞扫描检测。
方式一、从所述待扫描队列中获取记载于其中的新链接,然后,利用该新链接直接映射的在线网页,通过向其网站服务器发送请求,利用网站服务器返回的网页进行漏洞扫描检测。这种方式会加大新链接所在服务器的负担和处理时间,但可以适当节省利用本方法实现的软件的运算量。
方式二、先利用待扫描队列中记载的新链接去下载这些新链接直接映射的网页,下载方法可以同方式一,将这些网页添加至一个本地网页库中,然后对这些本地网页库中的各个网页实施漏洞扫描检测。或者也可如前所述,开设两个进程,一个用于不断下载各新链接所映射的在线网页至本地网页库,另一个则不断地对刚下载的本地网页库中的网页实施漏洞扫描检测。
按照上述方式,不管具体如何利用待扫描队列中的新链接进行漏洞扫描检测,显然,均不影响不发明所要达到的漏洞扫描检测效果。
具体进行漏洞扫描检测时,是结合网站安全检测漏洞数据和网站安全检测规则实施的。网站安全检测漏洞数据包括以下至少之一:挂马数据、虚假欺诈数据、搜索屏蔽数据、旁注数据、篡改数据、漏洞数据。根据网站安全检测漏洞数据,按照与网站安全检测漏洞数据相对应的网站安全检测规则对网站进行安全检测,其中,网站安全检测规则包括以下至少之一:挂马规则、虚假欺诈规则、屏蔽规则、旁注规则、篡改规则、和漏洞规则。本发明主要利用漏洞规则对网页进行扫描。漏洞规则用于根据漏洞数据确定网站存在的漏洞。
根据漏洞数据,按照漏洞规则对网站进行安全检测包括:获取预先存储的漏洞特征数据库中的漏洞特征,判断漏洞数据是否符合漏洞特征,若漏洞数据符合漏洞特征,则确定为漏洞;若漏洞数据不符合漏洞特征,则确定为非漏洞。根据判断结果确定网站存在的漏洞,其中,漏洞特征可以为漏洞关键字。如,将网页状态代码404作为漏洞关键字;或者,将404页面内容作为漏洞关键字;或者,通过访问网站的正常网页,提取该正常网页的网页内容、网页状态代码和http头部,访问该网站不存在的网页,提取反馈网页的网页内容、网页状态代码和http头部,比较该正常网页和该反馈网页的网页内容、网页状态代码和http头部,获取404关键字作为漏洞关键字;再或者,访问不存在的网页,将反馈网页的网页内容、网页状态代码和http头部作为漏洞关键字等等,本发明对此不作限制。
通过上述各步骤,本发明的方法便可完成对网站进行安全检测的任务,将漏洞扫描后的结果存储于相应的文件或数据库中,可供它用。进一步,为了取得更佳的人机交互效果,本发明还可以参照图5所揭示的实施例可选地执行如下步骤:
步骤S14、显示图形用户界面以输出实施漏洞扫描检测的结果信息。
由于本方法适于以编程的方式实现,因此,可以通过该程序实现一个图形用户界面,在执行完前述步骤完成漏洞扫描检测之后,对检测结果进行分析、统计,将进行数学处理后的结果信息输出到该图形用户界面中,可以使网管员一目了然,从而便于网管员修补网页漏洞。
在详细揭示了本发明的上述方法的多种实施形式之后,以下结合模块化思维,揭示利用本发明的方法进一步实现的相应的装置的实施例,以便本领域技术人员更透彻地理解本发明。需要注意的是,本方法所采用的概念及原理,同理适用于本发明的相应的装置,故以下的描述将简化部分说明。
请参阅图6,本发明的网站安全检测装置,配置于一台用作安全检测设备的计算机设备中,包括抓包单元11、查新单元12、检测单元13,以及如图7所示实施例所揭示可选地包括显示单元14。
所述的抓包单元11,用于获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包。
旁路侦听技术本身属于本领域的公知技术,基于交换机的“共享”原理,所有接入该交换机的计算机设备将共同接收到相同的数据包,即当一台计算机向网络上另一台计算机发送数据的时候,或者一个请求进入该交换机的时候,尽管最终可能只有一台计算机接收该数据或请求,其实该网络上的其他计算机也能收到该数据或请求,只不过其他计算机的网卡识别到该数据或请求的目的地不是自身时,直接将该数据或请求过滤掉了。也就是说,以太网卡都构造了硬件的“过滤器”,这个过滤器会忽略与自身MAC地址不相符合的信息。旁路侦听技术正是利用这一特点,通过主动关闭网卡的过滤器,来接收整个交换机中的数据信息,实现侦听。因此,可以知晓,实施旁路侦听适宜在最接近目标服务器的交换机处实现,理论上,只要将配置有旁路侦听技术环境的计算机设备接入该交换机,即可实现侦听,从而获取交换机的数据信息,提取相关数据。
尽管旁路侦听技术接入了交换机,工作于数据链路层,但利用数据链路层的数据包来还原为其它协议层的数据已是现有技术,因此,旁路侦听的具体实现方式,应亦不影响本发明的实施。例如,现有技术中可以借助Linux系统的TcpDump命令来实现抓包和数据提取,获得超文本传输协议请求包。
所述超文本传输协议(HTTP)请求包,对网站访问而言,包括两种形式,即get和post请求。两种请求虽不同,但亦均属本发明的处理对象。通常而言,HTTP请求包的格式主要包括:协议、服务器域名、端口号、请求包路径、get参数名、post参数名、扩展名、目标服务器网段等。无论是get请求包还是post请求包中均包含网页的url。网页的URL,即超链接,自其域名到其页面,有约定的格式。其中,链接的末端为其指向的资源的描述,除此之外的前面部分为其路径。例如网址http://www.360.cn/test/admin.php,其中http://表征协议格式,www.360.cn为其域名,test为该网站中的目录,admin.php为指向的资源页面,http://www.360.cn/test/相对于admin.php页面而言,便是该链接的路径。而http://www.360.cn/test/admin/admin.php显然便是http://www.360.cn/test/admin.php的更深层的链接。
适用不同的网络架构,可以以如下多种方式任意之一或其结合来获取所述由旁路侦听技术获取的HTTP请求包:
一、通过将本机接入架设已知特定网站的服务器所接入的交换机。
这里所称的本机,便是指安装有装配有本发明的装置的计算机设备,将该计算机设备接该交换机,使其与所述的服务器置于同一本地网中,共享交换机中的数据信息,从而,便可借助旁路侦听技术来直接获取向该本地网中的服务器发起的请求数据,从而获得相应的HTTP请求包。
二、通过本机的远程端口接收其他机器获取的由旁路侦听技术获得的HTTP请求包。
本例中,所述的计算机设备,并不需要直接接入架设已知特征网站服务器所接入的交换机,而可以位于更为远程的地理位置,仅仅通过其远程端口接收其它计算机设备发送给它的由旁路侦听技术获得的HTTP请求包即可。对于这里所称的“其它计算机设备”,则应直接接入架设已知特征网站服务器所接入的交换机,以便直接获取相应的数据,并且这些其它计算机设备上还应能与装配了本装置的计算机设备进行通信,以便提供各个交换机的HTTP请求包。
顾及到行文结构,关于本发明所定义的已知特定网站的阐释,将在查新单元12中进行。
后文也将关联性地述及本单元内部构造的变化实施例,即为了避免使得多台相同的检测设备陷入互相利用对方在交换机留下的访问请求而出现重复构造相对于彼此请求中的链接的更深层的下级链接的情形,在本单元中通过限定IP地址来克服这种情况。具体请参阅背景技术部分的示例性说明,其中,有关检测服务器A与检测服务器B之间,互相利用对方在交换机留下的访问请求,以至于消耗系统资源,造成死机现象。因此,可以通过配置本单元(可以构造为过滤器)利用两种具体实施方式加以避免:
其一,识别由旁路侦听获得的请求包中的来源IP地址,判断该来源IP地址是否是预先给定(例如通过用户界面输入并保存在系统设置中)的特定IP地址,如果是,则过滤掉所有来自该特定IP地址的请求包。例如,检测服务器A知晓检测服务器B的IP地址,将其IP地址作为特定IP地址加以保存,这样,检测服务器A便可以过滤来源于检测服务器B的请求包,避免重复利用对方的请求。同理,在检测服务器B中也可以设置检测服务器A的IP地址来避免同一问题。
其二,检测单位时间内所收到的请求包中,是否有大量请求包来源于同一IP地址,例如每分钟超过预设的2000个请求的阈值(仅示例,可灵活设定具体数量),当存在这种现象时,判定该IP地址便是所述的特定IP地址,从而智能化地过滤掉该特定IP地址的请求包。例如,检测服务器A在单位时间内收到超过预设阈值的来源于同一IP地址的请求包,则可认为该IP地址为特定IP地址,从而不再利用该特定IP地址的请求包中的链接构造新链接。当然,进一步可以具体到该请求包访问的是否同一服务器(可通过请求包的目的IP地址来判断),当特定IP地址访问同一服务器并到达预设阈值时,才过滤掉该特定IP地址发起的请求包,也是可行的。
通过上述给出的两个过滤实例的任意之一,分别可以有指向性地或者动态智能地避免对同类功能的检测设备的请求包的利用。因此,本发明也可以同时运用该两个过滤实例,分别实现手动配置和自动计算的效果,以便丰富本发明的功能。
但是,以上两个过滤实例与后续的检测单元中即将述及的另一过滤实例之间,三者可以择一构造于本发明中,也可任意数量个实例相结合应用于本发明中,彼此不存在互斥关系,属于殊途同归的几种有助于实现本发明的有益效果的重要构造方式。依据这一分析,可以知晓,本发明以过滤实例为变化要素,也便相当于揭示了本发明的多个变化实施例。
上述两种不同的获取请求包的接入方式,是基于不同的网站服务器实现架构而提出的。无论采用何种具体方式,由旁路侦听技术所获取的交换机数据包均能借助现有技术自动识别出所述HTTP请求包,以便该些HTTP请求包能被进一步处理。
所述的查新单元12,本步骤中,可以以两种实施例对其不同层次进行实现。因此可对查新单元12做两个层次的配置,第一个层次中,参阅图3,仅考虑利用爬虫技术构造新链接的情况,这种情况下,本查新单元12被配置为利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;第二个层次中,参阅图4,增补不同于爬虫技术的实现方式,本查新单元12被配置为通过统计单位时间内由旁路侦听获得的请求包流量,当其超过预设阀值时,通过调用预先构造的确定单元(未图示),利用所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测;否则通过调用预先构造的构造单元(未图示),利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接。也就是说,本查新单元12可以通过两种实施例来实现,后者用于进一步扩充、完善本发明所达到的效果,但并不影响前者的实施。由于两个层次之间存在递进或并行关系,因此,以下有关本查新单元12的描述,为简化的方便,在描述形式上并未严格区分这两种情况,本领域技术人员应当依据此处的先导说明对后文加以理解。
本发明所针对的网站是特定的,一般是应用本发明的装置的企业自身的一个或多个已知网站,这些网站拥有一些共同特征,其链接均解释到特定的一些IP地址段上、其域名所有人均为该企业或该企业的客户,或者,是该企业参与管理的目标网站。更具体而言,这种特定关系,是指实现了本装置的软件所需关注的网站。而是否属于该软件所需关注的网站,在技术层面上,是由本发明的装置进行判断的,具体既可以提供界面人为设定,也可以是以链接和/或IP地址和/或域名注册特征信息为基础进行综合判断。因此,本发明的已知特定网站的识别依据,不能仅仅理解为某个域名或其IP地址,还应包括虽未进行人为明文设定,但实质上是该企业所要纳入的检测对象,包括任何解析到实质上属于部分已知特定网站已经占据的IP地址的新增域名的链接。
由此可知,本发明实现其第二个层次的实施例时,相对于爬虫技术,虽不需精心挑选种子URL,但有必要通过一设定单元120(参阅图8)提供有关一些特定网站的基础设置,以设定本发明的已知特定网站。然而,应当知晓,所提供的这些已知特定网站本身也是链接,显然也可以作为本发明实现第一层次和第二层次的实施例时用到的爬虫技术的种子URL,并且据此构造新链接。因此,这些已知特定网站的预先设定是有益于本发明的实施的。相应于前述说明,设定这些已知特定网站的方式也是多种多样的。给出已知特定网站的过程,不管给出的内容是IP地址还是域名之类的资源定位符,在本质上都是给出网站的链接,因此这个过程本质上也是确定本发明的新链接的过程。以下进一步综合地揭示本发明用于确定已知特定网站和/或其新链接的设定单元120的几种具体实施例:
一、所述设定单元120,可被配置为利用图形用户界面设置已知特定网站和/或其关联新链接。
具体而言,以本发明实现的软件在首次运行时,将通过本设定单元120提供一图形用户界面,用于提供给用户进行部分已知特定网站的设定,用户通过向该图形用户界面输入与这些已知特定网站有关的内容而完成设定,从而预先给定一个或多个已知特定网站。这些预先给定的内容,既可以是一个或多个域名,例如so.com、360.cn等,也可以是与服务器相对应的IP地址,以及由IP地址构成的连续IP地址段或离散IP地址段区间。这些设置内容,如前所述,本质上可以被理解为一个关联新链接或者种子URL,可以被存储于一个已知特定网站列表中,以便本装置的其它功能模块调用。需要指出的是,这个已知特定网站列表,实质上也相当于一个链接库,因此,可以被视为链接库进行后续利用,或者将之视为链接库的数据来源。这里所称的链接库,依据爬虫技术原理,可以被直接用作后续的待扫描队列,也可以仅仅是为后续的待扫描队列提供基础数据。因此可知,在这个基础上,这些用于确定部分已知特定网站的域名或者IP地址以及相关信息,便构成了本发明的新链接,或者至少可用于构造本发明的新链接,成为本发明的软件首次实施扫描的处理对象。而在后续维护时利用这种方式来继续添加新链接,当该新链接的域名不同于其它已知特定网站域名时,实质上也就是通过扩展更多域名而添加了新的已知特定网站。
二、所述的设定单元120,可被配置为利用域名注册信息确定已知特定网站的关联新链接。
已知特定网站的关联新链接,包括属于已经登记的网站(可以通过包含已登记域名识别)之下的所有链接和/或域名未经登记的网站的所有链接。对于后者,是指从所述请求包获得的链接,包含新域名,不属于目前已存在的已知特定网站的链接范围时,无法确定该链接是否属于企业自有网站、是否需要视为属于已知特定网站的关联新链接时,需要通过技术手段进一步确定是否应将其视为已知特定网站的关联新链接。因此,可以通过调用域名注册网站提供的接口,来对这个链接中的新域名进行查询,确定其注册特征信息,具体包括例如域名所有人、域名备案号等,这些注册特征信息是否与目前存在的已知特定网站域名的注册特征信息相同,当两者相同时,则将该新链接视为已知特定网站的关联新链接,在本装置中运用;否则丢弃该请求包不予处理。继而可直接将该新域名和/或其下层新链接添加到一个如前所述的已知特定网站列表中备用。显然,查询新域名注册特征信息的操作,既可以是人为的,也可以是利用软件实现的。当为前者时,实际上是对前述第一种方式的后续维护。当为后者时,则使本发明实现了对已知特定网站列表的动态扩展维护。如果该已知特定网站列表即为所述链接库或所述的待扫描队列,则本质上便是在维护一个新链接列表,该新链接列表自然可用做本发明后文所需的多个相关处理环节的数据基础。
三、所述的设定单元120,被配置为利用IP地址来动态确定已知特定网站的关联新链接。
众所周知的,域名与IP地址之间具有映射关系。因此,通过已知的域名可以确定相应的IP地址,同一个网站可能由多个IP地址所指向的服务器提供服务,因此,网站与IP地址间可能存在一对多、多对多的映射关系。实践中,企业网站通常使用由连续IP地址构成的IP地址段来架设其服务器。有鉴于此,利用目前已经存在的已知特定网站,可以确定其所占据的IP地址段。当请求包的链接中的新域名包含不属于目前已经存在的已知特定网站的域名之一时,这时可以比较该新域名所指向的IP地址是否属于目前已经存在的已知特定网站所占有的IP地址之一,如果是,则同理可将该请求包的所述链接视为新的已知特定网站关联新链接而添加到一个如前所述的已知特定网站列表中。同理,如果该已知特定网站列表即为所述链接库或所述的待扫描队列,本处理方式本质上便是在维护一个新链接列表,该新链接列表自然可用做本发明后文所需的多个相关处理环节的数据基础。
由此可知,本发明尽管运用了传统爬虫技术原理,但仍有区别于爬虫技术的重点,在于本发明具有确定的已知特定网站,并且,这些已知特定网站,既可以初始化人为给定,也可以由装配了本装置的软件动态识别添加,而不必有如传统爬虫技术般严格无明确指向的依赖于种子URL。而且,这些已知特定网站在本质上是一系列的链接,既可以使用一个列表进行独立维护,也可以将这个列表用作链接库,甚至直接将这个列表用作待扫描队列。具体如何利用这一列表,只是数据库技术在本装置中的灵活结合运用,对本领域技术人员而言是显而易见的。例如,一种方式中,已知特定网站列表本质上即是本发明的待扫描队列,对于新链接,顺序追加到列表并附上相应的表征未扫描的标识即可,扫描后更改这些标识为表征已扫描的描述。另一种方式,该列表是独立的,主要用于记录各个域名和相应的IP地址,而另外设置待扫描队列,当识别出关联新链接时,新链接的域名将被添加到该列表中,而新链接本身则被添加到待扫描队列中,以后凡是包含此域名的链接也均不必再行解析,而直接将其添加到待扫描队列中。再一种方式,已知特定网站列表、链接库、待扫描队列均是相互独立的,已知特定网站列表仅已知特定网站有关的存储域名,该链接库用于存储所有已经识别的与已知特定网站有关的链接,而待扫描队列仅用于存储从链接库中获得的新链接,这种方式保证了各类型数据的独立性,可用做更为复杂的用途。
如前所述,设定单元120的三种实施方式,不仅均可以用于确定本发明的已知特定网站,而且,本质上也可以用于确定属于已知特定网站的关联新链接。为了简化后续的说明和理解,有必要交待,以下的描述中,按照前文的一种方式,将上述的已知特定网站列表完全等同于本发明后文揭示的待扫描队列。但这种简化应足以让本领域技术人员将其扩展到包括利用链接库保存有效链接的应用场景中。
在经过上述内容的揭示后,理解了本发明的已知特定网站的概念,本领域技术人员应当足以实施本查新单元12中的确定单元。进一步,上述给出了用于确定已知特定网站以及确定属于已知特定网站的关联新链接多种设定单元120之后,将更有助于本领域技术人员对本查新单元12的确定单元的更深入的实施例的理解。以上给出了本查新单元12的确定单元的两个不同层次的变例,因此,利用所述请求包所包含的链接,并确定属于已知特定网站的关联新链接,这一技术手段的实施已经获得充分的公开。为了进一步体现发明的优越性,如下进一步揭示本查新单元12的确定单元在另一实施例中的内部结构,来体现依据本查新单元12的确定单元实现的另一实施例的细节。请参阅图8,本查新单元12的确定单元进一步包括提取模块121、去重模块122以及添加模块123:
所述的提取模块121,用于提取已获取的所有请求包的链接。
由本装置实现的软件,汇总所有的由旁路侦听获得的请求包之后,由提取模块121对请求包进行链接提取。由于http请求包中包含了网页的url,对应地,从http请求包中可以还原得到相应的链接,即网页的url。可以先行对这些链接进行公知的一些技术分析,如分析其是否有效链接。
有效链接指能够正常打开网页或下载文件的链接。无效链接指页面已经无效,无法对用户提供任何有价值信息的页面。当某一链接出现无域名、域名不全、链接不完整、post协议数据包没内容等现象时则将该链接判定为无效链接。以域名为abcd.com的某一链接为例,若链接中没有出现域名abcd.com或只出现域名的一部分如ad.com,则该链接为无效链接。
对从请求包中获取的链接进行分析,判定该链接是否为有效链接,若链接出现无域名、域名不全、链接不完整、post协议数据包没内容等现象则判定链接为无效链接,无效链接不参与后续的处理;若否则为有效链接,后续只处理有效链接。
可以看出,本提取模块121也可实现于抓包单元11中,并可与其过滤实例相结合运用。
所述的去重模块122,用于去除所提取的链接中指向具有相同代码的网页的重复链接。
每条所提取的链接,主要是指其中的有效链接,本质上均指向相应的已知特定网站的一个网页,但是,这些有效链接中还可能存在大量的重复链接。所谓重复链接,是指这些链接,指向的网页是具有相同代码的网页,只是提供给原始网页以不同的数据库访问变量,而导致网页在链接内容上呈现出不同,但这些网页的漏洞点是完全相同的。
例如,两条有效链接,彼此开头部分相同,而末尾处分别为/a.php?=1与/a.php?=2,这两条链接事实上仅仅是从数据库里提取的数据不同而已,其中“1”、“2”可以视为变量,故而两条链接的不同实际上只是变量不同,这种情况下,利用其中任意一条链接即可指向其它链接所指向的网页,因此,只需保留其中一条链接即可。进一步,可以去除其尾部变量,直接将链接的末尾处改成/a.php,而删除所有带变量的相关链接,也可起到相同的效果。这种重复链接网页多见于论坛中。
又如,新闻网站中的网页末尾处常见/data/2011201与/data/2011202这样的链接描述,其中2011201和2011202同理应视为变量,除了这两个变量不同之外,两条链接的其余文字均相同,因此,本质上也是指向具有相同代码的网页的两条重复链接。
为了提高本发明的运算效率,本领域技术人员应当借助包括公知技术在内的手段为提取出的链接去除其中的重复链接。本发明的去重模块122进一步包括查重子模块和去除子模块,前者用于确定重复链接,后者用于实施去除操作。为了更有助于本领域技术人员实施本发明,以下列出用于去除重复链接的去重模块122的具体结构的两种可选实施方式供参考:
结构形式之一:所述查重子模块先对链接进行排序,取相邻链接进行比较分析,当发现各链接仅变量不同其余内容完全相同时,将其确定为是因为访问数据库而形成的仅其变量不同的多个链接,因而确定为重复链接,这种情况下,所述去除子模块仅保留诸多重复链接中的一条,其余全部删除,以去除重复链接。
结构形式之二:所述查重子模块先对链接进行排序,取相邻链接所指向的网页签名进行比较,当发现签名相同时,确定这些链接属于重复链接,所述去除子模块继而仅保留其中的一条链接,删除其它链接,从而实现去除重复链接。
上述两种结构形式中的排序,以及取相邻链接的手段,并非必须,本领域技术人员可以动用一切可以有助于提高比较的公知算法加以代替,恕不赘述。可以看出,通过对重复链接进行去重,所得到的链接便具有一定的唯一性网页指向,显然有助于提高本装置其它功能模块的执行效率。
所述的添加模块123,用于确定查新单元12处理后的链接中的关联新链接,将该新链接添加至待扫描队列。
如前所述,确定新链接的过程,其实质上也是在确定该链接是否与目前已存在的已知特定网站存在关联关系,因此而确定属于已知特定网站的关联新链接,不仅包括已经记录到已知特定网站列表(待扫描队列)中的域名、IP地址或者更具体的链接等,还包括一些其域名未出现在该列表中、而其映射的IP地址却已经被记录到该列表中或者落入该列表中已记录的IP地址所构成的IP地址段或IP地址段区间的链接。因此,在本添加模块123中确定关联新链接,也即对上述揭示的多种设定单元120实例进行灵活运用(调用)的过程。显然,容易理解,运用设定单元120的上述三种结构实例是灵活的,可以仅选其中一种,也可同时选择任意多种。其中第一种,通过手动登记的方式,适于从中登记一个网站域名,此后所有该域名之下的未曾扫描的具体链接(如前所述可以通过在链接库中或者待扫描队列中标识状态来识别),均视为该网站的新链接;其中的第二种,利用域名注册特征信息来登记,无论是通过人为查询还是程序实现,均能起到如第一种同理的效果,但其中在程序中实现的方式是本添加模块123可采用的关键,能够藉此提高程序的智能化和自动化程度;其中的第三种,通过比较请求包链接所指向的IP地址是否落入目前存在的已知特定网站列表中的链接所指向的IP地址或由其构成的连续IP地址段范围,来决定是否将该请求包链接视为属于已知特定网站的关联新链接,这种方式能够自动扩展已知特定网站列表,如果已知特定网站是单列一个列表,那么,可以将该新链接的域名添加到该列表中,而将该新链接添加到链接库(如有)和待扫描队列中;如果已知特定网站列表即同时用做待扫描队列,那么,直接添加该新链接到已知特定网站列表也便是将该新链接添加到待扫描队列的过程。
以下再进一步揭示本发明的查新单元12的两大层次实施例中共同用到的构造单元,即利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接的具体实施方式。
前文虽然详细揭示了本发明部分技术与传统爬虫技术之间的区别,但本发明同时也将对爬虫技术进行运用。具体而言,现有爬虫技术中,通过一个种子URL,适用变化规则,可以基于该种子URL构造相关的网页新链接,抓取这些网页,或者直接下载种子URL指向的网页并对这些网页做进一步的分析,提取其中属于本种子URL相关的新链接。简言之,给定一个网站链接作为种子URL,则爬虫技术理论上便能够利用该网站链接获得其下的绝大部分的未记载到链接库的新链接,在获取这些新链接之后,添加到链接库,再对其实施网页抓取;或者,爬虫技术也可直接利用种子URL结合变化规则而构造出诸多新链接。可见,利用种子URL构造新链接,便是爬虫技术赖以实现其网页全面抓取功能的基础之一。同理,本发明也运用了这一爬虫技术原理,利用已存在于已知特定网站列表、链接库(如有)或待扫描列表的已知特定网站或其具体链接,视为原始链接,适用预定的变化规则,在原始链接的基础上变化出新链接,例如前文示例中的http://www.360.cn/test/admin.php若存在,则本发明可以进一步利用这一链接构造出包含前者的路径的新链接:http://www.360.cn/test/admin/admin.php,该新链接便是本发明最终构造成形的新链接。其中,/admin/这一目录便是利用变化规则添加的。这些变化规则是公知且多变的,本领域技术人员应当知晓,因此,不应以该示例限制本发明的实施。而且,这样的变化原理应不局限于对一个层级的链接的构造,而应推广到利用第一级网页构造出第N级网页的情况。由此可见,借助对爬虫技术的这种改造式运用,可以构造出与所述原始链接相关联的更多的深层新链接,用于本发明后续进行漏洞扫描。
从原始链接到最终待扫描漏洞的新链接的过程,是一个中间过程,因此,中间产生的新链接可以直接存入前述所称的已知特定网站列表、链接库(如有)或待扫描队列,只要按照本发明的要求最终在待扫描队列中形成一些明确的待实施漏洞扫描的新链接即可。所述作为用于构造更深层链接的种子URL的原始链接,也不应局限于来源于所述交换机的请求包,而应扩展到对所述已知特定网站列表、链接库、待扫描队列中的链接的灵活利用。
由此可以看出,本发明有两大类手段可以获取待扫描漏洞的新链接,其一由确定单元执行,通过已知特定网站原始链接确定属于已知特定网站的关联新链接,其二由构造单元执行,利用已知特定网站的原始链接运用改进的爬虫技术构造出属于已存在特定网站的内部新链接。这两类技术手段可以灵活运用,第二种手段可以独立地存在于所述第一层次的实施例中,也可以与第一种手段相结合存在于所述第二层次的实施例中。
当前述两种实现获取新链接的手段并存时,可以并行不悖地实施,也可以由查新单元12为两种手段提供择一的选用逻辑。具体而言,本发明查新单元12通过预设一流量阀值,进一步通过统计单位时间内的请求包流量是否超过这一阀值,来确定选用何种手段。当单位时间内的请求包流量高于该流量阀值时,则利用请求包中的链接来确定属于已知特定网站的关联新链接;当单位时间内的请求包流量低于和/或等于该流量阀值时,则利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接,由此,使得本发明具备了任务调度能力,更为智能化。
统计请求包流量的方式,可以灵活实施。方式之一是直接统计某个交换机的请求包流量,方式之二是统计本机所接收的所有交换机请求包的流量,前者适用于本机接入单个交换机的情况,后者适用于通过远程端口接收多个交换机请求包汇聚结果的情况。当然,本领域技术人员还可利用流量/单位时间这一关系灵活实现对这种流量关系的统计。
注意到前述抓包单元11中揭示了两个对请求包进行过滤的过滤器实施例,其目的在于避免同类型检测设备与本机相互对对方的交换机请求的循环利用。基于同一目的,本构造单元也可以可选地设置第三种过滤器实例,具体而言,在依据交换机链接构造新链接之前,可以先发起针对交换机链接的访问,如果访问请求获得404页面(错误页面)作为应答,意味着该链接是不存在的,为无效链接,因此,即不对该链接构造新链接,从而也可避免所述的循环利用。
进一步,需要指出的是,运用爬虫技术构造的新链接,也可能存在重复的现象,因此理论上本发明对链接进行去重的技术也适用于这些新链接;本发明利用爬虫技术原理构造的新链接被添加到本地后,同理也已经成为已保存的已知特定网站的基础数据,可作为本发明确定属于已知特定网站的关联链接和构造更深层的新链接的基础数据,这些基础数据也同理可以被据以实施漏洞扫描检测。
借助上述揭示的确定单元、构造单元及几种设定单元120实例对本发明的有效链接进行了有关新链接的上述过程的确定、构造、筛选和扩展之后,所得到便是所有新链接,为了便于本发明其他功能模块的执行,将该些新链接添加到如前所述的待扫描队列中。不管该待扫描队列是否与已知特定网站列表共用一表,还是进一步与所述链接库共用一表,或者待扫描队列是单独的一表,等等,如前所述,本领域技术人员均能够利用寻常知识在该待扫描队列中登记所有确定的新链接,并在后续仅仅对该些新链接实施漏洞扫描。
所述的检测单元13,用于对所述新链接相对应的网页实施漏洞扫描检测。
在经过上述步骤灵活的多种变例进行处理,最终从所有请求包链接中确定和/或构造了所有新链接之后,可以利用检测单元13集中对这些新链接相对应的网页实施漏洞扫描检测。当然,所谓的集中,在时间上可以一般是周期性的。因为用户请求不断发生,本装置能不断获取请求包,并可不断对请求包进行分析,但不可能等到用户不再发送请求时才开始进行扫描检测。因此,本检测单元13与其它功能模块只有连接关系,不应以这种连接关系排除其在时间上的穿插关系。例如,可以一边确定新链接,一边对之前已确定的新链接进行扫描。可以以一个进程不断确定接收请求包并确定新链接,将新链接存入待扫描队列,而另一进程则不断地对待扫描队列中的新链接实施扫描。不管其它功能模块如何灵活变通实现,本检测单元13仅需关注所述待扫描队列中的新链接,同理,无论本检测单元13如何灵活变通实现,前述各功能模块最终提供的接口也在于一个存储有新链接的待扫描队列,待扫描队列无疑成为本检测单元13与之前的功能模块之间的接口,本领域技术人员应当知晓此一原理。
本发明所称新链接相对应的网页中的对应关系,既可以是指由新链接利用域名与IP地址的关系直接映射到网站服务器中相应的网页的关系,也可以是指将该相应网页下载后存储于本地网页库中的这种间接的一一对应关系。因此,适应这两种具体的对应关系,可以为本装置的检测单元13提供两种结构实例,通过以下任意一种结构均可对本发明确定的新链接所指向的网页进行漏洞扫描检测。
结构实例一、由一获取单元从所述待扫描队列中获取记载于其中的新链接,然后,利用该新链接直接映射的在线网页,通过向其网站服务器发送请求,利用网站服务器返回的网页,借助一实施单元进行漏洞扫描检测。这种方式会加大新链接所在服务器的负担和处理时间,但可以适当节省利用实现本装置的软件的运算量。
结构实例二、由一获取单元从待扫描队列中获取新链接之后,由一下载单元利用所述新链接去下载这些新链接直接映射的网页,下载方法可以同结构实例一,将这些网页添加至一个本地网页库中,然后借助一实施单元对这些本地网页库中的各个网页实施漏洞扫描检测。或者也可如前所述,开设两个进程,一个用于不断下载各新链接所映射的在线网页至本地网页库,另一个则不断地对刚下载的本地网页库中的网页实施漏洞扫描检测。
按照上述方式,不管具体如何利用待扫描队列中的新链接进行漏洞扫描检测,显然,均不影响不发明所要达到的漏洞扫描检测效果。
具体进行漏洞扫描检测时,是结合网站安全检测漏洞数据和网站安全检测规则实施的。网站安全检测漏洞数据包括以下至少之一:挂马数据、虚假欺诈数据、搜索屏蔽数据、旁注数据、篡改数据、漏洞数据。根据网站安全检测漏洞数据,按照与网站安全检测漏洞数据相对应的网站安全检测规则对网站进行安全检测,其中,网站安全检测规则包括以下至少之一:挂马规则、虚假欺诈规则、屏蔽规则、旁注规则、篡改规则、和漏洞规则。本发明主要利用漏洞规则对网页进行扫描。漏洞规则用于根据漏洞数据确定网站存在的漏洞。
根据漏洞数据,按照漏洞规则对网站进行安全检测包括:获取预先存储的漏洞特征数据库中的漏洞特征,判断漏洞数据是否符合漏洞特征,若漏洞数据符合漏洞特征,则确定为漏洞;若漏洞数据不符合漏洞特征,则确定为非漏洞。根据判断结果确定网站存在的漏洞,其中,漏洞特征可以为漏洞关键字。如,将网页状态代码404作为漏洞关键字;或者,将404页面内容作为漏洞关键字;或者,通过访问网站的正常网页,提取该正常网页的网页内容、网页状态代码和http头部,访问该网站不存在的网页,提取反馈网页的网页内容、网页状态代码和http头部,比较该正常网页和该反馈网页的网页内容、网页状态代码和http头部,获取404关键字作为漏洞关键字;再或者,访问不存在的网页,将反馈网页的网页内容、网页状态代码和http头部作为漏洞关键字等等,本发明对此不作限制。
通过上述各步骤,本发明的装置便可完成对网站进行安全检测的任务,将漏洞扫描后的结果存储于相应的文件或数据库中,可供它用。进一步,为了取得更佳的人机交互效果,本发明还可以可选地包括显示单元14:
所述的显示单元14,用于显示图形用户界面以输出实施漏洞扫描检测的结果信息。
该显示单元14被配置为用于提供一个图形用户界面,在检测单元13完成漏洞扫描检测之后,对检测结果进行分析、统计,将进行数学处理后的结果信息输出到该图形用户界面中,可以使网管员一目了然,从而便于网管员修补网页漏洞。
综上所述,本发明通过统计单位时间内的请求包流量,对不同情况做出响应,可以及时发现已知特定网站及其新链接以及利用已存在的已知特定网站链接构造新链接,可以实时对这些新链接实施漏洞检测,避免漏检测,并且能避免对无效链接和重复链接进行多余的检测,具有高效、智能、及时维护网站安全的优点。
本发明的实施例公开了:
A1.一种网站安全检测方法,其特征在于,包括以下步骤:
获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包;
利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;
对所述新链接相对应的网页实施漏洞扫描检测。
A2.根据权利要求A1所述的网站安全检测方法,其特征在于,所述获取通过旁路侦听而获得的超文本传输协议请求包的步骤中,过滤掉所有由特定IP地址发起的请求包。
A3.根据权利要求A2所述的网站安全检测方法,其特征在于,所述特定IP地址预先给定或者通过检测单位时间内某IP地址发起的请求包数量超过预设阈值而确定。
A4.根据权利要求A1所述的网站安全检测方法,其特征在于,利用属于已知特定网站的所述请求包所包含的链接构造更深层新链接之前,先测试所述请求包所包含的链接的网页是否存在,当该链接所指向的网页不存在时,放弃依据该链接构造新链接。
A5.根据权利要求A1所述的网站安全检测方法,其特征在于,通过本机网卡实施旁路侦听而获得所述请求包。
A6.根据权利要求A5所述的网站安全检测方法,其特在于,本机接入架设所述已知特定网站的服务器所接入的交换机实现旁路侦听。
A7根据权利要求A1所述的网站安全检测方法,其特征在于,通过远程端口接收而获得所述通过旁路侦听而得的请求包。
A8.根据权利要求A1所述的网站安全检测方法,其特征在于,所述已知特定网站通过图形用户界面接收用户设定而预先给定,其给定形式包括域名、IP地址、链接中的一项或任意多项。
A9.根据权利要求A1所述的网站安全检测方法,其特征在于,设有已知特定网站列表用于记录一个或多个所述的已知特定网站的域名、链接和/或其相应的IP地址。
A10.根据权利要求A1所述的网站安全检测方法,其特征在于,还包括如下步骤:利用属于已知特定网站的所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测。
A11.根据权利要求A10所述的网站安全检测方法,其特征在于,通过统计单位时间内由旁路侦听获得的请求包流量,当其超过预设阀值时,利用所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测;否则利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接。
A12.根据权利要求A10所述的网站安全检测方法,其特征在于,在确定属于已知特定网站的关联新链接之前,汇总所述请求包所包含的链接并去除其中的重复链接。
A13.根据权利要求A12所述的网站安全检测方法,其特征在于,所述去除重复链接的步骤包括如下细分步骤:
将访问数据库而形成的仅其变量不同的多个链接确定为重复链接;
仅保留重复链接其中之一实现去除重复链接。
A14.根据权利要求A12所述的网站安全检测方法,其特征在于,所述去除重复链接的步骤包括如下细分步骤:
将具有相同签名的多个链接确定为重复链接;
仅保留重复链接其中之一实现去除重复链接。
A15.根据权利要求A10所述的网站安全检测方法,其特征在于,通过确定请求包中的链接所指向的IP地址属于所述已知特定网站所指向的IP地址或其所属IP地址段而将该链接确定为属于已知特定网站的关联新链接。
A16.根据权利要求A10所述的网站安全检测方法,其特征在于,通过比较所述请求包中的链接的域名的注册特征信息与已知特定网站的域名的注册特征信息相同而将该链接确定为属于已知特定网站的关联新链接。
A17.根据权利要求A10所述的网站安全检测方法,其特征在于,所述利用所述请求包所包含的链接确定属于已知特定网站的关联新链接的步骤,包括如下细分步骤:
提取已获取的所有请求包的链接;
去除所提取的链接中指向具有相同代码的网页的重复链接;
确定其中的新链接,将该新链接添加至待扫描队列。
A18.根据权利要求A10所述的网站安全检测方法,其特征在于,所述对所述新链接相对应的网页实施漏洞扫描的步骤,包括如下细分步骤:
从用于记载所述新链接的待扫描队列中获取所述新链接;
对所述新链接映射的网页实施漏洞扫描检测。
A19.根据权利要求A10所述的网站安全检测方法,其特征在于,所述对所述新链接相对应的网页实施漏洞扫描的步骤,包括如下细分步骤:
从用于记载所述新链接的待扫描队列中获取所述新链接;
获取所述待扫描队列中的新链接所映射的网页并添加至本地网页库;
对依据新链接下载的网页库中的网页实施漏洞扫描检测。
A20.根据权利要求A10所述的网站安全检测方法,其特征在于,该方法包括后续步骤:显示图形用户界面以输出实施漏洞扫描检测的结果信息。
B21.一种网站安全检测装置,其特征在于,包括:
抓包单元,用于获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包;
查新单元,被配置为利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;
检测单元,用于对所述新链接相对应的网页实施漏洞扫描检测。
B22.根据权利要求B21所述的网站安全检测装置,其特征在于,所述抓包单元,被配置为过滤掉所有由特定IP地址发起的请求包。
B23.根据权利要求B22所述的网站安全检测装置,其特征在于,所述特定IP地址预先给定或者通过检测单位时间内某IP地址发起的请求包数量超过预设阈值而确定。
B24.根据权利要求B21所述的网站安全检测装置,其特征在于,所述检测单元,被配置为先测试所述请求包所包含的链接的网页是否存在,当该链接所指向的网页不存在时,放弃依据该链接构造新链接。
B25.根据权利要求B21所述的网站安全检测装置,其特征在于,所述抓包单元,被配置为通过本机网卡实施旁路侦听而获得所述请求包。
B26.根据权利要求B25所述的网站安全检测装置,其特在于,本机与架设所述已知特定网站的服务器所接入的交换机相连接以实现旁路侦听。
B27.根据权利要求B21所述的网站安全检测装置,其特征在于,所述抓包单元,被配置为通过远程端口接收而获得所述通过旁路侦听而得的请求包。
B28.根据权利要求B21所述的网站安全检测装置,其特征在于,该装置还包括设定单元,用于显示图形用户界面以接收用户设定,由此而预先给定所述已知特定网站的域名、IP地址、链接中的一项或任意多项。
B29.根据权利要求B21所述的网站安全检测装置,其特征在于,设有已知特定网站列表用于记录一个或多个所述的已知特定网站的域名、链接和/或其相应的IP地址。
B30.根据权利要求B21所述的网站安全检测装置,其特征在于,所述查新单元,还被配置为利用属于已知特定网站的所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测。
B31.根据权利要求B30所述的网站安全检测装置,其特征在于,所述的查新单元,被配置为用于统计单位时间内由旁路侦听获得的请求包流量,当其超过预设阀值时,运行确定单元,用于利用所述请求包所包含的链接确定属于已知特定网站的关联新链接以供实施漏洞扫描检测;否则,运行构造单元,用于利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接。
B32.根据权利要求B30所述的网站安全检测装置,其特征在于,所述查新单元,被配置为在确定属于已知特定网站的关联新链接之前,汇总所述请求包所包含的链接并去除其中的重复链接。
B33.根据权利要求B32所述的网站安全检测装置,其特征在于,所述查新单元包括:
查重子模块,用于将访问数据库而形成的仅其变量不同的多个链接确定为重复链接;
去除子模块,适于实施仅保留重复链接其中之一实现去除重复链接。
B34.根据权利要求B32所述的网站安全检测装置,其特征在于,所述查新单元包括:
查重子模块,用于将具有相同签名的多个链接确定为重复链接;
去除子模块,适于实施仅保留重复链接其中之一实现去除重复链接。
B35.根据权利要求B30所述的网站安全检测装置,其特征在于,该装置还包括设定单元,被配置为通过确定请求包中的链接所指向的IP地址属于所述已知特定网站所指向的IP地址或其所属IP地址段而将该链接确定为属于已知特定网站的关联新链接。
B36.根据权利要求B30所述的网站安全检测装置,其特征在于,该装置还包括设定单元,被配置为通过比较所述请求包中的链接的域名的注册特征信息与已知特定网站的域名的注册特征信息相同而将该链接确定为属于所述已知特定网站的关联新链接。
B37.根据权利要求B30所述的网站安全检测装置,其特征在于,所述查新单元包括:
提取模块,用于提取已获取的所有请求包的链接;
去重模块,用于去除提取模块提取的链接中指向具有相同代码的网页的重复链接;
添加模块,用于确定其中的新链接,将该新链接添加至待扫描队列。
B38.根据权利要求B30所述的网站安全检测装置,其特征在于,所述检测单元包括:
获取单元,被配置为从用于记载所述新链接的待扫描队列中获取所述新链接;
实施单元,用于对所述新链接映射的网页实施漏洞扫描检测。
B39.根据权利要求B30所述的网站安全检测装置,其特征在于,所述检测单元包括:
获取单元,被配置为从用于记载所述新链接的待扫描队列中获取所述新链接;
下载单元,用于下载所述待扫描队列中的新链接所映射的网页并添加至本地网页库;
实施单元,用于对依据新链接下载的网页库中的网页实施漏洞扫描检测。
B40.根据权利要求B30所述的网站安全检测装置,其特征在于,该装置包括显示单元,用于显示图形用户界面以输出实施漏洞扫描检测的结果信息。
应当注意,在此提供的算法和公式不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解本发明各个方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法和装置解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的网站安全检测设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种网站安全检测方法,其特征在于,包括以下步骤:
获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包;
利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;
对所述新链接相对应的网页实施漏洞扫描检测。
2.根据权利要求1所述的网站安全检测方法,其特征在于,所述获取通过旁路侦听而获得的超文本传输协议请求包的步骤中,过滤掉所有由特定IP地址发起的请求包。
3.根据权利要求2所述的网站安全检测方法,其特征在于,所述特定IP地址预先给定或者通过检测单位时间内某IP地址发起的请求包数量超过预设阈值而确定。
4.根据权利要求1所述的网站安全检测方法,其特征在于,利用属于已知特定网站的所述请求包所包含的链接构造更深层新链接之前,先测试所述请求包所包含的链接的网页是否存在,当该链接所指向的网页不存在时,放弃依据该链接构造新链接。
5.根据权利要求1所述的网站安全检测方法,其特征在于,通过本机网卡实施旁路侦听而获得所述请求包。
6.根据权利要求5所述的网站安全检测方法,其特在于,本机接入架设所述已知特定网站的服务器所接入的交换机实现旁路侦听。
7.根据权利要求1所述的网站安全检测方法,其特征在于,通过远程端口接收而获得所述通过旁路侦听而得的请求包。
8.根据权利要求1所述的网站安全检测方法,其特征在于,所述已知特定网站通过图形用户界面接收用户设定而预先给定,其给定形式包括域名、IP地址、链接中的一项或任意多项。
9.根据权利要求1所述的网站安全检测方法,其特征在于,设有已知特定网站列表用于记录一个或多个所述的已知特定网站的域名、链接和/或其相应的IP地址。
10.一种网站安全检测装置,其特征在于,包括:
抓包单元,用于获取通过旁路侦听而获得的属于已知特定网站的超文本传输协议请求包;
查新单元,被配置为利用属于已知特定网站的所述请求包所包含的链接构造包含该请求包中链接路径的更深层的新链接;
检测单元,用于对所述新链接相对应的网页实施漏洞扫描检测。
CN201410771605.0A 2014-12-12 2014-12-12 网站安全检测方法与装置 Active CN104363253B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410771605.0A CN104363253B (zh) 2014-12-12 2014-12-12 网站安全检测方法与装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410771605.0A CN104363253B (zh) 2014-12-12 2014-12-12 网站安全检测方法与装置

Publications (2)

Publication Number Publication Date
CN104363253A true CN104363253A (zh) 2015-02-18
CN104363253B CN104363253B (zh) 2016-10-26

Family

ID=52530479

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410771605.0A Active CN104363253B (zh) 2014-12-12 2014-12-12 网站安全检测方法与装置

Country Status (1)

Country Link
CN (1) CN104363253B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107087008A (zh) * 2017-05-26 2017-08-22 北京立思辰新技术有限公司 一种医疗网络的安全监控方法和系统
CN107749835A (zh) * 2017-09-11 2018-03-02 哈尔滨工程大学 一种基于预测的点击劫持攻击的渗透测试方法
CN109074278A (zh) * 2016-03-31 2018-12-21 微软技术许可有限责任公司 验证移动应用中的有状态动态链接
CN110020036A (zh) * 2017-07-18 2019-07-16 北京国双科技有限公司 一种网站列表路径生成方法及装置
WO2019184137A1 (zh) * 2018-03-26 2019-10-03 平安科技(深圳)有限公司 漏洞检测方法、装置、计算机设备和存储介质
CN112152972A (zh) * 2019-06-28 2020-12-29 北京奇虎科技有限公司 检测iot设备漏洞的方法和装置、路由器
CN112910849A (zh) * 2021-01-15 2021-06-04 北京奇艺世纪科技有限公司 一种漏洞检测方法、装置、设备及存储介质
CN112906005A (zh) * 2021-02-02 2021-06-04 浙江大华技术股份有限公司 Web漏洞扫描方法、装置、系统、电子装置和存储介质
CN115038089A (zh) * 2022-08-09 2022-09-09 广州博今网络技术有限公司 一种基于信息抽取的多端数据监听采集方法
CN115378905A (zh) * 2022-07-22 2022-11-22 北京华顺信安科技有限公司 一种域名收集方法、装置、设备及计算机可读存储介质
CN116436730A (zh) * 2023-06-13 2023-07-14 泰雷兹数字科技(北京)有限公司 基于云计算服务的虚拟网络映射方法及映射系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060444A (zh) * 2007-05-23 2007-10-24 西安交大捷普网络科技有限公司 基于贝叶斯统计模型的网络异常检测方法
US20130276126A1 (en) * 2010-10-22 2013-10-17 NSFOCUS Information Technology Co., Ltd. Website scanning device and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060444A (zh) * 2007-05-23 2007-10-24 西安交大捷普网络科技有限公司 基于贝叶斯统计模型的网络异常检测方法
US20130276126A1 (en) * 2010-10-22 2013-10-17 NSFOCUS Information Technology Co., Ltd. Website scanning device and method

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109074278A (zh) * 2016-03-31 2018-12-21 微软技术许可有限责任公司 验证移动应用中的有状态动态链接
CN109074278B (zh) * 2016-03-31 2021-12-07 微软技术许可有限责任公司 验证移动应用中的有状态动态链接
CN107087008A (zh) * 2017-05-26 2017-08-22 北京立思辰新技术有限公司 一种医疗网络的安全监控方法和系统
CN110020036A (zh) * 2017-07-18 2019-07-16 北京国双科技有限公司 一种网站列表路径生成方法及装置
CN110020036B (zh) * 2017-07-18 2021-06-08 北京国双科技有限公司 一种网站列表路径生成方法及装置
CN107749835A (zh) * 2017-09-11 2018-03-02 哈尔滨工程大学 一种基于预测的点击劫持攻击的渗透测试方法
CN107749835B (zh) * 2017-09-11 2020-11-20 哈尔滨工程大学 一种基于预测的点击劫持攻击的渗透测试方法
WO2019184137A1 (zh) * 2018-03-26 2019-10-03 平安科技(深圳)有限公司 漏洞检测方法、装置、计算机设备和存储介质
CN112152972A (zh) * 2019-06-28 2020-12-29 北京奇虎科技有限公司 检测iot设备漏洞的方法和装置、路由器
CN112910849B (zh) * 2021-01-15 2022-12-06 北京奇艺世纪科技有限公司 一种漏洞检测方法、装置、设备及存储介质
CN112910849A (zh) * 2021-01-15 2021-06-04 北京奇艺世纪科技有限公司 一种漏洞检测方法、装置、设备及存储介质
CN112906005A (zh) * 2021-02-02 2021-06-04 浙江大华技术股份有限公司 Web漏洞扫描方法、装置、系统、电子装置和存储介质
CN115378905A (zh) * 2022-07-22 2022-11-22 北京华顺信安科技有限公司 一种域名收集方法、装置、设备及计算机可读存储介质
CN115378905B (zh) * 2022-07-22 2023-11-14 北京华顺信安科技有限公司 一种域名收集方法、装置、设备及计算机可读存储介质
CN115038089A (zh) * 2022-08-09 2022-09-09 广州博今网络技术有限公司 一种基于信息抽取的多端数据监听采集方法
CN116436730A (zh) * 2023-06-13 2023-07-14 泰雷兹数字科技(北京)有限公司 基于云计算服务的虚拟网络映射方法及映射系统
CN116436730B (zh) * 2023-06-13 2023-09-29 中软国际科技服务有限公司 基于云计算服务的虚拟网络映射方法及映射系统

Also Published As

Publication number Publication date
CN104363253B (zh) 2016-10-26

Similar Documents

Publication Publication Date Title
CN104363253B (zh) 网站安全检测方法与装置
CN104378389B (zh) 网站安全检测方法与装置
CN104363251B (zh) 网站安全检测方法与装置
CN104363252B (zh) 网站安全检测方法与装置
CN102930211B (zh) 一种多核浏览器中拦截恶意网址的方法和多核浏览器
US20170264701A1 (en) System and method for context specific website optimization
CN102932356B (zh) 多核浏览器中恶意网址拦截方法和装置
CN103384888A (zh) 用于恶意软件的检测和扫描的系统和方法
CN103023905B (zh) 一种用于检测恶意链接的设备、方法及系统
CN102065145B (zh) 一种信息投放方法、装置和系统
CN104539605B (zh) 网站xss漏洞检测方法和设备
CN103685575A (zh) 一种基于云架构的网站安全监控方法
CN104767757A (zh) 基于web业务的多维度安全监测方法和系统
CN106330849A (zh) 防止域名劫持的方法和装置
US10346291B2 (en) Testing web applications using clusters
CN103036896B (zh) 用于检测恶意链接的方法及系统
CN106453436A (zh) 一种网络安全的检测方法和装置
CN105553999A (zh) 应用程序用户行为分析和安全控制方法及其相应的装置
CN107276986B (zh) 一种通过机器学习保护网站的方法、装置和系统
CN107580052A (zh) 自演进的网络自适应爬虫方法及系统
US10931688B2 (en) Malicious website discovery using web analytics identifiers
CN103607454B (zh) Android系统浏览器设置私有代理服务器的方法
US10291492B2 (en) Systems and methods for discovering sources of online content
CN102754488B (zh) 用户访问的控制方法、装置及系统
CN107395651A (zh) 服务系统及信息处理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20161125

Address after: 100015 Chaoyang District Road, Jiuxianqiao, No. 10, building No. 3, floor 15, floor 17, 1701-26,

Patentee after: BEIJING QIANXIN TECHNOLOGY Co.,Ltd.

Address before: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

CB03 Change of inventor or designer information

Inventor after: Long Zhuan

Inventor after: Meng Jun

Inventor after: Liu Xuezhong

Inventor before: Long Zhuan

CB03 Change of inventor or designer information
CP03 Change of name, title or address

Address after: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Patentee after: Qianxin Technology Group Co.,Ltd.

Address before: 100015 15, 17 floor 1701-26, 3 building, 10 Jiuxianqiao Road, Chaoyang District, Beijing.

Patentee before: BEIJING QIANXIN TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20210106

Address after: 100044 2nd floor, building 1, yard 26, Xizhimenwai South Road, Xicheng District, Beijing

Patentee after: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc.

Patentee after: Qianxin Technology Group Co.,Ltd.

Address before: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Patentee before: Qianxin Technology Group Co.,Ltd.

TR01 Transfer of patent right
CP03 Change of name, title or address

Address after: 2nd Floor, Building 1, Yard 26, Xizhimenwai South Road, Xicheng District, Beijing, 100032

Patentee after: Qianxin Wangshen information technology (Beijing) Co.,Ltd.

Patentee after: Qianxin Technology Group Co.,Ltd.

Address before: 100044 2nd floor, building 1, yard 26, Xizhimenwai South Road, Xicheng District, Beijing

Patentee before: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc.

Patentee before: Qianxin Technology Group Co.,Ltd.

CP03 Change of name, title or address