网络安全信息系统脆弱性 (脆弱性评估缓解措施)

本文摘自CISSP官方学习指南第八版

1.评估和缓解安全漏洞

1.1 硬件

  • CPU 中央处理器 (Central Processing Unit)是计算机神经中枢。
  • 执行类型(Execution Types) :

- 多任务 ,

- 多核

- 多处理 SMP Symmetric Multiprocessor,对称多处理 : 以极高的速率处理简单操作

Massively Parallel Processing,大规模并行处理 :非常适合处理庞大、复杂和计算密集的任务,这些任务适合分解并分配到多个子任务进行处理。

-多程序 它由操作系统协调,在单个处理器上模拟同时执行两个任务,达到提高操作效率的目的。

多程序设计和多任务处理有两个主要区别:

  1. 多程序设计通常在大型系统(如大型机)上使用,而多任务处理则在个人计算机(PC)操作系统(windows或linux)上使用。
  2. 多任务通常由操作系统协调,而多程序设计需要编写专门的软件,这种软件通过操作系统协调自己的活动和执行。

- 多线程,允许在单一进程中执行多个并发任务。多线程允许多个任务在单一进程中运行。多线程通常用于多个活动进程之间频繁上下文切换消耗过多开销且效率降低的应用程序。

  • 处理类型

- 单一状态,系统需要使用策略机制来管理不同级别的信息。

- 多状态,系统能够实现更高级别的安全性。

  • 保护机制, 运行中的计算机在运行时实现和处理安全性的方式可以大致描述为保护机制的集合。

保护机制的描述:

1. 保护环

从安全角度看,保护环将操作系统中的代码和组件组织成同心环。环模本质在于优先级、特权和内存分段。环模型使操作系统能够保护和隔离自己,免受用户和应用程序的影响。

网络安全脆弱性小视频,网络安全脆弱性检测费用

  • 进程状态,也称为操作状态。进程状态时进程可能在其中运行的各种执行形式。
  • 就绪状态,进程准备在被调度执行时立刻恢复或开始处理。
  • 等待状态,该过程以及准备好继续执行但在它可以继续处理之前需要等待设备或访问请求(某种中断)提供的服务。
  • 运行状态,运行中的进程在CPU上执行并持续运行,直到完成,时间片到期或者由于某种原因而被阻塞。
  • 监管状态,当进程必须执行需要大于问题状态特权集的特权操作时,才使用监督状态,包括修改系统配置,安装设备驱动程序或修改安全设置。基本上,在用户模式(环3)或问题状态中未出现的任何功能都会在监督模式中执行。
  • 停止状态,当进程完成或必须终止时,它将进入停止状态。此时,操作系统将收回分配给该进程的所有内存和其他资源,并根据需要重新分配给其他进程使用。

网络安全脆弱性小视频,网络安全脆弱性检测费用

  • 安全模式,need to know,知其所需。在部署安全模式之前,必须存在三个特定元素。

1. 分层的强制访问(MAC)模式

2. 对可以访问计算机控制台的主体的完全物理控制

3. 对能进入计算机控制台同一房间的主体的完全物理控制

  • 专用模式,基本上等同于”单一状态系统“,专用系统的用户有下列三个要求:

1. 每个用户必须具有允许访问系统处理的所有信息的安全许可。

2.每个用户必须拥有系统处理的所有信息的访问批准。

3.每个用户必须有对系统处理的所有信息具有”知其所需“权限。

  • 系统高级模式,用户必须满足以下要求

1. 每个用户必须具有允许访问系统处理的所有信息的有效安全许可。

2. 每个用户必须拥有系统处理的所有信息的访问批准

3. 每个用户必须对系统处理的某些信息具有有效的”知其所需“权限,但不要求对系统处理的所有信息都具有有效的”知其所需“权限。

专用模式和系统高级模式的主要区别在于,

在系统高级模式中,所有用户不必对计算设备上处理的所有信息都具有”知其所需“权限。因此,尽管同一用户既可以访问专用模式系统也可以访问系统高级模式系统,但该用户可以访问前者的所有数据,而对后者的一些数据的访问却受到限制。

  • 分隔模式,

1. 每个用户必须具有允许访问系统处理的所有信息的有效安全许可。

2. 每个用户必须具有他们将在系统*访上**问的任何信息的访问批准

