操作安全是关于为保持一个网络、计算机系统、应用程序和环境运转,并运行在一个安全和受保护的方式下所发生的一切事情。它包括确保人员、应用程序和服务器仅拥有访问他们所需要的资源的权限,并通过监控、审计和报告控制实施监督。操作是在网络己开发并得到实现后才产生的。这包括一个运行环境的持续维护和那些每天或每周应该发生的行为,这些行为实际上是日常事务,确保网络和个人计算机持续、正确、安全地运行。
操作安全包括确保人员、应用程序、设备和整个环境的安全得到合理、充分的保障。操作安全包括确保人员、应用程序、设备和整个环境的安全得到合理、充分的保障。
公司和公司中的高级主管很多时候都有法律义务来确保资源是受保护的、确保安全措施是适当的,还要确保安全机制己被测试过,可以担保它们仍能提供必要的保护等级。
操作安全包括确保物理和环境问题得到适当解决,如温度和湿度控制、媒介重用、处理及包含敏感信息的媒介的销毁。
总体而言,操作安全涉及配置、性能、容错、安全性、稽核和检查管理,其目的在于确保适当的操作标准和合规性要求得到满足。
行政管理是操作安全中一个非常重要的环节。行政管理的一个方面是处理人员问题,包括职责分割和岗位轮换。职责分割(Separation of Duties)的目的是确保一个独立行动的人通过任何方法都无法危及公司的安全。组织应建立一个完整的职位列表,说明与每个职位有关的任务和责任。
岗位轮换(Job Rotation)意味着在某个公司里很多人执行同一个岗位的任务,这使得这个公司挺有不止一个人理解一个特定职位的任务和责任,这样在某个人离开了公司或不在的情况下便能提供后备人员。岗位轮换也能帮助确定欺诈行为,因此被认为是一种侦测类的控制。
最小特权(Least Privilege)和须知(Need-to^Know)也是应该在操作环境中执行的行:政类控制。最小特权意味着个人应该仅有足够的许可和权限来履行他在公司的任务而不超出范围。最小特权和须知存在共生关系,每个用户应该对他被允许访问的资源有须知。—个用户的访问权限可能是最小特权属性、用户安全许可、须知、资源的敏感级别和计算机操作的模式的混合体。强制休假(Mandatory Vacations)是行政控制的另一种类型,这与确认欺诈行为和促使岗位轮换有关。
安全和网络人员
网络管理员应努力确保网络和资源的髙可用性及性能,并为用户提供他们需要的功能。安全管理员应处在一个与网络人员不同的需求链中,以确保安全不会被忽视或处于较低的优先级。
下面列出一些应由安全管理员,而非网络管理员执行的任务:
•安装和维护安全设备与软件
•进行安全评估作为安全管理员向组织提供的一项保护服务,安全评估利用安全管理员的知识和经验确定组织系统、网络、软件和内部开发的产品中的安全漏洞。
•创建和维护用户资料,实施和维护访问控制机制
•配置和维护强制型访问控制(MAC)环境中的安全标签
•为用户设定初始密码
•检査审计日志
用户访问资源的权限必须被限制和被正当地控制,确保过度的特权不会对公司及其资源造成损害。公司设置了允许某些类型的误差或错误的最低限度,即在被认为可疑之前可以产生一定数量的这些错误。最低限度是违规行为的基线,在警报没有响之前,对于一个用户犯这些行为可能是正常的。这条基线被称为限制级(Clipping Level)。一旦超越了这个限制级,进一步的违规将被记录下来以备以后回顾。限制级、审计和监控是在主要损失出现之前发现问题的希望,并且在网络内部可能存在攻击活动时能够及时报警。
当对产品提供的可信度和安全等级进行评估时,通常操作保险(Operational Assurance)和生命周期保险(Life Cycle Assurance)都是评估的一部分。操作保险关注的是产品的体系结构及嵌入的特征和功能,当使用此产品时,这些可以使顾客持续地获得必要的安全等级。在评估过程中,检查操作保险的实例是访问控制机制、特权和用户程序代码的分离、审计和监控能力、隐蔽通道分析(Covert Channel Analysis),还有产品运行在不期望的环境下时的可信恢复。
生命周期保险是关于产品的体系结构及它是如何开发和维护的。在产品可以被认为是高度可信之前,这个产品的生命周期的每个阶段都有必须满足的标准和期望值。生命周期保险标准的实例是设计规范、限制级配置、单元和综合测试、配置管理和可信赖的分发。
当对产品提供的可信度和安全等级进行评估时,通常操作保险(Operational Assurance)和生命周期保险(Life Cycle Assurance)都是评估的一部分。操作保险关注的是产品的体系结构及嵌入的特征和功能,当使用此产品时,这些可以使顾客持续地获得必要的安全等级。在评估过程中,检查操作保险的实例是访问控制机制、特权和用户程序代码的分离、审计和监控能力、隐蔽通道分析(Covert Channel Analysis),还有产品运行在不期望的环境下时的可信恢复。
生命周期保险是关于产品的体系结构及它是如何开发和维护的。在产品可以被认为是高度可信之前,这个产品的生命周期的每个阶段都有必须满足的标准和期望值。生命周期保险标准的实例是设计规范、限制级配置、单元和综合测试、配置管理和可信赖的分发。
操作部门
操作安全包含了安全措施和对策来保护资源、信息以及保存信息和资源的硬件。它的目标是降低可能由非授权访问或滥用造成损失的可能性。
操作安全包含了安全措施和对策来保护资源、信息以及保存信息和资源的硬件。它的目标是降低可能由非授权访问或滥用造成损失的可能性。管理层负责职员的行为和责任,而IT部或开发者负责软件的配置和修改,操作部的人负责确保硬件受到保护并在预期的方式下运行。操作部门的目标通常是防止重复发生硬件问题、降低硬件故障到一个可接受的级别。网络和在其中的硬件及软件可能是复杂的和动态的。
不定期的初始程序加载(重启)
初始程序加载(Initial Program Load, IPL)是一个计算机术语,即将操作系统的内核加载到计算机的主内存中。
资产标识和管理
资产管理的概念很容易理解,它是指“了解公司拥有哪些资产。”了解硬件(包括系统和网络)和软件是否安全配置的一个先决条件,是知道环境中存在有哪些硬件和软件。资产管理包括了解和保持全面的最新硬件(系统和网络)和软件信息。
配置标准是指根据它检查实际状态的预期配置。预期配置所发生的任何变化都必须进行调查,因为这意味着要么预期配置不能保持最新,要么对环境的控制不足以防止未授权变更发生。自动资产管理工具能够将预期配置与环境的实际状态进行比较。
回到“简单”原则,最好是将支持商业需求的配置标准的数量保持在合理的范围内。变更管理,或配置管理,必须涵盖环境中发生的所有变更,以便正确维护配置标准。将配置标准的数量保持在合理的范围内有助于降低变更管理的总成本。系统控制
系统控制也是操作安全的一部分。需要制定操作规程,对如何正确操作系统或资源进行说明。这包括系统启动与关闭顺序、错误处理,以及如何从一个已知的良好来源进行恢复。操作系统并不能控制较低特权的进程直接访问硬件,这些进程通常是用户应用程序使用的进程。许多输入输出(I/O)指令被定义为特权指令,只能由操作系统内核进程执行。
可信恢复
当一个操作系统或应用程序崩溃或死机时,不应让系统处于任何类型的不安全状态。
系统重启(System Reboot)发生在系统响应一个内核(可信计算基础)故障并通过一种可控的方式关闭系统之后。
紧急系统重启(Emergency System Restart)发生在一个系统故障以不受控制的方式出现之后。
当发生一个意外的内核或媒介故障,而通常的恢复程序又不能将系统恢复到一个更协调的状态时,就应该釆用系统冷启动(System Cold Start)。
系统崩溃后:进入单用户模式—-修复问题并恢复文件—确认关键的文件和操作,管理员必须根据系统文档检验系统配置文件的内容。。
安全关注
引导顺序(C:、A:、D:)不得用于重新配置
不应阻止将行动写入系统日志中
应禁止系统被迫关闭
应禁止输入变更路线
输入与输出控制
应用程序本身也应该被编程为只接收某种类型的输入值,并且对收到的输入值进行某种类型的逻辑检测。
系统强化
既不能放弃又不能禁用的组件,必须用最保守的设置进行配置,使得系统仍然能够高效运行,满足那些在环境中需要使用系统的商业目标。
配置管理
每个公司都应该有一套策略来指示如何在一个设备上进行变更、谁能做这些变更、它们如何被批准,还有这些变更如何归档和传达给其他职员。变更可以发生于网络配置、系统参数、应用程序、加入新技术的设置、应用配置、设备或者修改工具的环境设备。一些变更可能引起一个严重的网络混乱并影响系统的可用性,这意味着变更必须经过仔细考虑、被批准,并且需要通过有组织的方式执行。
变更控制流程
—个良好的变更管理过程应该尽量协助全体成员适应环境的诸多改变。
变更策略的一部分
请求一个变更发生
变更的批准
变更的文档
测试和提交
实施
提交变更报告给管理层
在对系统或网络实施变更前,操作部门应创建经过批准的还原计划(Backout Plan)
媒介控制
媒介应该被明确地标记和记录,应该核实它的完整性,并且在必要的时候应该可以正常销毁。清洗媒介(清除其中的内容)的过程叫做“洗带”(Sanitize)。在军事/政府机构使用的分级系统中,这是指清除媒介上的信息,使得常规操作系统命令或商业取证/数据恢复软件无法重新恢复这些信息。“消磁”(Purging)是指删除媒介上的信息,这些信息即使在实验室中通过物理取证的方法也无法恢复。如果媒介从允许访问媒介上的信息的物理环境中删除,或者将在一个不同的区段重复使用,这时就需要进行消磁。给媒介洗带有各种方法:归零(Zeroization),是用某种方式覆写媒介,确保它以前保存的数据几乎不可能被恢复)、消磁(破坏磁带或磁盘上表示保存有信息的磁条),及破坏(打碎、粉碎、烧毁)。使用归零和安全的覆写算法来删除数据。而且,如果包含有高度敏感的信息的媒介的任何一个部分无法被清除或消磁,那么就必须对它进行销毁。数据剩磁(Data Remanence)是那些保存后以某种方式清除的信息的剩余部分的物理表示法。这些剩磁足够使数据重组并恢复到可读的形式。
数据泄露:由于疏忽而导致的数据泄露最主要是由于转移信息不恰当引起的。
网络和资源可用性
在网络服务的三个要素中,可用性是其中一个基本组成部分,其他两个为机密性和完整性。
同时,组织还必须选择设备备份解决方案和其他可用性解决方案来平衡保持信息可用性的价值与成本。
•准备进行“热交换”(HotSwapping)的备用硬件通过提供多个信息(镜像)副本或足量的额外信息,以在局部损失时重建信息,从而保护高度的信息可用性。热交换允许管理员替换出现故障的组件,使系统继续运行,信息仍然有效;虽然系统性能往往因此降低,但却避免了无法预料的系统中断。
•容错技术在防止个体存储设备故障甚至是整个系统故障的同时,保证了信息可用性。容错技术可能是最昂贵的解决方案,通常组织只对最关键的信息采用这种技术。
•服务等级协议(SLA)有助于服务提供商(无论是内部IT运营商还是外包商)决定采用哪种可用性技术。组织可以根据这个决定设定服务价格或IT运营预算。
•确保信息可用性还需要制定稳健的操作规程。
平均故障时间(MTBF):MTBF指某一台设备的估计寿命。
平均修复时间(MTTR):平均修复时间指修复一台设备并使其重新投入生产预计所需的时间。
对于划外的重启,MTTR是指系统发生故障,直到操作系统已经重新启动、检查了它的磁盘状态 (希望找不到文件系统无法处理的故障)、重启它的应用程序、应用程序已经检查了数据的一致性(希望找不到日志无法处理的问题),并再一次开始处理事务的这段时间。MTBF较高的设备一般价格也更髙。不能接受故障的系统需要使用冗余组件。不能接受中断的系统,或者那些由于冗余组件出现故障并进行替换而风险不断增加的系统,可能需要容错功能。
单点故障
廉价磁盘冗余阵列(RAID)为硬盘提供容错功能并且能够改善系统性能。必须始终有效的信息——也就是说,那些MTTR必须基本为零、无法接受性能大幅降低的信息——必须制作镜像或进行双控。在镜像(也称作RAID 1)和双控(Duplexing)过程中,每一个写入数据的操作都在几个物理位置同时或几乎同时发生。镜像和双控之间的区别在于,使用镜像时,写入数据的两个(或多个)物理位置需要依赖同一个控制器,因而存储仍然会受到控制器本身的单点故障影响;而双控则使用两个或几个控制器。镜像和双控可以在几个彼此存在一定距离的存储设备之间进行,从而提供一定程度的容灾(Disaster Tolerance)能力。
直接访问存储设备
廉价磁盘冗余阵列(RAID)就是一种DASA。直接访问和顺序访问存储设备之间的主要差别在于,在直接访问存储设备时,任何位置都可以立即到达;而顺序访问存储设备则需要穿越当前位置与目标位置之间的距离才能到达目标位置。磁带驱动器属于顺序访问存储设备,顺序访问存储设备与直接访问存储设备之间的性能仍然存在几个数量级的差别。
RAID
廉价磁盘冗余阵列(RAID)是一种用于冗余和性能改善的技术。它把几个物理磁盘组合起来,并将它们合并成逻辑阵列。在保存数据时,把数据写入所有磁盘。对应用程序和其他设备来说,RAID就像是一个单独磁盘驱动器。在所有磁盘上写入数据时,系统使用分储(Striping)技术。它将数据划分开来,写到几个驱动器上。使用这种技术,写入性能并未受到影响,但读取性能得到显著提高,因为同时有几个磁头在提取数据。各种RAID级别规定在RAID系统内发生的活动类型。一些级别只处理性能问题,而其他一些级别则处理性能和容错问题。如果一个RAID级别提供容错服务,那它就要用到奇偶校验。如果一个驱动器发生故障,则主要由奇偶校验提供指令,告诉RAID系统如何在新硬盘上重建丢失的数据。奇偶校验被用来重建一个新驱动器,以恢复所有信息。多数RAID系统都有一个热切换(Hot-Swapping)磁盘,表示它们可以在系统运行时更换驱动器。更换或增加一个驱动器时,系统使用奇偶校验数据在刚刚增加的新磁盘上重建数据。
大规模非活动阵列
大规模非活动磁盘阵列(MA1D)是一种最近才进入中型存储设备市场(数百兆兆位)的产品。MAID的适用范围相对特殊(可能非常广泛),它支持存储数百兆兆位的数据,但主要执行写入操作。较小的存储要求通常不适于采用MAID,因为这样会増加购置成本和操作复杂性。至于需要大量写入操作的最高端的存储要求,磁带驱动器仍然是最经济的解决方案,因为磁带存储每单元的成本较低,而且随时需要保持在线的总媒介量也较少。在MAID中,安装在机架上的磁盘阵列要断开所有非活动的磁盘的电源,只有磁盘控制器处于活动状态。
独立冗余磁盘阵列(RAIT)
RATT与RAID类似,但它使用磁带驱动器而非磁盘驱动器。在保存大量数据时,磁带存储的成本最低,但与磁盘存储相比,它的速度更慢。RAIT适用于使用MAID,并不划算且需要比传统的磁盘存储更高性能的、非常大型、以写入操作为主的存储应用。
与RAID 1—样,在RAIT中,数据被平均分散到几个磁带驱动器上,并使用或不使用—台冗余奇偶校验驱动器。这样做可以传统磁带存储的低成本实现较高的容量,而且其数据传输速率比平常的磁带更快,数据完整性更优。
存储局域网络(SAN)
存储区域网络(SAN)包含大量存储设备,它们由一个高速专用网络和存储专用交换机连接起来。这形成了一种结构,允许用户依附于一个透明的模式并与之交互。
集群
集群(Clustering)是一种类似于冗余服务器的容错服务器技术,其中的每台服务器参与提供所需的处理服务。服务器集群由一组服务器构成,用户可以把它们逻辑地看作一台服务器,并可将它当作一个单独的逻辑系统来管理。集群提供可用性和可扩展性。它把物理配置各不相同的系统集中起来,将它们进行逻辑组合,从而提供容错功能,同时改善性
能。集群工作起来就像是一个平衡流量的智能单元,访问集群的用户并不知道他们是在访问不同的系统。对用户而言,集群中的所有服务器都被看作是一个单元。如果集群内的一个系统发生故障,由于剩下的系统接管了负载,虽然性能可能会降低,但处理过程不会中断。集群是使用冗余服务器的逻辑产物。集群不仅仅能够提供可用性。它还可以实现负载平衡(每个系统承担一部分处理工作)、冗余和故障切换(如果一个系统出现故障,其他系统继续工作)。
网格计算
网格计算(Grid Computing)是另一种负载平衡的大规模并行计算方法,它类似于集群,但使用的是可随机加入和离开网格的松散耦合的系统。虽然这听起来类似于集群,但在集群中,有一个中央控制器负责向用户和集群节点分配资源,集群中的节点(在同一个信任域中)进行集中管理;而在网格计算中,节点并不彼此信任,也不进行集中控制。需要在多个工作负载单元之间进行协调调度的应用程序。这意味着敏感数据不应通过网格进行处理,同时这种技术也不适用于对时效性要求较高的应用程序。网格计算更适用于财务建模、天气建模和地震模拟等项目。以上每一个项目都包含数量宏大的变量和输入,需要继续进行计算。
备份:软件备份和硬件备份设备是网络可用性的两个主要组成部分。
分级存储管理(HSM)
分级存储管理(Hierarchical Storage Management, HSM)提供持续的在线备份功能。它将硬盘技术与更低廉、更缓慢的光盘或磁带库结合起来。HSM系统可对复制到速度和成本各不相同的存储媒介设备中的文件的存储和恢复进行动态管理。如果一个用户或应用程序访问这个存根,HSM就使用存根中的信息找到文件的具体位置,然后将它还原,送交给用户。
应急计划
在发生事故时,仅仅知道如何从备份中恢复数据是不够的。我们还必须了解一些详细规程,它们说明保持系统可用性、确保操作和处理不会中断所需采取的活动。应急管理定义在事故过程中和事故之后应做的事情。为应付紧急事件、保持操作连贯性及处理重要中断而需要釆取的行动必须记录在案,并让操作员工能够随时获取。这份文档应至少保留三份:在现场保留原件和一个副本,并在某个异地场所保留一份防火的保护性副本。应急计划只有在测试后才能信任。BCP说明如何在灾难发生后保证组织的正常运作。应急计划则处理不能称之为灾难的小型事故,包括电源中断、服务器故障、因特网通信连接中断或软件错误。
大型机
大型机具有高可靠性和髙可用性的特点,这并不是基于它们的硬件体系结构,而是因为它们采用非常保守(因而非常昂贵)的工程实践。大型机处理得到的结果往往比常用的服务器和非定制软件更加准确。鉴于这种可靠性,大型机更适用于满足必须始终保持有效的关键数据需求。大型机的可靠性的另一个好处叫在于他们不需要经常维护。用户界面是大型机与中等规模的系统或PC之间的另外一个主要不同。今天,大型机仍然还是进行批处理而非运行交互式的程序;而且,虽然这种做法正逐渐减少,但它们有时仍然通过远程作业登录(RJE)从一个大型机终端那里批量接受用户工作。大型机还首次实现了对虚拟化的工业规模级利用,允许将一台“单一”大型机(其中可能包括几组内存、存储器和CPU,今天甚至可以动态添加)当作几台独立的计算机使用,且可在它们的几个操作环境之间实现完全隔离,并根据系统管理员的决定共享物理大型机的总体资源。
超级计算机属于一类特殊的大型机。它们在体系结构方面存在许多相似之处,但大型机主要为执行数量极其庞大的常规处理而设计,超级计算机则为进行非常复杂的中央处理(它也需要大型机体系结构的强大I/O能力)而制造。大型机的几个处理器能够平衡数量。
传真安全
—些公司使用传真服务器,这是管理流入和流出的传真文档的系统。当传真服务器收到一条传真时,它会正确地路由此传真到它指向的某个人,因此它实际上不会被打印而是保持一种电子的形式。通常收到的传真被路由到接收者的电子邮箱中。
传真服务器让很多用户将文档从他们的计算机中传送到传真服务器中,这样不需要将文档通过一个传真设备的扫描器。这减少了需要完全被销毁的敏感文档的数
在要求高安全等级的环境中,打印特性可能会被禁用,因此敏感的文档只能由己认证的用户存储和浏览,而不会被打印。
广泛的日志记录和审计可用于传真服务器,在需要这个安全等级的公司中应该得到实施和监控。
Loki攻击是今天常用的一种隐蔽通道,使用ICMP协议进行通信。
漏洞测试
测试的目标包括:
•评估一个环境的真实安全状况(如前所述,并非错误瞀报)。
•确定尽可能多的漏洞,对每个漏洞进行公正的评估并排定优先次序。
•测试系统如何应对某些情况和攻击,不仅了解己知的漏洞(数据库和操作系统的版本、一个没有设置密码的用户ID),并且了解环境中的特殊元素如何被滥用(SQL注入攻击、缓冲区溢出及易于遭受社会工程攻击的进程设计缺陷)。
每一种方法可以揭示环境中存在的不同种类的漏洞,每一种方法所能提供的结果的完整性也存在一定限制。人员测试包括检查员工的任务,从而确定要求员工遵循的标准实践和规程中存在的漏洞,漏洞测试包括审查设施和边界保护机制。
由于安全评估是环境安全状况的时间点快照,因此评估应定期进行。优先级较低、保护较为完善、风险较小的环境区域可以一年扫描一到两次。高优先级、更加脆弱的目标,如电子商务Web服务器组以及它们后面的中间件,应几乎持续进行扫描。
渗透测试
渗透测试(Penetration Testing)是指应所有者-高级管理层-的要求模拟攻击一个网络及其系统的过程。渗透测试应用一组专门进行测试及可能绕过系统安全控制的程序和工具。它的目的是评估组织抵抗某种攻击的能力,以及暴露环境中存在的任何弱点。
渗透测试能够评估Web服务器、DNS服务器、路由器配置、工作站脆弱性、敏感信息访问、远程拨号访问、开放端口,以及真正的攻击者可能用来危害公司整体安全的有效服务属性。一些测试可能具有很强的破坏性和干扰性,因此应该使这些测试的时间保持一致,以使公司的生产力不会受到影响,工作人员在必要时可以使系统重新上线。
渗透测试的结果应以报告的形式提交给管理层,其中应说明确定的脆弱性和这些脆弱性的严重程度,并就如何处理这些脆弱性提出合理的建议。管理层则应根据这个报告决定处理方法和应对措施。
在授权进行渗透测试前,高级管理层应意识到测试中可能包含的风险,这点极为关键。极少数情况下,使用测试工具和技巧的系统或应用程序可能会发生意外故障。本来,渗透测试的目的是确定脆弱性,评估环境中安全机制提供的真正保护,以及了解如何报告可疑活动——但意外事故可能也确实会发生。
安全专家应获得包含所授权测试的范围的授权书。在测试活动中,测试团队成员需要使用这份授权书或备忘录。这份授权书通常叫做“免死金牌”。授权书中还应包括关键人员的联系信息和一个电话列表,以便在出现意外情况和需要恢复系统的时候使用。
在执行渗透测试时,测试团队完成5个步骤:
1.发现搜集和收集目标信息。
2.枚举执行端口扫描和资源识别方法。
3.脆弱性映射在确定的系统和资源中识别脆弱性。
4.利用尝试利用脆弱性进行未授权访问。
5.向管理层报告向管理层提交测试结果报告文件,并提供应对措施建议。
对一个环境进行安全测试可以采取不同的方式,既可以基于测试员对环境的了解程度,也可以基于环境对测试员的了解程度测试还应在外部(从一个远程地点进行测试)或内部进行(指测试员在网络中进行测试)。组织应全部进行这两种测试,以了解任何一个领域(内部和外部)的威胁。
测试可能是盲目、双盲或有针对性的。盲目测试(BUndTest)是指评估者只能利用公开的数据。网络人员知道将进行这种测试。
双盲测试(Double-Blind Test,也叫隐蔽评估)对评估者而言也是一种盲目测试(如前所述),只是安全人员不会收到测试通知。因此,这种测试能够评估网络的安全等级以及员工的响应能力、日志监控和上报流程,更加现实地说明了某起攻击的成功或失败几率。
针对性的测试(TargetedTest)是指由外部顾问和内部员工共同对特别感兴趣的区域进行集中测试。
事后检查
公司应制定一个监督计划,确保减轻风险的工作按预期进行,并根据每一种减轻风险的行为的预计成本紧密追踪实际的执行成本。