漏洞扫描方法及装置制造方法

文档序号:7823601阅读:248来源:国知局
漏洞扫描方法及装置制造方法
【专利摘要】本发明实施例提供一种漏洞扫描方法及装置。该方法包括:反向扫描代理模块获取客户端报文;所述反向扫描代理模块将所述客户端报文发送给漏洞扫描器,以使所述漏洞扫描器依据所述客户端报文识别所述客户端的漏洞;或者所述反向扫描代理模块依据所述客户端报文识别所述客户端的漏洞,并将所述客户端的漏洞发送给漏洞扫描器;反向扫描代理模块接收所述漏洞扫描器的控制指令,并依据所述控制指令改变工作方式和/或工作模式,以及更新漏洞规则。本发明实施例通过反向扫描代理模块获取客户端报文,并对客户端报文进行分析以识别客户端存在的漏洞,在远程检测服务器的安全问题基础上,增加了对客户端安全问题的分析,从而实现了对整个网络环境的安全性检测。
【专利说明】漏洞扫描方法及装置

【技术领域】
[0001] 本发明实施例涉及网络安全领域,尤其涉及一种漏洞扫描方法及装置。

【背景技术】
[0002] 随着计算机网络技术的发展,网络安全技术也在不断发展,若服务器存在重大的 漏洞,黑客将通过该漏洞窃取服务器或客户端的重要性信息,造成严重后果,因此,网络安 全的重要性日益凸显。
[0003] 现有技术主要通过漏洞扫描器远程检测服务器的漏洞来维护网络安全,具体为 漏洞扫描器作为客户端向服务器发送连接请求消息,服务器对该连接请求消息做出应答, 并将应答消息发送给漏洞扫描器,漏洞扫描器依据该应答消息分析判断服务器是否存在漏 洞。
[0004] 由于整个网络环境不仅包括服务器,还包括与服务器相连接的客户端,而现有技 术只远程检测服务器的安全问题,因此不能检测整个网络环境的安全性。


【发明内容】

[0005] 本发明实施例提供一种漏洞扫描方法及装置,以检测整个网络环境的安全性。
[0006] 本发明实施例的一个方面是提供一种漏洞扫描方法,包括:
[0007] 反向扫描代理模块获取客户端报文;
[0008] 所述反向扫描代理模块将所述客户端报文发送给漏洞扫描器,以使所述漏洞扫描 器依据所述客户端报文识别所述客户端的漏洞,或者所述反向扫描代理模块依据所述客户 端报文识别所述客户端的漏洞,并将所述客户端的漏洞发送给漏洞扫描器;
[0009] 所述反向扫描代理模块接收所述漏洞扫描器的控制指令,并依据所述控制指令改 变工作方式和/或工作模式,以及更新漏洞规则。
[0010] 本发明实施例的另一个方面是提供一种反向扫描代理模块,包括:
[0011] 报文获取模块,用于获取客户端报文;
[0012] 发送模块,用于将所述客户端报文发送给漏洞扫描器,以使所述漏洞扫描器依据 所述客户端报文识别所述客户端的漏洞,或者报文识别与发送模块,用于依据所述客户端 报文识别所述客户端的漏洞,并将所述客户端的漏洞发送给漏洞扫描器;
[0013] 接收控制模块,用于接收所述漏洞扫描器的控制指令,并依据所述控制指令改变 工作方式和/或工作模式,以及更新漏洞规则。
[0014] 本发明实施例的另一个方面是提供一种漏洞扫描器,包括:
[0015] 接收模块,用于接收反向扫描代理模块发送的客户端报文;或者用于接收反向扫 描代理模块发送的客户端的漏洞;
[0016] 报文识别模块,用于依据所述客户端报文识别所述客户端的漏洞;
[0017] 指令发送模块,用于向所述反向扫描代理模块发送控制指令,以使所述反向扫描 代理模块依据所述控制指令改变工作方式和/或工作模式,以及更新漏洞规则。
[0018] 本发明实施例的另一个方面是提供一种漏洞扫描系统,包括所述的反向扫描代理 模块和所述的漏洞扫描器。
[0019] 本发明实施例提供的漏洞扫描方法及装置,通过反向扫描代理模块获取客户端报 文,并对客户端报文进行分析以识别客户端存在的漏洞,在远程检测服务器的安全问题基 础上,增加了对客户端安全问题的分析,从而实现了对整个网络环境的安全性检测。