3. 每个用户必须具有他们将系统*访上**问的所有信息的有效的”知其所需“权限。

分隔模式系统和系统高级模式系统之间的主要区别:分隔模式系统的用户不一定具有对系统上所有信息的访问批准。

系统高级模式和专用系统的相同之处在于:系统的所有用户仍必须具有适当的安全许可。

在一种称为分隔模式工作站(Compartmented Mode Workstations,CMW)的模式的特殊实现中,具有必要许可的用户可同时处理多个分隔区中的数据。

CMW要求在客体上设置两种形式的安全标签:敏感度级别和信息标签。

敏感度级别描述了必须在什么级别保护客体。敏感度级别在所有四种模式中都很常见。

信息标签,可防止数据过度分类并将附加信息与对象相关联,着有助于正确和准确地标记与访问控制无关的数据。

  • 多级模式,也称受控安全模式

1. 某些用户不具有访问系统所处理的全部信息的有效安全许可,因此,通过检查主体的许可级别是否能控制客体的敏感性标签来控制访问

2.每个用户必须对系统上要访问的所有信息都具有访问批准。

3.每个用户必须对系统上要访问的所有信息都具有一个有效的“知其所需”权限。

根据所需的安全许可,“知其所需”权限以及处理来自多个许可级别的数据(Process Data from Multiple Clearance Levels,PDMCL)的能力。

网络安全脆弱性小视频,网络安全脆弱性检测费用

操作模式:处理器本身支持两种操作模式,用户模式和特权模式。

用户模式:用户模式是CPU在执行用户应用程序时使用的基本模式。在此模式下,CPU只允许执行其全部指令集中的部分指令。这样做是为了防止用户由于执行设计不当的代码或无意误用该代码而意外损害系统。它还可以保护系统及其数据免受恶意用户的攻击。

通常,用户模式内的进程在称为虚拟机(VM)的受控环境中执行。

特权模式:CPU还支持特权模式,该模式旨在使操作系统能访问CPU支持的所有指令。此模式有许多名称:

1. 特权模式

2.监管模式

3.系统模式

4.内核模式

这些模式给在CPU上执行的进程授予了广泛权限。因此,设计合理的操作系统不会允许任何用户应用程序在特权模式下执行。出于安全性和系统完整性的目的,只有那些作为操作系统本身组件的进程才能在特权模式下执行。

存储器(Memory)

1.只读存储器(ROM),是可以读取但不能更改的内存(不允许写入)。标准ROM芯片的内容在工厂里“烧入”。最终用户根本无法改变它。ROM芯片通常包含“引导”信息,是计算机在从磁盘加载操作系统前用于启动的信息。引导信息包括每次启动PC时都会运行大家熟悉的开机自检(Power-On Self-Test,POST)系列诊断程序。

2.可编程只读存储器(Programmable Read-Only Memory,PROM)PROM通常用于需要某些定制功能的硬件应用程序,但一旦编程完成就很少改变。

3.可擦除可编程只读存储器,EPROM,紫外线照射可擦除芯片上的内容。

4.电可擦除可编程只读存储器,它使用传递到芯片引脚的电压来强制擦除。

5.闪存,是一种非易失性存储介质。可通过电子方式擦除和重写。NAND闪存是最常见的闪存类型,它广泛用于存储卡、优盘、移动设备和SSD。

6.随机存储器Random Access Memory,RAM,是可读写存储器。包含计算机在处理过程中使用的信息。RAM仅在持续供电时才能保存其内容。

7.实际存储器,实际内存(也称为主内存)通常是计算机可用的最大RAM存储资源。它通常由许多动态RAM芯片组成,因此必须由CPU定期刷新。

8.高速缓存RAM,计算机系统包含许多缓存,当存在重复使用的可能时,这些缓存通过从较慢的设备获取数据将其临时存储在更快的设备中来提高性能,这就是缓存RAM。

9.寄存器(Registers),CPU还包含数量有限的板载存储器,称为寄存器。它 为算术逻辑单元(CPU的大脑)在执行计算或处理指令时,提供可直接访问的存储位置。

