1.1 相关术语
在信息系统安全检测与风险评估领域,涉及的常见安全术语主要有信息资产、安全威胁、安全攻击、安全弱点与安全风险等。
1.1.1 信息资产(Assets)
信息资产是攻击者的攻击目标,也是系统运维人员所守护的对象。信息系统的资产主要包括信息系统所依存的物理环境、软件、硬件、业务数据等。在一些信息安全标准与指南中,与信息系统相关的人员也被视为资产的一部分。
信息资产是信息安全检测的对象。在信息系统安全检测与风险评估的早期阶段,一般需要梳理资产清单,以便在检测阶段将资产与安全弱点进行关联,并最终参与到安全风险的计算过程中。
在进行安全检测与风险评估时,需要对信息资产进行分类。常见的资产分类包括物理环境、网络设施、系统软件、应用软件、数据和人员等。
1)物理环境主要包括机房环境及其附带的供暖通风与空气调节系统(Heating,Ventilation,Air-conditioning and Cooling,简称HVAC)等基础设施。一般而言,信息系统部署的物理环境,依赖机房部署硬件设备,依赖可靠的供电、温湿度控制等方案来保障设备的正常运行。对物理环境的安全检测主要是从其功能和性能是否满足信息系统运行的基础需求加以考虑,比如防火、防水、防静电、供电能力、温湿度调控和安全门禁等。
如果是部署在云端的信息系统,其对物理环境的要求将大为降低。
2)网络设施主要包括网络交换和互联设备,网络线缆和安全防护设备等。常见的网络交换和互联设备有集线器(Hub)、路由器、交换机和无线路由器等。常见的安全防护设备有防火墙、入侵检测系统(IDS)、入侵防御系统(IPS)、Web应用防火墙(WAF)、流量监控和清洗设备等。对网络设施的安全检测主要从其功能的完备性和安全配置层面进行。
3)系统软件主要包括操作系统软件和数据库软件。常见的操作系统软件主要有Windows系列、Linux系列和UNIX系列等。常见的数据库软件包括Oracle、SQL Server、MySQL以及一些开源的数据库。在一些分布式系统中,Web中间件(例如Apache Tomcat等)和Java EE中间件(如WebLogic等)也被视为系统软件。大多数系统软件在功能的完备性方面已经满足了安全需求。所以,对系统软件的安全检测主要从其安全配置层面进行。
4)应用软件主要是指支撑信息系统业务运行的相关软件。常见的应用软件包括电子商务系统、邮件系统、ERP系统、财务系统和OA系统等。
5)数据是信息系统运行的主要输出结果,在信息系统占有非常重要的位置。常见的数据包括生产数据、客户资料数据、财务数据、OA数据等。数据的机密性、完整性和可用性等安全属性极为敏感而重要。绝大多数针对信息系统的安全攻击主要是针对其内部数据发起的,目的是窃取数据、篡改数据或者破坏数据的可用性。为了更有效地保护数据的安全,常常对数据按照其重要性进行分类,形成不同等级的数据划分。例如,在电子商务系统中,订单和客户数据的机密性需要重点保护,而E-mail之类的日常OA数据的重要性则相对可以弱化。
6)信息系统的人员包括普通用户、管理者和运维人员等。从技术性的角度出发,为了保证信息系统的正常运行,信息系统的人员需要被授予访问信息资产的权限。例如,在基于角色的访问控制模型中,人员被赋予特定的角色,角色则直接对应一组访问信息系统资源的权限集。从管理角度出发,在人员与信息系统交互的过程中,安全意识和行为的规范性对信息系统的安全会产生重要的影响。诸多通过社会工程学发起的安全攻击,主要就是借助人员的安全弱点来实施。
1.1.2 安全威胁(Threats)
信息系统的安全威胁是指可以给信息系统资产带来安全威胁的要素。安全威胁可以分为自然性和人为性两大类。前者主要指自然界的灾难,比如地震、洪水等。后者则包括众多的人为(无意的或者有意的)因素,比如网络攻击、恶意代码等。具体而言,各类信息资产所面临的常见安全威胁如下。
1)物理环境所面临的安全威胁主要有火灾、水灾、地震、雷击、物理侵入和电力故障等。
2)网络基础设施所面临的安全威胁主要有非法接入、网络嗅探和物理性破坏等。
3)系统和应用软件资产面临的安全威胁主要有软硬件故障、网络攻击和恶意代码等。
4)数据资产面临的安全威胁包括泄密、篡改和抵赖等。
5)人员面临的安全威胁包括操作失误、越权、滥用和社会工程学等。
1.1.3 安全攻击(Attacks)
安全攻击是指攻击者利用信息系统技术和管理层面的安全弱点,针对攻击目标,使用一定的攻击方法来达到权限提升、数据窃取、数据篡改或者拒绝服务等攻击目的。
目前,关于安全攻击的类型,有多种分类方法。例如,从攻击者的介入程度出发,分为主动攻击和被动攻击;从攻击者发起攻击的位置出发,分为本地攻击和远程攻击;从攻击发生的环境出发,分为Web攻击和系统攻击等。
一些典型的安全攻击类型如下。
1)恶意代码类攻击:利用木马、蠕虫等病毒和后门等发起的攻击。
2)口令类攻击:通过暴力破解、字典攻击等手段对系统口令进行试探、猜测,从而实现非法侵入系统的攻击。
3)拒绝服务类攻击:利用协议漏洞对目标系统发起的安全攻击,诱发系统资源严重损耗,导致系统阻碍甚至拒绝其他正常的系统访问的攻击。
4)非法输入类攻击:通过精心设计的特定格式和长度的输入数据,利用缓冲区溢出、代码注入漏洞等方式发起的攻击。
5)社会工程学攻击:通过利用社交领域内人的心理行为弱点,发起的针对目标系统侵入的攻击。
6)物理类攻击:通过非法接入、网络嗅探监听、物理盗窃和物理破坏等手段发起的攻击。
高级持续性威胁(Advanced Persistent Threat,APT)是一种组合式的安全攻击,它将社会工程学、恶意代码和零日漏洞攻击等不同类型的攻击手段组合在一起,具有很强的隐蔽性和危害性。
1.1.4 安全弱点(Vulnerabilities)
安全弱点是指信息系统在需求、设计、实现、配置、运行等过程中,在其软硬件技术体系和管理体系层面无意或有意产生的缺陷或薄弱点。安全威胁结合特定的安全弱点,会给信息系统安全带来安全风险。
从信息系统的技术架构角度出发,操作系统、数据库和应用软件开发层面的BUG,都有可能会成为其安全弱点。比如在代码设计开发时,对输入缺乏安全约束,可能产生缓冲区溢出漏洞。同样,硬件研发设计不当,也会形成安全漏洞。在研究设计网络通信协议时,对于安全问题考虑不周,也会形成系统的安全弱点,给网络攻击带来机会。
从信息系统管理体系的运维角度出发,管理制度设计得不够全面,安全策略的不合理,以及人员实施过程中的过失和非法操作等,也会形成安全弱点。
大部分安全弱点可以通过及时对软硬件打补丁和安全加固等措施进行弥补,但安全弱点的产生和存在,并没有办法杜绝和全部消除。
零日漏洞攻击是一种成功率极高的安全攻击,它主要借助未被及时发现和公布的安全弱点发起,因此信息系统无法及时实施补救措施,从而对信息系统安全构成严重威胁。
1.1.5 安全风险(Risks)
信息系统的安全风险是指信息系统由于自身存在的安全弱点,在面临安全威胁时,对信息系统资产的安全属性造成损害与破坏的概率。
对于安全属性所造成的损伤与破坏,主要是从数据的机密性和完整性以及系统的可用性和可控性等层面加以度量。比如,数据的泄露、篡改,系统服务的可用性和系统根权限的窃取等。
为了有效应对安全威胁,需要对信息系统进行安全风险管理。风险管理是一个系统性过程,通常包括信息系统资产分类、安全威胁识别与赋值、安全弱点识别与赋值、安全风险的计算与评估、安全风险的控制等环节。
安全风险的控制措施主要有风险削弱、风险消除和风险转移等,目的是将信息系统面临的风险控制在可以接受的范围内。
目前,对于安全风险的度量主要有定性和定量这两类方法。定性的方法主要是将安全风险划分成不同的等级,识别并评估资产的风险等级。定量的方法则需要考虑信息资产面临安全威胁的发生概率,安全弱点的严重程度、信息资产的价值(或者资产重要程度)等因素。
1.1.6 安全措施(Safeguards)
安全措施主要是指保护信息系统以对抗安全威胁与安全攻击的信息安全过程、机制和最佳实践。这些安全措施可能部署于物理环境、网络层、软硬件系统层和人员组织管理层等信息系统的多个层面。例如,通过对通信过程进行加密,以对抗信息的泄露风险;通过部署防火墙等设备来降低被网络攻击的风险;通过部署防恶意代码软件来防范恶意代码威胁等。
在信息系统安全保障体系中,常以组合的方式来部署这些安全措施。例如,访问控制机制通常以物理安全门禁、软硬件系统的访问控制、安全审计和安全意识培训等组合形式来系统性地部署。
1.1.7 安全影响(Impacts)
安全影响指由于人为或突发性因素而引起的信息安全事件给信息系统带来的破坏。这种影响可能是某种信息资产的损毁或者其安全属性的丧失等。从经济角度出发,安全事件还可以通过估算包括财务损失、市场份额丧失或公司形象受损程度等来度量其间接影响。在估算安全影响时,安全事件发生的频率也应考虑在内。
1.1.8 安全要求(Requirements)
信息系统的安全要求主要指为了实施风险管理控制,对信息系统在技术和管理层面提出的安全要求。这些安全要求会落实为具体的安全措施,来对抗安全威胁带来的安全风险。
安全专家根据不同信息系统的安全需求及最佳实践,编制出通用性的安全要求,形成相关的信息安全技术与管理安全指南和规范。这些安全标准、指南和规范,成为日后开展信息安全评估活动的主要依据。
安全检测与风险评估涉及的安全术语之间的关系如图1-1所示。资产价值高导致风险增加、影响加重;安全威胁利用资产的安全弱点导致风险;风险的存在提出安全要求;落实安全措施可以满足安全要求、对抗安全威胁、降低安全风险。安全弱点依附资产本身存在。如果没有被相应的威胁利用,单纯的安全弱点本身并不会对资产造成损害。而且如果系统足够强健,严重的威胁也不会导致安全事件发生,并造成损失。在信息安全领域,特定威胁利用某个(些)资产的安全弱点,存在造成资产损失或破坏的潜在可能性,这就构成了风险。
图1-1 安全检测与风险评估涉及的安全术语之间的关系