第十三章 网络安全漏洞防护原理与应用
13.1 网络安全漏洞概述
13.1.1 网络安全漏洞概述
网络安全漏洞又称为脆弱性,简称漏洞。
安全漏洞的影响:机密性受损、完整性破坏、可用性降低、抗抵赖性缺失、可控制性下降、真实性不保等。
·根据漏洞的补丁状况,可将漏洞分为普通漏洞和零日漏洞 (zero-day vulnerability) .
普通漏洞:相关漏洞信息已经广泛公开,安全厂商已经有了解决修补方案。
零日漏洞 (0 day):新发现的、尚未提供补丁的漏洞。零日漏洞通常被用来实施定向攻击 (Targeted Attacks).
攻击者成功的关键在于早发现和利用目标的安全漏洞。
·解决漏洞问题,方法有:漏洞检测、漏洞修补、漏洞预防等。

13.2 网络安全漏洞分类与管理
13.2.1 网络安全漏洞分类与管理
网络安全漏洞分类有利于漏洞信息的管理,但是目前还没有统一的漏洞分类标准。国际上较为认可的是CVE漏洞分类和CVSS漏洞分级标准。另外,还有我国信息安全漏洞分类及OWSP漏洞分类。
CVE漏洞分类。CVE是由美国MITRE公司建设和维护的安全漏洞字典。CVE给出已经公开的安全漏洞的统一标识和规范化描述,其目标是便于共享漏洞数据。如CVE-2019-1543为一个Open SSL安全漏洞编号。
CVSS:通用漏洞计分系统,分数计算依据由基本度量计分、时序度量计分、环境度量计分组成。
基本度量计分:由攻击向量、攻击复杂性、特权要求、用户交互、完整性影响、保密性影响、可用性影响、影响范围等决定。
时序度量计分:由漏洞利用代码成熟度、修补级别、漏洞报告可信度等参数决定。
环境度量计分:由完整性要求、保密性要求、可用性要求、修订基本得分等决定。
我国信息安全漏洞分类。国家信息安全漏洞库(CNNVD)漏洞分类分级标准、国家信息安全漏洞共享平台(CNVND)。
国家信息安全漏洞库(CNNVD)漏洞分类。CNNVD将信息安全漏洞划分为:配置错误、代码问题、资源管理错误、数字错误、信息泄露、竞争条件、输入验证、缓冲区错误、格式化字符串、跨站脚本、路径遍历、后置链接、SQL注入、代码注入、命令注入、操作系统命令注入、安全特征问题、授权问题信任管理、加密问题、未充分验证数据可靠性、跨站请求伪造、权限许可和访问控制、访问控制错误和资料不足。
国家信息安全漏洞共享平台(CNVND)。
根据漏洞产生原因,将漏洞分为11种类型:输入验证错误、访问验证错误、意外情况处理错误数目、边界条件错误数目、配置错误、竞争条件、环境错误、设计错误、缓冲区错误、其他错误、未知错误。
依据行业划分安全漏洞,主要分为行业漏洞和应用漏洞。行业漏洞包括:电信、移动互联网、工控系统;应用漏洞包括web应用、安全产品、应用程序、操作系统、数据库、网络设备等。
在漏洞分级方面,将网络安全漏洞划分为高、中,低三种危害级别。
OWASP TOP10漏洞分类。
·OWASP组织发布了有关Web应用程序的前十种安全漏洞。
·已发布多个版本,主要的漏洞类型有注入、未验证的重定向和转发、失效的身份认证、XML外部实体 (XXE)、敏感信息泄露、失效的访问控制、安全配置错误、跨站脚本 (XSS)、不安全的反序列化、使用含有己知漏洞的组件、不足的日志记录和监控、非安全加密存储。
13.2.2 网络安全漏洞发布
安全漏洞发布机制是一种向公众及用户公开漏洞信息的方法。及时将漏洞信息公布给用户,有利于帮助安全相关部门采取措施及时堵住漏洞,不让攻击者有机可乘,从而提高系统的安全性,减少漏洞带来的危害和损失。
安全漏洞发布一般由软硬件开发商、安全组织、黑客或用户来进行。
漏洞发布方式主要有三种形式:网站、电子邮件以及安全论坛。网络管理员通过访问漏洞发布网站、安全论坛或订阅漏洞发布电子邮件就能及时获取漏洞信息。漏洞信息公布内容一般包括:漏洞编号、发布日期、安全危害级别、漏洞名称、漏洞影响平台、漏洞解决建议等。
国内外漏洞信息来源主要有四个方面:
①网络安全应急响应机构。
②网络安全厂商。
③IT产品或系统提供商
④网络安全组织。
13.2.3 漏洞发布相关组织
CERT组织
建立于1988年,是世界上第一个计算机安全应急响应组织,主要工作任务是提供入侵事件响应与处理。目前,该组织也发布漏洞信息。
Security Focus Vulnerability Database
由 Security Focus公司开发维护的漏洞信息库,它将许多原本零零散散的、与计算机安全相关的讨论结果加以结构化整理,组成了一个数据库。
国家信息安全漏洞库CNNVD
中国信息安全测评中心 (以下简称“测评中心”)为切实履行漏洞分析和风险评估职能,负责建设运维的国家级信息安全漏洞数据管理平台,旨在为国家信息安全保障提供服务。
国家信息安全漏洞共享平台CNVD
由国家计算机网络应急技术处理协调中心联合国内重要的信息系统单位、基础电信运营商、网络安全厂商、软件厂商和互联网企业建立的信息安全漏洞信息共享知识库。
厂商漏洞信息
由厂商自己公布的其生产产品的安全漏洞信息。
13.2.4 网络安全漏洞管理过程
网络安全漏洞管理是把握网络信息系统安全态势的关键,是实施网络信息安全管理从被动向主动转变的标志性行动。网络安全漏洞管理主要包含以下环节。
·1.网络信息系统资产确认。对网络信息系统中的资产进行摸底调查,建立信息资产档案。
·2.网络安全漏洞信息采集。利用安全漏洞工具或人工方法收集整理信息系统的资产安全漏洞相关信息,包括安全漏洞类型、当前补丁级别、所影响到的资产。
·3.网络安全漏洞评估。对网络安全漏洞进行安全评估,如安全漏洞对组织业务的影响、安全漏洞被利用的可能性(是否有公开工具、远程是否可利用等)、安全漏洞的修补级别,最后形成网络安全漏洞分析报告,给出网络安全漏洞威胁排序和解决方案。
·4.网络安全漏洞消除和控制。常见的消除和控制网络安全漏洞的方法是安装补丁包、升级系统、更新IPS或IDS的特征库、变更管理流程。
·5.网络安全漏洞变化跟踪。网络信息系统是一个开放的环境,系统中的资产不断出现变化,安全威胁手段层出不穷。安全管理员必须设法跟踪漏洞状态,持续修补信息系统中的漏洞。
13.3 网络安全漏洞扫描技术与应用
13.3.1 网络安全漏洞扫描技术与应用
具有漏洞扫描功能的软件或设备,简称为漏洞扫描器(漏扫)。漏扫通过远程或本地检查系统是否存在己知漏洞。具体模块和功能介绍如下:
(1)用户界面。接受并处理用户输入、定制扫描策略、开始和终止扫描操作、分析扫描结果报告等。同时,显示系统扫描器工作状态。
·(2)扫描引擎。响应处理用户界面操作指令,读取扫描策略及执行扫描任务,保存扫描结果。
·(3)漏洞扫描结果分析。读取扫描结果信息,形成扫描报告。
(4)漏洞信息及配置参数库。保存和管理网络安全漏洞信息,配置扫描策略,提供安全漏洞相关数据查询和管理功能。
·漏扫主要分为三种:主机漏洞扫描器、网络漏洞扫描器、专用漏洞扫描器。
·主机漏洞扫描器。不需要通过建立网络连接就可以进行,通过检查本地系统中关键性文件的内容及安全属性,来发现漏洞,如配置不当、用户弱口令、有漏洞的软件版本等。主机漏洞扫描器的运行与目标系统在同一主机上,并且只能进行单机检测。【杀毒软件】
·网络漏洞扫描器。通过与待扫描的目标机建立网络连接后,发送特定网络请求进行漏洞检查。与主机漏洞扫描的区别在于网络漏洞扫描器需要与被扫描目标建立网络连接。便于远程检查联网的目标系统。但是,由于没有目标系统的本地访问权限,只能获得有限的目标信息,检查能力受限于各种网络服务中的漏洞检查,如Web、FTP、Telnet、SSH、POP3、SMTP、SNMP等。**【SuperScan、Nessus等】**
·专用漏洞扫描器:主要针对特定系统的安全漏洞检查工具,如数据库漏洞扫描器、网络设备漏洞扫描器、Web漏洞扫描器、工控漏洞扫描器。
13.3.2 网络安全漏洞发现技术
漏洞的发现方法主要有:人工安全性分析、工具自动化检测及人工智能辅助分析。
漏洞发现通常方法是将已发现的安全漏洞进行总结,形成一个漏洞特征库,然后利用该漏洞库,通过人工安全分析或者程序智能化识别。漏洞发现技术主要有文本搜索、词法分析、范围检查、状态机检查、错误注入、模糊测试、动态污点分析、形式化验证等。
漏洞修补技术:补丁管理是一个系统的、周而复始的工作,主要由六个环节组成,分别是现状分析、补丁跟踪、补丁验证、补丁安装、应急处理和补丁检查。