10.存储器寻址(Memory Addressing),使用内存资源时,处理器必须具有一些引用内存中各个位置的方法。该问题的解决方案称为寻址,并在不同情况下存在多种不同的寻址方案。下面时常见的寻址方案:

  • 寄存器寻址,寄存器是直接集成在CPU中的较少的存储位置。当CPU需要来自某个寄存器的信息进行操作时,它使用寄存器地址来访问其内容。
  • 立即寻址,本身并不是存储器寻址方案,而是一种数据引用方式,其将数据作为指令的一部分提供给CPU。
  • 直接寻址,要访问的存储器位置的实际地址会提供给CPU。此地址必须与正在执行的指令位于相同的存储器页面上。
  • 间接寻址,作为指令的一部分提供给CPU的存储器地址并不包含CPU用作操作数的实际数值。指令中的内存地址所指内存中包含另一个内存地址。CPU读取间接地址来确定所需数据驻留的地址,然后 从该地址读取得实际得操作数。
  • 基址+偏移量寻址,使用存储在CPU得某个寄存器中的数值作为开始计算的基地址。然后CPU将随指令提供的偏移量与该基地址相加,并从计算出的内存位置取得操作数。
  • 辅助存储器,通常指磁性,光学或基于闪存的介质,或其他存储设备,包含CPU不能直接获得的数据。为了访问辅助存储器中的数据,必须首先由操作系统读取数据并将其存储在实际内存中。

虚拟内存也是一种特殊类型的辅助内存,由操作系统管理,可使其像真实内存一样。

存储器的安全问题:

控制在计算机使用过程中谁可以访问存储在存储器中的数据。

存储设备(Storage):

数据存储设备(storage)。这些设备用于存储计算机在写入后随时可使用的信息。

主存储设备与辅助存储设备:主存储设备 -- 是计算机用于在运行时保存CPU可用的必要信息的RAM。

辅助存储设备 -- 包括所有熟悉且每天都使用的长期存储设备。(HDD,SSD,CD,DVD,闪存卡)

易失性存储设备与非易失性存储设备: 衡量断电后,其丢失数据的可能性。

随机存取与顺序存取:几乎所有主存储设备都是随机存取设备。大多数辅助存储设备也是随机存取设备。

磁带驱动器是顺序存储设备。

顺序存储设备的存取速度比随机存取存储设备慢得多。

存储介质的安全:

  • 即使在数据被删除后,数据仍可保留在辅助存储设备上。这种情况称数据残留。
  • 固态硬盘SSD在净化方面有一个独特问题。传统的零擦除作为SSD的数据安全措施是无效的。
  • 辅助存储设备还很容易被盗。
  • 访问存储在辅助存储设备上的数据,是计算机安全专业人员面临的最重要的问题之一。
  • 由于可用性也是安全三要素之一,因此必须选择能够在所需时间长度内保留数据的介质。

输入和输出设备:

显示器:最大风险仍然是肩窥或是相机上的长焦镜头。

打印机:打印机的闪存或磁性介质,或存储硬盘,网络打印。

键盘、鼠标:无线键盘鼠标,被拦截获取通信信号。

调制解调器:配置不当带来风险,安全漏洞等。

1.2 固件

固件(Firmware)在某些领域中也称微码,是用于描述存储在ROM芯片中的软件术语。

  1. BIOS和UEFI

恶意代码嵌入BIOS固件事件。

2. 设备固件

2.基于客户端的系统

基于客户端的漏洞会使用户及其数据和系统面临攻击和破坏的风险。

2.1 applet

applet实际上使独立的微型程序,这些程序的执行独立于发送他们的服务器。服务器把计算请求发送给客户端,好处是:

  • 处理压力被转移到客户端,释放Web服务器上的资源且可以处理更多来自用户的请求
  • 客户端可使用本地资源生成数据,而不必等待远程服务器的响应。
  • 在设计合理的applet中,Web服务器不会接收作为输入提供给小程序的任何数据,因此可维护用户财务数据的安全性和隐私性。

Applet实例,Java applet 和 ActiveX 控件。

2.2 本地缓存

本地缓存是临时存储在客户端上以供将来重复使用的任何内容。

ARP毒化(ARP缓存),中间人攻击(DNS缓存)。Internet文件缓存,

3.基于服务端的系统

基于服务端(可能也包括客户端)的系统安全,关注的重要领域是数据流控制的问题。数据流是进程之间、设备之间、网络之间或通信通道之间的数据移动。

负载均衡器用于在多个网络链路或网络设备之间传播或分配网络流量负载。

拒绝服务(Denial of Service , DoS)攻击可能对数据流控制造成严重危害。

