18.1.1 网络安全测评概念
网络安全测评是指参照一定的标准规范要求,通过一系列的技术和管理方法,获取评估对象的网络安全状况信息,对其给出相应的网络安全情况综合判定。网络安全测评对象通常包括信息系统的组成要素或信息系统自身。
18.2 网络安全测评类型
18.2.1 基于测评目标分类
按照测评的目标,网络安全测评可分为三种类型:网络信息系统安全等级测评、网络信息系统安全验收测评和网络信息系统安全风险测评。
1.网络信息系统安全等级测评
网络信息系统安全等级测评是测评机构依据国家网络安全等级保护相关法律法规,按照有关管理规范和技术标准,对非涉及国家秘密的网络信息系统的安全等级保护状况进行检测评估。
2.网络信息系统安全验收测评
网络信息系统安全验收测评是依据相关政策文件要求,遵循公开、公平和公正原则,根据用户申请的项目验收目标和验收范围,结合项目安全建设方案的实现目标和考核指标,对项目实施状况进行安全测试和评估,评价该项目是否满足安全验收要求中的各项安全技术指标和安全考核目标,为系统整体验收和下一步的安全规划提供参考依据。
3.网络信息系统安全风险测评
网络信息系统安全风险测评是从风险管理角度,评估系统面临的威胁以及脆弱性导致安全事件的可能性,并结合安全事件所涉及的资产价值来判断安全事件一旦发生对系统造成的影响,提出有针对性的抵御威胁的方法措施,将风险控制在可接受的范围内,达到系统稳定运行的目的,为保证信息系统的安全建设、稳定运行提供技术参考。
18.2.3 基于实施方式分类
按照网络安全测评的实施方式,测评主要包括安全功能检测、安全管理检测、代码安全审查、安全渗透、信息系统攻击测试等。
1.安全功能检测
安全功能检测依据网络信息系统的安全目标和设计要求,对信息系统的安全功能实现状况进行评估,检查安全功能是否满足目标和设计要求。
2.安全管理检测
安全管理检测依据网络信息系统的管理目标,检查分析管理要素及机制的安全状况,评估安全管理是否满足信息系统的安全管理目标要求。主要方法是:访谈调研、现场查看、文档审查、安全基线对比、社会工程等.
3.代码安全审查
代码安全审查是对定制开发的应用程序源代码进行静态安全扫描和审查,识别可能导致安全问题的编码缺陷和漏洞的过程。
4.安全渗透测试
通过模拟黑客对目标系统进行渗透测试,发现、分析并验证其存在的主机安全漏洞、敏感信息泄露、SQL注入漏洞、跨站脚本漏洞及弱口令等安全隐患,评估系统抗攻击能力,提出安全加固建议。
5.信息系统攻击测试
根据用户提出的各种攻击性测试要求,分析应用系统现有防护设备及技术,确定攻击测试方案和测试内容;采用专用的测试设备及测试软件对应用系统的抗攻击能力进行测试,出具相应测试报告。测试指标包括:防御攻击的种类与能力,如拒绝服务攻击、恶意代码攻击等。
18.2.4 基于测评对象保密性分类
按照测评对象的保密性质,网络安全测评可分为两种类型:涉密信息系统安全测评、非涉密信息系统安全测评。
1.涉密信息系统测评
涉密信息系统测评是依据国家保密标准,从风险评估的角度,运用科学的分析方法和有效的技术手段,通过对涉密信息系统所面临的威胁及其存在的脆弱性进行分析,发现系统存在的安全保密隐患和风险,同时提出有针对性的防护策略和保障措施,为国家保密工作部门对涉密信息系统的行政审批提供科学的依据。
2.非涉密信息系统测评
非涉密信息系统测评是依据公开的国家信息安全标准、行业标准、信息安全规范或业务信息安全需求,利用网络信息安全技术方法和工具,分析信息系统面临的网络安全威胁及存在的安全隐患,综合给出网络安全状况评估和改进建议,以指导相关部门的信息安全建设和保障工作。
18.3.1 网络安全等级保护测评流程与内容
测评主要包括技术安全测评、管理安全测评。
技术安全测评的主要内容有安全物理环境、安全通信网络、安全区域边界、安全计算环境、安全管理中心;管理安全测评的主要内容有安全管理制度、安全管理机构、安全管理人员、安全建设管理、安全运维管理。根据网络安全等级保护 2.0 标准规范,网络信息系统安全等级测评过程包括测评准备活动、方案编制活动、现场测评活动和报告编制活动四个基本测评活动。
18.4.1 漏洞扫描
漏洞扫描常用来获取测评对象的安全漏洞信息,常用的漏洞扫描工具有网络安全漏洞扫描器、主机安全漏洞扫描器、数据库安全漏洞扫描器、Web 应用安全漏洞扫描器。
全漏洞扫描器通过远程网络访问,获取测评对象的安全漏洞信息。常见的网络漏洞扫描工具有 Nmap,Nessus, OpenVAS。
18.4.2 安全渗透测试
网络安全渗透测试的过程可分为委托受理、准备、实施、综合评估和结题五个阶段。
安全渗透测试通过模拟攻击者对测评对象进行安全攻击,以验证安全防护机制的有效性。
根据对测评对象掌握的信息状况,安全渗透测试可以分为三种类型。
1.黑盒模型
只需要提供测试目标地址,授权测试团队从指定的测试点进行测试。
2.白盒模型
需要提供尽可能详细的测试对象信息,测试团队根据所获取的信息,制订特殊的渗透方案,对系统进行高级别的安全测试。该方式适合高级持续威胁者模拟。
3.灰盒模型
需要提供部分测试对象信息,测试团队根据所获取的信息,模拟不同级别的威胁者进行渗透。该方式适合手机银行和代码安全测试。安全渗透测试常用的工具有 Metasploit、字典生成器、GDB, Backtrack 4, Burpsuit, OllyDbg,IDA Pro 等。
18.4.3 代码安全审查
代码安全审查是指按照 C, Java, OWASP 等安全编程规范和业务安全规范,对测评对象的源代码或二进制代码进行安全符合性检查。 典型的代码安全缺陷类型有缓冲区溢出、代码注入、跨站脚本、输入验证、API误用、密码管理、配置错误、危险函数等。
18.4.4 协议分析
协议分析用于检测协议的安全性。常见的网络协议分析工具有 TCPDump , Wireshark 。TCPDump 提供命令行方式,提供灵活的包过滤规则,是一个有力的网络协议分析工具。
TCPDump 除了命令选项外,还支持正则表达式。
18.4.5 性能测试
性能测试用于评估测评对象的性能状况,检查测评对象的承载性能压力或安全对性能的影响。
常用的性能测试工具有性能监测工具(操作系统自带)、Apache JMeter(开源), LoadRunner
(商业产品)、SmartBits(商业产品)等。