【专利附图】

【附图说明】
[0020] 图1为本发明实施例提供的漏洞扫描方法流程图;
[0021] 图2为本发明实施例提供的网络拓扑图;
[0022] 图3是本发明实施例提供的获得网络缺陷信息方法流程图;
[0023] 图4为本发明实施例提供的反向扫描代理模块的结构图;
[0024] 图5为本发明另一实施例提供的反向扫描代理模块的结构图;
[0025] 图6为本发明另一实施例提供的反向扫描代理模块的结构图;
[0026] 图7为本发明实施例提供的漏洞扫描器的结构图;
[0027] 图8为本发明另一实施例提供的漏洞扫描器的结构图;
[0028] 图9为本发明实施例提供的漏洞扫描系统的结构图。

【具体实施方式】
[0029] 图1为本发明实施例提供的漏洞扫描方法流程图;图2为本发明实施例提供的网 络拓扑图。本发明实施例提供的漏洞扫描方法具体步骤如下:
[0030] 步骤S101、反向扫描代理模块获取客户端报文;
[0031] 所述反向扫描代理模块安装在服务器上;所述反向扫描代理模块获取客户端报文 包括:所述反向扫描代理模块获取所述客户端与所述服务器交互过程中所述客户端发出的 业务请求报文和应答报文;或者所述反向扫描代理模块向所述客户端发送构造测试报文, 获取所述客户端对所述构造测试报文的响应报文。
[0032] 如图2所示,在获取到服务器管理方的同意后,在服务器22中安装反向扫描代理 模块23,反向扫描代理模块23的工作方式包括无损方式和反向扫描方式,无损方式是指在 服务器22客户端24交互的过程中,反向扫描代理模块23获取该过程中客户端24发出的 业务请求报文和应答报文;反向扫描方式是指反向扫描代理模块23构造测试报文,向客户 端24发送该构造测试报文,并获取客户端24对该构造测试报文的响应报文。
[0033] 步骤S102、所述反向扫描代理模块将所述客户端报文发送给漏洞扫描器,以使所 述漏洞扫描器依据所述客户端报文识别所述客户端的漏洞,或者所述反向扫描代理模块依 据所述客户端报文识别所述客户端的漏洞,并将所述客户端的漏洞发送给漏洞扫描器;
[0034] 反向扫描代理模块23在服务器22上的还包括两种工作模式:代理模式和驻留模 式,代理模式是指反向扫描代理模块23将获取到的客户端24发出的报文直接发送到漏洞 扫描器21,由漏洞扫描器21对客户端24发出的报文进行分析;驻留模式是指反向扫描代 理模块23对获取到的客户端24发出的报文进行分析获得中间处理结果,再将该中间处理 结果发送给漏洞扫描器21。
[0035] 步骤S103、所述反向扫描代理模块接收所述漏洞扫描器的控制指令,并依据所述 控制指令改变工作方式和/或工作模式,以及更新漏洞规则。
[0036] 漏洞扫描器21通过向反向扫描代理模块23发送控制指令实现对反向扫描代理模 块23的控制,具体为反向扫描代理模块23依据控制指令改变工作方式和/或工作模式,以 及更新漏洞规则。
[0037] 本发明实施例通过反向扫描代理模块获取客户端报文,并对客户端报文进行分析 以识别客户端存在的漏洞,在远程检测服务器的安全问题基础上,增加了对客户端安全问 题的分析,从而实现了对整个网络环境的安全性检测。
[0038] 在上述实施例的基础上,所述依据所述客户端报文识别所述客户端的漏洞包括: 依据所述业务请求报文、所述应答报文和/或所述响应报文的特征字段识别所述客户端的 漏洞;或者通过所述业务请求报文、所述应答报文和/或所述响应报文与预设交互报文、预 设报文序列或漏洞特征规则进行匹配识别所述客户端的漏洞。
[0039] 本发明实施例可以通过上述反向扫描代理模块23的任一种工作方式和任一种工 作模式相配合的方式获取客户端24发出的报文,并对该报文进行分析处理。依据所述客户 端发出的报文识别所述客户端的漏洞的执行主体可以是服务器22或漏洞扫描器21,具体 的识别方法包括:1)依据所述业务请求报文、所述应答报文和/或所述响应报文的特征字 段识别所述客户端的漏洞;2)通过所述业务请求报文、所述应答报文和/或所述响应报文 与预设交互报文、预设报文序列或漏洞特征规则进行匹配识别所述客户端的漏洞。
[0040] 方法1),若客户端24发出的业务请求报文的User-Agent字段内容为:
[0041] Mozilla/5. 0 (Xll ;Ubuntu ;Linux x86_64 ;rv: 24. 0) Gecko/20 100 10 1 Firefox/24. 0 ;或
[0042] Mozilla/5. 0(Windows NT 6. 0 ;W0W64 ;rv:24.0)Gecko/20100101 Firefox/24. 0 ; 或
[0043] Opera/9. 80(Windows NT 6. 1 ;U ;es-ES)Presto/2. 9. 181Version/12. 00 ;
[0044] 则通过该字段可以分析出客户端24所用浏览器的版本、浏览器的型号、客户端24 的操作系统类型等信息,通过业界公知漏洞库中的漏洞特征信息与该User-Agent字段中 分析出的相应信息进行匹配,判断该客户端24是否存在漏洞。
[0045] 在现有的漏洞库中,基于获取不同信息所关联漏洞的紧密程度,漏洞数量的多少, 作为优先级顺序,做数据检索,比如先通过浏览器的版本检索,判断客户端可能存在如下的 漏洞:
[0046] Mozilla Firefox/Thunderbird/SeaMonkey 浏览器引擎内存安全漏洞 (CVE-2013-5609);
[0047] Mozilla Firefox/Thunderbird/SeaMonkey 浏览器引擎内存安全漏洞 (CVE-2013-5610);
[0048] 再通过0S版本检索,客户端可能存在如下漏洞:
[0049] windows 内核信息泄露漏洞(MS13-048)、Microsoft windows LPC 和 LPC 端口拒 绝服务漏洞。
[0050] 另外,本发明实施例不限制检测User-Agent字段,还可以检测客户端24发出的报 文的其他字段。
[0051] 方法2)对于已知的漏洞类型,可预先存储其特定请求的典型消息格式及交互序 列,例如针对Opera Web浏览器多个畸形HTML解析拒绝服务漏洞,反向扫描代理模块可以 预先保存该漏洞的典型消息或序列,具体为畸形请求报文,将获取的客户端报文与该畸形 请求报文进行匹配;或者反向扫描代理模块通过反向扫描方式向客户端发送构造测试报 文,检测客户端是否会返回该畸形请求报文。为保障准确率,多次匹配命中后即可判定客户 端浏览器具有此类漏洞。不同漏洞的典型消息或序列特征可具体定义。
[0052] 本发明实施例提供了两种用于识别客户端漏洞的方式。
[0053] 图3是本发明实施例提供的获得网络缺陷信息方法流程图。在上述实施例的基础 上,还包括:所述反向扫描代理模块或所述漏洞扫描器获取所述服务器的漏洞;所述反向 扫描代理模块或所述漏洞扫描器依据所述服务器的漏洞和所述客户端的漏洞获得网络缺 陷信息。
[0054] 所述网络缺陷信息包括网络缺陷密度和网络安全等级;所述依据所述服务器的漏 洞和所述客户端的漏洞获得网络缺陷信息包括如下步骤:
[0055] 步骤S301、依据至少一种第一划分规则对所述服务器的漏洞和所述客户端的漏洞 进行划分获得网络缺陷类型集合,所述网络缺陷类型集合至少包括一类网络缺陷;
[0056] 所述依据至少一种第一划分规则对所述服务器的漏洞和所述客户端的漏洞 进行划分获得网络缺陷类型集合包括:依据所述至少一种第一划分规则中的第m种第 一划分规则将所述服务器的漏洞和所述客户端的漏洞划分为由n类网络缺陷组成的