4.数据库系统安全

数据库安全性是任何使用大量数据作为重要资产的组织的重要组成部分。如果没有在数据库安全方面所做的工作,可能会导致业务中断并泄露机密信息。必须了解与数据库安全性相关的几个主题,

聚合、推理、数据挖掘、数据仓库和数据分析。

4.1 聚合

SQL提供了许多函数,这些函数可将一个或多个表中的记录组合在一起,以生成可能有用的信息。此过程称为聚合(Aggregation),聚合也有安全漏洞。聚合攻击用来收集大量较低安全级别或较低价值数据项,并将它们组合在一起以生成具有更高安全级别或有价值数据项。

严格控制对聚合函数的访问并充分评估它们可能向未授权的人披露的潜在信息,对于数据库安全管理员来说非常重要。

4.2 推理

推理(Inference)攻击造成的数据库安全问题与数据聚合威胁造成的问题类似。推理攻击指 组合若干非敏感信息以获取本应该属于更高分类级别的信息。

针对推理攻击的最佳防御措施是对授予单个用户的权限始终保持警惕。此外,也可故意混淆数据来防止敏感信息的推理。

4.3 数据挖掘和数据仓库

数据挖掘技术允许分析人员搜索数据仓库并寻找潜在的相关信息。数据挖掘技术导致了数据模型的开放,数据模型可用于预测未来的活动。

数据挖掘活动产生元数据,元数据是关于数据的数据或关于信息的数据。

元数据的一个常见安全示例是安全事件报告。

数据仓库包含大量易受聚合和推理攻击的潜在敏感信息,安全从业者必须确保有足够的访问控制和其他安全措施来保护这些数据。数据挖掘用于“搜索“与安全相关的大量数据,以查找可能表明正在进行攻击、损害或破坏的异常事件。

4.4 数据分析

数据分析是检查原始数据的科学,其重点是从大批量信息集中提取出有用信息。是大数据的昵称。

4.5 大规模并行数据系统

并行数据系统或并行计算是一种设计用于同时执行大量计算的计算系统。并行数据处理可通过使用不同CPU或多核CPU,使用虚拟系统或它们的任意组合来完成。

在多处理或并行处理的领域内有几个部分:

  • 非对称多处理(AMP),处理器通常彼此独立地工作。每个处理器都有自己的OS和或任务指令集。处理器可配置为仅执行特定代码或对特定任务进行操作。(或者允许特定代码或任务仅在特定处理器上运行,在某些情况下可能称为亲和性)
  • 对称多处理(SMP),每个处理器共享一个公共的操作系统和内存。处理器集合还可在单一任务、代码或项目上共同工作。

AMP的一种变体是大规模并行处理(MPP),其中许多SMP系统被链接在一起,以便在多个链接系统中的多个进程上处理单一主任务。现代MPP通常在同一芯片上实现。

大规模并行数据管理可能是管理大数据的关键工具,通常设计云计算、网格计算或对等计算解决方案。

5.分布式系统和端点安全

客户端、服务器模型网格的概念也称为分布式系统或分布式体系结构。因此,安全性必须在所有地方解决,而不是只在单个集中的主机上。从安全角度看,这意味着由于处理和存储分布在多个客户端和服务器上进行,因此必须妥善地保障和保护所有这些计算机。还意味着客户端和服务器之间的网络链接也必须受到保障和保护。

客户必须遵守对其内容和用户活动实施保护的政策,包括:

  • 必须对电子邮件进行过滤,使其不会成为恶意软件感染的载体。
  • 必须创建*载下**、上传策略,以便过滤传入和传出的数据并阻止可疑的内容。
  • 系统必须受到可靠的访问控制约束,包括多因素身份验证或生物识别。
  • 应使用受限用户界面机制并安装数据库管理系统,限制和管理对关键信息的访问,
  • 文件加密可能适用于存储在客户端计算机上的文件和数据。
  • 必须分离和隔离在用户监管模式下运行的进程,这样可防止对高权限进程和功能进行未经授权和有害访问。
  • 应该创建保护域,以便某个客户端遭受的危害不会自动危害整个网络。
  • 应清楚地标明磁盘和其他敏感材料的安全等级或组织敏感性,程序流程和 系统控制应结合起来,以帮助保护敏感材料免受不必要或未授权的访问。
  • 应备份桌面计算机上的文件以及服务器上的文件。
  • 桌面用户需要定期进行安全意识培训,以保持正确的安全意识。
  • 台式计算机和及其存储介质需要防范环境危害。(温度、湿度、电压波动等)
  • 桌面计算机应该包含在灾难恢复和业务连续性计划中,是为了能让用户恢复在其他系统上工作,桌面计算机可能与组织内的其他系统和服务一样重要(或者更重要)。
  • 在分布式环境中使用内置和自定义软件的开发人员也需要考虑安全性,包括使用正式的开发或部署方法。