13.4 网络安全漏洞处置技术与应用
13.4.1 网络安全漏洞利用防范技术
针对漏洞触发利用的条件进行干扰或拦截,防止攻击者成功利用漏洞。漏洞利用防范技术:
1.地址空间随机化技术。缓冲区溢出攻击是利用缓冲区溢出漏洞所进行的攻击行动,会以 shellcode地址来覆盖程序原有的返回地址。地址空间随机化(ASLR)就是通过对程序加载到内存的地址进行随机化处理,使得攻击者不能事先确定程序的返回地址值,从而降低攻击成功的概率。
2.数据执行阻正(DEP)。操作系统通过对特定的内存区域标注为非执行,使得代码不能够在指定的内存区域运行。利用DEP,可以有效地保护应用程序的堆栈区域,防止被攻击者利用。
3.SEHOP。原理是防止攻击者利用 Structured ExceptionHandler重写。
4.堆栈保护。技术原理是通过设置堆栈完整性标记以检测函数调用返回地址是否被篡改,从而阻止攻击者利用缓冲区漏洞。
5.虚拟补丁。工作原理是对尚未进行漏洞永久补丁修复的目标系统程序,在不修改可执行程序的前提下,检测进入目标系统的网络流量而过滤掉漏洞攻击数据包,从而保护目标系统程序免受攻击。虚拟补丁通过入侵阻断、Web防火墙等相关技术来实现给目标系统程序“打补丁”,使得黑客无法利用漏洞进行攻击。
13.4.2 漏洞防护主要产品与技术指标
漏洞扫描器:利用已公开的漏洞信息及特征,通过程序对目标系统进行自动化分析,以确认目标系统是否存在相应的安全漏洞【矛与盾】。漏洞扫描产品常见的技术指标阐述如下:
(1)漏洞扫描主机数量。产品扫描主机的数量,有无IP或域名限制。
(2)漏洞扫描并发数。产品支持并发扫描任务的数量。
(3)漏洞扫描速度。产品在单位时间内完成扫描漏洞任务的效率。
(4)漏洞检测能力。漏洞知识库中是否覆盖主流操作系统、数据库、网络设备。
(5)数据库漏洞检查功能。对Oracle、MySQL、MS SQL、DB2、Sybase、PostgreSQL、Mongo DB等数据库漏洞检查的支持程度。
(6)Web应用漏洞检查功能。对SQL注入、跨站脚本、网站挂马、网页木马、CGI漏洞等的检查能力。
(7)口令检查功能。产品支持的口令猜测方式类型,常见的口令猜测方式是利用SMB、Telnet、FTP、SSH、POP3、Tomcat、SQL Server、MySQL、Oracle、Sybase、DB2、SNMP等进行口令猜测。是否支持外挂用户提供的用户名字典、密码字典和用户名密码组合字典。
(8)标准兼容性。产品漏洞信息是否兼容CVE、CNNVD、CNVD、BugTraq等主流标准,并提供CVE兼容。
(9)部署环境难易程度。产品对部署环境要求的复杂程度,是否支持虚拟化VM平台部署。
13.4.3 漏洞防护主要产品与技术指标
网络安全服务平台
漏洞盒子:专业的互联网安全测试平台。自上线至今已有很多互联网及传统厂商在漏洞盒子平台发布了安全测试的项目,上万名白帽子为这些厂商提交了非常多的高威胁性安全问题,保障了厂商业务的安全。
补天漏洞响应平台:专注于漏洞响应的第三方公益平台,通过SRC、众测等方式引导民间的白帽力量,以安全众包的形式让白帽子成员模拟攻击者发现安全问题,实现高效的漏洞报告与响应服务,协助企业树立动态、综合的防护理念,维护企业的网络安全。(360旗下)
网络威胁情报服务常以安全漏洞通报的方式提供服务。相关服务机构主要是网络安全应急响应部门、网络安全厂商等,如国家互联网应急中心CNCERT、CNCERT网络安全应急服务支撑单位、CNVD (国家信息安全漏洞共享平台)技术组成员单位、国家网络与信息安全信息通报中心技术支持单位。
网络安全漏洞防护网关:从网络流量中提取和识别漏洞利用特征模式,阻止攻击者利用目标系统的漏洞。比如:IPS、Web防火墙(简称WAF)、统一威胁管理(UTM)等。主要技术指标:
阻断安全漏洞攻击的种类与数量。产品能够防御安全漏洞被攻击利用的类型及数量。
阻断安全漏洞攻击的准确率。产品能够检测并有效阻止安全漏洞被攻击利用的正确程度。
阻断安全漏洞攻击的性能。在单位时间内,产品能够检测并有效阻止安全漏洞被攻击利用的数量。
支持网络带宽的能力。产品对网络流量大小的控制能力。