【权利要求】
1. 一种漏洞扫描方法,其特征在于,包括: 反向扫描代理模块获取客户端报文; 所述反向扫描代理模块将所述客户端报文发送给漏洞扫描器,以使所述漏洞扫描器依 据所述客户端报文识别所述客户端的漏洞,或者所述反向扫描代理模块依据所述客户端报 文识别所述客户端的漏洞,并将所述客户端的漏洞发送给漏洞扫描器; 所述反向扫描代理模块接收所述漏洞扫描器的控制指令,并依据所述控制指令改变工 作方式和/或工作模式,以及更新漏洞规则。
2. 根据权利要求1所述的方法,其特征在于,所述反向扫描代理模块安装在服务器上; 所述反向扫描代理模块获取客户端报文包括: 所述反向扫描代理模块获取所述客户端与所述服务器交互过程中所述客户端发出的 业务请求报文和应答报文;或者 所述反向扫描代理模块向所述客户端发送构造测试报文,获取所述客户端对所述构造 测试报文的响应报文。
3. 根据权利要求2所述的方法,其特征在于,所述依据所述客户端报文识别所述客户 端的漏洞包括: 依据所述业务请求报文、所述应答报文和/或所述响应报文的特征字段识别所述客户 端的漏洞;或者 通过所述业务请求报文、所述应答报文和/或所述响应报文与预设交互报文、预设报 文序列或漏洞特征规则进行匹配识别所述客户端的漏洞。
4. 根据权利要求1-3任一项所述的方法,其特征在于,还包括: 所述反向扫描代理模块或所述漏洞扫描器获取所述服务器的漏洞; 所述反向扫描代理模块或所述漏洞扫描器依据所述服务器的漏洞和所述客户端的漏 洞获得网络缺陷信息。
5. 根据权利要求4所述的方法,其特征在于,所述网络缺陷信息包括网络缺陷密度和 网络安全等级; 所述依据所述服务器的漏洞和所述客户端的漏洞获得网络缺陷信息包括: 依据至少一种第一划分规则对所述服务器的漏洞和所述客户端的漏洞进行划分获得 网络缺陷类型集合,所述网络缺陷类型集合至少包括一类网络缺陷; 依据至少一种第二划分规则对所述服务器和所述客户端构成的网络区域进行划分获 得网络子区域集合,所述网络子区域集合至少包括一个网络子区域; 依据所述网络缺陷类型集合和所述网络子区域集合获得网络缺陷密度; 依据所述网络缺陷密度获得网络安全等级。
6. 根据权利要求5所述的方法,其特征在于,所述依据至少一种第一划分规则对所述 服务器的漏洞和所述客户端的漏洞进行划分获得网络缺陷类型集合包括: 依据所述至少一种第一划分规则中的第m种第一划分规则将所述服务器的漏洞和所 述客户端的漏洞划分为由n类网络缺陷组成的第一集合K1 , m彡l,n彡1,f表示依据所述第m种第一划分规则划分所述漏洞后获得的第 i+1类网络缺陷,对于i、je[〇,n-l]且i乒j,满足4' <矣0,<门<=0, u^ru^mu...uci=Ki; 确定所述第一划分规则中将所述漏洞划分为小于或者等于N类网络缺陷的第一目标 划分规则,由所述第一目标划分规则划分所述漏洞获得的第一集合构成所述网络缺陷类型 集合4 ,其中,F(n)是n的映射函数,表示将所述漏洞划分为n彡N类 网络缺陷的第一目标划分规则,U=式' 表示将所述漏洞划分为n彡N类网络缺陷的 集合。
7. 根据权利要求5所述的方法,其特征在于,所述依据至少一种第二划分规则对所述 服务器和所述客户端构成的网络区域进行划分获得网络子区域集合包括: 依据所述至少一种第二划分规则中的第t种第二划分规则将所述网络区域划分为第 二集合= A.....P\.....P.U},t彡1,S彡1,p】表示依据所述第t种第二划分规则 划分所述网络区域后获得的第s+1个网络子区域,对于i、je[0,S-1]且i乒j,满足厂;'、 矣0,A门4=0,4Up:UplU...UK-i= // ; 由T个所述第二划分规则分别对所述网络区域划分后获得的第二集合构成所述网络 子区域集合P=U^1U=p(,G(t)表示依据所述第t种第二划分规则划分所述网络区域后 获得的所述网络子区域的个数。
8. 根据权利要求6或7所述的方法,其特征在于,所述网络缺陷密度包括网络子区域内 网络缺陷密度和网络子区域内设备缺陷密度; 所述依据所述网络缺陷类型集合和所述网络子区域集合获得网络缺陷密度包括: 依据所述网络缺陷类型集合Jp =Ul1UwwU=X和所述网络子区域集合P= 获得所述网络子区域内网络缺陷密度1^ = (f)),其中, Jp =Ul1Ur:F(",UL-W,P:ULU=A,%(V)用于在K范围内筛选C, 用于计算)的数量; 依据所述网络缺陷类型集合必=Ul1UywUGf和所述网络子区域集合P=IX1U= />:获得所述网络子区域内设备缺陷密度C= C(^< (A)),其中, = &,,(¥)用于在C范围内筛选< C%, (A))用于计算4 (A:)的数量。
9. 根据权利要求8所述的方法,其特征在于,所述网络安全等级包括第一网络安全等 级和第二网络安全等级; 所述依据所述网络缺陷密度获得网络安全等级包括: 依据所述网络子区域内网络缺陷密度<=+ = 获得所述第一网络安全等级
是常数。
11. 根据权利要求9或10所述的方法,其特征在于,所述网络缺陷信息还包括网络缺陷 密度分布和网络安全等级分布,所述网络缺陷密度分布包括所述网络子区域内网络缺陷 密度的分布函数和所述网络子区域内设备缺陷密度的分布函数,所述网络安全等级分布包 括所述第一网络安全等级的分布和所述第二网络安全等级的分布; 其中,所述网络子区域内网络缺陷密度的分布函数<~_所述网络子区域 内设备缺陷密度的分布函数<,=;
12. -种反向扫描代理模块,其特征在于,包括: 报文获取模块,用于获取客户端报文; 发送模块,用于将所述客户端报文发送给漏洞扫描器,以使所述漏洞扫描器依据所述 客户端报文识别所述客户端的漏洞,或者报文识别与发送模块,用于依据所述客户端报文 识别所述客户端的漏洞,并将所述客户端的漏洞发送给漏洞扫描器; 接收控制模块,用于接收所述漏洞扫描器的控制指令,并依据所述控制指令改变工作 方式和/或工作模式,以及更新漏洞规则。
13. 根据权利要求12所述的反向扫描代理模块,其特征在于,所述反向扫描代理模块 安装在服务器上; 所述报文获取模块具体用于获取所述客户端与所述服务器交互过程中所述客户端发 出的业务请求报文和应答报文;或者 所述发送模块还用于向所述客户端发送构造测试报文;所述报文获取模块具体用于获 取所述客户端对所述构造测试报文的响应报文。
14. 根据权利要求13所述的反向扫描代理模块,其特征在于,所述报文识别与发送模 块具体用于依据所述业务请求报文、所述应答报文和/或所述响应报文的特征字段识别所 述客户端的漏洞;或者通过所述业务请求报文、所述应答报文和/或所述响应报文与预设 交互报文、预设报文序列或漏洞特征规则进行匹配识别所述客户端的漏洞。
15. 根据权利要求14所述的反向扫描代理模块,其特征在于,所述报文获取模块还用 于获取所述服务器的漏洞; 所述反向扫描代理模块还包括第一网络缺陷分析模块,用于依据所述服务器的漏洞和 所述客户端的漏洞获得网络缺陷信息。
16. -种漏洞扫描器,其特征在于,包括: 接收模块,用于接收反向扫描代理模块发送的客户端报文;或者用于接收反向扫描代 理模块发送的客户端的漏洞; 报文识别模块,用于依据所述客户端报文识别所述客户端的漏洞; 指令发送模块,用于向所述反向扫描代理模块发送控制指令,以使所述反向扫描代理 模块依据所述控制指令改变工作方式和/或工作模式,以及更新漏洞规则。
17. 根据权利要求16所述的漏洞扫描器,其特征在于,所述报文识别模块具体用于依 据所述业务请求报文、所述应答报文和/或所述响应报文的特征字段识别所述客户端的漏 洞;或者通过所述业务请求报文、所述应答报文和/或所述响应报文与预设交互报文、预设 报文序列或漏洞特征规则进行匹配识别所述客户端的漏洞。
18. 根据权利要求17所述的漏洞扫描器,其特征在于,所述接收模块还用于获取服务 器的漏洞; 所述漏洞扫描器还包括第二网络缺陷分析模块,用于依据所述服务器的漏洞和所述客 户端的漏洞获得网络缺陷信息。
19. 一种漏洞扫描系统,其特征在于,包括如权利要求12-15任一项所述的反向扫描代 理模块,以及如权利要求16-18任一项所述的漏洞扫描器。
【文档编号】H04L29/06GK104506522SQ201410802136
【公开日】2015年4月8日 申请日期:2014年12月19日 优先权日:2014年12月19日
【发明者】李瀛 申请人:北京神州绿盟信息安全科技股份有限公司, 北京神州绿盟科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1