通常,保护分布式环境意味着要了解它们所面临的漏洞并采用适当的安全控制措施。这些措施的范围可以从技术解决方案和控制延伸到风险管理的政策和程序,力求限制或避免损失、破坏、有害的泄露等。

5.1 基于云的系统和云计算

云计算指通过网络连接在其他地方(而不是本地)执行处理和存储。

云计算是虚拟化、互联网、分布式架构以及可随处访问数据和资源的需求的自然延伸和发展。

云存储的概念是指使用云供应商提供的存储容量作为托管组织数据文件的方法。云存储可当作一种备份方式或用来支持在线数据服务。此外,使用云存储可以涉及额外的风险,因为组织的数据存储在另一个设施中的设备上并且受第三方控制。

平台即服务,PaaS (Platform as a Service) 的概念是将计算平台和软件解决方案提供为虚拟的或者基于云的服务。PaaS的主要吸引力在于避免必须在本地购买和维护高端的硬件和软件。

软件即服务,SaaS(Software as a Service) 提供对特定软件应用程序或套件的按需在线访问而不需要本地安装。

基础架构即服务,IaaS(Infrastructure as a Service),不仅提供按需运营解决方案,还提供完整的外包选项。

私有云(Private Cloud),是企业内部网络中的云服务并于internet隔离。私有云仅供内部使用。虚拟私有云是由公有云供应商提供的服务,该提供商提供公有云或外部云的独立子部分,供组织内部专用。换句话说,组织将其私有云外包给外部提供商。

公有云(Public Cloud),是一种可供公众访问的云服务,通常通过internet连接。

混合云(Hybrid Cloud),是私有云和公有云的混合体。

社区云(Community Cloud),是由一组用户或组织维护、使用和支付用于利益共享的云环境。

安全即服务(Security as a Service,SECaaService)是一个云提供商概念,其中通过在线实体或由在线实体向组织提供安全性。目的是降低在本地实施和管理安全性的成本和开销。

5.2 网格计算

网格计算是一种并行分布式处理形式,它将大量处理节点松散地分组,以实现特定处理目标。网格成员可随机进入和离开网格。

网格计算的最大的安全问题是每个工作包的内容可能会暴露给外界。

网格计算通常使用中央核心服务器来管理项目、跟踪工作包并且集成返回的工作分段。如果中央服务器过载或脱机,则可能发生彻底故障或网格崩溃。

还存在这样一个风险:可利用被控制的中央网格服务器来攻击网格成员或欺骗网格成员执行恶意操作。

5.3 对等网络

对等网络(Peer to Peer,P2P)技术是网络和分布式应用程序解决方案,可在点对点之间共享任务和工作负载。P2P没有中央管理系统,其所提供的服务通常是实时的,而不是计算能力的集合。例如,VoIP服务。

P2P解决方案的安全问题包括对盗版受版权保护材料的感知诱导,*听窃**分布式内容的能力、缺乏集中控制,监督,管理,过滤以及服务消耗所有可用带宽的可能性。

6. 物联网

Internet Of Things (IoT),一种可能的安全实施方案是将物联网设备部署在单独划分的网络中,却该网络与主网络保持独立和隔离。

7.工业控制系统

工业控制系统(Industrial Control System,ICS)是一种控制工业过程和机器的计算机管理设备。

包括分布式控制系统(DCS),可编程逻辑控制器(PLC)以及监控和数据采集(SCADA)。

DCS单元通常存在于工业过程计划中,其中从单个位置收集数据并实施对大规模环境的控制的需求是必不可少的。

PLC单元实际上是高效的单用途或专用数字计算机。

SCADA系统可作为独立设备运行,也可于其他SCADA系统联网,或与传统IT系统联网。

