网络安全测评是网络信息系统和IT技术产品的安全质量保障。
网络安全测评是指按照一定的标准规范要求,通过一系列的技术管理方法,获取评估对象的网络安全状况信息,对其给出相应的网络安全情况综合判定,网络安全测评对象通常包括信息系统的组成要素或信息系统自身,如图。
按照测评的目标网络安全测评可分为以下三种类型:
(1)网络信息系统安全等级测评,是测评机构依据国家网络安全等级保护相关法律法规,按照有关管理规范和技术标准,对非涉及国家秘密的信息系统的安全等级保护状况进行检测评估的的活动。网络信息系统安全等级测评主要检测和评估信息系统在安全技术、安全管理等方面是否符合已确定的安全等级的要求。对于尚未符合要求的信息系统,分析和评估其潜在威胁、薄弱环节以及现有安全防护措施,综合考虑信息系统的重要性和面临的安全威胁等因素,提出相应的整改建议,并在系统整改后进行复测确认,以确保网络信息系统的安全保护措施符合相应安全等级的基本安全要求。目前,网络信息系统安全等级测评采用网络安全等级保护2.0标准。
(2)网络信息系统安全验收测评,是依据相关政策文件要求,遵循公开、公平和公正原则,根据用户申请的项目验收目标和验收范围,结合项目安全建设方案的实现目标和考核指标,对项目实施状况进行安全测试和评估,评价该项目是否满足安全验收要求中的各项安全技术指标和安全考核目标,为系统整体验收和下一步的安全规划提供参考依据。
(3)网络信息系统安全风险测评,是从风险管理角度,评估系统面临的威胁以及脆弱性导致安全事件的可能性,并结合安全事件所涉及的资产价值来判断安全事件一旦发生对系统造成的影响,提出有针对性的抵御威胁的方法措施,将风险控制在可接受的范围内,达到系统稳定运行的目的,为保证信息系统的安全建设、稳定运行提供技术参考。网络信息系统安全风险测评从技术和管理两方面进行,主要内容包括系统调查、资产分析、威胁分析、技术及管理脆弱性分析、安全功能测试、风险分析等,出具风险评估报告,提出安全建议。
依据网络信息系统构成的要素,网络安全测评可分成两大类型:技术安全测评和管理安全测评。其中,技术安全测评主要包括物理环境、网络通信、操作系统、数据库系统、应用系统、数据及存储系统等相关技术方面的安全性测试和评估。管理安全测评主要包括管理机构、管理制度、管理流程、人员管理、系统建设、系统运维等方面的安全性评估。
依据网络安全测评的实施方式,测评主要包括安全功能检测、安全管理检测、代码管理检测、代码安全审计、安全渗透、信息系统攻击测试等。
(1)安全功能检测,依据网络信息系统的安全目标和设计要求,对信息系统的安全功能实现状况就行评估,检查安全功能是否满足目标和设计要求。
(2)安全管理检测,依据网络信息系统的管理目标,检查分析管理要素及机制的安全状况,评估安全管理是否满足信息系统的安全管理目标要求。主要方法是:访谈调研、现场查看、文档审查、安全基线对比、社会工程等。
(3)代码安全审查,是对定制开发的应用程序源代码进行静态安全扫描和审查,识别可能导致安全问题的编码缺陷和漏洞的过程。
(4)安全渗透测试。通过模拟黑客对目标系统进行渗透测试,发现、分析并验证其存在的主机安全漏洞、敏感信息泄露、SQL注入漏洞、跨站脚本漏洞及弱口令等安全隐患,评估系统抗攻击能力,提出安全加固建议。
(5)信息系统攻击测试。根据用户提出的各种攻击性测试要求,分析应用系统现有防护设备及技术,确定攻击测试方案和测试内容;采用专用的测试设备及测试软件对应用系统的抗攻击能力进行测试,出具相应测试报告。测试指标包括:防御攻击的种类与能力,如拒绝服务攻击、恶意代码攻击等。
网络安全等级保护测评流程与内容如下图所示。
根据网络安全等级保护2.0标准规范,网络信息系统安全等级测评过程包括测评准备活动方案编制活动、线程测评活动和报告编制活动四个基本测评活动。
网络安全渗透测试过程可分为委托受理、准备、实施、综合评估和结题五个阶段,如图
(1)漏洞扫描
漏洞扫描常用来获取测评对象的安全漏洞信息,常用的漏洞扫描工具有网络安全漏洞扫描器、主机安全漏洞扫描器、数据库安全漏洞扫描器、Web 应用安全漏洞扫描器。其中,网络安全漏洞扫描器通过远程网络访问,获取测评对象的安全漏洞信息。常见的网络漏洞扫描工具有Nmap、Nessus、 OpenVAS。典型的主机漏洞扫描工具有微软安全基线分析器、COPS等。数据库漏洞扫描工具有安华金和数据库漏洞扫描系统(商业产品)、THC-Hydra、SQLMap等。Web应用安全漏洞扫描器有w3af(开源)、NIkto、AppScan、AWVS等
(2)安全渗透测试
安全渗透测试通过摸你黑客对测评对象进行安全攻击,以验证安全防护机制的有效性。根据对测评对象掌握的信息概况,安全渗透测试可分为三类:
- 黑盒测试:只需要提供测试目标地址,授权测试团推从指定的测试点进行测试。(初始时只知道要测试的目标是谁)
- 白盒测试:需要提供尽可能详细的测试对象信息,测试团队根据所获取的信息,制订特殊的渗透方案对系统进行高级别的安全测试。该方式适合高级持续威胁者模拟。
- 灰盒测试:需要提供部分测试对象信息,测试团队根据所获取的信息,模拟不同级别的威胁者进行渗透。该方式适合手机银行和代码安全测试。
安全渗透测试常用的测试工具有Metasploit、字典生成器、GDB、Backtrack4、Burpsuit、OllyDbg、IDA Pro等
(3)代码安全审查
代码安全审查是指按照C、Java、 OWASP 等安全编程规范和业务安全规范,对测评对象的源代码或二进制代码进行安全符合性检查。常用的代码安全检查工具有HP Fortify、FindBugs、PMD、360代码卫士等
(4)协议分析
协议分析用于检测协议的安全性。常见的协议分析工具有TCPDump、Wireshark。
TCPDump提供命令行方式,有灵活的包过滤规则,是一个有力的网络协议分析工具。TCPDump命令功能如下表。
TCPDUMP的表达式中一般有三种类型的关键字
(1)类型关键字,主要包括host、net、port
- host指明主机。
host 192.168.1.1
- net指明网络地址(网段)。
net 192.168.1.0
- port指明端口。
port 23
(注:如果没有指定类型,默认类型是host)
(2)传输方向关键字,主要包括src、dst、dst or src、dst and src,这些关键字指明坚挺的通信内容传输方向。例如:
src 192.168.1.1
src后接源地址dst net 192.168.1.0
指明目标网络- 如果没有指明方向关键字,则默认是
src or dst
关键字(3)协议关键字,指明监听包的协议内容,主要包括FDDI、IP、ARP、RARP、TCP、UDP等类型。
#tcpdump的应用非常灵活,下面举例说明
#(1)截获 1.1.1.1 主机收到和发出的所有数据包
tcpdump host 1.1.1.1
#(2)截获主机1.1.1.1 和主机 1.1.1.2 或主机 1.1.1.3的通信(在命令中使用括号时,一定要在括号前加转义字符 "\")
tcpdump host anad \(1.1.1.2 or 1.1.1.3\)
#(3)监听主机1.1.1.1 与主机1.1.1.2 之外的其它所有主机通信的IP包
tcpdump ip host 1.1.1 and 1.1.1.2
#(4)获取主机1.1.1.1接收或发出的Telnet包
tcpdump tcp port 23 host 1.1.1.1
(5)性能测试
用于评估测评对象的性能状况,检查测评对象的承载性能压力或安全对性能的影响。常用的性能测试工具有性能监测工具(操作系统自带)、Apache JMeter(开源)、LoadRunner(商业)、SmartBits(商业)等。
ISO 9000
。中国合格评定国家认可委员会(简称CNAS)负责对认证机构、实验室和检查机构等相关单位的认可工作,对申请认可的机构的质量管理体系和技术能力分别进行确认。