从理论上讲,SCADA,PLC和DCS单元的静态设计及其最小的人机接口应该使系统能够完全抵抗损害或修改。

8.评估和缓解基于WEB系统的漏洞

Open Web Application Security Project(OWASP),是一个非营利性安全项目,专注于提高在线或基于Web的应有程序的安全性。

Web安全评估: 1.信息收集 2.评估身份验证和会话管理 3.站点加密以及用于数据验证和清理的方法。4. DOS防御检查,评估风险响应以及测试错误处理。

注入攻击,指允许攻击者向目标系统提交代码以便修改其操作和、或损害并破坏其数据集。注入示例包括,SQL注入,LDAP注入、XML注入、命令注入、HTML注入、代码注入、和文件注入。

从组织角度看, SQL注入攻击甚至比XSS攻击风险更高,因为SQL注入攻击的目标是组织资产,而XSS攻击的目标是网站的客户或访问者。SQL注入攻击不是使用此输入来欺骗用户,而是使用它来获取对底层数据库和相关资产的未授权访问。

可使用两种技术来保护Web应用程序免受SQL注入攻击:

  • 执行输入验证,输入验证允许你限制用户在表单中输入的数据类型。
  • 限制账户权限,Web服务器使用的数据库账户应具有可能的最小特权集。

基本上,SQL注入是用于处理前端(web服务器)和后端数据库之间交互的脚本的一个漏洞。如果脚本是防御性的,并且包含要转义(作废或拒绝)元字符的代码,将无法进行SQL注入。

LDAP注入是输入注入攻击的一种变体,但攻击重点是LDAP目录服务的后端而不是数据库服务器。如果web服务器前端使用脚本根据用户的输入来生成LDAP语句,则LDAP注入可能是一种威胁。

XML 注入是SQL注入的另一种变体,其中后端目标是XML应用程序。XML利用是一种编程攻击的形式,用于伪造发送给访问者的信息,或者导致他们的系统在未经授权的情况下泄露信息。

SAML滥用通常集中在基于web的身份验证方面。 SAML是一种基于XML的约定,用来组织和交换在安全域之间的用于认证与授权通信的详细信息。SAML通常用来提供web的SSO(单点登录)解决方案。如果攻击者可以伪造SAML通信或窃取访问者的访问令牌,他们可能会绕过身份验证并获得对站点的未授权访问。

跨站脚本(XSS)是一种恶意代码注入攻击形式,攻击者可攻击web服务器并将自己的恶意代码注入发送给其他访问者的内容中。黑客已发现许多巧妙方法,可通过公共网关接口(CGI)脚本,web服务器软件漏洞,SQL脚本注入,帧利用,DNS重定向,cookie劫持以及许多其他形式的攻击将恶意代码注入网站。成功的XSS攻击可能导致身份盗窃,凭据盗窃,数据盗窃,经济损失或着来访的客户端上植入远程控制软件。

针对XSS的防御包括维护已安装补丁的web服务器,使用web应用程序防火墙,运行基于主机的入侵检测系统(Host-Based Intrusion Detection System,HIDS)审核可疑活动。最重要的是,在服务器端验证输入长度,执行恶意内容和元字符过滤。

CAPTCHA(Completely Automated Pubic Turing Test to Tell Computer and Humans Apart)是一种区分人类和软件机器人的机制。

9.评估和缓解移动系统的漏洞

  1. 设备安全

设备安全性涉及可用于移动设备的潜在安全选项或功能的范围。

- 全设备加密

- 远程擦除

- 锁定(lockout)

-锁屏

-GPS

-应用程序控制

-存储分隔

-资产跟踪

-库存控制

-移动设备管理(MDM,Mobile Device Management)

- 设备访问控制,如果特定的移动设备在启用系统锁定时阻止对设备的访问,则这是一个值得设置的功能,可设置为在空闲一段时间后自动触发或手动触发。当你同时启动设备密码和存储加密时,通常会更有优势。

-可移动存储,

-关闭不使用的功能

  1. 应用安全

-密钥管理,密钥存储的最佳选择通常是可移动硬件或使用可信平台模块(Trusted Platform Module,TPM)

-凭据管理,在中心位置存储凭据称为凭据管理。

-身份验证,使用密码,PIN,面部识别,指纹等进行身份验证。

-地理位置标记,GPS

-加密,

-应有白名单,

  1. BYOD关注点

BYOD,Bring Your Owned Devcie。

公司拥有个人启用(Company-Owned,Personally Enable,COPE)指组织购买设备并将其提供给员工。

自选设备(Choose Your Own Device,CYOD)指为用户提供已获准设备的列表,可从中选择要使用的设备。

虚拟桌面基础设施(Virtual Desktop Infrastructure, VDI)是一种降低终端设备的安全风险和性能要求的方法,通过由用户远程访问托管在中央服务器上的虚拟机来实现。

虚拟移动基础设施(Virtual Mobile Infrastructure,VMI)移动设备的操作系统在中央服务器上虚拟化。

  • 数据所有权,有关数据所有权的移动设备策略应该解决移动设备的备份问题。业务数据和个人数据应该受到备份解决方案的保护。
  • 所有权支持,移动设备策略应该定义公司将提供那些支持,那些留给个人支持,并且如果涉及服务供应商,还要考虑哪些由供应商支持。
  • 补丁管理,移动设备策略应该定义个人拥有的移动设备的补丁管理手段和机制。
  • 反病毒管理,移动设备策略应规定是否要在移动设备上安装反病毒,防恶意软件和反间谍软件扫描程序。
  • 取证,移动设备策略应解决与移动设备相关的取证(Forensics)和调查问题。
  • 隐私,移动设备策略应该涉及隐私和监控。
  • 入职、离职(on-borading/Off-borading),移动设备策略应解决个人移动设备入职、离职程序问题。入职程序包括,安装安全、管理和生产应用程序,以及实施安全和高效的配置。离职程序包含正式擦除业务数据以及删除任何特定业务的应用程序。
  • 遵守公司策略,
  • 用户接受度,只有在员工表示同意和接受后(通常需要签名),才允许他们的设备进入生产环境。
  • 架构、基础设施思考,在实施移动设备策略时,组织应评估其网络和安全设计,体系结构和基础设施。(IP,IDS,监控等)
  • 法律问题,公司律师应评估移动设备的法律问题。
  • 可接受使用策略,移动设备策略应该参考公司的可接受使用策略,或者包括专注于独特问题的移动设备特定版本。
  • 机载摄像头,视频,移动设备策略需要解决带有相机的移动设备的问题。

10 评估和缓解嵌入式设备和信息物理系统的漏洞

嵌入式系统是作为大系统的一部分而实现的计算机系统。嵌入式系统通常是围绕一组有限的特定功能设计的,这些特定功能与将其作为组件的较大产品相关。

与嵌入式系统类似的另一个概念是静态系统(又称静态环境)。静态环境是一组不变的条件、事件和环境。静态环境不会提供新的或令人惊讶的元素,是任何旨在保持不被用户和管理员改变的系统。目标是防止(或至少减少)用户变更降低安全性或影响功能操作的可能性。

在技术方面,静态环境是为特定需求,能力或功能配置的应用程序、操作系统、硬件集或网络,然后设置为保持不变。

10.1 嵌入式系统和静态系统的示例

支持网络的设备是指具有本地联网功能的任何类型的便携式或非便携式设备。

网络物理系统指提供计算手段来控制物理世界中的某些东西的设备。(传感器)

IoT设备是网络物理系统、嵌入式系统和网络设备的一个扩展。

游戏控制台,车载计算系统。

10.2 保护嵌入式和静态系统的方法

大多数嵌入式和静态系统的设计重点是成本最小化和实现非常特别的功能。静态环境、嵌入式系统和其他有限或单一用途的计算环境需要安全管理。

  • 网络分段,网络分段涉及控制联网设备之间的流量。(VLAN)
  • 安全层,当具有不同分类或敏感级别的设备被组合在一起并与其他具有不同级别的组隔离时,就存在安全层。
  • 应用防火墙,应用程序防火墙时一种设备、服务器附件、虚拟服务或系统过滤器,它为服务和所有用户定义了一组严格的通信规则。
  • 手动更新,应该在静态环境中使用手动更新,以确保仅执行经过测试和授权的更改。
  • 固件版本控制,与手动软件更新类似,严格控制静态环境中的固件非常重要。固件更新应该仅在测试和评审后手动,降低实施。对固件版本控制的监督应侧重于维护稳定的操作平台,同时最大限度地减少停机时间或损害的风险。
  • 包装器(Wrappers)用于封装或包含其他内容。
  • 监控,即使时嵌入式和静态系统,也应监控性能、违规、合规性和运行状态。
  • 控制冗余和多样性,与任何安全解决方案一样,依赖单一安全机制时不明智的。

11.基本安全保护机制

操作系统内对安全机制的需求可以归结为一个简单事实:软件不应该被信任。

11.1 技术机制

技术机制时系统设计人员在其构建系统时可使用的控件。

  • 分层

通过分层过程,可实现与用于操作模式的环模型类似的结构,并将其应用于每个操作系统进程。层与层之间的通信只能通过定义明确的特定接口进行,以提供必要的安全性。

  • 抽象

抽象时面向对象编程领域的基本原则之一。

  • 数据隐藏

数据隐藏时多级安全系统中的一个重要特征。它确保在一个安全级别存在的数据对于以不同安全级别运行的进程时不可见的。

  • 进程隔离

进程隔离要求操作系统为每个进程的指令和数据提供单独的内存空间。

-- 它可以防止未经授权的数据访问,进程隔离时多级安全模式系统的基本要求之一。

-- 它保护进程的完整性。

  • 硬件分隔

硬件分隔的目的与进程隔离类似,它阻止了对属于不同进程,安全级别的信息的访问。主要区别在于硬件分隔通过使用物理硬件控制,而不是操作系统强加的逻辑进程隔离控制来满足这些要求。

11.2 安全策略和计算机架构

安全策略指导组织中的日常安全运营、流程和过程,也在设计和实现系统时发挥着重要作用。安全策略的作用是告知和指导特定系统的设计、开发、实现、测试和维护。总之,在项目整个生命周期都需要考虑安全性,如果仅在最后才实施安全,通常都会失败。

11.3 策略机制

与人任何安全计划一样,也应建立安全策略机制。

  • 最小特权原则

在特权模式下执行的进程数量越多,恶意个人可利用以获得对系统的监督访问的潜在漏洞数量就越多。

  • 特权分离

特权分离原则建立在最小特权原则之上,它需要使用粒度话的访问权限,也就是说,每种类型的特权操作都有不同的权限。允许设计者授予一些进程来执行某些监督功能的权限,而不允许它们不受限制地访问系统。

可将职责分离视为对管理员应有最小特权原则。职责分离也是用于防止在分配访问权限和工作任务时发生利益冲突的工具。

  • 问责制

问责制(Accountability)是任何安全设计的重要组成部分。

12 常见的架构缺陷和安全问题

没有安全架构是完整且完全安全的。

12.1 隐蔽通道

隐蔽通道是一种用于在通常不用于通信的路径上传递信息的方法。由于此路径通常不用于通信,因此它可能不受系统正常安全控制的保护。使用隐蔽通道提供了一种违反,绕过或损害安全策略且不会被检测到的手段。隐蔽通道是安全架构漏洞的重要示例之一。

有两种基本类型的隐蔽通道:

时间隐蔽通道:时间隐蔽通道通过改变系统组件的性能或以可预测的方式修改资源的时间来传达信息。使用时间隐蔽通道通常是秘密地传输数据的方法,并且非常难以检测。

存储隐蔽通道:存储隐蔽通道通过将数据写入公共存储区域来传送信息,其中另一个进程可以读取它。

12.2基于设计或编码缺陷的攻击和安全问题

  • 可信恢复

当一个未预料的系统崩溃发生并随后恢复时,可能会有两个危机其安全控制的机会。可信恢复可保证在发送崩溃时所有安全控制保持完整无缺。

  • 输入和参数检查

最臭名昭著的安全漏洞之一是缓冲区溢出。当没有对软件接受的输入数据量施加限制时,就会发生这种漏洞。

  • 维护钩子和特权程序

维护钩子时进入系统的入口点,只有系统开发人员才知道。这样的入口点也称为后门。

  • 增量攻击

某些形式的攻击以缓慢、渐进的增量发生,而不是通过明显或可识别的尝试来破坏系统安全性或完整性。两种这样的攻击形式是数据欺骗(data diddling)和salami攻击。

Salami攻击更神秘,salami攻击是指对账户中的资产或具有财务价值的其他记录系统性地进行削减,其中非常小的金额会定期和例行地从余额中扣除。

12.3 编程

12.4 计时、状态改变和通信中断

12.5 技术和过程集成

12.6 电磁辐射