CISSP最全,根据最新OSG9整理,23年5月29日考试通过!
2024-04-09 11:04:54 13 举报
AI智能生成
导图有点儿大,一下子展不开,建议一个个域学习! 同时建议自行梳理思维导图! 同时建议自行梳理思维导图! 同时建议自行梳理思维导图!
作者其他创作
大纲/内容
D5 身份识别访问管理
5.1 控制对资产的物理和逻辑访问
资产
信息
组织的信息包括其所有数据。
系统
组织的系统包括提供一个或多个服务的任何 IT 系统。
设备
设备是指任何计算系统,包括服务器、台式计算机、便携式笔记本电脑、平板电脑、智能手机和外部设备(如打印机)
设施
组织的设施包括其拥有或租赁的任何物理场所。
应用程序
应用程序往往提供组织的数据访问。应用程序的访问控制可以为组织的数据提供一个额外的控制层。权哏是一种简单的方法,可以限制应用程序的逻辑访问,并且可以分配给特定用户或组。
控制物理和逻辑访问
物理安全控制
物理安全控制是你可以触摸的,如围栏、大门、警卫和旋转门等边界安全控制,以及供暖、通风和空调(HVAC) 系统和灭火等环境控制。
物理安全控制通过控制访问和环境来保护系统、设备和设施。
逻辑访问控制
逻辑访问控制是一种技术控制,用千保护对信息、系统、设备和应用程序的访问。
逻辑访问控制包括身份认证、授权和权限。
CIA 三性和访间控制
保密性
问控制有助于确保只有已经授权的主体能够访问客体。如果未经授权的实体可以访问系统或数据,将导致保密性的丧失。
完整性
完整性可以确保主体经授权后才可以修改数据或系统配置,或如果发生未经授权的变更,安全控制可以检测到变更。如果客体发生了未授权的变更或不需要的变更,会导致完整性丢失。
可用性
必须在合理时间内向主体授予访问客体的权限。换句话说,系统和数据应该在需要时可以供用户和其他主体使用。一如果系统无法运行或数据无法访间,会导致可用性降低。
5.2 管理对人员、设备和服务的身份认证与验证
设施身份管理(IdM)
主体和客体
主体
主体是一种活动实体,访问被动客体以从客体接收信息或数据。经授权后,主体可以修改客体。
客体
客体是一个被动实体,可以向活动主体提供信息。
身份标识和身份认证
身份标识(identification)
是主体声明或宣称身份的过程。主体必须向系统提供身份标识,从而启动身份认证、授权和问责流程。
身份认证的核心原则是所有主体必须具有唯一的身份标识。
身份认证(authentication)
将一个或多个因素与有效身份标识数据库(如用户账户)进行比对,从而验证主体的身份。
身份标识和身份认证作为一个流程的两个步骤同时发生。第一步是提供身份标识,第_步是提供身份认证信息。如果缺少身份标识和身份认证,主体就无法访问系统。
授权和问责
授权(authorization)
基于已验证的身份授予主体对客体的访问权限。
授权过程可以根据主体获得的权哏确保主体能够访问所请求的活动或对象。管理员仅根据最小特权原则授予用户完成工作所需的权限。
问责(accountability)
在实施审计时,用户和其他主体可以对其行为负责。审计在主体访问客体时追踪主体和记录,并在一个或多个审计日志中创建审计轨迹。
审计、日志记录和监控可以确保主体对其行为负责,进而实现问责机制。审计是在日志中跟踪和记录主体活动的过程。日志通常记录谁执行某项操作,执行某项操作的时间和地点,以及操作内容。一个或多个日志创建一个审计轨迹,研究人员或调查人员可以使用审计轨迹来重构事件和发现安全事故。
问责依赖于有效的身份标识和认证,但不需要有效的授权。
单/多因子验证(MFA)
身份认证因素
三种主要的身份认证因素
你知道什么。
该身份认证因素包括已记住的秘密,例如口令、个人身份识别码(PIN)或口令短语。早期的文档将此称为 1 类型 身份认证因素。
口令策略组件
最长期限
口令复杂度
口令长度
最短期限
口令历史
权威口令建议
NIST SP 800-63B
口令不应该过期
PCIDSS 口令要求
口令至少每 90 天过期一次。
口令长度至少为 个字符。
你拥有什么。
该身份认证因素包括用户拥有并可以帮助其提供身份认证的物理设备,例如智能卡、硬件令牌、存储卡或通用串行总线(USB) 驱动器。早期的文档将此称为 2类型份认证因素。
智能卡
智能卡是信用卡大小的 ID 或徽章,并嵌入了集成电路芯片。
令牌
同步动态口令令牌
生成动态口令的硬件令牌和身份认证服务器保持时间同步,定期生成一个新的 PIN 码,如每 60 秒更新一次。
异步动态口令令牌
相反,硬件令牉根据算法和递增计数器生成 PIN 码。使用递增计数器时,硬件令牌会创建一个动态的一次性 PIN 码,该 PIN 码在用千身份认证之前保持不变。
Yubikey或Titan安全密钥是令牌
你是什么。
该身份认证因素利用人的身体特征并基千生物识别技术。“你是什么"类别的示例包括指纹、面部扫描、视网膜、虹膜和手掌扫描。早期的文档将此称为 3 类型 身份认证因素。
指纹
面部扫描
视网膜扫描
网膜扫描关注眼睛后部的血管图案。视网膜是最精准的生物特征认证方式,可以区分同卵双胞胎。
视网膜扫描可以泄露用户的病史,例如高血压和怀孕。
虹膜扫描
虹膜扫描关注瞳孔周围的彩色区域,是第二准确的生物特征认证方式。
用户通常认为虹膜扫描比视网膜扫描更容易接受,因为扫描可以从远处进行,且侵入性较小。通常可以从6到12 米(大约 20到 40 英尺)之外的地方进行虹膜扫描
手掌扫描
声纹识别
生物特征因素错误评级
错误拒绝率(FRR)
错误拒绝与有效身份认证的比率玻称作错误拒绝率(FRR) 。错误拒绝也被称为 I 类错误。
错误接受率(FAR)
误报与有效身份认证的比率是错误接受率(FAR) 。错误接受有时被称为 II 类错误。
等错误率(ERR)
FRR 和 FAR百分比相同的点就是 交叉错误率CER 。CER 作为标准评估值,可以评价不同生物识别设备的准确性。
CER 较低的设备比 CER 较高的设备更准确。
一般没必要将设备的灵敏度设置为 CER 级别,而且这通常也是不可取的。例如,某个组织可能使用面部识别系统来允许或拒绝用户访问安全区域,因为组织希望确保未经授权的人员永远不会被授予访问权限。这种情况下,组织会将敏感度设置得非常高
生物特征注册
要将生物识别设备用作身份标识或身份认证机制,就必须有一个注册过程。在注册期间,生物识别设备对主体的生物特征因素进行采样并将其存储在数据库中。该存储的生物特征因素样本可以充当参考配置文件(也称为参考模板)。
一般来说,超过 2分钟的注册时间是不可接受的。
吞吐率是系统扫描主体并允许或拒绝访问所需的时间。生物特征越复杂或越详细,系统处理时间就越久。用户通常可以接受约 6秒或更快的吞吐率。
你在什么地方。
该身份认证因素基千具体计算机来识别主体所在的位置,主要通过 1P地址或者来电显示来识别地理位置。通过物理位置执行的访问控制迫使主体出现在具体位置。地理定位技术可根据 IP 地址来识别用户位置,并由某些身份认证系统使用。
上下文感知身份认证。
许多移动设备管理(MDM)系统使用上下文感知身份认证来识别移动设备用户。上下文感知身份认证可以识别多个属性,如用户位置、时段、移动设备等。
多因素身份认证
多因素身份认证(MFA)是使用两个或更多因素的身份认证。
双因素身份认证(2FA) 需要两种不同的认证因素来实施身份认证。相反,仅使用单一因素的身份认证方法都是单因素身份认证。
使用身份认证应用程序进行双因素身份认证
HOTP
基千哈希的消息身份认证码(HMAC)包含一个哈希函数,该函数被基于 HMAC的一次性口令(HOTP)标准用来创建一次性口令。 HOTP 通常生成六至八位数的 HOTP 值。HOTP 口令类似于令牌创建的异步动态口令。 HOTP 口令在使用前保持有效。
TOTP
基千时间的一次性口令(TOTP)标准类似千 HOTP 。但是, TOTP 使用时间戳并在特定时间范围内保持有效,如 30 秒。如果用户未在时间范围内使用 TOTP 口令,则该口令将过期。 TOTP 口令类似千令牌使用的同步动态口令。
电子邮件挑战
NIST 反对 2FA 使用 SMS 服务
智能手机和平板电脑在不需要用户登录的情况下即可在锁定屏幕上显示短信。
攻击者可能说服移动运营商将 SMS 消息重定向到攻击者的设备。这种途径有时可以通过订户身份识别模块(SIM)卡欺骗来实现。
无口令身份认证
无口令身份认证允许用户在不输入口令(或其他记忆的秘密)的情况下登录系统。例如,许多智能手机和平板电脑都支持生物特征认证。如果智能手机上启用了面部识别,你只需要面向屏幕就能解锁登录屏幕。同样,如果平板电脑上启用了指纹识别,你只需要将手指放在传感器上即可。
(FIDO
线上快速身份认证(FIDO)联盟是一个开放的行业协会,其使命是减少人们对口令的过度依赖。
设备身份认证
设备指纹识别
用户可以在组织中注册自己的设备并将设备与用户账户关联。在注册期间,设备身份认证系统会采集设备的特征。设备特征的采集通常通过让用户使用设
备访问网页来实现。然后,注册系统使用操作系统和版本、 Web 浏览器、浏览器字体、浏览器插件、时区、数据存储、屏幕分辨率、 cookie 设置和 HTTP 标头等属性来识别设备。
备访问网页来实现。然后,注册系统使用操作系统和版本、 Web 浏览器、浏览器字体、浏览器插件、时区、数据存储、屏幕分辨率、 cookie 设置和 HTTP 标头等属性来识别设备。
上下文感知
许多 MDM 系统使用上下文感知身份认证方法来识别设备。 MDM 系统通常与网络访问控制(NAC)系统一起检查设备的运行状况,并根据 NAC 系统中配置的需求授予或限制访问权限。
802.1X
802.lX 是另一种实现设备身份认证的方法。 802.lX 可以在某些路由器和交换机上应用千基千端口的身份认证。
服务身份认证
服务账户只是管理员为服务或应用程序(而不是个人)创建的账户。
通过设置账户属性来使口令永不过期的做法是很常见的。
由于服务账户具有高级的权限,管理员为其配置了比普通用户更强大而复杂的门令,该口令也需要更频繁的修改。但是,管理员需要手动更改这些口令。口令保持不变的时间越长,就越有可能被泄露。
另一种选择是将账户设置为非交互式账户,这样可以防止用户使用传统登录方法登录账户。
另一种选择是将账户设置为非交互式账户,这样可以防止用户使用传统登录方法登录账户。
基于证书
可以将服务配置为基千证书的身份认证。证书被颁发给运行服务的设备,并在访问资源时由服务提供。
双向身份认证
很多场景需要双向身份认证。例如,当客户端访问服务器时,客户端和服务器都需要提供身份认证,这样可以防止客户端向伪造服务器泄露信息。双向身份认证方法通常使用数字证书。
可核查性
会话管理
会话包括普通计算机(如台式计算机)上的会话以及与应用程序的在线会话。
屏幕保护程序可以配置时间范围(以分钟为单位)。
安全的在线会话通常也会在一段时间后断开。
如果开发人员未实现自动注销功能,那么用户登录之后,系统允许用户的浏览器会话保持打开状态。即使用户在未注销的情况下关闭浏览器选项卡,也可能使浏览器会话保待打开状态。
Web 开发框在会话开始时创建会话标识符或令牌。此标识符在整个会话期间内置在每个 HTTP 请求中。我们可以强制使用传输层安全(TLS)协议,从而确保整个会话(包括标识符)都被加密了。这些 Web 开发框架还包括会话过期的方法。
会话管理的最佳实践涉及较长的会话ID(通常128位或更长)和足够的随机性,以使其难以猜测会话ID。
常见的会话管理技术包括使用Cookie、隐藏表单字段、URL重写和内置框架,如Java的HTTP会话。
身份注册、证明和建立
新员工在组织的招聘过程中使用适当的文件来证明自己的身份。
如果组织使用更安全的身份认证方法,例如生物识别技术,那么注册过程会更加复杂。
在线组织通常使用基千知识的身份认证(KBA)来验证新人(如新客户)的身份。
当已注册用户尝试更改口令时,某些组织会使用认知口令(也称为安全问题)。
身份管理实现技术通常分为两类:
集中式
集中式访问控制意味着所有授权验证都由系统内的单个实体执行。
集中式访问控制的管理开销较低,因为所有更改都在单个位置进行,并且单个更改会影响整个系统。然而,集中式访问控制可能会产生单点故障
集中式身份管理解决方案的另一个好处是它可以通过扩展来支持更多用户。
分散式/分布式
分散式访问控制(也称为分布式访问控制)意味着整个系统中的各类实体执行授权验证。
分散式访问控制通常需要多个团队或多人管理。分散式访问控制的管理开销较高,因为必须在多个位置实施修改。随着访问控制点数量的增加,整个系统会越来越难以保持一致性。
单点登录(SSO)
单点登录(SSO)是一种集中式访问控制技术,允许主体在系统上进行单次身份认证并访问多个资源,而不必再次进行身份认证。
LDAP 与集中式访问控制
在单个组织内,集中式访问控制系统往往应用千 SSO 。
目录服务是一个集中式数据库,包含主体和客体的有关信息,如身份认证数据。
端口636是LDAP-S的默认端口,它提供基于SSL或TLS的LDAP,因此指示服务器支持加密连接。
安全域是共享通用安全策略的主体和客体的集合,各个安全域可以独立千其他域运行。
各域之间建立信任,创建安全桥,并允许一个域的用户访问另一个域的资源。信任可以是单向的,也可以是双向的。
LDAP 与 PKI
客户端需要查询发证机构(CA) 以获取有关证书的信息,并且使用的协议之一就是 LDAP
联合身份管理(FIM)
联合身份是指将一个系统中的用户身份与多个身份管理系统关联起来。FIM 允许不同组织联合使用 SSO 。
FIM 将其扩展到单个组织之外。多个组织可以加入一个联盟或组,并同意共享身份信息。每个组织中的用户可以在自己的组织中登录一次,并将其凭证与联合身份关联起来。然后,用户可以使用此联合身份访问组内任何其他组织中的资源。
基于云的联合
基千云的联合通常使用第三方服务来共享联合身份。
本地联合
联合身份管理系统可以托管在本地、云上,也可以将两者结合为混合系统。
混合联合
准时制
一些联合身份解决方案支持准时制(JIT)配置。这些解决方案自动创建两个实体之间的关系,以便新用户访问资源。 JIT 解决方案不需要管理员干预即可创建连接。
JIT 系统通常使用 SAML 来交换所需的数据。 SAML 为实体间各种数据的交换提供非常大的灵活性。
凭证管理系统
凭证管理系统为用户名和密码提供存储空间。
凭证管理器应用程序
Windows 的控制面板中包含凭证管理器(Credential Manager) 小程序。
第三方凭证管理系统。例如, KeePass 是一个免费软件工具,可以存储凭证。
脚本访问
在登录会话开始时,脚本访问或登录脚本可以提供自动传输登录凭证,以建立通信链接。
即使环境仍然需要单独的身份认证过程来连接到每个服务器或资源,脚本访问通常可以模拟一SSO 。
因为脚本和批处理文件通常包含明文形式的访问凭证,所以它们应该存储在受保护的区域。
准时生成(JIT)
5.3 通过第三方服务进行联合身份验证
本地部署
云端
混合
5.4 实施和管理授权机制
比较权限、权利和特权
权限
限通常是指授予对客体的访问权限,并明确允许对客体执行的操作。
权利
权利主要是指对某个客体采取行动的能力。例如,用户可以有权利修改计算机系统时间或恢复备份数据。
特权
权是权利和权限的组合。例如,计算机管理员将拥有全部特权,即授予计算机管理员对计算机的全部权利和权限。
授权机制
隐式拒绝
访问控制的基本原则是隐式拒绝,大多数授权机制使用隐式拒绝。除非已明确授予主体访问权限,否则,隐式拒绝原则拒绝主体访问客体。
访问控制矩
访问控制矩阵是一种包含主体、客体和分配权限的表格。
访问控制列表ACL
ACL 以客体为中心,标识针对任何特定客体授予主体的访问权限。
能力表
能力表(capability table) 是另一种确定主体所分配权限的方式。
约束接口
应用程序利用受约束或受限制的接口,限制用户可执行或可查看的内容。
基于内容的控制
基于内容的访问控制依据客体内容来限制对数据的访问。数据库视图就是一种基于内容的控制。
基千上下文的控制
基于上下文的访问控制在授予用户权限之前需要用户执行特定的活动。
基于时间的控制就是上下文相关控制
因需可知
这个原则确保主体仅能访问为完成工作任务和工作职能而需要知道的内容。
最小特权
最小特权原则确保主体仅拥有执行工作任务和工作职能所需的权限。
职责分离
责分离原则确保将敏感职能划分为两个或多个员工共同执行的任务。
比较访问控制模型
自主访问控制(DAC)
自主访问控制(DAC)模型的一个关键特征是每个客体都有一个所有者,所有者可以允许或拒绝其他主体的访问。
基于身份的访问控制是 DAC的子集,因为系统根据用户的身份识别用户并将资源所有权分配给身份。
使用客体访问控制列表(ACL)实现 DAC 模型。
非自主访问控制模型
基于角色的访问控制(RBAC)
采用基千角色或基千任务的访问控制的系统,根据主体角色或分配任务来定义访问客体的能力。基千角色的访问控制(RBAC)通常通过组来实现。
基千角色的访问控制可以预防特权蠕变,有助千加强最小特权原则的实施。
基于任务的访问控制(TBAC). TBAC 和 RBAC类似,但不是将用户分配给一个或多个角色,而是为每个用户分配一组任务。
基于规则的访问控制
基千规则的访问控制模型使用一组规则、限制或过滤器,决定系统允许和禁止发生的操作。
基于规则的访间控制模型的常见示例是防火墙。防火墙包含 ACL 中管理员定义的一组规则或过滤器。
基于属性的访问控制(ABAC)
基千规则的访问控制的高级实现方式是基于属性的访问控制(ABAC)模型。 ABAC 模型使用包含多个规则属性的策略。
属性可以是用户、网络和网络上的设备的几乎任何特征。
许多软件定义网络(SDN)应用程序使用 ABAC 模型。
强制访问控制(MAC)
强制访问控制(MAC)模型依赖分类标签的使用。一个分类标签代表一个安全域或安全领域。安全域是共享相同安全策略的主体和客体的栠合。
用户根据许可级别获得标签,许可级别是一种特权形式。
MAC 模型通常被称作基千格子的模型。
MAC 模型还允许标签标识出更多定义的安全域。
在MAC 模型中使用隔离区,有助千加强因需可知原则。拥有机密标签的用户不会自动获取对机密区域中隔离区的访问权限。
MAC 模型的分类使用以下三类环境。
分层环境
分层环境将各种分类标签关联到按低安全性、中等安全性、高安全性排序的结构,如机密、秘密和绝密。
分区环境
分区环境中,一个安全域和另一个安全域之间是无关联的。每个域代表一个单独的隔离区。
混合环境
混合环境结合了分层和分区的概念,因此每个分层级别可能包含多个子分区,这些子分区之间是相互隔离的。
基于风险的访问控制
该模型试图通过研究几个元素来评估风险
.环境
.情景
· 安全策略
.情景
· 安全策略
环境是急诊室,
场景是医疗急救。
安全策略可能判定这是一个低风险的行为,并授予医生和护士对患者数据的所有访问权限。
场景是医疗急救。
安全策略可能判定这是一个低风险的行为,并授予医生和护士对患者数据的所有访问权限。
环境就是药房,
场景就是配药。
安全策略可能判定这是中风险或低风险的行为。基于风险的模型允许药房人员访问患者数据,并识别潜在不良药物的相互作用。但是,该模型阻止药房人员访问患者的完整病史。
场景就是配药。
安全策略可能判定这是中风险或低风险的行为。基于风险的模型允许药房人员访问患者数据,并识别潜在不良药物的相互作用。但是,该模型阻止药房人员访问患者的完整病史。
基千风险的访问控制模型有时可以使用二进制规则来控制访问。
其他策略可能需要模型来实现机器学习功能。
NAC的执行能力决定了系统是否足够安全和合规连接到网络。这是一种基于风险的访问控制形式,因为不合规的系统被认为具有更高的风险,并且要么被放置在隔离和修复网络或区域中,要么在合规之前被禁止连接到网络。
5.5 管理身份和访问配置生命周期
账户访问审查(如用户、系统、服务)
管理员会定期检查账户以确保账户不存在多余的权限。账户审查工作还检查账户是否符合安全策略。
账户包括用户账户、系统账户和服务账户。
服务账户的交互式登录是一个严重的告警信号,无论是破坏还是不良的管理实践。
保护服务账户安全的最重要的一步是确保他们仅拥有完成其设计任务所需要的绝对权限。禁用交互式登录下一步重要的操作。
计算机的本地系统账户通常与本地管理员账户具有相同的权限,从而允许计算机以计算机(而不是用户)的身份访问网络上的其他计算机
许多管理员使用脚本定期检查非活动账户。例如,脚本可以定位过去 30 天内未登录的用户账户并自动将其禁用。
权限监控需要审核允许提升权限的账户。这类账户包括具有管理员权限的所有账户,如管理员账户、 root 账户、服务账户或比普通用户拥有更多权限的账户。
务必预防与访问控制相关的两个问题:
过度权限
当用户拥有的权限超过完成工作任务所需的权限时,就会出现过度权限。
权限蔓延
权限蔓延是指随着工作角色和所分配任务的变化,用户账户随着时间的推移积累额外的权限。
配置和取消预配(如入职、离职和调动)
入职流程包括创建用户账户并为其提供新工作所需的所有权限。
新用户账户的初始创建通常被称为登记或注册。我们唯一必须提供的信息是用户名或唯一标识符。
证明新员工的身份
身份证件、出生证明、背景调查、信用检查、安全许可验证、 FBI 数据库搜索,征信调查
自动配置系统
自动配置系统按部就班地创建账户,例如始终以相同的方式创建用户名并处理重复的用户名。
当员工离开组织时,组织会实施取消配置和离职流程。流程包括员工因故被解雇、被裁员或主动离职。当员工被调到组织内不同的部门或工作地点时,可以使用相同的流程。
取消账户的最简单方法是删除,有时被称为账户注销。
许多组织选择在员工离职时禁用该账户。然后,主管可以查看用户的数据,并在删除账户之前确定是否有需要做的事情。
角色定义(例如,分配到新角色的人员)
在组织的生命周期中,员工的职责都会发生变化。很多时候,员工只是简单池转移到不同的位置。其他情况下,组织可能会创建一个完全不同的工作角色。
特权升级(例如,托管服务账户、使用sudo、最小化其使用)
5.6 部署身份验证系统
互联网上实现 SSO
XML
可扩展标记语言(XML) 并非仅通过实际描述数据来描述如何显示数据。 XML 可以包含标记,从而描述所有所需数据。
许多云提供商使用基于 XML 的语言来共享身份认证和授权信息。许多云提供商不是直接使用 XML, 而是使用其他基千 XML 的语言。
服务提供标记语言(SPML)是一种基于XML的语言,旨在允许平台生成和响应配置请求。
XAML用于描述访问控制。
SOAP(简单对象访问协议)是一种消息传递协议,可用于任何XML消息传递,但不是标记语言本身。
XAML用于描述访问控制。
SOAP(简单对象访问协议)是一种消息传递协议,可用于任何XML消息传递,但不是标记语言本身。
SAML
安全断言标记语言(SAML) 是一种基千 XML 的开放标准,通常用千在联邦纠织之间交换身份认证和授权(AA)信息。 SAML 提供支持浏览器访间的 SSO 功能。
SAML2.0 规范使用三个实体
委托人或用户代理
为简单起见,我们将 Sally 视为委托人。 Sally 正在尝试切问自己在ucanbeamillionaire.com 上的投资账户。
服务提供商(SP)
在此场景中, ucanbeamillionaire.com 站点提供服务并且是服务提供商。
身份提供者(IdP)
IdP 是持有用户身份认证和授权信息的第三方。
Sally 访问该站点时,站点提示 Sally 输入身份凭证。当 Sally 输入身份凭证时,该站点会将 Sally 的身份凭证发达至 IdP 。然后, IdP 使用 XML 消息进行响应,验证(或拒绝)Sally的身份凭证,并明确允许 Sally 访问的内容。
IdP 可以发送三种类型的 XML 消息(称为声明):
认证声明
此声明证明用户代理提供了正确的身份凭证,标识身份认证方法,并标识用户代理登录的时间。
授权声明
此声明表明用户代理是否有权访问所请求的服务。如果消息表明访问被拒绝,消息会说明原因。
属性声明
属性可以是关于用户代理的任何信息。
OAuth(授权框架)
OAuth 2.0 (意含开放授权)是 RFC 6749 中描述并由互联网工程任务组(IETF)维护的授权框架。互联网上的许多公司使用 0Auth2.0 与第三方网站共享账户信息。
OAuth 是一个授权框架,而不是身份认证协议。 OAuth 交换 API 消息并使用令牌来显示访问是否已获得授权。
OpenlD(身份验证)
OpenID 也是一个开放标准,但由 OpenID Foundation 维护,它不是 RFC 标准。 OpenID提供去中心化身份认证,允许用户使用一组凭证登录多个不相关的网站,这些凭证由第三方服务维护,这类第三方被称为 OpenID 提供商。
OIDC(OAuth+OpenID+JWT )
OpenID Connect (OIDC)是使用 0Auth2.0 授权框架的身份认证层。关键点是 OIDC 同时提供身份认证和授权。与 OpenID 一样, OIDC OpenlD 基金会维护。
OIDC 建立在 OpenID 创建的技术之上,但使用 JavaScript 对象表示法(JSON) Web 令牌(JWT) ,你也可称之为 1D 令牌。 OIDC 使用 Web 服务来检索 JWT 。除了提供身份认证之外,JWT 还可包含有关用户的个人资料信息。
OAuth 提供授权,而 OIDC 使用 OAuth 框架来授权,并基千 OpenID 技术进行身份认证。 OIDC 使用 JSON 网络令牌。
比较 SAML OAuth OpenlD OIDC
SAML
SAML2.0 是一种基千 XML 的开放标准。
OASIS 2005 年将 SAML2.0 纳入标准。
SAML2.0 使用三个实体,即主体(如用户)、服务提供商(如网站)和身份提供者(持有认证和授权信息的第三方)。
SAML 可以提供主体的认证、授权和属性信息。
OAuth
OAuth 是一个授权框架,而不是一个认证协议。
RFC 6749 描述了 0Auth2.0
OAuth 使用 API 交换信息。
应用程序从身份提供者那里获取访问令牌。
随后,应用程序包含用千授权的访问令牌。
OAuth提供从另一个服务访问资源的能力
OpenID
OpenID 是一种身份认证标准。
它由 OpenID Foundation 维护。
OpenID 提供商提供去中心的身份认证。
用户在站点上输入 OpenID 标识符(如 bobsmith2021.myopenid.com), OpenID 提供商会验证此标识符。
OpenID将允许他将来自另一个服务的账户用于应用程序
OIDC
OIDC 是使用 0Auth2.0 的身份认证层。
它建立在 OpenID 身份认证标准之上。
它提供身份认证和授权。
它建立在 OpenID 之上,但使用 JSONWeb 令牌。
在内部网络上实现 SSO
AAA 协议
提供身份认证、授权和计费的协议被称为 AAA 协议。 AAA 协议通过远程访问系统,如虚拟专用网络(VPN)和其他类型的网络访问服务器,提供集中式访问控制。
Kerberos
票证身份认证是一种采用第三方实体来证明身份并提供身份认证的机制。 Kerberos 是最常见和最著名的票证身份认证。 Kerberos 的主要目的是身份认证。在用户通过身份认证并证明其身份后, Kerberos 使用用户已证明的身份来签发票证,用户在访问资源时出示这些票证即可。
Kerberos 为用户提供单点登录解决方案并保护登录凭证。 Kerberos 版本基千 AES称加密协议,实现对称密钥加密(也称为密钥加密)。 Kerberos 使用端到端安全,为身份认证流量提供保密性和完整性,并且可以预防窃听和重放攻击。
许多 Kerberos 角色可以集中在单个服务器上,但也可部署在不同的服务器上。较大规模的网络有时会将不同的 Kerberos 角色分开部署以提高性能,但规模较小的网络通常使用单台Kerberos 服务器来执行所有不同的角色。
要素
密钥分发中心
密钥分发中心是提供身份认证服务的可信第三方。 Kerberos 使用对称密钥加密技术来向服务器验证客户端。所有客户端和服务器都需要向 KDC 注册,而 KDC 维护所有网络成员的密钥。
Kerberos 身份认证服务
身份认证服务器承载 KDC 的功能:票证授予服务(TGS)和身份认证服务(AS) 。
票证
票证是一种加密消息,可证明主体被授权访问对象。票证有时被称为服务票证(ST) 。
Kerberos 票证具有特定的生命周期和使用参数。一旦票证过期,客户端就必须请求票证延期或新票证,然后才能继续与服务器通信。
票证授予的票证
票证授予的票证(TGT)提供证据,证明主体已通过 KDC 的身份认证并且可以请求禀证来访问其他对象。 TGT 是经过加密的,包括对称密钥、到期时间和用户 IP地址。当请求访问对象的禀证时,主体将出示 TGT。
Kerberos 主体
Kerberos 向Kerberos 主体发出票证。 Kerberos 主体通常是用户,但也可以是请求票证的任何实体。
Kerberos 领域
Kerberos 领域是由Kerberos 控制的逻辑区域(如域或网络)。领域内的主体可以从 Kerberos 请求票证,而 Kerberos可以向领域内的主体发出票证。
Kerberos 登录流程的工作原理
(1) 用户在客户端输入用户名和密码。
(2) 客户端使用 AES 对用户名进行加密并将其传输到 KDC
(3) KDC 根据已知凭证的数据库来验证用户名。
(4) KDC 生成一个对称密钥,该密钥由客户端和 Kerberos 服务器使用。 KDC 使用用户口令的哈希值对密钥进行加密。 KDC 还会生成一个加密的附带时间戳的 TGT
(5) KDC 然后将加密的对称密钥、加密的带时间戳的 TGT 传输给客户端。
(6) 客户端存储 TGT 以供使用,直到它过期。客户端还使用用户口令的哈希值来解密对称密钥。
客户端必须安装TGT并解密对称密钥。
客户端通过 Kerberos 服务器获得票证
(1) 客户端将自己的 TGT 发送至 KDC, 并请求访问资源。
(2) KDC 验证 TGT 是否有效并检查其访问控制矩阵,进而验证用户是否具有足够的权限来访问诘求的资源。
(3) KDC 生成服务票证并将其发送给客户端。
(4) 客户端将服务票证发送到托管资源的服务器或服务。
(5) 托管资源的服务器或服务通过 KDC 验证票证的有效性。
(6) 一旦验证过身份和授权, Kerberos活动就结束了。服务器或服务主机便与客户端建立会话,并开始通信或数据传输。
Kerberos 存在单点故障,即 KDC 。如果 KDC 被泄露,则网络上每个系统的密钥也会泄露。此外,如果 KDC 脱机,则无法开展主体的身份认证。
Kerberos 也具有严格的时间要求,默认配置要求所有系统保持 分钟以内的时间同步。
管理员通常在网络内部配置 个时间同步系统。在活动目录域中,一个域控制器(DC)外部网络时间协议(NTP)服务器在时间上保持同步。所有其他 DC将其时间与第一个 DC 保持同步,而其他系统在登录时将其时间和其中一个 DC 保持同步。
RADIUS
远程认证拨入用户服务(RADIUS) 集中认证远程访问连接,例如 VPN 或拨号访问。
Kerberos、联合身份验证服务(ADFS)和中央身份验证服务(CAS)都是单点登录,而且一些供应商会在后台使用它们为专有SSO提供身份验证。RADIUS不是单点登录。
RADIUS 通常适用于组织拥有多台网络访问服务器(或远程访问服务器)的情况。用户可以连接到任意的网络访问服务器,然后该服务器将用户凭证传送至 RADIUS 服务器,开展身份认证、授权和跟踪计费。这种情况下,网络访问服务器是 RADIUS 的客户端, RADIUS 服务器充当身份认证服务器。 RADIUS 服务器还为多个远程访问服务器提供 AAA 服务。
许多互联网服务提供商(ISP)使用 RADIUS 实施身份认证。
RADIUS 服务器可以将回调安全用作额外的保护层。用户拨号呼入,在经过身份认证后,RADIUS 服务器终止连接,并向用户预定义的电话号码发起回呼。如果用户身份认证凭证被盗用,回调安全功能会阻止攻击者使用身份认证凭证。
RADIUS 默认使用用户数据报协议(UDP) ,仅加密口令的交互过程。 RADIUS 不会加密整个会话,但 RADIUS 可以使用其他协议来加密会话。 RADIUS 目前版本在 RFC 2865 中定义。 RFC 6614 定义了 RADIUS 实验版,描述 RADIUS 如何使用传输控制协议(TCP) 上的传输层安全性(TLS)
使用 TLS 时, RADIUS 使用 TCP2083 端口。 RADIUS 使用 UDP 1812 端口传输 RADIUS消息,并使用 UDP 1813 端口传输 RADIUS 计费信息。
RFC 6614 描述了如何使用 RADIUS/TLS 保护 RADIUS 流量。
TACACS+
Cisco 开发了增强型终端访问控制器访问控制系统(TACACS+),后来将其作为开放标准发布。 TACACS+对早期版本和 RADIUS 进行了多项改进。
TACACS+将身份认证、授权和计费划分为独立的进程。如果需要,可将其托管在三个不同的服务器上。此外,与 RADIUS 一样, TACACS+可以加密所有身份认证信息,而不仅仅是口令。 TACACS+使用 TCP49 端口,为数据包的传输提供更高级别的可靠性。
OpenID连接(OIDC)/开放式授权(Oauth)
安全断言标记语言(SAML)
Kerberos
远程验证拨号用户服务(RADIUS)/增强型终端访问控制器访问控制系统(TACACS+)
访问控制攻击
特权提升
1. 使用 su 和 sudo 命令
日志可以记录用户使用 sudo 执行的所有命令。
2. 尽量减少 sudo 命令的使用
通过尽慑减少 sudo 的使用,可以限制风险。这类似千在 Windows 系统上限制管理员组中的用户数量。
3. 口令攻击
账户数据库可以是客户数据库或操作系统又件,如基千 Windows 的安全账户管理器(SAM)文件或 Linux系统上的/etc/shadow 文件。
4. 字典攻击
字典攻击是指尝试通过使用预定义数据库中的每个可能密码或公共或预期密码列表来发现密码。
5. 暴力破解攻击
暴力破解攻击是指通过尝试所有可能的字母、数字和符号的组合来找到用户的口令。
6. 喷射攻击
喷射攻击(spraying attack) 是一种特殊类型的暴力破解攻击。攻击者在在线密码攻击中使用喷射攻击,并试图绕过账户锁定的安全控制措施。
7. 凭证填充攻击
凭证填充攻击仅检查每个站点的单个用户名及口令。攻击者使用自动化工具在数百个(或更多)站点上尝试某人的凭证。
如果人们在所有站点上使用不同的口令,凭证填充攻击将失败。
8. 生日攻击
生日攻击的重点是寻找碰撞。生日攻击的名称来自一个被称为生日悖论的统计现象。生日悖论指出,如果一个房间里有 23 个人,那么其中任何两个人拥有相同生日的可能性为 50%
9. 彩虹表攻击
彩虹表通过使用大量预计算的哈希数据库来减少所需的时间。
许多系统通常使用加盐(salt) 口令来降低彩虹表攻击的有效性。盐是在进行哈希计算之前添加到口令中的一组随机位。
加盐密码算法
Argon2
bcrypt
PBKDF2(基于口令的密钥派生函数 2)
若将胡椒添加到加盐口令中,可以增加安全性,使其更难破解。盐是和哈希口令存储在同一数据库中的随机数,因此攻击者获取数据库后也会得到口令的盐。胡椒是存储在别处的大常数,例如服务器上的配置值或存储在应用程序代码中的常最。
10. Mimikatz
Benjamin Delpy 2007 年发布了 Mimikatz 工具,目的是在学习 编程语言的同时,在Windows 安全方面开展一些实验。 Mimikatz 已经成为黑客和渗透测试人员手中的流行工具。
功能
从内存中读取口令
提取 Kerberos 票证
提取证书和私钥
读取内存中的 LM 和 NTLM 口令哈希值
在本地安全机构子系统服务(LSASS) 中读取明文口令
枚举正在运行的进程
攻击者可以在远程系统上将 Mimikatz 当作无文件恶意软件运行。
11. 哈希传递攻击
哈希传递(PtH)攻击是指攻击者将捕获的口令哈希值发送到身份认证服务。
PsExec Sysinternals 进程工具(PsTools) 的一部分,微软提供免费下载。 PsTools 是一套用于连接到远程计算机的命令行工具。管理员使用 PsTools 来访问远程系统上的命令提示符。
12. Kerberos 漏洞利用攻击
超哈希传递攻击
当网络上禁用 NTLM 时,可以使用这种方法替代哈希传递攻击。即使网络上禁用 NTLM, 系统仍会创建 NTLM 哈希值并将其存储在内存中。攻击者可以使用用户口令哈希值请求票证授予的票证(TGT) 并使用 TGT 访问网络资源。这种攻击有时被称为传递密钥。
票证传递
票证传递攻击中,攻击者试图获取 lsass.exe 进程中保存的票证。在获取票证后,攻击者注入票证以冒充用户。
白银票证(silver ticket)
白银票证使用截获的服务账户 NTLM 哈希值来创建票证授予服务(TGS)票证。服务账户使用 TGS 票证,而不是 TGT 票证。白银票证授予攻击者服务账户的全部特权。
黄金票证
如果能获得 Kerberos 服务账户(KRBTGT) 的哈希值,攻击者就可以在活动目录中随意创建票证。这给了攻击者非常大的权力,因此被称为黄金票证。
Kerberos 暴力破解
攻击者可以在 Linux 系统上运行 Python 脚本 kerbrute.py 或在Windows 系统上运行 Rubeus 。除了猜测口令,这些工具还可猜测用户名。 Kerberos 回复用户名是否有效。
ASREPRoast
此攻击识别未启用 Kerberos 预身份认证的用户。 Kerberos 预身份认证是Kerberos 的一项安全功能,有助千抵御口令猜测攻击。禁用预身份认证后,攻击者可以向 KDC发送身份认证请求。 KDC 将回复一个票证授予票证(TGT) ,使用客户端的口令进行加密。然后攻击者可以发起离线攻击来解密票证并发现客户端的口令。
Kerberoasting
此攻击收集加密的票证授予服务(TGS)票证。服务账户使用 TGS 票证。TGS 票证由用户账户上下文中运行的服务使用。此攻击试图找到没有 Kerberos 预身份认证的用户。
13. 嗅探攻击
嗅探是指捕获通过网络发送的数据包,其目的是分析数据包。
嗅探攻击可以捕获和读取通过网络以明文形式发送的任何数据,包括口令。
14. 欺骗攻击
IP 欺骗攻击
电子邮件欺骗
电话号码欺骗
核心保护方法
控制对系统的物理访问。
控制对文件的电子访问。
哈希和加盐口令。
使用口令掩码。
部署多因素身份认证。
使用账户锁定控制。
使用上次登录通知。
用户安全意识培训。
D6 安全评估与测试
6.1 设计和验证评估、测试和审计策略
安全评估方案的三个主要组成部分:
安全测试
安全测试旨在验证某项控制措施是否正常运行。
这些测试包括自动化扫描、工具辅助的渗透测试、破坏安全性的手动测试。安全测试应该定期实施,并关注保护组织的每个关键安全措施。
渗透测试可以每年开展一次,以最大限度地降低费用并减小业务中断的影响。
安全评估
安全评估是指对系统、应用程序或其他待测环境的安全性进行全面审查。
安全评估的主要成果通常是向管理层提交的评估报告,报告包括以非技术语言描述的评估结果,并往往以提高待测环境安全性的具体建议作为结论。
根据 NIST SP 800-53A, 评估包括4 个组成部分。
规范(specification) 是与待审计系统有关的文档。规范通常包括政策、规程、要求、规格及设计。
机制是信息系统中用于满足规范的控制措施。机制可以基千硬件、软件或固件。
活动是信息系统中的人员所采取的行动。这些行动可能包括执行备份、导出日志文件或审查账户历史记录。
人员是指执行规范、机制及活动的人员。
安全审计
安全评估期间,安全审计虽然遵循许多相同的技术,但必须由独立审核员执行。
尽管组织安全人员可能定期执行安全测试和评估,但这不是安全审计。评估和测试的结果仅供内部使用,旨在评估控制措施,着眼于发现潜在的提升空间。而审计是为了向第三方证明控制措施的有效性而进行的评估。
审计员(auditor)为组织的安全控制状态提供一种客观中立的视角。
审计有三种主要类型:
内部审计
内部审计由组织内部审计人员执行,通常适用千组织内部。
内部审计人员在执行审计时通常完全独立千所评估的职能。在许多组织中,审计负责人直接向总裁、首席执行官或其他类似的角色汇报。审计负责人也可直接向组织的董事会报告。
外部审计
外部审计通常由外部审计公司执行。
因为执行评估的审计员与组织并没有利益冲突,所以外部审计具有很高的公信力。
第三方审计
第三方审计是由另一个组织或以另一个组织的名义进行的审计。
在第三方审计的情况下,执行审计的组织通常挑选审核员,并设计审计范围。
SSAE 18 ISAE 3402 声明通常被称为服务组织控制(SOC) 审计,并以三种形式出现。
SOC1 声明
评估可能影响财务报告准确性的组织控制措施。
SOC2 声明
评估组织的控制措施,这些控制措施会影响存储在系统中的信息的安全性(保密性、完整性和可用性)和隐私。 SOC2 审计结果是保密的,通常仅根据保密协议对外共享。
SOC3 声明
评估组织的控制措施,这些控制措施会影响系统中存储信息的安全性(保密性、完整性和可用性)和隐私。但是, SOC3 审计结果旨在公开披露。
两种不同类型的 SOC报告
I 类报告
这些报告提供的审计员的意见仅涉及管理层提供的描述和控制措施的设计适用性。 类报告仅涵盖特定时间点,而不是一段持续的时间。不妨将 类报告视为件审查,其中审计员以书面形式检查,并确保管理层描述的控制是合理和适当的。
II 类报告
这些报告进一步提供了审计员对控制措施运行有效性的意见。也就是说,审计员实际上确认了控制措施是否运行正常。 II 类报告还涵盖更长的时间段:至少六个月的运行时间。不妨将 II 类报告视为传统的审计。审计员不仅检查文档,还深入现场并验证控制功能是否正常。
审计标准
标准描述组织需要满足的控制目标,而审计或评估应确保组织正确实施控制措施来实现这些目标。
信息和相关技术控制目标(Control Objectives for Information and related Technologies, COBIT)是一种开展审计和评估的通用框架。
国际标准化组织(ISO)还发布了一套与信息安全相关的标准。 ISO 27001 描述了建立信息安全管理系统的标准方法,而 ISO 27002 则介绍了信息安全控制措施的更多细节。
SSAE-16
6.2 进行安全控制测试
漏洞评估
漏洞描述
安全内容自动化协议(Security Content Automation Protocol, SCAP)
通用漏洞披露(Common Vulnerabilities and Exposures, CVE)
提供一种描述安全漏洞的命名系统。
通用漏洞评分系统(Common Vulnerability Scoring System, CVSS)
提供一种描述安全漏间严重性的标准化评分系统。
通用配置枚举(Common Configuration Enumeration, CCE)
提供一种系统配置问题的命名系统。
通用平台枚举(Common Platform Enumeration, CPE)
提供一种操作系统、应用程序及设备的命名系统。
可扩展配置检查表描述格式(Extensible Configuration Checklist Description Format, XCCDF)
提供一种描述安全检查表的语言。
开放漏洞评估语言(Open Vulnerability and Assessment Language, OVAL)
提供一种描述安全测试过程的语言。
漏洞扫描
网络发现扫描
网络发现扫描运用多种技术来扫描一段 1P 地址,从而探测存在开放网络端口的系统。
常见的扫描技术
TCP SYN 扫描
目标系统的每个端口发送一个设置 SYN 标志位的数据包。TCP SYN 扫描也被称为“半开放”(half-open)扫描。
TCP Connect 扫描
远程系统的某个端口创建全连接。适用千执行扫描的用户没有运行半开放扫描所需权限的情况。
TCP ACK 扫描
发送设置 ACK 标志位的数据包,表明它属千某个开放连接。这种扫描可以尝试确定防火墙规则或防火墙方法。
UDP 扫描
使用 UDP 协议对远程系统开展扫描以检查存活的 UDP 服务。
Xmas 扫描
发送设置 FIN PSH URG 标志位的数据包。
网络发现扫描最常用的工具是一款名为 nmap 的开源工具。
Nmap默认只扫描1000个TCP和UDP端口,包括0~1024常用端口号以外的端口。
端口的当前状态
Open(开放)
该端口在远程系统上已经开放,同时该端口上运行着可以主动接受连接请求的应用程序。
Closed(关闭)
该端口在远程系统上可以访问,意味若防火墙允许访问该端口,但是该端口上没有运行接受连接请求的应用程序。
Filtered(过滤)
因为防火墙会干扰连接尝试, nmap无法确定该端口是开放还是关闭。
网络漏洞扫描
网络漏洞扫描不仅探测开放端口,还会继续探测目标系统或网络,从而确定是否存在已知漏洞。网络漏洞扣描工具包含数千已知漏洞的数据库及相应测试,这些工具通过这些测试确认每个系统是否受到凝洞数据库中漏洞的影响。
误报(false positive report)
漏报(false negative report)
网络扫描器默认执行未经身份认证的扫描。即在不知悉密码或未获取授予攻击者特权的其他重要信息的情况下,网络扫描器对系统进行扫描。
实施经身份认证的系统扫描是一种有效的方法,可提高扫描的准确性,同时减少漏洞的漏报和误报。
Web 应用程序漏洞扫描
Web 漏洞扫描器是专门检测 Web 应用程序中已知漏洞的工具。
web漏洞扫描情况
在初次执行 Web 应用程序漏洞扫描时扫描所有应用程序。
在初次将任意的新应用程序移植到生产环境前执行 Web 应用程序漏洞扫描。
在将代码变更部署到生产环境前扫描所有修改过的应用程序。
定期扫描所有应用程序。
PCI DSS 要求企业至少每年执行一次 Web 应用程序漏洞扫描或安装专业的 Web 应用程序防火墙,为抵御 Web 漏洞添加额外的防护层。
数据库漏洞扫描
数据库漏洞扫描器让安全专业人员扫描数据库和 Web 应用程序,以寻找影响数据库安全的漏洞。
sqlmap 是一种常用的开源数据库漏洞扫描工具,帮助安全专业入员检测 Web 应用程序的数据库漏洞。
漏洞管理工作流程
(1) 检测
漏洞的初次识别通常是漏洞扫描的结果。
(2) 验证
一旦扫描器检测到漏洞,管理员应该验证漏洞,判断其是否为误报。
(3) 修复
应该对验证过的漏洞加以修复。漏洞修复可能包括:采用供应商提供的补丁,修改设备配置,执行规避漏洞的折中方法,安装 Web 应用程序防火墙,以及采取阻止漏洞利用的其他控制措施。
渗透测试
因为渗透测试实际上在尝试攻击系统所以该洞试比漏洞测试方法更深入。
渗透测试过程几个阶段
规划阶段
该阶段就测试范围和参与规则达成一致。规划阶段是极其重要的阶段,确保测试团队和管理人员对测试性质达成共识,同时明确测试是经过授权的。
信息收集和发现阶段
结合人工和自动化工具来收集目标环境的信息。
攻击阶段
尝试使用手动和自动漏桐利用工具来破坏系统安全。
报告阶段
总结渗透测试结果,并提出改进系统安全的建议。
Metasploit工具
Metasploit 使用脚本语言来实现常见攻击的自动化执行。
渗透测试通常分以下三种。
白盒渗透测试(White-Box Penetration Test)
向攻击者提供目标系统的详细信息。
灰盒渗透测试(Gray-Box Penetration Test)
也称为部分知识测试,有时被用千平衡白盒渗透测试和黑盒渗透测试的优缺点。
黑盒渗透测试(Black-Box Penetration Test)
攻击之前不会向测试人员透露任何信息。
渗透测试可能带来危害
应用程序崩溃,由于系统、网络或应用程序故障而拒绝服务,甚至数据损坏
NIST指定四个攻击阶段步骤
获得访问
升级特权
系统浏览
安装其他工具
升级特权
系统浏览
安装其他工具
攻击者一旦安装了其他工具,渗透测试人员通常会使用它们获得额外的访问。测试人员可以在访问中进一步升级权限,搜索新的目标或数据。
日志审查
安全信息和事件管理(SIEM)工具包
使大量日志审查的常规工作实现自动化。 SIEM 工具包利用许多设备、操作系统和应用程序提供的 syslog 功能来收集信息。
一些设备(包括 Windows 系统)可能需要安装第三方客户端来实现对 syslog 的支待。
一些设备(包括 Windows 系统)可能需要安装第三方客户端来实现对 syslog 的支待。
日志系统还应该利用网络时间协议(NTP)来确保向 SIEM 发送日志记录的系统和 SIEM时钟是同步的。
信息安全管理者还应定期进行日志审查,特别是对千敏感功能,以确保特权用户不会滥用其职权。
eDiscovery 工具检索个人用户的文件内容
综合交易
代码审查和测试
在将代码移植到生产环境前,此过程对研发工作进行第三方审查。在应用程序正式上线前,代码审查和测试可以发现应用程序在安全、性能、可靠性方面的缺陷,以免这些缺陷对业务运营产生负面影响。
代码审查
代码审查(code review)是软件评估的基础。代码审查也被称为“同行评审" (peerreview), 即除了编写代码的开发人员,其他开发人员也审查代码是否存在缺陷。
最正式的代码审查过程被称为范根检查法(Fagan inspection)
(1) 规划
(2) 总览
(3) 准备
(4) 审查
(5) 返工
(6) 追踪
(2) 总览
(3) 准备
(4) 审查
(5) 返工
(6) 追踪
范根检查法遵循严格的规范流程,每个阶段具有明确定义的进入和退出的标准,这些标准必须在阶段转换之前得到满足
范根检查级别的审查通常只出现在严格受限的研发环境中,大多数组织采用稍微宽松的代码审查流程,它们使用同行评审方法
·开发人员在会议上与一个或多个其他团队成员走查(walk through)代码。
·高级开发人员执行手动代码审查,在将代码移植到生产环境之前签署所有代码。
·在将代码移植到生产环境之前使用自动化代码审查工具检测常见的应用缺陷。
·高级开发人员执行手动代码审查,在将代码移植到生产环境之前签署所有代码。
·在将代码移植到生产环境之前使用自动化代码审查工具检测常见的应用缺陷。
当有必要了解代码中上下文和业务逻辑时,手动代码审查时最佳选择。
静态测试
静态应用程序安全测试(SAST)在不运行软件的情况下,通过分析软件源代码或编译后的应用程序来评估软什的安全性。
静态分析往往涉及自动化检测工具,用于检测常见的软件缺陷,如缓冲区溢出。
动态测试
动态应用程序安全测试(DAST)在软件运行环境下检测软件的安全性。如果组织部署他人开发的软件,动态应用程序安全测试是唯一选择
动态测试可以使用模拟事务(synthetic transaction) 之类的方法验证系统的性能。
交互式应用程 序安全测试(IAST)对运行时行为、应用程序性能、 HITP/HTIPS 流量、框架、组件和后台连接进行实时分析。
运行时应用程序自我保护(RASP)是一种在服务器上运行的工具,可以拦截应用程序的调用,并验证数据请求。
模糊测试
模糊测试是一种特殊的动态测试技术,向软件提供许多不同类型的输入来测试其边界,以发现之前未检测到的缺陷。
模糊测试主要分为以下两大类。
突变(mutation dumb)模糊测试
从软件实际操作获取输入值,然后操纵或改变输入值来生成模糊输入。
预生成(智能)模糊测试
设计数据模型,并基千对软件所用数据类型的理解创建新的模糊输入。
zzuf 工具
zzuf 工具通过操纵软件输入实现突变模糊测试自动化。
比特反转(bit flipping)
局限性
模糊测试通常不能完全覆盖程序的代码,一般仅限千检测不涉及复杂业务逻辑的简单漏洞。
竞争条件(race condition)
测试环境和代码生产环境的变化会掩盖与时间相关的问题,如竞争条件
利用时序问题的竞争条件往往通过代码分析或使用专门测试竞争条件的自动化工具来发现
误用案例测试
在误用案例测试中,测试人员首先列举已知误用案例,然后试图通过手工或自动化攻击的方法,利用这些误用案例来测试应用程序。
误用用例图表使用超过传统用例图表的语言,包括威胁和缓解。
测试覆盖率分析
测试不可能覆盖软件的所有部分。因为软件可能出现的故障或遭受攻击的方式不胜枚举。
软件测试人员通常进行测试覆盖率分析,以估计对新软件的测试程度。
测试覆盖率计算公式
测试覆盖率 = 已测用例的数晕 / 全部用例的数量
测试覆盖率分析公式可以适用千许多不同标准。下面是五个常见标准。
分支覆盖率
条件覆盖率
函数覆盖率
循环覆盖率
语句覆盖率
网站监测
被动监测
在流量穿越网络或抵达服务器的过程中,捕获和分析发送到网站的实际网络流量。
真实用户监控(real user monitoring, RUM)是被动监测的一种变体,在该方法中,监测工具重新组装单个用户的活动,以追踪其与网站的交互。
综合监测(或主动监测)
该方法向网站发起伪造的事务活动,从而评估网站性能。
综合监测可能只是简单地向站点请求一个页面来计算响应时间,也可能执行复杂的脚本来确认事务活动的结果。
信息安全持续监控程序
NIST特别出版物800-137描述了ISCM(信息安全持续监控程序)的典型过程:定义、建立、实施、分析和报告、响应、审查和更新。
接口测试
接口测试依据接口设计规范评估模块的性能,以确保模块在开发工作完后可以协同工作。
需要测试的接口分为三种类型。
应用编程接口(API)
为代码模块之间的交互提供统一的方法,并以 Web 服务的形式向外发布。
用户界面(UI)
包括图形用户界面(GUI)和命令行界面。 UI 为终端用户提供与软件交互的能力。
物理接口
存在于操作机械装置、逻辑控制器或其他物理设备的一些应用程序。
入侵攻击模拟
入侵模拟攻击(BAS)
入侵模拟攻击(BAS)平台寻求自动化渗透测试的某些方面。这些系统旨在将威胁指标注入系统和网络,以触发其他安全控制。
BAS 平台实际上并没有发动攻击,而是对这些安全控制进行自动化测试,从而识别缺陷,这些缺陷可能表明组织需要更新或增强控制措施。
BAS(入侵和攻击模拟系统),是将红队和蓝队技术与自动化相结合的系统,用于模拟针对你的环境运行的高级持续威胁和其他高级威胁参与者。允许在一个环境中复制和评估各种威胁,而无需像人员配备齐全的紫色团队那样多的开销。
合规检查
合规性检查是被监管公司安全测试和评估计划的重要组成部分。
合规性检查验证合规计划列出的所有控制措施是否正常运行并有效满足监管要求。
定期执行合规性检查,可以确保组织合规计划的正常运转,并避免不可预见的监管问题。
6.3 收集安全过程数据(例如,技术和管理)
账户管理
账户管理审查确保用户仅保留被授予的权限,且未发生未授权的修改。
执行账户管理审查的一种方式是对所有账户进行全面审查。考虑到所耗费的时间,这种方法通常只适用于特权账户。
账户管理审查流程示例
(1) 管理人员要求系统管理员提供特权用户及其特殊权限的列表。
(2) 管理人员要求特权审批机构提供特权用户及其特殊权限的列表。
(3) 然后,管理人员对这两份清单进行比较,确保只有经授权的用户能够保留对系统的访问权限,并且每个用户的访问权限不超过其授权。
组织如果没有时间执行全部流程,可以改用抽样方式。在这种方法中,管理人员可以随机抽取部分账户,并对这些账户的授权过程进行充分验证。
管理审查和批准
关键绩效和风险指标
安全管理人员还应持续监测关键绩效和风险指标。
- 遗留漏洞的数量
- 修复漏洞耗时
- 漏洞/缺陷重现
- 被盗用账户的数量
- 在代码移植到生产环境前的扫描过程中检测到的软件缺陷数量
- 重复审计的结果
- 尝试访问已知恶意站点的用户
指示板
组织识别出期望跟踪的关键安全指标后,管理人员可能希望开发一个指示板,以便清晰地展示这些指标的值随着时间的变化,而且管理人员和安全团队可以定期查看。
备份验证数据
审查日志
审查哈希值
请求系统或文件的实际恢复
培训和意识
职前培训
为首次进入组织或担任新角色的员工提供基础知识。
全年定期开展培训和意识提升
提醒员工明确其责任,并让员工了解组织运营环境和威胁形势的变化。
网络钓鱼模拟
许多组织使用网络钓鱼模拟来评估安全意识方案的有效性。这些模拟使用虚假的网络钓鱼消息来确认用户是否容易受到网络钓鱼攻击。
大多数组织使用调查来评估安全意识。网络钓鱼模拟器也经常被使用,但只测试对网络钓鱼问题和技术的认识,而不是一般的安全意识。
灾难恢复(DR)和业务连续性(BC)
一致性的备份方案是DR 和BC 工作中极其重要的组成部分。管理人员应定期检查备份结果,确保流程可有效地运行并满足组织的数据保护需求。
审查日志、审查哈希值或请求系统或文件的实际恢复。
6.4 分析测试输出并生成报告
补救
异常处理
软件的设计核心设计原则是软件永远不要依赖千用户的正确操作。
软件应该可以预料意外情况,并从容地处理无效输入、不正确排序的活动以及其他意外情况。这种处理意外活动的过程被称为异常处理。
向最终用户显示有关代码的错误信息,尤其是包含目录和文件信息的信息,意味着应用程序没有执行正确的异常处理。
道德披露
安全社区拥护道德披露的理念。此理念认为,为了保护客户,安全专业人员在检测到漏洞时有责任向供应商报告,并给予供应商开发补丁或采取其他补救措施的机会。
道德披露首先需要私下告知供应商,让供应商在公布之前修复漏洞。但是,道德披露原则还建议,漏洞提供者应该为供应商预留合理时间来修复漏洞。如果供应商在预留时间内没有修复漏洞,则漏洞提供者可以公开披露漏洞,以便其他安全专业人员在决定未来是否使用该产品时能做出明智的选择。
由于软件和其他技术的复杂性,90天到120天在整个行业中是常见的。
6.5 执行或协助安全审计
内部
外部
第三方
D7 安全运营
7.1 理解并遵守调查
证据收集与处理
收集证据的方法
首先,拥有证据的人可能自愿上交或者同意搜查。
第二,可让法院签发传票或法庭命令,迫使个人或组织交出证据,然后由执法部门送达传票。
第三,执法人员在履行法律允许的职责时,可以扣押他直接看到的证据,并且该人员有理由认为该证据可能与犯罪活动有关。这被称为“直接目视规则”。
第四个选项是搜查证。你必须以可信的理由表示强烈怀疑并说服法官采取这一行动。
最后,在紧急情况下,执法人员可以收集证据。
报告和文档
所进行的每一项调查都应得出一份最终报告,记录调查的目标、流程、收集的证据以及调查的最终结果。
务必准备正式文件,因为它为升级和潜在的法律行动奠定了基础。
调查技巧
永远不要对曾遭受攻击的实际系统实施调查。将系统脱机,备份,仅用备份进行事件调查。
永远不要试图”反击“犯罪并进行报复。否则,可能无意中伤及无辜,并且发现自己受到计算机犯罪的指控。
如有疑问,最好向专家求助。如果不希望执法机构介入,就联系在计算机安全调查领域有丰富经验的私人调查公司。
数字取证工具、策略和程序
计算机证据国际组织(IOCE)概述了指导数字证据技术人员
进行介质分析、网络分析和软件分析以获取证据的原则:
进行介质分析、网络分析和软件分析以获取证据的原则:
- 处理数字证据时,必须应用所有通用的司法和程序原则。
- 收集数字证据时,所采取的行动不应改变证据。
- 某人有必要使用原始数字证据时,应当接受有针对性的培训。
- 与收集、访问、存储或转移数字证据有关的所有活动都应当被完整记录和保留,并且可供审查。
- 在数字证据被某人掌握之后,他应当对与数字证据有关的所有活动负责。
- 所有负责收集、访问、存储或转移数字证据的机构都有责任遵守上述原则。
分析类别
介质分析
介质分析是计算机取证分析的一个分支,涉及识别和提取存储介质中的信息。
这可能包括磁性介质(如硬盘、磁带)或光学介质(如 CD DVD 、蓝光光盘)。
这可能包括磁性介质(如硬盘、磁带)或光学介质(如 CD DVD 、蓝光光盘)。
写阻止器是硬件适配器,它以物理方式中断用千连接存储设备的电缆部分(该
部分电缆用千向设备写入数据),从而降低设备被意外篡改的可能性。
部分电缆用千向设备写入数据),从而降低设备被意外篡改的可能性。
内存分析
内存分析调查人员通常希望从动态系统的内存中收集信息。
分析人员应使用可信工具生成内存转储文件,并将其保存在准备好的取证设备上,如 U盘。
收集内存转储的分析员应该计算转储文件的加密哈希值,以便稍后证明其真实性。
网络分析
网络取证分析往往取决千对事件发生的预先了解,或使用已经存在的、记录网络活动的安全控制措施。
- 入侵检测和防御系统的日志
- 流量监测系统捕获的网络流量数据
- 事件发生过程中有意收集的数据包
- 防火墙和其他网络安全设备的日志
软件分析
取证分析人员也会对应用程序及其活动进行取证检查。某些情况下,当怀疑内部人员时,
取证分析人员可能会被要求对软件代码进行审查,以寻找后门、逻辑炸弹或其他漏洞。
取证分析人员可能会被要求对软件代码进行审查,以寻找后门、逻辑炸弹或其他漏洞。
硬件/嵌入式设备分析
取证分析人员还要对硬件和嵌入式设备中的内容进行分
析。这可能包括审查:
析。这可能包括审查:
- 个人电脑
- 智能手机
- 平板电脑
- 嵌入汽车/安全系统/其他设备的电脑
工件(例如,计算机、网络、移动设备)
你维护并可能在法庭上使用的证据项也称为工件,包括物理设备,如计算机、移动设备和网络设备,
此外,还包括这些设备生成的日志和数据,以及许多其他形式的证据。
此外,还包括这些设备生成的日志和数据,以及许多其他形式的证据。
7.2 执行记录和监控活动
入侵侦测与防御
理想状况下,组织可通过预防措施完全避免事件的发生。然而,无论预防措施多么有效,事件依然会发生。其他控制措施会帮助检测事件并对它们做出响应。
预防性控制
预防性控制(preventative control) 力求阻碍或阻止不必要或未经授权的活动发生。
检测性控制
检测性控制(detective control) 力求发现或检测不必要的或未经授权的活动。检测性控制在事件发生后运行,只有在事件发生后才能发现该活动。
基本预防措施
保持系统和应用程序即时更新。
移除或禁用不需要的服务和协议。
使用入侵检测和预防系统。
使用最新版反恶意软件程序。
使用防火墙。
执行配置和系统管理流程。
常见攻击
僵尸网
命令和控制(command-and-control, C&C C2)服务器
最好的办法是采用深度防御战略,实施多层次的安全保护策略。
拒绝服务攻击
SYN 洪水攻击
阻止这种攻击的一种方法是利用 SYN cookie 。
阻止这种攻击的另一方法是缩短服务器等待 ACK 的时间。
smurf 和 fraggle 攻击
smurf 攻击是洪水攻击的另一种类型,它是用受害者 IP 地址作为源 IP 地址的假广播 ping 请求。
fraggle 攻击所利用的不是 ICMP, 而是在 UDP7 端口 和19 端口上使用 UDP 数据包。 fraggle 攻击利用假受害者 IP 地址
广播 UDP 数据包,结果造成网络上的所有系统都向受害者发送通信流,情形与 smurf 攻击一样。
广播 UDP 数据包,结果造成网络上的所有系统都向受害者发送通信流,情形与 smurf 攻击一样。
ping 洪水
ping 洪水攻击用 ping 请求淹没受害者。
死亡之 ping
使用了超大 ping 数据包,这超出了许多系统的处理能力
泪滴(Teardrop)
泪滴攻击把数据包打碎,使系统接收数据片段后难以乃至根本无法把它们瘟新组合成原始状态。
land 攻击
在 land 攻击中,攻击者把受害者的 IP 地址同时用作源 IP 地址和目标 IP地址,以这种方式向受害者发送假 SYN 包。
零日利用
零日利用(zero-day exploit) 是指利用别人还不知道的漏洞的攻击
攻击者最先发现漏洞。
供应商获悉漏洞但还没有发布补丁。
供应商发布补丁,系统在 24 小时内遭到攻击。
中间人(man-in-the-middle, MITM) 攻击(有时被称作路径攻击)
当一名恶意用户在进行通信的两个端点之间建立了一个位置
蓄意破坏
员工蓄意破坏(sabotage)是指员工对其组织实施破坏的一种犯罪行为
安全信息与事件管理(SIEM)
一种中央应用程序来自动监测网络上的系统。
提供集中的日志记录并可在全组织范围内对系统上发生的事件进行实时分析。
包含安装在远程系统上的代理,用于监测被称为警报触发因素的特定事件。触发因素出现时,代理会将事件报回中央监测软件。
由于需要从不同的设备收集数据, SIEM 具有关联和聚合功能,以便将这些数据转换成有用信息。
持续监控
审计踪迹
监测和问责
监测和调查
持续的监测可以确保记录下所有事件,日后需要时可将其用于事件调查。
监测和问题识别
出口监控
对通信流的监测并非仅针对网络内的或进入网络的通信流。同样重要的是监测离开网络流向互联网的通信流,也就是所谓出口监测。
出口监测可以检测数据未经授权的向外传输,也就是人们常说的数据外泄。
检测或预防数据外泄的两种常见方法
数据丢失预防(DLP)技术
隐写术监测
日志管理
日志管理是指用来收集、处理和保护日志条目的所有方法。
滚动日志允许管理员为日志设置一个最大容量阈值。当日志容量达到这个阈值时,系统开始覆盖日志中最早的事件。
日志归档保存
要用一种方法在保存日志条目的同时防止日志把硬盘驱动器填满。
威胁情报(例如,威胁提要、威胁捕获)
威胁情报(threat intelligence) 是指收集有关潜在威胁的数据,包括利用各种来源及时获得有关当前威胁的信息。
杀伤链模型
军方把各个阶段的行动编排成一个事件链并有序地逐个展开
如果进攻者在攻击链的任何一个阶段不成功,都会导致攻击失败。
网络杀伤链模型
与军用模型一样,这个模型框架旨在通过在攻击的任何阶段阻止攻击者来破坏这条攻击链。
1 侦察
2 武器化
3 交付
4 利用
5 安装
6 指挥和控制
7 目标行动
MITRE ATT&CK 矩阵
是内含已被识别的战术、技术和规程(TTP) 的知识库,可供攻击者在各种攻击中使用。它是网络杀伤链等模型的补充。
包括一下战术:
·侦察
.资源开发
·初始访问
·执行
.持续存在
.特权提升
.防御规避
.凭证访问
·发现
·横向移动
·收集
.指挥和控制
.外泄
.影响
·侦察
.资源开发
·初始访问
·执行
.持续存在
.特权提升
.防御规避
.凭证访问
·发现
·横向移动
·收集
.指挥和控制
.外泄
.影响
每种战术都包含攻击者使用的技术手段。
威胁馈送
威胁馈送(threat feed) 是关于当前和潜在威胁的一种稳定原始数据流。
威胁情报馈送力求从原始数据中提取可执行的情报。
一份威胁情报馈送包含的部分信息:
可疑域
已知恶意软件哈希值
互联网网站共享的代码
与恶意活动关联的 IP 地址
安全专家通过将威胁馈送中的数据与进出互联网的数据进行比较,可以从中识别出潜在的恶意通信流。
威胁搜寻
威胁搜寻(threat hunting) 是指在网络中主动查找网络威胁的过程。
威胁搜寻假定攻击者已经潜藏在网络中——即便还没有预防和检测性控制检测到他们并发出警报。相反,安全专家积极在系统内展开搜索,寻找威胁的迹象。
没有哪种方法可以单独实现威胁搜寻。然而,许多方法在尝试分析攻击的各个阶段,然后在单个阶段里查找攻击的迹象。一种流行的威胁搜寻方法是使用杀伤链模型。
用户和实体行为分析(UEBA)
为特定目标或意图,对用户、主体、访客、客户等的行为进行分析的概念。
用户和实体行为分析(UEBA)软件特别关注端点和其他设备上基千用户的活动,它构建每个人正常活动的概要文件,然后突出显示用户活动与该概要文件的偏差,这些偏差表明可能存在潜在的危害。
7.3 执行配置管理(CM)(例如,预配、基线、自动化)
配置
配置新系统是指安装和配置操作系统及所需的应用程序。
配置系统的一个关键考虑因素是基千其使用情况对其进行加固。加固化的系统比默认配置更安全
禁用所有未使用的服务。
关闭所有未使用的逻辑端口。
删除所有未使用的应用程序。
更改默认口令。
基线
基线是指起点。在配置管理背景下,基线是指系统初始配置。
提及基线,一种简化方法就是配置列表。操作系统基线识别所有配置,以加固特定系统。
使用镜像技术创建基线
管理理员首先在计算机上安装操作系统和所有需要的应用程序。
然后,管理员配置系统,使其相关安全设置及其他设置满足组织要求。
接着,员工执行全面的测试,确保系统能够按照预期运行
然后,管理员配置系统,使其相关安全设置及其他设置满足组织要求。
接着,员工执行全面的测试,确保系统能够按照预期运行
管理员使用镜像软件捕获系统镜像,并将其存储在镜像服务器上,或者外部硬盘驱动器、USB驱动器或DVD中。
员工根据组织需耍将镜像部署到具体系统。这些系统通常需要额外配置来完成部署,例如为系统提供唯一名称
自动化
镜像通常和其他基线自动化方法相结合。
微软操作系统包括组策略。管理员可以一次性配置组策略,并自动将该组策略应用到域中的所有计算机。
7.4 应用基本的安全操作概念
1 因需可知/最小权限
因需可知
因需可知原则要求仅授予用户执行工作所需数据或资源的访问权限。
因需可知通常与安全许可(security clearance)关联,例如拥有“秘密“许可的人。但许可不会自动授予用户对数据的访问权限。
最小特权原则
最小特权原则规定,主体仅被授予执行指定工作所需的特权。请记住,这里的特权既包括访问数据的权限也包括执行系统任务的权利。
最小特权原则依赖于“所有用户都具有明确定义的职责描述"的假设。
最小特权原则通常侧重于保证用户特权受到限制,但也适用于其他主题,比如应用程序或进程。
2 职责分离(SoD)和责任
职责分离(SoD)和责任确保个体无法完全控制关键功能或系统。
职责分离策略形成一个制衡系统,其中两个或多个用户验证彼此的行为,并且必须协同完成必要的工作任务。
如果涉及两个或更多人,暴露风险便会增加,并起到有效的威慑作用。
职责分离策略有助千减少欺诈行为,因为它迫使两人或多人之间串通来执行未经授权的活动。
执行职责分离的另一种方式是多个受信任个体分担安全或管理的功能及职能。当组织在多个用户之间分担管理和安全职责时,个人无法拥有足够的权限来规避或禁用安全机制。
双人控制
双人控制 (two-person control)(有时称为双人制)要求经过两个人批准后才能执行关键任务。
在组织内使用双人控制,可以实现同行评审并减少串通和欺诈的可能性。
知识分割
知识分割(split knowledge)将职贡分离和双人控制的概念融入一个解决方案。其基本思想是将执行操作所需的信息或特权分配给两个或多个用户。
这种做法确保了单人不具有足够的特权来危及环境安全。
3 特权账户管理(Privileged Access Management)
特权账户管理(PAM)解决方案限制特权账户的访问权限,或者检测账户是否使用了提升的特权。
特权账户是指管理员账户或具有特定提升特权的账户。
在Microsoft域中,特权账户包括本地管理员账户(完全控制计算机)、域管理员组中的用户(完全控制域中的任何计算机)和企业管理员组中的用户(完全控制域林中的所有域)。
在Linux 中,特权账户包括使用 root 账户或通过 sudo 命令授予 root 访问权限的用户。
在Linux 中,特权账户包括使用 root 账户或通过 sudo 命令授予 root 访问权限的用户。
微软域(domain)包含限制特权访问的 PAM 解决方案。微软域基于即时管理原则。
在更深的层面上,特权账户管理会监控特权账户执行的操作。监控确保被授予这些特权的用户不会滥用权限。
许多自动化工具可以监控特殊权限的使用情况。当管理员或特权操作员实施其中一项活动时,自动化工具可以记录事件并发送警报。此外,访问审计可以检测特权的滥用。
通过监控提升特权的使用,还可以检测高级持续性威胁(advanced persistent threat, APT) 活动。通过监控常见的特权操作,可以在攻击早期检测到这些活动。
4 岗位轮换
岗位轮换(有时称为职责轮换)是指员工进行岗位轮换,或和其他员工进行职责轮换。
岗位轮换作为一种安全控制措施,可实现同行评审、减少欺诈行为并实现交叉培训。
交叉培训可减少环境对任何个体的依赖。
岗位轮换可以充当威慑和检测机制。如果员工知道其他人将在某个时候接管他们的工作职责,他们就不太可能参与欺诈活动。
强制休假
许多组织要求员工强制休假一周或两周。这种做法提供一种同行评审形式,有助于发现欺诈和串通行为。
和岗位轮换策略一样,强制休假也可充当威慑和检测机制。即使其他人仅接管一两周某个人的岗位,这也足以检测到违规行为。
5 服等级协议(SLA)
服务水平协议(service level agreement, SLA)是组织与外部实体(如供应商)之间的协议。
SLA 规定了绩效预期,并常包括针对未实现这些预期的供应商的惩罚条款。
SLA 规定了绩效预期,并常包括针对未实现这些预期的供应商的惩罚条款。
谅解备忘录(MOU)
除了 SLA, 组织有时还使用谅解备忘录(MOU) 。谅解备忘录记录了两个实体合作达成共同目标的意愿。
虽然 MOU 与 SLA 类似,但 MOU 不太正式,缺少处罚条款。如果其中一方不履行其职责,则没有任何处罚措施。
7.5 应用资源保护
媒介管理
媒介管理是指为保护媒介及其存储数据而采取的步骤。
在此,媒介泛指任何可存储数据的设备。媒介包括磁带、光学介质(如 CD DVD) 、便携式 USB 驱动器、内部硬盘驱动器、固态驱动器和 USB 闪存驱动器。
许多便携式设备,如智能手机,也属千这一分类,因为便携式设备配备了存储数据的存储卡。
媒介管理不仅涵盖备份磁带,还包括任何存储数据的介质类型。媒介管理还包括任何类型的硬拷贝数据。
媒体保护技术
当媒介存储敏感信息时,应该将其存储在有严格访间控制的安全场所,防止因未经授权的访问造成数据泄露。
此外,保管媒介的场所应具备温度和湿度的控制措施,防止因环境污染造成数据丢失。
媒介管理还包括技术控制措施,以限制计算机系统对媒介的访问。
1、磁带媒介
组织通常将数据备份存储在磁带上,磁带受损将极易导致数据丢失。
最佳方案是,组织至少保留两份数据备份。一份保留在本地以备不时之需,另一份保存在异地的安全位置。
存储区域的卫生情况可以直接影响磁带介质的使用寿命和可用性。
磁场,电梯、电机和一些打印机等
极端温度
2、移动设备
移动设备包括智能手机和平板电脑。
带有附件、联系人和日程信息的电子邮件也是数据。
关键是谨记移动设备拥有数据存储功能。如果移动设备存储敏感数据,那么务必采取措施保护这些数据。
3、媒介管理生命周期
所有媒介均拥有一个有用但有限的生命周期。
可重复使用的媒介会受到平均故障时间(mean time to failure, MTTF) 的影响,其中, MTTF 有时表示为可重复使用的次数或预计保存的年限。
备份媒介一旦达到平均故障时间,就应该被销毁。
7.6 执行事故管理
事件定义
事件一般是指会对组织资产的保密性、完整性或可用性产生负面影响的任何事情。
计算机安全事件(有时简称安全事件)通常是指由攻击导致的事件,或由用户的恶意或蓄意行为导致的事件。
“危害计算机或网络安全的某个方面的任何不利事件”。RFC2350 《计算机安全事件响应要求》
“违背或即将违背计算机安全策略、可接受使用策略或标准安全实践规范的情况"。NIST-SP800-61 《计算机安全事件处理指南》
事件的管理步骤
检测
常用方法
入侵检测和预防系统
反恶意软件程序
许多自动化工具定期扫描审计日志,以找出预先定义好的事件,例如有人在使用特殊权限。
最终用户有时会检测出非常规活动并向技术人员或管理员求助。
IT 人员需要对这些事情进行调查才能判断是否真有事件发生。
响应
响应因事件严重程度而各异。许多组织设有专门的事件响应团队一一有时也叫计算机事件响应团队(CIRT) ,或计算机安全事件响应团队(CSIRT) 。
团队成员接受过有关事件响应以及组织事件响应计划的培训。团队成员通常对事件开展调查、评估损害、收集证据、报告事件和执行恢复程序。他们还参与补救和总结教训阶段的工作,帮助分析事件发生的根本原因。
组织对事件响应的速度越快,把损害控制在有限范围的机会越大。
调查结束后,管理层可能会决定起诉事件责任人。出千这一原因,务必在调查过程中保护好可以充当证据的所有数据。
缓释/抑制
抑制措施旨在遏制事件的发展。有效事件管理的主要目的之一是限制事件的影响或范围。
报告
报告是指在组织内通报事件并将情况上报给组织外的相关部门和个人。
对千组织外发生的一些事件,组织往往也有合法的报告要求。
许多司法辖区为保护个人身份信息(PII) 而制定了专门的法律。如果数据破坏事件暴露了个人身份信息,组织必须马上报告。
组织在响应严重安全事件的过程中应该考虑把事件报告给执法部门。
恢复
接下来的一步是恢复系统或使其返回正常运行状态。
对于小事件,这会非常简单,或许只需要重启系统。但是一次重大事件可能会要求彻底重建系统。重建系统包括从最近的备份中恢复所有数据。
当从零开始重建受损系统时,必须确保系统配置恰当,安全性至少要达到事件之前的水平。
访问控制列表(包括防火墙或路由器规则)
服务和协议(确保禁用或移除不需要的服务和协议)_
补丁(确保打上了所有最新补丁)
用户账号(确保账号更改了默认配置)
破坏(确保遭到破坏的所有地方都得到了修复)
补救
在补救阶段,安全人员首先查看事件,查明事件发生的原因,然后采取措施防止事件再次发生。此阶段需要进行一次根本原因分析。
如果根本原因分析找出了一个可以抑制的漏洞,这一阶段将建议改进系统。
经验教训
在总结教训阶段,安全人员查验事件发生和响应的整个过程以确定是否要总结经验教训。事件响应团队将介入这一阶段的工作,而了解事件情况的其他员工也将参与其中。
安全人员在查验事件响应时寻找响应行动中需要改进的方面。
请务必记住,可将这一阶段的结果反馈给事件管理的检测环节。例如,管理员可能意识到攻击是躲过检测而展开的,于是增强检测能力并建议改进入侵检测系统。
事件响应团队总结了经验教训后,通常要编写一份报告。团队可能会根据总结出的结果建议改进程序,增加安全控制,甚至更改策略。
管理层将决定采纳哪些建议,并对因为没有采纳建议而依然存在的风险负责。
管理层将决定采纳哪些建议,并对因为没有采纳建议而依然存在的风险负责。
托付用户管理事件
把响应计算机感染的责任延伸到了用户。每台计算机旁边都放了一份检查表,上面列有恶意软件感染的常见症状。
7.7 执行和维护检测和预防措施
防火墙(例如,下一代、web应用程序、网络)
基本原则
拦截路由器上的定向广播
在边界拦截私网 IP 地址
基本防火墙根据 IP 地址、端口和一些带协议编号的协议过滤通信流。
防火墙执行 ACL 规则,允许特定通信流通过,以隐式拒绝规则结束。
第二代防火墙增加了额外的过滤功能。
第三代防火墙(也被称为状态检测防火墙(stateful inspection firewall)和动态包过滤防火墙)根据通信流在流量中的状态过滤通信流。
应用程序防火墙控制进出特定应用程序或服务的通信流。
WAF 可能是处理器密集型的,所以它可以过滤流向 Web 服务器的通信流,但不是所有的网络通信流。
下一代防火墙(NGFW) 集多种过滤功能千一身,形成一种统一威胁管理(unified threat management, UTM)手段。
入侵检测系统(IDS)和入侵防御系统(IPS)
基于知识检测
基千知识检测 (knowledge-based detection) 也被称为基千签名检测(signature-based detection) 或模式匹配检测,是最常用的检测方法。它使用了 IDS 供应商开发的已知攻击数据库。
主要好处在千它的假阳性率很低。
主要缺点是它只对已知的攻击方法有效。
基于行为检测
第二类检测是基于行为检测(behavior-based detection) ,也被称为统计入侵检测、异常检测或启发式检测。基于行为检测首先会在系统上创建一个正常活动和事件的基线。一旦它积累了足够的基线数据来确定正常活动,便可检测出表明可能出现恶意入侵或事件的异常活动。
基于行为的 IDS 用基线、活动统计数据和启发式评估技术将当前活动与以前的活动进行比较,以检测出潜在恶意事件。
基于行为的 IDS 的一个突出优势是它能检测出还没有签名、尚不能被基于签名方法检测到的较新攻击。
主要缺点在于它经常会发出一些假警报一也叫假阳性。
IDS 响应
IDS 检测到一个事件后会触发警报或发出警示。
被动响应会记录事件并发出通知。
主动响应除了记录事件和发出通知,还会更改环境以阻止活动。
修改 ACL 以拦截基于端口、协议和源地址的通信流,甚至包括切断特定电缆线段的所有通信
基于主机的 IDS
HIDS 监测一台计算机上的活动,包括进程调用以及系统、应用程序、安全措施和基于主机防火墙日志记录的信息。
检查事件的详细程度往往超过 NIDS, 并能精确定位被攻击破坏的具体文件。它还可以跟踪攻击者所用的进程。
HIDS 能检测到 NIDS 检测不出来的主机系统异常情况。
HIDS 不能检测其他系统受到的网络攻击。此外,它往往需要消耗大量系统资源,因此会降低主机系统的性能。
HIDS 更容易被入侵者发现和禁用,并且它们的日志是保留在系统上的,使日志很容易被成功的攻击篡改。
基于网络的 IDS
NIDS 监测并评估网络活动,以找出攻击或异常事件。一个 NIDS可通过远程传感器监测一个大型网络:它使用传感器在关键网络位置收集数据,然后把数据发送给中央管理控制台,例如安全信息和事件管理(SIEM)系统
NIDS 的中央控制台往往安装在一台经过加固的专用计算机上。这减少了 NIDS 的漏洞,可令 NIDS 在几乎不可见的状态下运行,使攻击者更难发现和禁用它。
IPS
入侵预防系统(intrusion prevention system, IPS)是一种特殊类型的主动响应 IDS, 可赶在攻击到达目标系统之前将其检测出来并加以拦截。
NIDS 与基于网络的 IPS(NIPS)之间的明显差别在于 NIPS 是安放在承载通信流的内联线路上的
白名单/黑名单
允许列表识别已被授权在系统上运行的一系列应用程序,同时拦截所有其他应用程序。
拒绝列表则识别未被授权在系统上运行的应用程序。
要么使用允许列表,要么使用拒绝列表。
有些允许列表标识了用哈希算法创建哈希函数的应用程序。但是,如果应用程序感染了病毒,病毒会有效改变哈希值,因此这种允许列表也会阻止受感染应用程序运行
第三方提供的安全服务
有些组织将安全服务外包给第三方,即本组织以外的个人或组织。其中可能包括许多不同类型的服务,如审计和渗透测试等。
某些情况下,组织必须向外部实体保证第三方服务提供者遵守具体安全要求。
一些软件即服务(SaaS) 供应商通过云提供安全服务,其中包含各种基千云的解决方案,如下一代防火墙、 UTM 设备以及过滤垃圾邮件和恶意软件的电子邮件网关。
沙箱
沙箱(sandboxing) 为应用程序提供安全边界,可防止应用程序和其他应用程序交互。
应用程序开发人员常常用虚拟化技术测试应用程序。
蜜罐/蜜网
蜜罐(honeypot) 是为充当引诱入侵者或内部人员威胁的陷阱而创建的单个计算机。
蜜网(honeynet) 则是两个或多个连接在一起以冒充网络的蜜罐。
它们的外表和行为都像合法系统,但是不承载任何对攻击者有实际价值的数据。管理员经常对蜜罐进行配置,用漏洞吸引入侵者攻击蜜罐。蜜罐不打补丁,或者由管理员故意留下安全漏洞。
蜜罐的目的是引起入侵者的注意,使他们远离承载着重要资源的合法网络。
蜜罐和蜜网可安放在网络上的任何地方,但管理员经常把它们配备在虚拟系统中,因为这样更容易在它们遭受攻击后对其进行重建。
蜜罐的使用带来了诱惑与诱捕的问题。
管理员常常给蜜罐配上伪缺陷(pseudo-flaw) ,以模拟众所周知的操作系统漏洞。伪缺陷
是指被故意植入系统的专门用来吸引攻击者的假漏洞或明显弱点。
是指被故意植入系统的专门用来吸引攻击者的假漏洞或明显弱点。
反恶意软件
抵御恶意代码的最重要保护手段是使用带最新签名文件并具备启发式能力的反恶意软件程序。
许多组织以多管齐下的方式拦截恶意软件和检测任何进入的恶意软件。
反恶意软件供应商通常建议任何系统上只安装一种反恶意软件应用程序。系统若安装了多种反恶意软件应用程序,它们可能会相互千扰,有时还会导致系统问题。
严格遵守最小特权原则,也会有帮助。
另一种保护方法是教育用户了解恶意代码的危险性、攻击者欺骗用户安装恶意代码的手段以及自己如何限制风险。
基于机器学习和人工智能(AI)的工具
机器学习系统(人工智能的一部分)始于一套规则或指南。
人工智能系统从一无所知开始,逐步学习规则。然后,它在学习规则的过程中创建自己的算法,并基于这些规则应用机器学习技术。
可以把基千行为的检测系统看作机器学习和人工智能应用千网络安全的一种方式。基线类似于提供给机器学习系统的一组规则。
7.8 实施和支持补丁和漏洞管理
系统管理
补丁和漏洞管理不仅适用于丁作站和服务器,也适用千运行操作系统的所有计算设备。路由器、交换机、防火墙、打印机和其他设备(如统一威胁管理设备)等网络基础设施系统
嵌入式系统是指配备中央处理单元(CPU) 、运行操作系统以及安装一个或多个执行单一或多个功能的应用程序的设备。这些设备可能存在需要修补的漏洞。
如果组织允许员工在企业网络中使用移动设备(如智能手机和平板电脑),则也应将这些设备纳入管理。
补丁管理
补丁是纠正程序缺陷及漏洞,或提高现有软件性能的所有代码类型的总称。软件可以是操作系统或应用程序。补丁有时称为更新、快速修复(quick fix)和热补丁(hot fix)。
有效的补丁管理程序可以确保系统与当前补丁保持同步。
评估补丁
测试补丁
审批补丁
部署补丁
验证补丁是否已完成部署
漏洞管理
漏洞管理是指定期识别漏洞、评估漏洞并采取措施减轻漏洞相关的风险。
消除风险是不可能的。同样,也不可能消灭所有漏洞。
有效的漏洞管理计划有助千组织定期评估漏洞,并抑制代表着最大风险的漏洞。
日常漏洞扫描
定期漏洞评估
漏洞扫描
漏洞扫描器是测试系统和网络是否存在已知安全问题的软件工具。
常见漏洞和披露
漏洞通常使用“通用漏涸和披露”(CVE)字典来标识。
CVE 字典提供了漏洞标识的标准规约。 CVE 数据库由 MITRE 维护。
CVE 数据库使公司更容易创建补丁管理工具和漏洞管理工具。
7.9 理解并参与变更管理过程
变更管理的主要目标是保证变更不会导致意外中断。变更管理流程确保相应人员在变更实施前对变更进行审核和批准,并确保有人对变更进行测试和记录。
变更管理
请求变更
审核变更
批准/拒绝变更
测试变更
安排并实施变更
记录变更
可能存在需要实施紧急变更的情况。管理员仍需要记录变更。
变更管理控制是 ISO 通用标准中一些安全保障要求(security assurance requirement, SAR) 的强制性内容。
版本控制
版本控制通常指软件配置管理所使用的版本控制。
标签或编号系统在多台机器上或在单个机器的不同时间点辨识不同的软件集和配置信息。
配置文档
配置文档明确系统的当前配置。
它明确了系统的负责人以及系统的目的,并列出了应用于基线的所有变更。
7.10 执行恢复策略
备份存储策略
站点恢复策略
多个处理站点
系统弹性、高可用性(HA)、服务质量(QoS)和容错
7.11 执行灾难恢复(DR)过程
响应
人员
通信
评估
修复
培训和意识
经验教训
7.12 测试灾难恢复计划(DRP)
缓存回调/桌面
巡检
模拟
并行
全面中断
7.13 参与业务连续性(BC)计划的制定和演练
7.14 执行并管理物理安全
外围安全控制
1. 围栏、门、旋转门与访问控制门厅
“围栏”是一种边界界定装置。围栏清楚地划分出处于特定安全保护级别的内外区域。
3~4 英尺的围栏可吓阻无意穿越者。
6~7 英尺高的围栏难以攀爬,可吓阻大多数入侵者,但对于坚定的入侵者无效。
8 英尺以上的闱栏,外加带刺的铁丝网,甚至可吓阻坚定的入侵者。
围栏的一种高级形式是周界入侵检测和评估系统(PIDAS) PIDAS 是协同使用两个或三个围栏以提升安全性的围栏系统。
“门”是围栏中可控的出入口。们的威慑级别在功能上必须等同十围栏的威啜级别,这样才能维持围栏整体的有效性。
“旋转门”是一种特殊形式的门,其特殊性在于它一次只允许一个人通过,并且只能朝着一个方向转动。经常用于只能进不能出的场合,或相反的场景。
"访问控制门厅"(也被称为“捕人陷阱")通常是一种配备警卫的内、外双道门机构,或是其他类型的能防止捎带跟入的物理机关,机关可按警卫的意志控制进入的人员。
物理安全的另一个重要部件(尤其对千数据中心、政府设施和高安全组织)是安全隔离桩,其作用是防止车辆的闯入。
2. 照明
照明是最常用的提供安全威慑效果的边界安全控制形式。
照明的主要目的是阻止偶然的闯入者、侵入者、盗贼,或是有偷盗企图的人,比如故意破坏、盗窃和在黑暗中游荡的人。
外部照明一般应在黄昏至黎明期间打开。内部照明可始终打开、手动切换或按需触发(可能通过运动)。
用于边界保护的照明,一般业界接受的标准是:关键区域的照明强度应至少达到 2尺烛光(约为 2流明或 20 勒克斯)
标准建议将灯杆立在照明区域“直径“远的距离。
3. 安全警卫与警犬
所有的物理安全控制,无论是静态的威慑,还是主动探测与监控机制,最终都需要人员进行干预来阻止真实的入侵与攻击行为。
警卫的优点在于他们能够适应各种条件并对各种情况做出反应。
警卫能够学习并识别出攻击活动及模式,可以针对环境的变化做出调整,能够做出决策并发出判断指令。
巡逻应该是经常性的,但间隔应是随机的。
预筛选、团队建设与训练并不能保证安全警卫胜任且可靠。
即使安全警卫最初是可靠的,他们也会受伤或生病,而且会休假,还可能心不在焉,难以抵御社会工程攻击,或者因为滥用药物而被解雇。
警犬是一种非常有效的探测与威慑手段。
巡逻机器人(robot sentries)可以用来自动巡逻一个区域,以检查异常情况。它们通常使用面部识别来确认被授权的个人以及潜在的入侵者。
内部安全控制
1. 钥匙与密码锁
门锁的设计与使用是为了防止未授权人员的出入。
shimming(复制钥匙)攻击
bumping(万能钥匙)攻击
可编程锁与密码锁的控制功能强千预置锁。有些种类的可编程锁能设置多个开锁密钥,还有一些配备了小键盘、智能卡或带加密功能的数字电子装置。
锁能替代警卫充当边界入口的访问控制设备。
2. 环境与生命安全
物理访问控制以及设施安全保护的一个重要方面是,保护环境基本要素的完好以及人员生命安全。
人员始终都应该处于第一位。只有在人员安全的情况下,才能考虑解决业务连续性问题。
居住者紧急计划(occupant emergency plan, OEP) ,提供指导或讲授各种方法,来教你如何最大限度地减少安全威胁,防止受伤,缓解压力,提供安全监视以及防止财产遭受灾害的损失。
OEP 不解决 IT 相关或业务连续性问题,而只针对人员与一般财产安全。
3. 监管要求
每一个组织都在特定的行业或辖区内运营。
可能涉及软件的使用许可、雇佣条件限制、对敏感材料的处理以及对安全法规的遵守。
物理安全的关键性能指标
应确定、监控、记录和评估物理安全的关键绩效指标(KPI)。 KPI 是物理安全各个方面的操作或故障的标准。使用 KPI 的目的是评估安全工作的有效性。
·成功入侵的数量
·成功犯罪的数量
.成功事故数
.成功中断的次数
• 未成功的入侵次数
·未成功犯罪的数量
·未成功事故数
·未成功中断的次数
.检测事故的时间
.评估事故的时间
·响应事故的时间
·从事故中恢复的时间
·事故发生后恢复正常状态的时间
·事故对组织的影响程度
·误报次数(即错误检测警报)
·成功犯罪的数量
.成功事故数
.成功中断的次数
• 未成功的入侵次数
·未成功犯罪的数量
·未成功事故数
·未成功中断的次数
.检测事故的时间
.评估事故的时间
·响应事故的时间
·从事故中恢复的时间
·事故发生后恢复正常状态的时间
·事故对组织的影响程度
·误报次数(即错误检测警报)
应为每个 KPI 建立基线,并保存每个指标的记录。
通过可靠的 KPI 评估,组织可以识别缺陷,评估改进,评估响应措施,并对物理安全控制执行安全投资回报(ROSI)和成本/效益分析。
7.15 解决人员安全问题
出差
警告员工出差期间有关电子设备(如智能手机、平板电脑和笔记本电肪)的安全风险。
敏感数据
理想情况下,出差时设备不应存储任何敏感数据。
如果员工在出差期间需要这些数据,应该使用强加密手段进行保护。
恶意软件和监控设备
始终保持设备的实际控制,可以预防此类攻击。
安全专家建议员工不要携带个人设备,而是携带出差期间使用的临时设备。出差结束后,可以清除这些设备数据,并重装系统。
免费 Wi-Fi
免费 Wi-Fi 很容易被配置成捕获所有用户流量的陷阱。
攻击者可将 Wi-Fi 连接配置成中间人攻击(man-in-the-middle attack) ,迫使所有流量经过攻击者的系统。攻击者可以由此截获所有流量。
VPN
雇主应该访问虚拟专用网络(VPN)来创建安全连接。
安全培训
如果组织有适当的培训和意识计划,那么更易于添加人员安全的主题。
这些计划有助于确保员工了解胁迫系统、出差最佳实践、应急管理计划以及常见的关于人员安全的最佳实践。
在处理人员安全和安保事宜时,培训计划应该强调人员安全的重要性。
应急管理
应急管理计划及实践帮助组织在灾难发生后解决人员安全和安保问题。
组织将根据可能遇到的自然灾害的类型,制订不同的灾难恢复计划。不管面临何种灾难,都应首先考虑人员安全。
胁迫
当员工单独工作时,胁迫(duress) 系统非常有用。
简单胁迫系统只有一个发送遇险呼叫的按钮。监控人员接收到遇险呼叫后,根据设定程序做出响应。
安全系统通常包含口令,员工使用口令来确认情况是正常的还是存在问题的。
一些电子密码锁支持两种或多种口令,例如一种口令用于常规使用,另一种口令用于发出警报。
D8 软件开发安全
8.1 理解安全并将其融入软件开发生命周期(SDLC)中
8.1.1 开发方法(例如,Agile、Waterfal、DevOps、DevSecOps)
软件开发生命周期
1. 概念定义
2. 功能需求确定
3. 控制规范的制定
4. 设计审查
5. 编码
6. 代码审查演练
7. 系统测试审查
8. 维护和变更管理
生命周期模型
瀑布模型
传统的瀑布模型有 7 个发展阶段。随若每个阶段的完成,项目进入下一阶段。
迭代瀑布模型允许开发返回前一阶段,以纠正后续阶段中发现的缺陷。这通常被称为瀑布模型的反馈回路特性。
只允许开发人员在软件开发过程中后退一个阶段。
当明确的目标和稳定的需求与防止缺陷和对开发过程和输出的高度控制相结合时,瀑布仍然是一个强有力的竞争者。
螺旋模型
允许瀑布型的处理过程多次反复。
螺旋模型封装了许多迭代的其他模型(也就是瀑布模型),所以也被称为元模型或“模型的模型”。
螺旋的每次“回路”都导致新系统原型的开发
瀑布模型侧重于大规模的工作,以交付已完成的系统,而螺旋模型侧重于迭代一系列越来越“完善”的原型,以强化质量控制。
软件开发方法
敏捷软件开发
强调客户需求的和注重快速开发新功能的方法,新功能以迭代方式满足这些需求。
《敏捷软件开发宣言》还定义了反映基本理念的 12 条原则
以客户为中心的理念
Scrum 、看板、快速应用程序开发(RAD) 、敏捷统一过程(AUP) 、动态系统开发模型(DSDM)和极限编程(XP)
RAD
注重快速开发并及时适应变更需求
4个阶段
需求规划 Requirements Planing
用户设计 User Design
组建 Construction
快速转换 Cutover
用户故事
User stories
User stories
敏捷开发工具
Scrum 方法将工作组织成短时间的活动冲刺。
DevOps
Development(开发)和 Operations(运营)的组合,表示这些职能必须剧合和合作才能满足业务需求。
软件开发、质量保证和 IT 运营之间的重叠。
DevOps 模型与敏捷开发方法紧密配合,旨在大幅缩短开发、测试和部署软件所需的时间。
实现持续集成/持续交付(CI/CD) 的目标,需要高度自动化,包括集成代码库、软件配置管理过程以及代码在开发、测试和生产环境之间的移动。
DevSecOps
开发和运营的紧密集成也要求同时集成安全控制。
如果代码正在快速开发并投入生产,那么安全性也必须以同样的敏捷性进行。
DevSecOps 方法还支持软件定义的安全性概念,其中安全控制由代码主动管理,允许它们直接集成到 CI/CD 管道中。
8.1.2 成熟度模型(例如,能力成熟度模型(CMM)、软件保证成熟度模型(SAMM))
SW-CMM CMM SCMM
Capability Maturity Module
Capability Maturity Module
主张所有从事软件开发的组织都将依次经历不同的成熟阶段。
描述了支持软件过程成熟度的原则与惯例,该模型旨在通过将临时的、混乱的软件过程发展为成熟的、规范的软件过程,以帮助软件组织改善软件过程的成熟度和质量。
SW-CMM 背后的理念是软件的质量依赖千其开发过程的质量。
SW-CMM 阶段
第一阶段:初始级
几乎或完全没有定义软件开发过程。
第二阶段:可重复级
有组织地重用代码
组织开始引入基本的软件生命周期管理过程
需求管理、软件项目计划编制、软件项目跟踪和监督、软件转包合同管理、软件质量保障和软件配置管理。
第三阶段:定义级
一系列正式的、文档化的软件开发过程
组织过程关注点、组织过程定义、培训计划、集成软件管理、软件产品工程、组间协调和同行评审。
第四阶段:管理级
使用定量方法来详细了解开发过程。
定量过程管理和软件质量管理。
第五阶段:优化级
优化级的组织会采用一个持续改进的过程。
缺陷预防、技术变更管理和过程变更管理。
CMM 在很大程度上已被一种名为能力成熟度模型集成(CMMI) 的新模型所取代。
CMM CMMI 之间的主要区别在于 CMM 关注单独的过程,而 CMMI 关注这些过程的集成.
软件保证成熟度模型(SAMM)
试图提供一个框架,将安全活动集成到软件开发和维护过程中,并为组织提供评估其成熟度的能力。
SAMM 将软件开发过程划分为以下五个业务功能:
治理
战略、指标、策略、合规、教育和指导实践
设计
定义软件需求和创建软件的过程
威胁建模、威胁评估、安全需求和安全架构的实践。
实施
安全构建、安全部署和缺陷管理实践。
验证
架构分析、需求-驱动测试和安全测试。
运营
事件管理、环境管理和运营管理。
IDEAL模型
启动 Initiating
诊断 Diagnosing
建立 Eastablishing
行动 Acting
学习 Learning
甘特图于PERT
甘特图是一种显示项目和调度之间随时间变化的相互关系的条形图,提供了帮助计划、协调和跟踪项目中特定任务调度的图表说明。
计划评审技术(PERT)是一种项目调度工具,这种工具用于在开发中判断软件产品的规模并为风险评估计算标准偏差(standard deviation, SD) PERT 将估计的每个组件的最小可能规模、最可能的规模以及最大可能规模联系在一起。 PERT 图表清楚显示了不同项目任务之间的依赖关系。
8.1.3 操作/运营与维护
8.1.4 变更管理
一旦软件被发布到生产环境,用户必然要求增加新功能,纠正漏洞,并对代码执行其他变更。
变更必须被集中记录,以支持将来的审计、调查、故障排除和分析需求。
变更管理流程有 3 个基本组件
请求控制
请求控制过程提供了一个有组织的框架,在这个框架内,用户可以请求变更Request for Change(RFC),管理者可以进行成本/效益分析,而开发人员可以优化任务。
变更控制
开发人员使用变更控制过程来重建用户遭遇的特定情况并分析能进行弥补的适当变更。变更控制过程也提供了一个有组织的框架。在这个框架内,多个开发人员可创建和测试某个解决方案,然后将它部署到生产环境中。变更控制包括:遵守质量控制约束,开发用于更新或变更部署的工具,正确记录任何编码变化,以及最小化新代码对安全性的负面影响。
发布控制
一旦完成变更,它们就必须通过发布控制过程进行发布。发布控制过程中一个必不可少的步骤是:仔细审核并确保在变更过程中作为编程辅助插入的任何代码(如调试代码和/或后门)在软件发布前已被删除。该流程还确保仅对生产系统进行已批准的变更。发布控制也应包括验收测试,以确保对最终用户工作任务的变更都被理解并发挥作用。
变更评审委员会CAB
审核,并批准或拒绝变更
变更请求RFC
Request for Change
Request for Change
8.1.5 综合产品团队(IPT)/集成产品团队
将利益相关者聚集在一起进行软件和系统开发
作为一种将多功能团队聚集在一起的方法,其目标是交付产品或制订流程、策略。
“IPT 的建立是为了促进并行决策,而不是顺序决策,并保证在整个开发过程中考虑产品、过程或策略的所有方面。”
8.2 在软件开发环境中识别和应用安全控制
8.2.1 编程语言
机器语言
使用二进制数字的语言
汇编语言
使用助记符来表示 CPU 基本指令的高级语言
高级编程语言
编译型
使用称为编译器的工具将高级语言的源码转换成在特定操作系统中使用的可执行文件。
逆向工程领域的专业人员可以借助反编译器和反汇编器来逆转编译过程。
反编译器尝试将二进制可执行文件转换回源代码形式
反汇编器则尝试将其转换成汇编语言
代码保护技术寻求通过各种技术来防止或阻止反编译器和反汇编器的使用。
解释型
最终用户在其系统上执行程序时,会自动使用解释器来执行存储在系统上的源代码。
用户打开源代码文件,还可以查看程序员编写的原始指令。
面向对象编程
OOP 则关注交互所涉及的对象。可将这些对象视为被要求执行特定操作或显示特定行为的一组对象。
OOP 可能更可靠,能减少程序变更错误的传播。作为一种编程方法, OOP 更适用千建模或模拟现实生活。
常见的面向对象编程术语:
消息
方法
行为
类
实例
继承
委托
多态性
内聚
耦合
8.2.2 库
开发人员通常依赖于包含可重用代码的共亨软件库。
8.2.3 工具集
开发人员使用各种工具来帮助他们工作,其中最赋要的是集成开发环境(IDE)
8.2.4 集成开发环境(IDE)
IDE 为程序员提供了一个单一的环境,在这里他们可以编写代码,测试代码,调试代码和编译代码(如果适用)。
8.2.5 运行时
在某些情况下,语言依赖于运行时环境来允许跨不同操作系统的代码移植执行。 Java拟机(JVM)就是这种运行时的一个著名例子。用户在其系统上安装 JVM 运行时环境,然后依赖该运行时执行编译的 Java 代码。
8.2.6 持续集成和持续交付(CI/CD)
8.2.7 安全编排自动化与响应(SOAR)
SOAR(Security orchestration, automation, and response)是指一组允许组织自动响应某些事件的技术。SOAR允许安全管理员定义这
些事件和响应,通常使用playbook和 runbook,其中:playbook是定义如何验证事件的文档或清单;runbook将playbook数据实现为自动
化工具。
些事件和响应,通常使用playbook和 runbook,其中:playbook是定义如何验证事件的文档或清单;runbook将playbook数据实现为自动
化工具。
8.2.8 软件配置管理(SCM)
配置标识
在配置标识过程中,管理员记录整个组织范围内的软件产品的配置。
配置控制
配置控制确保对软件版本的变更与变更控制和配置管理策略一致。只有符合这些策略的授权分发能执行更新操作。
配置状态统计
用千跟踪发生的所有授权变更的正规过程。
配置审计
定期的配置审计能够确保实际的生产环境与统计记录一致,并确保没有发生未授权的配置变更。
8.2.9 代码存储库
开发人员存放源代码的中心存储点,还提供版本控制、错误跟踪、 Web 托管、发布管理和可支持软件开发的通信功能。
仓库所有者必须仔细设计访问控制,仅授予用户适当的读取和/或写入权限。不正确地授予用户读访问权限,可能会允许未经授权的个人检索敏感信息,而不正确地授予写访问权限,可能会导致未经授权的代码篡改。
开发人员必须注意,不要把敏感信息放入公共代码仓库中,尤其是 API 密钥之类的信息。
8.2.10 应用程序安全性测试(例如,静态应用程序安全测试(SAST)、动态应用程序安全测试(DAST))
进行测试的最佳时间是在设计模块时。
合理性检查确保符合指定指标的返回值在合理范围内。
测试软件产品如何处理正常和有效的输入数据、不正确的类型、越界值以及其他边界和/或条件。
因为缺陷或错误可能破坏测试数据的完整性或保密性,所以不应该使用实时的或实际的现场生产数据进行测试
测试软件时,应该与组织的其他方面一样使用职责分离原则
三种不同的理念:
白盒测试
白盒测试检查程序的内部逻辑结构并逐行执行代码,从而分析程序是否存在潜在的错误。白盒测试的关键属性是测试人员可以访问源代码。
黑盒测试
通过提供广泛的输入场景并查看输出,黑盒测试从用户的角度检查程序。黑盒测试人员并不访问内部的代码。
灰盒测试
在这种测试方式中,测试人员着手从用户的角度俭查软件,分析输入和输出;测试人员也会访问源代码,并使用源代码来帮助设计测试。不过,测试人员在测试期间并不分析程序的内部工作原理。
代码审查和测试技术
静态测试
静态应用程序安全测试(SAST)在不运行软件的情况下,通过分析软件源代码或编译后的应用程序来评估软件的安全性。静态分析往往涉及自动化检测工具,用于检测常见的软件缺陷,如缓冲区溢出。
动态测试
动态应用程序安全测试(DAST)在软件运行环境下检测软件的安全性。如果组织部署他人开发的软件,动态应用程序安全测试是唯一选择,因为测试人员无法接知到软件的底层源代码。
动态测试可以使用模拟事务(synthetic transaction) 之类的方法验证系统的性能。模拟事务是一些脚本化的事务用例及其预期结果。
传递审查
Pass around
Pass around
通常通过电子邮件或使用中央代码审查系统完成,允许开发人员异步审查代码。
结对编程
Pair programming
Pair programming
结对编程需要两个程序员一起工作,一个编写代码,另一个审查和跟踪进度。
团队审查
一个小组
Fagan 检查法
Fagan inspection
Fagan inspection
Fagan检查是一个正式的审查流程,涉及开发人员和团队使用正式流程审查代码
攻击面识别
保证
Assurance
Assurance
保证程序是在系统生命周期内构建信任的正规过程。
通用标准(CC)提供了一种用于政府环境的标准化保证方法。
保证是用来描述软件没有漏洞的信任级别,这些漏洞可能在开发生命周期内的任何时候有意或无意地设计加入软件中,另外用来描述软件以预期的方式运行。它通常用于军事和国防环境。
避免和抑制系统故障
输入验证
身份认证与会话管理
错误处理
记录
失效打开和失效关闭
SLA
服务提供商和供应商都认同的确保组织向内部和/或外部客户提供的服务保持适当水平的一种方法。
服务水平协议通常还包括财务和其他的合约性补偿措施。如果合约双方不能维持协议,这些补偿措施就生效。
8.3 评估软件安全的有效性
8.3.1 审核和记录变更
8.3.2 风险分析和缓解
恶意代码
恶意代码的来源
脚本小子
不理解安全漏洞的内在机理,只会从网上下载现成的软件(或脚本程序),并利用这些软件对远程系统进行攻击。
新的病毒制造软件的出现,即使是只掌握极少技术知识的人,也可以利用它制作病毒并使其在互联网上传播。
高级持续性威胁(APT)
APT 是富有经验的对手,通常拥有先进的技术和雄厚的资金。这些袭击者通常是军事单位、情报机构或隶属于政府机构的影子团体。
APT 攻击者和其他恶意软件作者之间的主要区别是,恶意软件开发人员通常掌握软件供应商不知道的零日漏洞。
由 APT 构建的恶意软件具有高度针对性,旨在只影响少最的敌方系统(通常少到一个),因此很难防御。
病毒
计算机病毒主要有两个功能:
传播和有效载荷执行
病毒传播技术
主引导记录病毒
主引导记录(master boot record, MBR) 病毒是已知最早的病毒感染形式。这些病毒攻击 MBR一可启动介质(如硬盘或 盘)上用于在计算机启动过程中加载操作系统的部分。
由千 MBR 非常小(通常只有 512 字节),因此它装不下实现病毒传播和破坏功能所需的全部代码。为避开空间的限制, MBR 病毒将主要的代码保存在存储介质的其他部分。
由千 MBR 非常小(通常只有 512 字节),因此它装不下实现病毒传播和破坏功能所需的全部代码。为避开空间的限制, MBR 病毒将主要的代码保存在存储介质的其他部分。
文件感染病毒
许多病毒感染不同类型的可执行文件,并且在操作系统执行这些文件时被激活。在 Windows 系统上,文件感染病毒通常影响可执行文件和脚本,例如以.exe .com和.msc 扩展名结尾的文件和脚本。文件感染病毒的传播程序可能只会稍微改动可执行程序的代码,从而植入病毒复制和破坏系统所需的技术。
文件感染病毒的一个变体是同伴病毒。这种病毒是自包含的可执行文件,利用与合法的操作系统文件类似又稍有不同的文件名来躲避检查。同伴病毒依靠基于Windows 的操作系统在执行程序文件时添加到命令中的默认文件扩展名(.com .exe 和.bat, 并且遵循这个顺序)进行操作。
宏病毒
一些应用程序为了自动执行重复任务而实施了某些脚本功能。这些功能通常使用简单却有效的编程语言,俐如 Visual Basic for Applications(VBA) 。虽然宏的确提高了计算机用户的生产率,但它们也将系统暴露给另一种感染手段——宏病毒。
服务注入病毒
最近爆发的恶意代码使用另一种感染系统并逃脱检测的技术——将自己注入可信的操作系统运行进程中,如 svchost.exe winlogon.exe explorer.exe 。通过破坏这些可信进程,恶意代码可绕过主机上运行的反病毒软件的检侧。让系统免受服务注入病毒的最佳技术是确保为浏览 Web 内容的所有软件(如浏览器、媒体播放器、帮助程序)打上最新的安全补丁。
病毒技术
复合病毒
复合病毒试图使用多种传播技术渗透只防御其中一种技术的系统。
隐形病毒
隐形病毒通过篡改操作系统来隐藏自己以欺骗反病毒软件,使其认为一切正常。
多态病毒
在系统间传输时,多态病毒实际上会修改自身的代码。这种病毒的传播和破坏技术不会变化,只是每次在感染新的系统后,病毒的特征都会略有改变。多态病毒制造者就是希望通过连续改变特征来使基于特征的反病毒软件失效。
加密病毒
密病毒使用加密技术来躲避检测。从外表上看,加密病毒很像多态病毒,感染系统的每个病毒都有不同的特征。然而,加密病毒不是通过改变代码生成修改过的特征,而是修改其在磁盘上的存储方式。
加密病毒使用一个很短的、被称为病毒解密程序的代码段这个代码段包含必要的密码信息,这些信息用于对存储在磁盘其他地方的主病毒代码进行加载和解密。每个感染过程都使用不同的密钥,使主代码在每个系统上都呈现出完全不同的样子。
加密病毒使用一个很短的、被称为病毒解密程序的代码段这个代码段包含必要的密码信息,这些信息用于对存储在磁盘其他地方的主病毒代码进行加载和解密。每个感染过程都使用不同的密钥,使主代码在每个系统上都呈现出完全不同的样子。
病毒恶作剧
几乎每个电子邮件用户都曾收到过朋友转发的邮件或者有关互联网存在最新病毒威胁的警告。
社交媒体形势的变化仅仅改变了恶作剧流传的方式。
逻辑炸弹
逻辑炸弹是感染系统并且在满足一个或多个条件(如时间、程序启动、 Web 站点登录、某些按键等)前保持休眠状态的恶意代码对象。大多数逻辑炸弹都由软件开发人员植入用户定制的应用程序中,这些开发人员的目的是在被突然解雇时破坏公司的工作。
逻辑炸弹的形状和大小多种多样。事实上,许多病毒和特洛伊木马都包含逻辑炸弹组件。
逻辑炸弹也可能被恶意开发人员深入集成到现有的系统中,而不是作为独立的代码对象。
特洛伊木马
特洛伊木马也是一种软件程序,它表面友善,但实际却包含了恶意有效载荷,可能对系统或网络造成破坏。
不同的特洛伊木马在功能上区别很大。
一些木马破坏系统上存储的数据,试图在尽可能短的时间段内产生大规模破坏。
另一些木马则可能是无害的。木马的制作者希望通过 Xbox 木马使其 Web 页面接收到大量浏览,从而获得广告收入。
最近,对安全造成重大影响的一类木马是流氓杀毒软件。一旦用户安装了,它就会窃取个人信息或提示用户付款以“更新“流氓杀毒软件。”更新”只是使木马无效而已!
远程访问木马(remote access Trojan, RAT)是特恪伊木马的一个子类,它在系统中打开后门,使攻击者能够远程控制被感染的系统。
其他特洛伊木马旨在窃取受感染系统的计算能力,以挖掘比特币或其他加密货币。通过使用这些计算能力,攻击者获得了经济回报。执行加密货币挖掘的特洛伊木马和其他恶意软件也被称为加密恶意软件。
蠕虫
蠕虫给网络安全带来了重大风险。它们和其他恶意代码对象有相同的破坏潜力,并且另有变化一一不需要人为干预就可以传播它们自己。
互联网蠕虫是互联网上发生的首例主要的计算机安全事件。
Code Red 蠕虫
Code Red 所利用的 IIS 漏洞的安全补丁在蠕虫攻击网络前一个月左右就已由 Microsoft 发布。
震网病毒
高级传播技术
在本地网络上搜索未受保护的管理共享系统
利用 Windows Server service 和 Windows Print Spooler service 中的零日漏洞
使用默认的数据库密码连接系统
通过使用受感染的共享 盘驱动器进行传播
震网病毒在从一个系统传播到另一个系统的过程中,不会破坏系统,它实际上在寻找一种特殊的系统一由西门子公司制造的控制器系统,据称是用千生产核武器材料的系统。当发现这样的系统时,它会执行一系列操作以摧毁连接到西门子控制器的离心机。
震网病毒的出现标志着恶意代码世界里的两个主要演变
使用蠕虫对物理设施进行严重的破坏
在国与国之间的战争中使用恶意代码。
间谍软件与广告软件
间谍软件会监控你的行为,并向暗中监视你活动的远程系统传送重要细节。
广告软件在形式上与间谍软件相似,只是目的不同。广告软件使用多种技术在被感染的计算机上显示广告。最简单的广告软件会在你访问网站时在屏幕上弹出广告。恶毒的广告软件则可能监控你的购物行为,并将你重定向到竞争者的网站。
佪谍软件和广告软件都属于潜在有害程序(PUP,potentially unwanted programs) ,用户可能会同意将此类软件安装在其系统上,然后,这些软件在背地里执行用户不希望或未授权的功能。
勒索软件
Ransomware
Ransomware
勒索软件是一种利用加密技术的恶意软件。它感染系统所用的技术和其他类型的恶意软件采用的技术大多相同,然后,勒索软件生成一个只有勒索软件作者知道的加密密钥,并使用该密钥加密系统硬盘和任何已安装的驱动器上的关键文件。加密使授权用户或恶意软件作者以外的任何人都无法访问数据。
遭受勒索软件攻击的组织通常会面临进退两难的境地。那些拥有强大备份和恢复程序的用户在使用这些备份重建系统并进行补救以防止未来感染时,可能会停机一段时间;而那些缺乏数据备份的人则发现,为了重新找回数据,他们不得不支付赎金。
支付赎金的行为可能是违法的!
恶意脚本
Malicious Scripts
Malicious Scripts
世界各地的技术专家用脚本和自动化技术来提高工作效率和有效性。
恶意攻击者也可以使用同样的脚本技术来提高效率。特别是, APT 组织经常利用脚本自动化其恶意活动的常规部分。
恶意脚本通常也存在于一类名为“无文件恶意软件”的软件中。这些无文件攻击从不将文件写入磁盘,使其更难被检测到。
零日攻击
许多形式的恶意代码利用了零日 (zero-day) 漏洞(黑客发现的还没有被安全社区彻底修复的安全漏洞)。
系统受零日漏洞影响的主要原因有两个:
从攻击者发现新型恶意代码,到安全社区发布补丁和反病毒库更新,期间必然存在延迟。这被称为脆弱性窗口。
系统管理员应用更新的速度缓慢。
零日漏洞的存在使得你有必要对网络安全采取深度防御方法
恶意软件预防
易受恶意软件攻击的平台
大约有 83 %的恶意软件是针对 Windows 平台的
恶意软件开发的一个变化,更多的移动设备和其他平台成为恶意软件的目标。
底线是所有操作系统的用户都应该意识到恶意软件的威胁,并确保他们有足够的防护措施。
反恶意软件
绝大多数都会使用被称为基于特征的检测方法来识别系统上潜在的病毒感染。防病毒软件维护一个包含所有已知病毒特征的超大数据库。根据防病毒软件
包的配置设置,它会定期扫描存储介质,检查其中是否有包含符合这些条件的数据的文件。该软件的效力仅与它所基千的病毒定义文件的效力相同。
包的配置设置,它会定期扫描存储介质,检查其中是否有包含符合这些条件的数据的文件。该软件的效力仅与它所基千的病毒定义文件的效力相同。
如果检测到病毒,防病毒软件将执行以下操作之一
如果该软件能够根除病毒,它将处理受影响的文件,并将机器恢复到安全状态。
如果软件识别出病毒,但不知道如何处理被照染的文件,它可能会隔离这些文件,直到用户或管理员手动处理它们。
如果安全设置/策略未提供隔离,或者文件超出了预定义的危险阙值,防病毒软件可能会删除受感染的文件,以保持系统的完整性。
还有一些防病毒软件使用启发式机制来检测潜在的恶意软件感染。这些方法分析软件的行为寻找病毒活动的迹象,例如试图提升特权等级,掩盖其电子轨迹,以及更改无关的或操作系统的文件。
一种常见的策略是使系统隔离可疑文件并将其发送给恶意软件分析工具,这在隔离但受监控的环境中执行。如果该软件在环境中行为可疑,它将被添加到整个组织的黑名单中,组织将快速更新防病毒特征以应对新的威胁。
完整性监控
其他安全软件,如文件完整性监控工具,也提供了辅助性的防病毒功能。
这些系统通过维护存储在系统上的所有文件的哈希值来工作。然后将这些存档的哈希值与当前的计算值进行比较,以检测在这两个时段之间被修改的文件。
高级威胁保护
端点检测和响应(EDR)
传统的反恶意软件防护方案
分析端点内存、文件系统和网络活动是否存在恶意活动迹象
自动隔离可能的恶意活动以控制潜在损害
与威胁情报源集成,以实时了解互联网其他地方的恶意行为
与其他事件响应机制集成以自动化响应工作
托管式检测和响应(MDR)服务
许多安全供应商将 EDR 功能作为托管服务提供,其中包括安装、配置和监控服务,以减轻客户安全团队的负担。这些托管 EDR 产品称为托管式检测和响应(MDR)服务。
用户和实体行为分析(UEBA)
特别关注端点和其他设备上基千用户的活动,它构建每个人正常活动的概要文件,然后突出显示用户活动与该概要文件的偏差,这些偏差表明可能存在潜在的危害。
UEBA 和 EDR 的不同之处在于, UEBA 的分析重点是用户,而 EDR的分析重点是端点。
下一代端点保护工具
下一代端点保护工具通常包含多种不同的功能。同一套件可以提供传统反恶意软件保护、文件完整性监控、端点检测和响应,以及用户和实体行为分析的模块。
应用程序攻击
缓冲区溢出
当开发人员没有正确验证用户的输入以确保用户输入适当大小的内容时,就会存在缓冲区溢出漏洞。输入太多而“溢出“原有的缓冲区,就会覆盖内存中相邻的其他数据。在最糟的情况下,该数据可用来覆盖系统指令,使攻击者能利用缓冲区溢出漏洞在服务器上执行目标指令。
只要允许用户输入变量,编程人员就应当采取满足下列各项条件的措施。
用户输入的值的长度不能超过存放它的缓冲区的大小
用户不能向保存输入值的变量类型输入无效的值
用户输入的数值不能超出程序规定的参数范围
这种漏洞会导致系统崩溃,甚至可能允许用户运行 shell 命令以获得系统访问权限。缓冲区溢出漏洞在使用通用网关接口(common gateway interface, CGI)或其他语言进行快速 Web 开发的代码中尤其普遍,这种开发方案允许没有经验的编程人员快速生成交互式 Web 页面。
差1错误
定义一个10个元素的数组,编号为0-9。然后试图在数组的第11个元素中添加一个值,这样便会导致溢出。
检查时间到使用时间
攻击者可以根据任务执行的可预测性发起攻击。算法的常见事件序列是:先检查资源是否可用,然后在允许的情况下访问它。检查时间(time of check, TOC)是主体检查客体状态的时间。在返回到客体以访间它之前,可能要做几个决定。当决定访问客体时,过程在使用时间(time ofuse, TOU)访问它。
TOC TOU 之间的差异有时大到足以让攻击者用另一个满足自己需求的客体替换原来的客体。检查时间到使用时间(TOC/TOU TOC/TOU)攻击通常被称为竞态条件,因为攻击者赶在合法过程使用客体之前替换它。
当资源或整个系统的状态发生变化时,攻击者可以尝试在两个已知状态之间采取行动。通信中断也提供了攻击者可能试图利用的小窗口。
TOC/TOU 攻击、竞态条件攻击和通信中断袚称为状态攻击,因为它们攻击的是特定时间、数据流控制以及系统状态之间的转换。
后门
后门是没有被记录到文档中的指令序列,它们允许软件开发人员绕过正常的访问限制。
除了开发人员植入的后门外,许多恶意代码感染系统后也会留后门,以允许恶意代码的开发者远程访问受感染的系统。
特权提升和 rootkit
攻击者一旦在系统上站稳脚跟,通常会迅速向第二个目标迈进—计各他们的访问权限从普通账号提升为管理员账号。他们通过特权提升攻击来实现此目标。
rootkit 可从互联网上免费获得,它利用操作系统上已知的漏洞。攻击者经常通过使用密码攻击或社会工程获得系统的普通用户账户的访问权哏,然后利用 roo 将访问权限提高到 root(或系统管理员)级别
注入漏洞
SQL 注入攻击
攻击者无法直接查看结果时,将使用名为盲注的技术进行攻击。
基于内容的盲注
在基千内容的盲注中,攻击者在尝试执行攻击前会向 Web 应用程序发送输入,以测试该应用程序是否会解释注入的代码。
基千计时的盲注
使用处理查询所需的时间作为从数据库检索信息的通道。这种攻击依赖不同数据库平台提供的延迟机制。
代码注入攻击
任何将用户提供的输入插入应用程序开发人员编写的代码中的环境都可能受到代码注入攻击。
LDAP 注入攻击
输入验证和转义以及防御性编码对于消除这种威胁至关重要。
XML 注入
DLL 注入攻击
跨站脚本
命令注入攻击
应用程序代码可能返回到操作系统以执行命令。
利用授权漏洞
不安全的直接对象引用
Web 开发人员设计的应用程序根据用户在查询字符串或 POST 请求中提供的参数直接从数据库检索信息。
目录遍历
某些 Web 服务器存在安全配置错误,允许用户浏览目录结构并访问本应保密的文件。当Web 服务器允许包含导航目录路径的操作符,并且文件系统访问控制未正确限制对存储在服务器上其他位置的文件的访问时,目录遍历攻击就会起作用。
文件包含
文件包含攻击将目录遍历提升到下一个级别。文件包含攻击不是简单地从本地操作系统检索文件并将其显示给攻击者,而是实际执行文件中包含的代码,从而使攻击者能够欺骗Web 服务器执行其目标代码。
文件包含攻击有两种变体:
本地文件包含攻击试图执行存储在 Web 服务器上其他位置的文件中的代码。
远程文件包含攻击允许攻击者进一步执行存储在远程服务器上的代码。
利用 Web 应用程序漏洞
跨站脚本
Web 应用程序允许攻击者执行 HTML 注入,将他们自己的 HTML 代码插入网页时,就会发生跨站脚本(cross-site scripting, XSS)攻击。
反射 XSS
XSS 攻击通常发生在应用程序允许反射输入时。
最基本的做法是:应用程序不允许用户在可反射输入字段中输入<SCRIPT>标记。
最佳解决方案应当是:首先确定允许的输入类型,然后应用程序通过验证实际输入来确保其与指定的模式相匹配。
输出编码是一组相关技术,它接受用户提供的输入,并使用一系列规则对其进行编码,这些规则将潜在的危险内容转换为安全形式。例
存储/持续 XSS
跨站点脚本攻击通常利用反射输入,但这不是攻击发生的唯一方式。另一种常见的技术是在远程 Web 服务器上以一种名为存储 XSS 的方法存储跨站脚本代码。这类攻击被描述为持久性攻击,因为即使攻击者没有主动发起攻击,它们也会留在服务器上。
请求伪造
跨站请求伪造(cross-site request forgery, CSRF)
XSS 攻击利用用户对网站的信任来执行用户计算机上的代码。 XSRF 攻击利用远程站点对用户系统的信任来代表用户执行命令。
XSRF 攻击合理地假设用户经常同时登录不同的网站,这是此类攻击得以实现的前提。攻击者在第一个网站上嵌入代码,然后发送命令到第二个网站。当用户点击第一个站点上的链接时,他们正不知不觉地向第二个站点发送命令。如果用户这时恰好登录了第二个站点,则命令可能成功执行。
方法一是创建 Web 应用程序时,在链接中嵌入攻击者不知道的安全令牌。
另一个方法是让网站检查从最终用户接收到的请求中的引用 URL, 并且只接受源于他们自己站点的请求。
另一个方法是让网站检查从最终用户接收到的请求中的引用 URL, 并且只接受源于他们自己站点的请求。
服务器端请求伪造(server-side request forgery, SSRF)
服务器端请求伪造(SSRF)攻击利用了类似的漏洞,但它们不诱骗用户的浏览器访问URL,而是诱骗服务器根据用户的输入访问 URL 。
当 Web 应用程序接受用户的 URL 作为输入,然后从该 URL 检索信息时,就可能发生 SSRF 攻击。
会话劫持
当恶意的个人拦截授权用户和资源之间的部分通信,然后使用劫持技术接管会话并假冒授权用户的身份时,即发生了会话劫持攻击。
常用技术:
捕获客户端和服务器之间身份认证的详细信息,并用这些信息假冒客户端的身份。
诱使客户端认为攻击者的系统就是服务器,在客户端与服务器建立合法连接时充当中介,然后断开客户端的连接。
使用未正确关闭连接的用户的 cookie 数据访问 Web 应用程序,或使用设计糟糕的未正确管理身份认证 cookie 的应用程序的 cookie 数据访问 Web 应用程序。
TLS提供最有效的会话劫持防御,它加密客户端和服务器之间的所有流量,防止攻击者窃取会话凭据。
应用程序安全控制
输入验证
边界检查
Bounds checking
Bounds checking
用于确保数字输入处于可接受的范围内
输入白名单
最有效的输入验证形式是使用输入白名单(也称为允许列表)。在白名单中,开发人员描述期望用户输入的确切类型,然后在将输入传递给其他流程或服务器之前验证输入是否符合该规范。
输入黑名单
输入黑名单(也称为块列表),。使用这种方法的开发人员不会试图清晰描述可接受的输入,而是描述必须阻止的潜在恶意输入。
转义元字符
将元字符标记为正常字符或普通字符(如字母或数字)的过程,从而消除其特殊的编程能力。
参数污染
参数污染就是攻击者用来挫败输入验证控制的一种技术。
参数污染通过向 Web 应用程序发送同一输入变量的多个值来运行。
前提是 Web 平台无法正确处理此 URL 。它可能只对第一个参数执行输入验证,然后执行第二个参数,从而允许注入攻击通过过滤技术。
参数污染攻击依赖 Web 平台中的缺陷,这些缺陷不能正确处理同一参数的多个副本。
Web 应用程序防火墙
WAF 的功能类似千网络防火墙,但它们工作在 OSI 模型的应用层
WAF位于 Web 服务器前面,接收所有到服务器的网络流量。然后,它将检查传给应用程序的输入,在将输入传给 Web 服务器之前执行输入验证(白名单和/或黑名单)。
数据库安全
参数化查询和存储过程
在参数化查询中,开发人员准备一个 SQL 语句,然后允许将用户输入作为精心定义的变量传递给该语句,不允许在这些变量中插入代码。
存储过程的工作方式类似,但主要区别在于这些 SQL 代码没有被包含在应用程序中,而是存储在数据库服务器上。客户喘不直接向数据库服务器发送 SQL 代码。相反,客户端向服务器发送参数,然后服务器将这些参数插入预编译的查询模板中。既可以防止注入攻击,又可以提高数据库的性能。
混淆和伪装
数据最小化是最好的防御措施。组织不应收集他们不需要的敏感信息,并应在不再需要将其收集的敏感信息用千合法业务目的时尽快处置它们。
标记化用查找表将可能直接显示个人身份的个人标识符替换为唯一标识符。
哈希技术使用加密哈希函数将敏感标识符替换为不可逆的替代标识符。
代码安全
代码签名
开发人员通过加密函数用自己的私钥对代码进行数字签名,之后浏览器可以使用开发人员的公钥来验证签名,确保代码合法且未被非授权的人修改。
代码重用
许多组织不仅在内部重用代码,而且会以使用第三方软件库和软件开发工具包(SDK)方式重用代码。
SDK 是结合文档、示例和其他资源的软件库集合,旨在帮助程序员在开发环境中快速启动和运行。 SDK 通常还包括专门用于帮助开发人员设计和测试代码的实用程序。
安全团队应确保外包代码接受与内部开发代码相同级别的测试。
软件多样性
安全专业人员应该注意组织中依赖于单个源代码、二进制可执行文件或编译器的位置。
代码仓库
代码仓库的主要目的是将软件开发中使用的源文件存储在一个集中的位置,以便安全存储和协调多个开发人员做出的更改。
代码仓库还执行版本控制,以跟踪代码的变更并在需要时将代码回滚到早期版本。
通过向组织中的开发人员公开代码,代码仓库促进了代码的重用。
代码仓库也有助于避免死代码的问题,死代码即组织中正在使用但没有人负责维护的代码
完整性度量
代码完整性度屋使用加密哈希函数来验证发布到生产环境中的代码是否与先前批准的代码相匹配。
应用程序韧性
可扩展性
可扩展性表示应用程序的设计应使其所需的计算资源可以逐渐增加,以支持不断增长的需求。
弹性
弹性比可扩展性更进一步,它表示应用程序在必要时可以自动提供资源以进行扩展,然后在不再需要时自动撤销这些资源以降低容量(和成本)
8.4 评估所购软件对安全的影响
8.4.1 商业成品(COTS)
企业购买商用现货(COTS)软件并使其在组织管理的服务器上运行,它们既可在本地,也可在 IaaS 环境中运行。其他软件通过网络浏览器以软件即服务(SaaS) 的方式在互联网上购买和交付。
8.4.2 开源
还有一些软件是由基于社区的开源软件(OSS)项目创建和维护的。这些开源项目可供任何人免费直接下载或作为更大系统的一个组件下载和使用。事实上,许多 COTS 软件包包含开放源代码。
8.4.3 第三方
采用某种类型的软件时,无论它是 COTS 还是 OSS, 无论在本地还是云中运 行,都应该测试它们是否存在安全届洞。
组织可以自行测试,也可以依赖供应商提供的测试结果,和/或雇用笫三方进行独立测试。
组织可以自行测试,也可以依赖供应商提供的测试结果,和/或雇用笫三方进行独立测试。
8.4.4 托管服务(例如,软件即服务(SaaS)、基础架构即服务(IaaS)、平台即服务(PaaS))
数据库与数据存储
数据库体系结构
层次式数据库
层次式数据模型将关联的记录和字段组合为一个逻辑树结构。
这会形成一个“一对多”的数据模型,其中的节点可能没有子节点,也可能有一个或多个子节点,但每个节点都只有一个父节点。
分布式数据库
分布式数据模型将数据存储在多个数据库中,不过这些数据库是逻辑连接的。
每个字段都具有许多子字段和父字段。因此,分布式数据库的数据映射关系是“多对多”的。
关系数据库
关系数据库是由行和列纠成的平面二维表。实际上,每个表看起来类似于一个电子表格。行列结构提供“一对一“数据映射关系。关
SQL 为管理员、开发人员和终端用户提供了与数据库交互必需的功能。
SQL 本身分为两个截然不同的组件:数据定义语言(DDL) ,允许创建和更改数据库的结构(数据库的结构被称为模式);数据操纵语言(DML) ,允许用户与模式内包含的数据交互。
数据库事务
关系数据库支持事务的显式和隐式使用,从而确保数据的完整性。每个事务都是 SQL指令的离散集,作为一组 SQL 指令,要么执行成功,要么失败。事务的一部分成功而另一部分失败的情况不可能出现。
事务的提交可以是显式的,也就是使用 SQL COMMIT 命令;也可以是隐式的,也就是事务成功结束后进行提交。如果必须中止事务,可显式地使用 ROLLBACK 命令进行回滚;如果硬件或软件出现故障,也可能引起隐式回滚。当一个事务被回滚时,数据库将把自身还原至这个事务开始前的状态。
关系数据库事务都具有 个必需的特征
原子性
据库事务必须是原子的,也就是说,必须是“要么全有,要么全无"的事务。
一致性
有事务都必须在与数据库所有规则(如所有记录都具有唯一的主键)一致的环境中开始操作。事务结束时,无论处理事务期间是否违反了数据库的规则,数据库都必须再次与这些规则保持一致。
隔离性
隔离性原则要求事务之间彼此独立操作。如果数据库接收到两个更改同一数据SQL 事务,那么在允许一个事务更改数据前,另一个事务必须完全结束。
待久性
据库事务必须是持久的,也就是说,一旦提交给数据库,就会被保留下来。数据库通过使用备份机制(如事务日志)确保持久性。
不会生成错误的语句不会导致事务回滚
多级数据库的安全性
多级安全性数据库包含大量不同分类级别的信息,它们必须对分配给用户的标签进行验证,并且根据用户的请求提供适当的信息。
数据库污染
分类级别不同和/或“因需可知“要求不同的数据混合在一起的情况
数据库视图
在数据库中实现多级安全性的另一种途径是使用数据库视图。
视图只是将数据提供给用户的 SQL 语句,好像视图就是数据表一样。可以用视图整理来自多个表的数据、聚合单独的记录或限制用户访问数据库属性和 或记录的有限子集。
并发性
并发性或编辑控制是一种预防性安全机制,它努力确保存储在数据库中的信息总是正确的,或者至少保护其完整性和可用性。不论数据库是多级的还是单级的,我们都可使用这个特性。
未能正确实现并发性的数据库可能遇到以下问题:
丢失更新
当两个不同的进程更新数据库时,如果不知道对方的活动,就会丢失更新。
脏读取
当进程从没有成功提交的事务或事务未完全中读取记录时,会出现脏读取。或事务未完全回滚
并发性使用“锁定“功能允许已授权用户更改数据,同时拒绝其他用户查看或更改数据。
更改完成后,"解锁“功能才允许其他用户访问所需的数据。
更改完成后,"解锁“功能才允许其他用户访问所需的数据。
聚合
SQL 提供了许多函数,利用这些函数,可以组合来自一个或多个表的记录,以生成潜在有用的信息,这个过程称为聚合。
聚合攻击用于收集大量低级别安全项目或低价值项目,并将它们组合起来以创建更高安全级别或价值的内容。
将深度防御、因需可知和最小特权原则结合起来,有助于防止访问聚合攻击。
推理
推理攻击涉及组合多个非敏感信息,以生成应在更高级别才能访问的信息。
推理利用了人类思维的演绎能力,而不是数据库平台的原始数学能力。
针对推理攻击的最佳防御措施是对授予单个用户的权限保持持续警惕。
可以有意模糊数据来防范推断敏感信息的行为
使用数据库分区来防范这种攻击。
不正确的摘要
Incorrect summary
Incorrect summary
如果一个事务在使用聚合函数汇总存储在数据库中的数据,而另一个事务正在对数据进行修改,则会产生不正确的摘要。
语义完整性相关机制
语义完整性确保用户的动作不会违反任何结构上的规则。
还会检查存储的所有数据类型是否都在有效的域范围内,确保只存在逻辑值,并且确认系统遵守所有的唯一性约束。
管理员可能通过时间和日期标记来维护数据的完整性和可用性。时间和日期标记常出现在分布式数据库系统中。如果在所有变更事务上添加时间标记,然后将这些变更分发或复制至其他数据库成员,这些变更会应用千所有成员,但需要按正确的时间顺序来实施。
细粒度地控制对象
内容相关的访问控制
内容相关的访问控制基于被访问对象的内容或有效载荷进行控制。
单元抑制
单元抑制是指隐藏单独的数据库字段或单元或对其施加更多的安全约束。
上下文相关的访问控制
上下文相关的访问控制的重要因素是每个对象、数据包或字段如何与总体的活动或通信相联系。任何单个元素本身看上去无关紧要,但是在较大的上下文环境中就会表露出良性或恶性。
数据库分区
数据库分区是将单个数据库分解为多个部分的过程,其中每个部分都具有唯一的和不同的安全级别或内容类型。
多实例化(polyinstantiation)
在数据库的上下文中,如果同一个关系数据库表中的两行或多行具有相同的主键元素,但包含用千不同分类级别的不同数据,就会出现多实例化(polyinstantiation) 。
多实例化常被用作针对某些推理攻击的防范措施,但它引入了额外的存储成本来存储针对不同许可级别设计的数据副本。
噪声和扰动
管理员可在 DBMS 中插入错误的或误导性的数据,从而重定向或阻止信息保密性攻击
开放数据库互连
ODBC 扮演了应用程序和后端数据库驱动程序之间代理的角色
NoSQL
键/值存储
键/值存储可能是最简单的数据库形式。它们在键/值对中存储信息,其中键本质上是用于唯一标识记录的索引,该索引由数值组成。
图数据库
图数据库存储图形格式的数据,其中用节点表示对象,用边缘表示关系。
文档存储
文档存储类似千键/值存储,因为它们使用键存储信息,但是它们存储的信息类型通常比键/值存储的信息更复杂,并以文档形式存在。
存储器威胁
数据在处理时还会经过计锌机的存储资源(内存和物理介质),为了确保这些本本资源免受安全漏洞的威胁,必须采取预防措施。
两个主要威胁
第一种威胁是无论正在使用哪类存储,都存在对存储资源的非法访问。
在多级安全性环境中运作的系统应当提供充分的控制来确保对共享内存和存储器资源设置适当的控制
在多级安全性环境中运作的系统应当提供充分的控制来确保对共享内存和存储器资源设置适当的控制
隐蔽通道攻击是数据存储资源面临的第二种主要威胁。
隐蔽存储通道准许通过直接或间接地操纵共享存储介质,在两个分类级别之间传输敏感数据。
隐蔽存储通道准许通过直接或间接地操纵共享存储介质,在两个分类级别之间传输敏感数据。
基于知识的系统
专家系统
专家系统试图把人类在某个特殊学科累积的知识具体化,并以一致的方式将它们应用于未来的决策。
每个专家系统都有两个主要组件:
知识库
知识库包含专家系统已知的规则。知识库试图以一系列 if/then 语旬对人类专家的知识进行编码。
推理引擎
对知识库中的信息进行分析,从而得到正确的决策。专家系统用户使用一些用户接口将当前环境的具体内容提供给推理引擎,然后,推理引擎组合使用逻辑推理和模糊逻辑技术,基于过去的经验做出结论。
优劣完全取决千知识库中的数据和推理引擎采用的决策制订算法。
专家系统在紧迫的情况下有一个主要优点:它们的决策不受情绪影响。
机器学习
机器学习 (machine learning, ML)技术使用分析能力从数据集中发现知识,而不直接应用人类洞察力。
机器学习技术分为两大类:
监督学习技术使用标记数据进行训练。
无监督学习技术使用未标记的数据进行训练。
神经网络
在神经网络中,计算单元链用千尝试模仿人脑的生物学推理过程。
神经网络的优点包括线型、输入-输出映射和自适应性
典型的神经网络涉及很多层次的求和,每一层的求和都需要加权信息,以反映在整个决策制订过程中计算的相对重要性。
8.5 定义并应用安全编码准则和标准
8.5.1 源代码级安全弱点和漏洞
8.5.2 应用编程接口(API)安全
尽管早期的 Web 应用程序通常是处理用户请求并提供输出的独立系统,但现代 Web 应用程序更复杂。它们通常包含多个 Web 服务之间的交互。
API 允许应用程序开发人员绕过传统的网页,并通过功能调用直接与底层服务进行交互。
API 的提供和使用为服务提供商创造了巨大机会,但也带来了一些安全风险。
开发人员必须考虑身份认证。
API 开发人员必须知道何时需要身份认证,并确保验证每个 API 调用的凭证和授权。
API 也必须彻底测试安全缺陷,就像任何 Web 应用程序一样。
8.5.3 安全编码实践
源代码注释
注释是优秀开发人员工作流桯的重要组成部分。它们战略性地贯穿于整个代码,记录各种设计选项,解释工作流程,并给其他开发人员提供至关重要的细节,这些开发人员随后可能会被要求修改代码或排查代码中的问题。
开发人员应采取措施确保其代码的注释版本保持机密。
开发人员应该在部署前从生产版本的代码中删除注释。可以保留已存档源代码的注释以供未来开发人员参考,但是不能让互联网上的未知用户访问它们!
错误处理
许多编程语言包括 try... catch 功能,允许开发人员显式指定如何处理错误。
错误处理的另一面一一过于详细的错误处理例程也可能存在风险。如果错误处理例程对代码的内部工作原理解释得太多,则可能会让攻击者找到利用代码的方法。
一个好的原则是,错误消息仅向用户显示理解问题性质所需的最少信息量,以便开发人员在其控制范围内进行纠正。
然后,应用程序应该在日志中记录尽可能详细的信息,以便调查错误的开发人员纠正根本问题。
然后,应用程序应该在日志中记录尽可能详细的信息,以便调查错误的开发人员纠正根本问题。
硬编码凭证
在某些情况下,开发人员可能会使源代码包含用户名和密码。
开发人员可以为应用程序创建一个硬编码的维护账户,该账户允许开发人员在身份认证系统失效时重新获得访问权限。这被称为后门漏洞
硬编码凭证的第二种变体发生在开发人员使其源代码包含其他服务的访问凭证时。
内存管理
资源耗尽
内存泄漏是资源耗尽的一个例子。如果应用程序从操作系统请求内存,它最终将不再需要该内存,然后应将内存返回操作系统以供其他用途。
指针解引用
可能出现的一个特殊问题是当指针为空时,其中包含程序员所称的 NULL 值。如果应用程序尝试取消引用此 NULL 指针,则会导致称为空指针异常的情况。
8.5.4 软件定义安全
安全基础设施可以通过代码轻松操作
SDS 通常用于敏捷开发框架中。DevOps方法将开发和操作联系在一起,但如何它还包括SDS,则通常称为DevSecOps。
D1 安全与风险管理
1.1 理解、遵从与提升职业道德
1.1.1 (ISC)2 职业道德规范
保护社会、公益、必需的公信与自信,保护基础设施。
行为得体、诚实、公正、负责和守法。
为委托人提供尽职的、合格的服务。
发展和保护职业。
RFC 1087 《道德规范和互联网》
RFC 1087 说明了怀有下列目的的行为都是不可接受的和不道德的:
试图未经授权访问互联网的资源
破坏互联网的正常使用
通过这些行为耗费资源(人、容量、计算机)
破坏以计算机为基础的信息的完整性
危害用户的隐私权
1.1.2 组织的道德规范
所有(ISC)2认证专业人员都必须遵守(ISC)2道德准则。——cissp认证人员需要遵守
组织的所有员工都必须遵守组织的道德准则。——cissp认证人员需要遵守
RFC1087确实为互联网提供了道德规范,但它对任何个人都没有约束力。
组织的所有员工都必须遵守组织的道德准则。——cissp认证人员需要遵守
RFC1087确实为互联网提供了道德规范,但它对任何个人都没有约束力。
1.2 理解和应用安全概念
1.2.1 保密性、完整性、可用性、真实性和不可否认性
CIA
保密性
完整性
可用性
DAD
泄露(disclosure)
修改(alteration)
破坏(destruction)
过度保护
过度保护保密性会导致可用性受限。
过度保护完整性也会导致可用性受限。过度保护可用性会导致保密性和完整性受损。
过度保护完整性也会导致可用性受限。过度保护可用性会导致保密性和完整性受损。
真实性(authenticity)
指数据是可信的或非伪造的并源自其声称的来源。
不可否认性(non-repudiation)
确保事件的主体或引发事件的人不能否认事件的发生。
AAA服务
标识(identification)
当试图访问受保护的区域或系统时声明自己的身份。
身份认证(authentication)
授权(authorization)
审计(auditing)
记账(accounting)或问责制
保护机制
纵深防御/分层(layering)防御
指简单使用一系列控制中的多个控制。
在串行层中执行安全控制意味着以线性方式连续执行一个又一个控制。
在纵深防御的语境中,除了级别、多级和分层,与此概念相关的其他常用术语还有分类、分区、分域、隔离、孤岛、分段、格结构和保护环。
抽象(abstraction)
抽象(abstraction) 是为了提高效率。相似的元素被放入组、类或角色中,作为集合被指派安全控制、限制或许可。抽象使你可将安全控制分配给按类型或功能归类的客体集,由此简化安全。
数据隐藏
数据隐藏是指将数据存放在主体无法访问或读取的逻辑存储空间以防止数据被泄露或访问
隐匿(obscurity),通过隐匿保持安全是指不将客体的存在告知主体,以期主体不发现该客体。
加密
加密(encryption) 科学旨在对非预期的接收者隐藏通信的真实含义或意图。
安全边界
安全边界是具有不同安全要求或需求的任意两个区域、子网或环境之间的交界线
重要的是识别网络和物理世界中的安全边界。一旦确定了安全边界,就必须部署机制来控制跨该安全边界的信息流。
1.3 评估和应用安全治理的原理
1.3.1 将安全功能与业务战略、目标、使命和宗旨相关联
安全管理计划确保正确地创建、执行和实施安全策略。安全管理计划使安全功能与业务战略、目标、使命和宗旨相一致。
最能有效处理安全管理计划的一个方法是自上而下方法。
上层、高级或管理部门负责启动和定义组织的策略。
中层管理人员负责将安全策略落实到标准、基线、指导方针和程序。
操作管理人员或安全专业人员必须实现安全管理文档中规定的配置。
最终用户必须遵守组织的所有安全策略。
三种类型的安全管理计划
战略计划
战略计划(strategic plan)是一个相对稳定的长期计划。它定义了组织的安全目的,也定义了安全功能,并使其与组织的目标、使命和宗旨相一致。如果每年进行维护和更
新,战略计划的有效期大约是 5年。战略计划也可被视为愿景规划。战略计划中讨论了未来的长期目标和愿景。战略计划还应包括风险评估。
新,战略计划的有效期大约是 5年。战略计划也可被视为愿景规划。战略计划中讨论了未来的长期目标和愿景。战略计划还应包括风险评估。
战术计划
战术计划(tactical plan) 是中期计划,为战略计划中设定的目标提供更多细节,该计划也可根据不可预测的事件临时制订。战术计划通常在 1 年左右的时间内有用,通常规
定和安排实现组织目标所需的任务。
定和安排实现组织目标所需的任务。
操作计划
操作计划(operational plan)是在战略计划和战术计划的基础上制订的短期、高度详细的计划。操作计划只在短时间内有效或有用。操作计划必须经常更新(如每月或每季更新),以保持其与战术计划的一致性
1.3.2 组织过程(例如,收购、剥离、治理委员会)
收购与兼并会提升组织的风险等级。这些风险包括不恰当的信息泄露、数据丢失、停机或未能获得足够的投资回报率(return on investment, ROI) 。
如果在未考虑安全性的情况下进行收购和兼并,那么所收购产品的固有风险将在整个部署生命周期中一直存在。
考虑兼并/收购成本时,重要的是考虑产品部署的整个生命周期内的总成本,而不只是考虑初始购买和实施费用。
收购不仅涉及硬件和软件,也包括外包、与供应商签订合同、聘请顾问等内容。
收购问题包括整合安全功能和策略,以及安全工具的集成。安全策略的文件化
资产剥离或任何形式的资产减少或员工裁减都会增加风险,进而增加组织对集中安全治理的需求。
应对资产进行净化以防止数据泄露。
对于不再负责相关事宜的员工,应询问其工作完成情况,该过程通常称为离职面谈。
剥离期间,知识产权保护是一个更大的问题。
为安全集成评估第三方时
现场评估
到组织现场进行访谈,并观察工作人员的操作习惯。
文件交换和审查
查数据和文件记录交换的方式,以及执行评估和审查的正式过程。
过程/策略审查
要求提交安全策略、过程/程序,以及事件和响应文件的副本以供审查。
第三方审计
拥有独立性的第三方审计机构可根据 SOC 报告,对实体的安全基础设施进行公厅的审查。
SSAE 18
SOC1声明:评估可能影响财务报告准确性的组织控制措施。
SOC2 声明:评估组织的控制措施,这些控制措施会影响存储在系统中的信息的安全性(保密性、完整性和可用性)和隐私。 SOC2 审计结果是保密的,通常仅根据保密协议对外共享。
SOC3 声明:评估组织的控制措施,这些控制措施会影响系统中存储信息的安全性(保密性、完整性和可用性)和隐私。但是, SOC3 审计结果旨在公开披露。
I 类报告 这些报告提供的审计员的意见仅涉及管理层提供的描述和控制措施的设计适用性。 I类报告仅涵盖特定时间点,而不是一段持续的时间。
II 类报告 这些报告进一步提供了审计员对控制措施运行有效性的意见。也就是说,审计员实际上确认了控制措施是否运行正常。 II 类报告还涵盖更长的时间段:至少六个月的运行时间。
当外部供应商正在制作软件或提供服务时,可能需要定义服务级别需求(SLR) SLR对供应商产品(或服务)的服务和性能期望的说明。
安全治理
收购、资产剥离和治理委员会的组织流程。
变更控制/变更管理
数据分类
1.3.3 组织角色和职责
高级管理者
组织所有者(高级管理者)角色被分配给最终对组织安全的维护负责及最关心资产保护的人员。
安全专业人员
安全专业人员、信息安全官(InfoSec) 或计算机事件响应小组(computer incident response team, CIRT) 的角色袚分配给受过培训和经验丰富的网络、系统和安全工程
师门,他们负责落实高级管理者下达的指示。安全专业人员的职责是保证安全性,包括编写和执行安全策略。
师门,他们负责落实高级管理者下达的指示。安全专业人员的职责是保证安全性,包括编写和执行安全策略。
资产所有者
资产所有者(asset owner)角色将被分配给在安全解决方案中负责布置和保护信息分类的人员。资产所有者通常是高级管理人员,他们最终对资产保护负责。
托管员
托管员(custodian) 角色被分配给负责执行安全策略与高级管理者规定的保护任务的人员。
用户
用户(最终用户或操作者)角色被分配给任何能访问安全系统的人员。
审计人员
审计人员(auditor) 负责审查和验证安全策略是否被开确执行,以及相关的安全解决方案是否完备。审计人员出具由高级管理者审核的合规性和有效性报告。
1.3.4 安全控制框架
信息和相关技术控制目标(COBIT)
COBIT 是由信息系统审计和控制协会(ISACA)编制的一套记录 IT 最佳安全实践的文档。
COBIT 基千六个关键原则进行企业 IT 治理和管理。
.原则 l: 为利益相关方创造价值
.原则 2: 采用整体分析法
.原则 3: 动态地治理系统
.原则 4: 把治理从管理中分离出来
.原则 5: 根据企业需求量身定制
.原则 6: 采用端到端的治理系统
.原则 2: 采用整体分析法
.原则 3: 动态地治理系统
.原则 4: 把治理从管理中分离出来
.原则 5: 根据企业需求量身定制
.原则 6: 采用端到端的治理系统
NIST SP 800-53 Rev.5“信息系统和组织的安全和隐私控制“
包含了美国政府为组织安全提供的通用性建议。
互联网安全中心(CIS)
提供针对操作系统、应用程序和硬件的安全配置指引。
NIST 风险管理框架(RMF)
对联邦机构制定了强制性要求。 RMF 分为六个阶段:分类、选择、实施、评估、授权和监控。
NIST 网络安全框架(CSF)
为关键基础设施和商业组织而设计,由识别、保护、检测、响应和恢复这五个功能构成。
IS0/IEC 27000 系列,国际标准
信息技术基础设施库(Information Technology Infrastructure Library, ITIL)
最初由英国政府制订,是一套被推荐的优化 IT 服务以支持业务增长、转型和变革的最佳实践。
1.3.5 谨慎考虑/恪尽职守
应尽职责(Due Diligence)是制定计划、策略和流程来保护组织的利益
应尽关注(Due Care)只是开展一系列活动来维持应尽职责的工作
1.4 确定合规性和其他要求
1.4.1 合约、法律、行业标准和监管要求
《计算机欺诈和滥用法案》 (CFAA)是美国针对网络犯罪的第一项重要立法。美国国会早在1984 年就颁布了这个与计算机犯罪相关的法律,并将其作为《全面控制犯罪法》 (CCCA)的一部分。
《 1994 年计算机滥用修正案》修改 CFAA, 使其适用于州际贸易中使用的所有计算机,而不仅适用于涉及“联邦利益”的计算机系统。
1996 年的美国《国家信息基础设施保护法案》,扩大 CFAA 范围,使其涵盖国际贸易中使用的计算机系统以及州际贸易中使用的系统。
1991 年颁发的联邦量刑指南为联邦法官判决计算机犯罪提供了处罚指南。指南正式提出谨慎人规则,该规则要求高级管理人员为“应尽关心”而承担个人责任。
2002 年通过的《联邦信息安全管理法案》 (FISMA)要求联邦机构实施涵盖机构运营的信息安全程序。
FISMA 还要求政府机构将合同商的活动纳入安全管理程序。
主要适用于政府外包商。
2014年 美国国会通过了《网络安全增强法案》,该法案要求 NIST 负责协调全国范围内的自发网络安全标准工作。
NIST 的常用标准
NIST SP 800-53: 联邦信息系统和组织的安全和隐私控制。
NIST SP 800-171 :保护非联邦信息系统和组织中受控的非分类信息。
经常被列入政府机构的合同要求。联邦承包商通常必须遵守 NIST SP 800-171
NIST 网络安全框架(CSF)
这套标准旨在充当自发的基千风险的框架,用千保护信息和系统。
《国家网络安全保护法》
要求美国国士安全部建立集中的国家网络安全和通信中心。该中心充当联邦机构和民间组织之间的接口,共享网络安全风险、事件、分析和警告。
合规
组织可能发现自己受制千各种法律(其中许多法律在本章前面提到过)和由监管机构或合同义务强制实施的规定。
支付卡行业数据安全标准(PCI DSS)是合规要求的一个好例子,它是由合同义务(而不是法律)规定的。 PCIDSS 管理信用卡信息的安全性,通过接受信用卡的企业与处理业务交易的银行之间的商业协议条款来强制执行。
PCIDSS是支付卡行业安全标准委员会(PCI SSC)领布的一项标准,但通过商家与其银行之间的合同关系强制被执行。因此,根据PCI DSS 银行是启动调查的适当实体。
联邦管理法规(CFR)包含联邦机构颁布的所有行政法律文本。
美国法典包含刑法和民法。
美国法典包含刑法和民法。
1.4.2 隐私要求
美国隐私法
第四修正案
隐私权的基础是美国宪法的第四修正案。
1974 年颁布的《隐私法案》
严格限制联邦政府机构在没有事先得到当事人书面同意的情况下向其他人或机构透露隐私信息的能力。
1986 年颁布的《电子通信隐私法案》(ECPA)
将侵犯个人电子隐私的行为定义为犯罪。
1994 年颁布的《通信执法协助法案》(CALEA)
修正了 1986 年颁布的《电子通信隐私法案》。 CALEA 要求所有通信运营商,无论使用何种技术,都要允许持有适当法院判决的执法人员进行窃听。
1996 年颁布的《经济间谍法案》
扩大了财产的定义,使其包括专有经济信息,从而可将窃取这类信息的行为视为针对行业或企业的间谍行为。这改变了偷窃的法律定义,使其不再受物理约束的限制。
1996 年颁布的《健康保险流通与责任法案》(HIPAA)
规定包括隐私和安全法规,要求医院、医生、保险公司和其他处理或存储私人医疗信息的组织采取严格的安全措施。
2009 年颁布的《健康信息技术促进经济和临床健康法案》(HITECH)
新法规强制要求的一个变化涉及法律对待商业伙伴的方式,商业伙伴指处理受保护的健康信息(PHI) 的组织,代表 HIPAA 约束的实体。受约束实体与商业伙伴之间的任何关系都必须受商业伙伴协议(BAA) 的书面合同约束。
HITECH 新增了数据泄露通知要求。根据 HITECH 违约通知规则,受 HIPAA 约束的实体如果发生数据泄露,则必须将信息泄露情况告知千受影响的个人;当信息泄露影响到超过500 人时,必须通知卫生与社会服务部门和媒体。
1998 年颁布的《儿童在线隐私保护法》(COPPA)
COPPA 对关注儿童或有意收集儿童信息的网站提出一系列要求。
网站必须有隐私声明,明确说明所收集信息的类型和用途,包括是否有任何信息泄露给第三方。
必须向父母提供机会,使其能够复查从孩子那里收集的任何信息,并可从网站记录中永久删除这些信息。
如果儿童的年龄小于 13 岁,那么在收集任何信息前,必须征得其父母的同意。
1999 年颁布的《Gramm-Leach-Bliley 法案》(GLBA)
银行、保险公司和信贷提供商在提供服务和分享信息方面受到严格限制。
金融现代化法案(GLBA)包含规范客户财务信息隐私的条款,特别适用于金融机构。
2002 年的《萨班斯-奥克斯利法案》 (Sarbanes-Oxley Act, SOX)
萨班斯法案规范上市公司的财务报告活动。
2001 年颁布的《美国爱国者法案》
《美国爱国者法案》带来的一个重大变化涉及政府机构获得监听授权的方式。允许官方机构获得针对个人的一系列监听授权,然后可根据这一坝授权监听某个人的所有通信线路。
《美国爱国者法案》带来的另一个主要变化涉及政府处理 ISP 信息的方式。根据《美国爱国者法案》的条款,网络服务提供商可自愿向政府提供大量信息。还允许政府通过传票获取用户活动的详细信息(而非监听)。
修正了《计算机欺诈和滥用法案》(另一修正案),对犯罪行为施加更严厉的惩罚。最长20年
《家庭教育权利和隐私法案》 (FERPA)
该法案对 18 岁以上的学生和未成年学生的父母赋予了明确的隐私权。
·父母/学生有权检查学校对学生的任何教育记录。
·父母/学生有权要求更正他们认为错误的记录,并有权将其对任何未更正记录的声明陈述纳入记录中。
•除特殊情况外,学校不得在未经书面同意的情况下公布学生记录中的个人信息。
·父母/学生有权要求更正他们认为错误的记录,并有权将其对任何未更正记录的声明陈述纳入记录中。
•除特殊情况外,学校不得在未经书面同意的情况下公布学生记录中的个人信息。
1998 年,美国总统签署了《身份盗用与侵占防治法》
身份盗用的唯一合法受害者是被欺诈的债权人
“隐私预期”
如果打算监控员工的通信,应采取合理的预防措施,以确保其中没有隐含的隐私预期。
. 雇佣合同的条款规定雇员在使用公司设备时没有隐私预期。
• 在公司可接受的使用方式和隐私政策中作出类似的书面声明。
. 在登求框中警示所有通信都受到监控。
• 在计算机和电话上贴上监控警示标签。
• 在公司可接受的使用方式和隐私政策中作出类似的书面声明。
. 在登求框中警示所有通信都受到监控。
• 在计算机和电话上贴上监控警示标签。
欧盟隐私法
欧盟数据保护指令(DPD)
1995 年10 月24 日,欧盟议会通过了一项全面的数据保护指令,概述了为保护信息系统中处理的个人数据而必须采取的隐私措施。
欧盟《通用数据保护条例》(GDPR)
2016 年,欧盟通过了一项涵盖个人信息保护的综合性新法律。《通用数据保护条例》(GDPR) 2018 年生效,取代了之前的数据保护指令(DPD) 。
新法律适用于所有收集欧盟居民数据或代表收集数据的人员处理这些信息的组织。重要的是,这项法律甚至适用于收集欧盟居民信息的非欧盟组织。
在跨境传输信息时,应特别关注 GDPR。需要在其子公司之间进行跨境信息传输的组织有两种方式来遵守欧盟法规。
组织可以采用一套标准合同条款,这些条款已获准用千将信息传输到欧盟以外的情况。
组织可以采用具有约束力的公司规则来管理同一公司内部单位之间的数据传输。
欧洲法院 2020 年在名为 Schrems II 的案件中作出裁决,宣布欧盟/美国隐私盾无效。
在每个欧盟成员国建立集中化数据保护机构。
·规定个人可访问自已拥有的数据。
·数据可移植性规定将根据个人要求促进服务提供商之间的个人信息传输
“遗忘权”允许人们要求公司删除不再需要的个人信息。
·规定个人可访问自已拥有的数据。
·数据可移植性规定将根据个人要求促进服务提供商之间的个人信息传输
“遗忘权”允许人们要求公司删除不再需要的个人信息。
加拿大隐私法
《个人信息保护和电子文件法》 (Personal Information Protection and Electronic Documents Act, PIPEDA)
一项限制商业公司如何收集、使用和披露个人信息的国家法律。
州隐私法
《加州消费者隐私法案》 (CCPA)
加州于 2018 年通过了这项全面的隐私法,该法案以欧盟的 GDPR 为蓝本。它于 2020 年生效
1.5 理解在全球背景下与信息安全相关的法律和监管问题
1.5.1 网络犯罪和数据泄露
1.5.2 许可和知识产权(IP)要求
版权和《数字千年版权法》(DMCA)
计算机软件版权是有先例的,它属于文学作品范畴。然而,重要的是必须注意到版权法只保护计算机软件固有的表现形式,即实际的源代码,而不保护软件背后的思想或过程。
法律规定作品的创作者从作品创作完成的那一刻起就自动拥有版权。
版权总是默认归作品的创作者所有。这个规定的例外是:因受雇用而创作的作品。
DMCA 的第一个主要条款是阻止那些试图规避版权所有者对受保护作品采用的保护机制的行为。
DMCA 还限制了当罪犯利用 ISP 线路从事违反版权法的活动时 ISP 应该承担的责任。
商标
版权法用千保护创造性作品;对十用来辨识公司及其产品或服务的文字、口号和标志的商标,也存在保护机制。
保护商标的宗旨是在保护个人与组织的知识产权的同时避免市场混乱。版权保护一样,商标不需要正式注册就能获得法律保护。如果在公共活动过程中用到某个商标,你会自动获得相关商标法律的保护,可使用TM符号来表明你想将文字或标语当作商标来保护。
整个注册过程从开始到结束可能需要一年多的时间。一旦收到来自 USPTO 的注册证书,即可使用@符号来表示这是已注册的商标。
若要使商标申请被接受,需要满足两个重点要求:
该商标不能与其他商标类似,以免造成混淆。
该商标不能是所提供的产品与服务的说明。
专利
实用专利保护发明者的知识产权。专利提供了自发明之日起(自首次申请之日起)20 年的保护期限
专利有三个重点要求:
·发明必须具有新颖性。只有创意新颖的发明才能获得专利。
·发明必须具有实用性。发明必须能实际使用并完成某种任务。
·发明必须具有创造性,不能平淡无奇。
·发明必须具有实用性。发明必须能实际使用并完成某种任务。
·发明必须具有创造性,不能平淡无奇。
专利流氓"
这些宽泛的专利的发布,导致了仅靠持有专利维持生存的公司的业务演变。这些公司对其认为侵犯了自己专利的公司提起法律诉讼来获取赔偿。
外观设计专利
发明人也可利用外观设计专利。这些专利涵盖了发明的外观,仅持续 15 年。
商业秘密
许多公司拥有对其业务而言极其重要的知识产权,如果这些知识产权被泄露给竞争对手或公众,将造成重大损失,这些知识产权就是商业秘密。
版权和专利这两种知识产权来保护商业秘密信息,但存在如下两个主要缺点:
申请版权或专利时需要公开透露作品或发明细节。
版权和专利提供的保护都有时间期限。
为保护商业秘密,必须在组织中实施充分控制,确保只有经过授权的、需要知道秘密的人员才能访问它们。还必须确保任何拥有访问权限的人都遵守保密协议(NDA) 的规定(不与他人共享信息),并对违反协议的行为给予惩罚
《经济间谍法案》条款真正保护商业秘密所有者的知识产权。这项法律的执行要求公司采取充分的措施,确保他们的商业秘密得到很好的保护,而不是被意外地放入公共领域。
许可
四种常见的许可协议类型
合同许可协议使用书面合同,列出软件供应商和客户之间的责任。这些协议适用千高价和或特别专业化的软件包。
开封生效许可协议被写在软件包装的外部。它们通常包含一个条款,指出只要打开包装上的收缩包装封条,即意味着认可合同条款。
单击生效许可协议正变得北开封生效许可协议更常见。在这类协议中,合同条款要么写在软件包装盒上,要么包含在软件文档 1, 。在安装过程中,用户需要单击一个按钮来表明已阅改并同意逞守这些协议条款。这增加了对协议流程的积极认可,确保个人在安装前知道许可协议的存在。
云服务许可协议将单击生效许可协议发挥到了极致。大多数云服务不需要任何形式的书面协议,而只在屏幕上快速显示法律条款以供检阅。某些情况下,它们可能简单地提供法律条款的链接以及要求用户确认已阅读并同意这些条款的确认框。
1.5.3 进口/出口控制
计算机出口控制
目前,美国企业可向几乎所有国家出口高性能计算系统,而不必事先得到政府的批准。
加密技术出口控制
1.5.4 跨境数据流
过去,欧盟和美国运行着一项名为“隐私盾”的安全港协议。组织能够通过独立评估员
证明其遵守隐私惯例,如果获得了隐私盾,则可传输信息。
然而,欧洲法院 2020 年在名为 Schrems II 的案件中作出裁决,宣布欧盟/美国隐私盾无
效。目前,公司不得依赖隐私盾,必须使用标准合同条款或具有约束力的公司规则。如果隐
私盾被修改以满足欧盟要求,这可能会在未来发生变化。
证明其遵守隐私惯例,如果获得了隐私盾,则可传输信息。
然而,欧洲法院 2020 年在名为 Schrems II 的案件中作出裁决,宣布欧盟/美国隐私盾无
效。目前,公司不得依赖隐私盾,必须使用标准合同条款或具有约束力的公司规则。如果隐
私盾被修改以满足欧盟要求,这可能会在未来发生变化。
1.5.5 隐私
1.6 理解调查类型的要求(即行政、刑事、民事、监管、行业标准)
调查的类型
行政调查
行政调查属于内部调查,它检查业务问题或违反组织政策的行为。它们可作为技术故障排查工作的一部分或支持其他管理过程,如人力资源纪律程序。
与刑事或民事案件不同,行政调查是内部事务,没有必须适用的既定的证明标准。但是,她的组织在其内部程序中会包含举证责任的标准,以确保调查的彻底性和公平性,这仍然是明智的。
刑事调查
刑事调查通常由执法者进行,是针对违法行为进行的调查。刑事调查的结果是指控犯罪嫌疑人以及在刑事法庭上起诉。
民事调查
民事调查通常不涉及执法,但涉及让内部员工和外部顾问代表法律团队工作。他们会准备在民事法庭陈述案件所需的证据来解决双方之间的纠纷。
监管调查
政府机构在他们认为个人或企业已违反行政祛规时会执行监管调查。监管机构通常会在他们认为可能发生的地点进行调查。监管调查范围比较广泛,常由政府工作人员执行。
行业标准
一些监管调查可能不涉及政府机构,相反,它们基于行业标准,如支付卡行业数据安全标准(PCI DSS) 。这些行业标准不是法律,而是相关组织达成的合同义务。某些情况下,包括PCI DSS, 组织可能需要提交独立的第三方进行的审计、评估和调查。不参与这些调查或消极对待调查结果的组织可能面临罚款或其他制裁。
电子取证
在诉讼过程中,任何一方都有责任保留与案件相关的证据,并在取证过程中与对方分享信息。取证过程应用千纸质档案和电子记录,电子取证(eDiscovery) 的过程促进电子信息披露的处理。
电子取证参考模型(EDRM)
信息治理
保信息系统针对将来的取证妥善管理信息。
识别
当组织认为有可能发生诉讼时,要确定可回应取证要求的信息。
保存
确保潜在的取证信息不会受到篡改或删除。
收集
用于电子取证过程的相关信息收集起来。
处理
过滤收集到的信息并对无关信息进行“粗剪“,减少需要详细检查的信息。
检查
检查剩下的信息,确定哪些信息是与取证请求相关的,并移除受律师-客户特权保护的信息。
分析
对剩余信息的内容和上下文进行更深入的检查。
产生
用标准格式生成需要与他人分享的信息,并将其交给其他方,如对方的律师。
呈现
向证人、法院和其他当事方展示信息。
证据
可采纳的证据
证据必须与确定事实相关。
证据要确定的事实对本案来说是必要的(即相关的)。
证据必须有作证能力,这意味着它必须是合法获得的。通过非法搜查获得的证据,将不被采纳。
证据的类型
实物证据(real evidence)
也被称为客观证据,包括那些可能会被带上法庭的物品。
书面证据(documentary evidence)
包括所有被带上法庭用于证明事实的书面内容。这种证据也必须经过验证。
言辞证据(testimonial evidence)
包含证人证词的证据,证词既可以是法庭上的口头证词,也可以是记录下来的书面证词。证人必须宣誓讲真话,并且他们必须了解证词的根据。
演示证据
演示证据是用来支持言辞证据的证据。它由一些条目组成,这些条目本身可能被采纳或不被采纳为证据,用于帮助证人解释一个概念或澄清一个问题。
证据规则
最佳证据规则(best evidence rule)
当文档被用作法庭程序的证据时,必须提供原始文档。
口头证据规则(parol evidence rule)
当双方的协议以书面形式记载下来时,假定书面文档包含所有协议条款,并且口头协议不可修改书面协议。
传闻规则
通常必须避免传闻行为,一个极其重要的例外是传闻规则的业务记录。如果业务记录(如计算机系统生成的日志)是由直接知情的人或物在事件发生时制作的,并且是在正常业务活动过程中保存的,且保存这些记录是组织的常规做法,则可以将其作为证据。
1.7 制定、记录和实施安全政策、标准、程序和指南
安全策略
规范化的最高层级文件被称为安全策略。安全策略定义了组织所需的安全范围,讨论需要保护的资产以及安全解决方案需要提供的必要保护程度。
安全标准
标准对硬件、软件、技术和安全控制方法的一致性定义了强制性要求。标准提供了在整个组织中统一实施技术和程序的操作过程。
基线
基线定义了整个组织中每个系统必须满足的最低安全级别。基线是一种更注重操作的标准形式。所有不符合基线要求的系统在满足基线要求之前都不能上线生产。
指南
指南是规范化安全策略结构中基线的下一级元素。指南提供了关千如何实现标准和基线的建议,并且是安全专业人员和用户的操作指南。
安全程序
程序是规范化安全策略结构的最底层元素。程序或标准操作程序(standard operating procedure, SOP) 是详细的分步实施文档,描述了实现特定安全机制、控制或解决方案所需的具体操作。
1.8 对业务连续性(BC)要求进行识别、分析及优先级排序
业务连续性计划涉及评估组织流程的风险,以及创建策略、计划和程序,以最大限度地减小这些风险发生时对组织产生的不良影响。 BCP 用于在紧急情况下维持业务的连续运营。BCP 计划者的目标是通过综合实施策略、程序和流程,将潜在的破坏性事件对业务的影响降至最小。
视角差异
业务连续性计划通常战略性地关注上层,以业务流程和运营为中心
灾难恢复计划本质上更具战术性,描述恢复站点、备份和容错等技术活动。
BCP 流程有四个主要阶段:
制定和记录范围和计划
组织分析
负责业务连续性计划的人员的首要职责之一是对业务组织进行分析,以识别与 BCP 流程具有利害关系的所有部门和个人。
选择 BCP 团队
BCP 团队应至少包括下列人员:
·负责执行业务核心服务的每个组织部门的代表。
.根据组织分析确定的来自不同职能区域的业务单元团队成员。
• BCP 所涉领域内拥有技术专长的 IT 专家。
.掌握 BCP 流程知识的网络安全团队成员。
·负责工厂实体物理安全和设施管理的团队。
.熟悉公司法规、监管和合同责任的律师。
.可解决人员配置问题以及对员工个人产生影响的人力资源团队成员。
.需要制订类似的计划以确定在发生中断时如何与利益相关方和公众进们沟通的公共关系团队成员。
·高级管理层代表,这些代表能设定愿景,确定优先级别和分配资源。
.根据组织分析确定的来自不同职能区域的业务单元团队成员。
• BCP 所涉领域内拥有技术专长的 IT 专家。
.掌握 BCP 流程知识的网络安全团队成员。
·负责工厂实体物理安全和设施管理的团队。
.熟悉公司法规、监管和合同责任的律师。
.可解决人员配置问题以及对员工个人产生影响的人力资源团队成员。
.需要制订类似的计划以确定在发生中断时如何与利益相关方和公众进们沟通的公共关系团队成员。
·高级管理层代表,这些代表能设定愿景,确定优先级别和分配资源。
虽然通常情况下高级管理层应该在BCP团队中有代表,但CEO不是业务连续性计划团队的成员
资源需求
BCP 团队确认组织分析结果后,就开始评估 BCP 工作的资源需求。
这项评估涉及 BCP的三个不同阶段所需的资源。
这项评估涉及 BCP的三个不同阶段所需的资源。
BCP 开发
BCP 测试、培训和维护
BCP 实施
法律和法规要求
受到联邦、州和地方法律或法规约束的许多行业可能发现,这些法律或法规要求他们实施不同程度的 BCP 。
有必要让组织的法律顾问参与 BCP 过程
业务影响分析(BIA)
确定优先级
BCP 团队要完成的第一个 BIA 任务是确定业务优先级。根据业务范围,当灾难发生时,有些活动对于维待日常运营极为关键。应创建一份涵盖关键业务功能的综合列表,并按重要性对其进行排序。
要开始定量评估, BCP 团队需要一起制订组织资产清单,并为每项资产分配货币形式的资产价值(AV) 。
MTD(Mnaximum tolerable downtime,) 最大允许中断时间),有时也被称为最大容忍中断时间(maximum tolerable outage, MTO) 是业务功能出现故障但不会对业务产生无法弥补的损害所允许的最长时间。
每个业务功能的恢复时间目标(recovery time objective, RTO)是指中断发生后实际恢复业务功能所需的时间。
恢复点目标(recovery point objective, RPO)相当千在数据丢失时间上的 RTO RPO 定义了事件发生前组织应该能够从关键业务流程中恢复数据的时间知
风险识别
识别组织面临的风险
风险可分为两种类型:自然风险和人为风险。
BIA 过程的风险识别部分本质上是纯粹的定性分析。
可能性评估
确定每种风险发生的可能性。
确定年度发生率(ARO),它反映企业每年预期遭受特定灾难的次数。通过计算年度发生率,可简化不同风险规模的比较。
影响分析
将分析在风险识别和可能性评估期间收集的数据,并尝试确定每个已识别风险对业务的影响。
从定量的角度看
暴露因子(EF) 是风险对资产迼成的损害程度,以资产价值的百分比表示。
单一损失期望(SLE)是每次风险发生后预期造成的货币损失。
年度损失期望(ALE) 是在一个普通年份内由于风险危害资产而给公司带来的预期货币损失。
从定性角度看
在客户群中丧失的信誉
长时间停工后造成员工流失
公众的社会/道德责任
负面宣传
资源优先级排序
BIA 的最后一步是划分针对各种风险所分配的业务连续性资源的优先级,前面的 BIA务己对这些风险进行了识别和评估。
从定量的角度看,这个过程相对简单。只需要创建一个在 BIA 过程中分析过的所有风险的列表,并根据影响分析阶段计算的 ALE 按降序对其进行排序。
定性分析可证实对风险优先级的提高或降低是否正确,这些风险存在于定量分析结果列表中并按 ALE 排序。
连续性计划
策略开发
策略开发阶段在业务影响分析与 BCP 开发的连续性计划阶段之间架起桥梁。 BCP 团队现在必须采用由定量和定性资源优先排序工作提出的优先级问题清单,确定业务连续性计划将处理哪些风险。
BCP 团队应回顾在 BIA 早期阶段创建的 M1D 估值,并确定哪些风险是可接受的,以及哪些风险必须通过 BCP 连续性措施予以缓解。
预备和处理
连续性计划的预备和处理阶段是整个业务连续性计划的关键部分。在这个任务中, BCP团队设计具体的流程和机制来减轻在策略开发阶段被认为不可接受的风险。
有三类资产必须通过 BCP 预备和处理进行保护
人员
必须确保组织内的人员在紧急情况发生前、发生期间和发生后都是安全的。
管理层应该为团队成员提供其完成所分配任务必需的全部资源。同时,如果情况需要人们长时间待在办公场所,还必须安排好住所和食物。
建筑物/设施
加固预备措施
加固预备措施可能包括一些像修补漏水屋顶这样简单的步骤,或像安装强化的防风百叶窗和防火墙这样复杂的步骤。
替代站点
如果无法通过加固设施来抵御风险, BCP 应识别出可用千立即恢复业务活动(或至少可在少千最大容忍中断时间内提供所有关键业务功能)的备用站点。
基础设施
物理性加固系统
可引入计算机安全灭火系统和不间断电源等保护措施来保护系统。
备用系统
可引入冗余(冗余组件或依赖于不同设施的完全冗余系统/通信链路)来保护业务功能。
计划批准和实施
计划批准
高层领导在计划中的签名,也使计划在其他高级管理人员眼中具有更高的重要性和可信度,否则他们可能将其杻为一项必要但微不足道的 IT 计划。
计划实施
BCP 团队应该共同开发实施计划,该计划使用分配的资源,根据给定的修改范围和组织环境,尽快实现所描述的过程和预备目标。
完全部署所有资源后, BCP 团队应对 BCP 维护程序的设计和执行情况进行监督。这个程序确保计划能响应业务需求的不断变化。
培训和教育
培训和教育是 BCP 实施的基本要素。所有直接或间接参与计划的人员都应接受关于总体计划及个人职责的培训。
组织中的每个人都应该至少收到一份计划简报。简报让员工相信业务领导已考虑到业务持续运营可能面临时风险,并制订了计划来减轻中断发生时对组织的影晌。组织中的每个人都应接受业务连续性计划的基本安全意识培训(初始业务连续性计划培训)。具有特定角色的人员,如第一响应者和高级管里人员,还应该接受更详细、更有针对性的培训。
直接负责 BCP 上作的人员应接受培训,并对特定 BCP 任务进行评估以确保他们能在灾难发生时有效完成这些任务。此外,应为每个 BCP 任务至少培训一名备用人员,确保在紧急情况下当人员受伤或无法到达工作场所时有备用人员。
BCP 文档化
1. 连续性计划的目标
首先,该计划应描述 BCP 团队和高级管理层提出的连续忡计划的目标。这些目标应在第一次 BCP 团队会议中或之前确定,并很可能在 BCP 的整个生命周期内保持不变。
2. 重要性声明
重要性声明反映了 BCP 对组织持续运营能力的重要性。这份文件通常以信函形式提供给员工,说明为什么组织将大械资源用千 BCP 开发过程,并要求所有人员在 BCP 实施阶段予以配合。
如果信函中有首席执行官(CEO)或类似级别领导的签名,那么当你尝试在整个组织中进行改变时,这个计划将产生极大影响。
3. 优先级声明
优先级声明是业务影响分析的优先级确认阶段的直接产物。
4. 组织职责声明
组织职责声明也来自高级管理人员,可与重要性声明合并在同一文档中。它呼应了“业务连续件是每个人的职责”这个观点。
5. 紧急程度和时限声明
紧急程度和时限声明表达了实施 BCP 的重要性,概述了由 BCP 团队决定的并由高层管理人员批准的实施时间表。该声明的措辞将取决于沮织领导层给 BCP 过程指定的实际紧急程度。考虑添加一个详细的实施时间表,以培养紧迫感。
6. 风险评估
BCP 文档的风险评估部分基本上重述了业务影响分析期间的决策过程。它应该包括对BIA 过程中所有关键业务功能的讨论,以及为评估这些功能的风险而进行的定量分析和定性分析。需要注急,风险评估反映的是某个时间点的评估结果,团队必须对其定期更新以反映不断变化的清况。
7. 风险接受/风险缓解
BCP 文件中的风险接受/风险缓解部分包含 BCP 过程的策略开发部分的结果。它应涵盖风险分析部分确定的所有风险,并对下面两个思考过程中的一个进行说明。
- 对于被认为可接受的风险,应概述接受原因以及未来可能需要重新考虑此决定的可能事件。
- 对于被认为不可接受的风险,应概述要采取的缓解风险的预各措施和过程,以降低风险对组织持续运营的影响。
8. 重要记录计划
BCP 文件还应概述组织的重要记录计划。该文档说明了存储关键业务记录的位置以及建立和存储这些记录的备份副本的过程。
你应该能够识别出亟要记录清单中确定的每条记录的存储位置。
9. 应急响应指南
应急响应指南概述组织和个人立即响应紧急事件的职责。该文档为第一个发现紧急事件的员工提供了启动 BCP 预案的步骤, BCP 预案不会自动启动。
这些指南应包括以下内容:
·立即响应程序(安全和安保程序、灭火程序,以及通知合适的应急响应机构等)。
·事故通知人员名单(高管、 BCP 团队成员等)。
·第一响应人员在等待 BCP 团队集结时应采取的二级响应程序。
·事故通知人员名单(高管、 BCP 团队成员等)。
·第一响应人员在等待 BCP 团队集结时应采取的二级响应程序。
10. 维护
BCP 文件和计划本身必须即时更新。每个组织都在不断变化,这种动态性使得业务连续性要求随之变化。 BCP 团队不应在计划开发出来后就立即解散,而是应定期开会讨论该计划并审核计划测试的结果,以确保其一直能满足组织需求。
每次更改 BCP 时,都必须进行良好的版本控制。所有 BCP 旧版本都应该被物理销毁并替换为最新版本,这样便于弄清哪个是正确的 BCP 实施版本。
不妨将 BCP 组件纳入岗位描述中,这样可确保 BCP 持续更新并使团队成员更有可能正确履行其 BCP 职责。在员 的岗位描述中添加 BCP 职责的做法也可保证绩效考核过程中的公平竞争。
11. 测试和演练
BCP 文档中还应包含一个正式的演练程序,以确保该计划仍然有效。演练还能验证团队成员是否接受了充分培训,以便在发生灾难时履行职责。
1.9 协助制定和实施人员安全政策和程序
1.9.1 员工筛选与雇佣
岗位描述
招聘新员工的过程通常包括几个不同步骤:创建岗位描述或职位描述,设置工作级别,筛选应聘者,招聘和培训最适合该岗位的人。
岗位描述定义了需要分配给员丁的角色,以便其执行工作任务。
岗位职责Gob responsibilities)指员工常规执行的具体工作任务。
岗位描述并非专用于招聘过程,应在组织的整个生命周期中对它们进行维护。
为保证岗位的安全性,候选人筛选、背景调查、推荐信调查、学历验证和安全调查验证都是证实有能力的、有资质的和值得信任的候选人的必备要素。
背景调查
背景调查包括:获得候选人的工作和教育背景,检查推荐信,验证学历,访谈同事,核查有关被捕或从事非法活动的警方和政府记录,通过指纹、驾照和 或出生证明验证身份,进行个人面试。根据工作职位的不同,这个过程也可包括技能挑战、药物测试、信用核查、驾驶记录检查和性格测试/评估。
在线背景调查和补交网络账户审查
1.9.2 雇佣协议与政策
入职
入职是在组织中添加新员工的流程:让他们审查和签署雇佣协议和策略,向管理人员和同事介绍他们,并使其接受员工操作和后勤方面的培训。
IAM系统
新员工将被提供一个计算机/网络用户账户。这是通过组织的 IAM(identity and access management, 身份和访问管理)系统来完成的, 1AM 提供账户并分配必要的特权和访问权限。当员工的角色或职位发生变化,或者当这个人被授予额外的特权或访问权限时,都可以使用入职流程。
雇佣协议
聘用新员工时,应该签署雇佣协议。该协议文件概述了组织的规则与限制、安全策略、详细的岗位描述、违规行为和后果,以及员工担任该职位的最短期限或试用期。
可接受的使用策略(AUP)
可接受的使用策略(AUP)定义了哪些针对公司设施和资源的活动、实践或使用是可以接受的,以及哪些是不可以接受的。可接受的使用策略专门用于分配组织内的
安全角色,并规定与这些角色相关的职责
安全角色,并规定与这些角色相关的职责
保密协议(nondisclosure agreement, NDA)
NDA 用于防止在职或已离职的员工泄露组织的机密信息。违反保密协议的行为通常会受到严厉惩罚。
非竞争协议(Noncompete Agreement, NCA)
员工监管
在员工的整个雇佣期内,管理者应该定期审查或审计每位员工的岗位描述、工作任务、特权和职责。
岗位职责漂移或特权蔓延也可能导致安全违规行为。若员工拥有过多的特权,则会增加组织的风险。
在员工实际职责之外,有更高的可能性因为错误而破坏资产的保密性、完整性和可用性
心怀不满的员工有更大的能力故意造成损害
接管员工账户的攻击者有更大的能力造成损害
强制休假
对于一些组织(主要是金融行业组织)来说,该审查过程的一个关键部分是强制休假。强休假可以被看成一种同行审查过程。这个过程要求员工每年离开工作环境一到两周的时间,同时不能远程访问工作环境。检测原来员工的滥用、欺诈或疏忽行为
串通(collusion)
当几个人共同完成一起犯罪,这种行为被称为串通(collusion) 。采用职责分离、限制岗位职责、强制休假、岗位轮换和交叉培训等方式,可以降低员工愿意合伙进行非法活动或滥用职权的可能性,因为其被检测到的风险非常高。
用户行为分析(user behavior analytics, UBA) 和用户与实体行为分析(user and entity behavior analytics, UEBA)
从UBA/UEBA 监控收集的信息可用于改进人员安全策略、程序、培训和相关的安全监督计划。
1.9.3 员工入职、调动和离职流程
入职
入职是在组织的 IAM(Identity and Access Management, 身份和访问管理)系中中添加新员工的过程。
离职
离职是与入职相反的一个流程,指在员工离开公司后,将其身份从 IAM 系统删除。不过当员工被调动到组织内的新岗位时,特别是当员工要调动到不同的部门、设施或者物理位置时,也可能要使用离职流程。
人员调动
人员调动可能被视为开除/重新雇用,而不是人员移动。这取决于组织的政策及其认为能最好地管理这一变化的方式。
无论是作为开除/重新雇用、调动,还是作为退休或解雇的一部分,一个完整的离职流程可能包括禁用和/或删除用户账户、撤销证书、取消访问代码以及终止其他被特别授予的特权。通常要禁用以前员工的账户,以便将其身份信息保留几个月以进行审计。
离职注意事项
离职流程还可能要求通知保安人员和其他物理设施与资产访问管理人员,以后不再允许该员工进入。
解雇会议应至少有一名证人在场,最好是一名高级经理和/或一名安保人员。一旦通知员工完成解雇,应该提醒他们雇佣协议、保密协议和任何其他安全相关文件要求前雇员承担的责任以及对他的限制。
离职面谈
在预期的专业化解雇以及自愿离职(如辞职、退休或延长休假)中,可以添加一个额外的流程即离职面谈。离职面谈的目的是了解员工离职的原因、他们对组织的看法(包括人员、文化、流程等),以及他们建议采取哪些措施来改善当前和未来员工的状况。
在员工收到解雇通知的同时或在此之前,移除或禁用该员工的用户账户。
确保员工已将其交通工具中与家中的所有公司设备或用品们还。
安排一名安保人员陪同被解雇员工在工作区域收拾个人物品。
通知所有安保人员、巡查人员或监控出入口的人员,以确保前雇员在没有护送的清祝下无法再次进入办公大楼。
1.9.4 供应商、顾问与承包商协议与控制
服务水平协议(SLA)
使用服务水平协议(SLA) 是一种确保提供服务的组织在服务提供商、供应商或承包商以及客户组织达成协议的基础上保持适当服务水平的方法。
供应商管理系统(VMS)
VMS 是一种软件解决方案,可以协助人员配备服务、硬件、软件和其他所需产品和服务的管理和采购。
在对供应商进行评估来决定确定供应商的安全控制是否符合组织自己的标准时,最适合用作基线的标准。
1.9.5 合规策略要求
合规是符合或遵守规则、策略、法规、标准或要求的行为。
1.9.6 隐私策略要求
对隐私的一些定义:
·主动防止未经授权访问个人可识别的信息(即直接关联致个人或组织的数据),被称为个人身份信息(PII)
·防止未经授权访问个人的或机密的信息。
·防止在未经同意或不知情的情况下被观察、监视或检查。
·防止未经授权访问个人的或机密的信息。
·防止在未经同意或不知情的情况下被观察、监视或检查。
在IT 领域内处理隐私时,通常需要在个人权利和组织的权利或活动之间取得平衡。
在隐私方面存在许多法律与法规的合规性问题。
《健康保险流通与责任法案》(Health Insurance Portability and Accountability Act, HIPAA)
2002 年的《萨班斯-奥克斯利法案》 (Sarbanes-Oxley Act, SOX)
《家庭教育权利和隐私法案》(Family Educational Rights and Privacy Act, FERPA)
《金融服务现代化法案》
欧盟的《通用数据保护条例》 (GDPR)
1.10 理解并应用风险管理概念
1.10.1 识别风险与漏洞
风险术语
资产(asset)
资产可以是业务流程或任务中使用到的任何事物。
资产估值
资产估值是根据多个因素给资产指定的货币价值,包括对组织的重要性、在关键流程中的使用情况、实际成本和非货币性支出(如时间、关注度、生产效率和研发等)。
威胁(threat)
任何可能发生的、对组织或特定资产造成不良或非预期结果的潜在事件都是威胁。
威胁代理/主体
威胁代理或威胁主体有目的地利用脆弱性。威胁主体通常是人员,但也可能是程序、硬件或系统。威胁主体使用威胁来危害目标。
威胁事件
威胁事件是对脆弱性的意外和有意利用。
威胁向量
威胁向量或攻击向量指攻击或攻击者为了造成伤害而访问目标时所采用的路径或手段。
脆弱性(vulnerability)
脆弱性是资产中的弱点,是防护措施或控制措施的弱点,或防护措施/控制措施的缺乏。
暴露(exposure)
暴露是指威胁导致资产受到破坏的可能性。
风险(risk)
风险是威胁利用脆弱性对资产造成损害的可能性或概率以及可能造成损害的严重程度。
风险=威胁*脆弱性
风险=损害的可能性*损害的严重程度
防护措施(safeguard)
防护措施、安全控制、保护机制或控制措施指任何能消除或减少脆弱性,或能抵御一个或多个特定威胁的事物。这个概念也可被理解为风险响应。
攻击(attack)
攻击是指威胁主体故意尝试利用脆弱性造成资产破坏、丢失或泄露。
破坏(breach)
破坏、入侵或渗透是指安全机制被威胁主体绕过或阻止。破坏是成功的攻击。
1.10.2 风险评估/分析
关注角度不同
基于威胁的风险评估
威胁建模
基于资产的风险评估
有两种主要的风险评估方法
定性风险分析
定性风险分析更多的是基于场景,而非基于计算。
定性风险分析技术
·头脑风暴
·故事板
·焦点小组
·调查
. 问卷
·检查清单
·一对一的会议
·采访
.场景
• Delphi 技术
·故事板
·焦点小组
·调查
. 问卷
·检查清单
·一对一的会议
·采访
.场景
• Delphi 技术
场景
场景是对单个主要威胁的书面描述。对于每个场景,有多种防护措施可完全或部分应对场景中描述的主要威胁。然后,参与分析的人员分配场景的威胁级别、可能的损失和每种安全措施的优点。
定性风险分析的有用性和有效性随着评估参与者的数量和多样性的增加而提高。
Delphi 技术
Delphi 技术只是一个匿名的反馈和响应过程,用于在一个小组中匿名达成共识。它的主要目的是从所有参与者中得到诚实且不受影响的反馈。
定量风险分析
定量风险分析的过程从资产估值和威胁识别开始(可按照任何顺序进行)。这就导致需要对分配的或指定的资产-威胁组合,评估潜在危害的可能/严重程度和发生频/可能性。然后用这些信息计算评估防护措施的各种成本函数。
定量风险分析的六大要索
分配资产价值(AV)
计算暴露因子(EF)
计算单一损失期望(SLE)
评估年度发生率ARO
计算年度损失期望(ALE)
进行防护措施的成本/效益分析
1.10.3 风险响应
风险偏好
风险偏好是组织愿意在所有资产中承担的风险总量。风险能力是组织能够承担的风险水平。
风险缓解(risk mitigation)
降低风险或缓解风险是指通过实施防护措施、安全控制和安全对策以减少或消除脆弱性或阻止威胁。
风险转让(risk assignment)
风险转让或风险转移指将风险带来的损失转嫁给另一个实体或组织。
风险威慑(risk deterrence)
风险威慑是对可能违反安全和策略的违规者实施威慑的过程。目的是说服威胁主体不进行攻击。
风险规避(risk avoidance)
风险规避是选择替代的选项或活动的过程,替代选项或活动的风险低于默认的、通用的、权宜的或廉价的选项。
风险接受(risk acceptance)
风险接受或风险容忍是成本/收益分析表明控制措施的成本将超过风险可能造成的损失之后的结果。
风险拒绝(risk rejection)
一个不可接受的但可能发生的风险响应是拒绝风险或忽略风险。否认风险的存在并希望它永远不会发生,并不是有效的或审慎的应尽关心/尽职审查的风
险响应方式。
险响应方式。
固有风险
固有风险是在执行任何风险管理工作之前,环境、系统或产品中存在的自然、原生或默认的风险水平。固有风险也被称为初始风险或起始风险。
残余风险
一旦采取了防护措施、安全控制或者安全对策,余下的风险就被称为残余风险。残余风险是针对特定资产的威胁,高级管理人员选择不实施防护措施。
总风险
总风险指在没有实施防护措施的情况下组织面临的全部风险。
威胁*脆弱性*资产价值=总风险
控制间隙
总风险和残余风险的差额被称为控制间隙。控制间隙指通过实施防护措施而减少的风险。
总风险-控制间隙号戈余风险
控制风险
控制风险是将安全对策部署到环境中时引入的风险。大多数防护措施、安全控制和安全对策本身就是某种技术。
安全控制的成本与收益
防护措施的年度成本(annual cost of the safeguard,ACS)
选择部署任何防护措施时都会使组织付出一定代价。这个代价可能并不是购买成本,而可能是因为生产力降低、重新培训、业务流程变更或其他机会成本等带来的费用。
安全应该具有成本效益,因此保护某个资产的花费(包括现金或资源)不应超过其对组织的价值
防护措施实施削的 ALE-防护措施实施后的 ALE-防护措施的年度成本(ACS) = 防护措施对公司的价值
1.10.4 选择与实施控制措施
通过策略(属于管理性控制的一部分)全面驱动安全并围绕资产形成初始保护层。其次,逻辑/技术性控制提供针对逻辑攻击和漏洞利用的保护。然后,物理性控制可防止针对设施和设备的真实物理攻击。
管理性控制措施
管理性控制措施是依据组织的安全策略和其他法规或要求而规定的策略和程序。它们有时被称为管理控制、行政控制或者程序控制。
逻辑性/技术性控制措施
逻辑/技术性控制措施包括硬件或软件机制,可用千管理访问权限以及为 IT 资源和系统提供安全保护。
物理性控制措施
物理性控制措施是专为设施和真实世界对象提供保护的安全机制。
1.10.5 适用的控制类型(如预防、检测、纠正)
预防控制
部署预防控制以阻挠或阻止非预期的或未经授权的活动的发生。
威摄控制
部署威慑控制以阻止违反安全策略的行为。威摄控制和预防控制是类似的,但威慑控制往往需要说服个人不采取不必要的行动。
检测控制
部署检测控制以发现或检测非预期的或未经授权的活动。检测控制是在活动发生后才运行的,并且只有在活动发生后才能够发现活动。
补偿控制
补偿控制为其他现有的控制提供各种选项,从而帮助增强和支持女全策略。补偿控制可以是另-个控制的补充或替代选项。
纠正控制
纠正控制会修改环境,使系统从发生的非预期的或未经授权的活动中恢复到正常状态。
恢复控制
恢复控制是纠正控制的扩展,但具有更高级、更复杂的能力。安全策略被破坏后,恢复控制尝试修复或恢复资源、功能和能力。
指示控制
指示控制用于指导、限制或控制主体的行为,以强制或鼓励主体遵守安全策略。
1.10.6 控制评估(安全与隐私)
安全控制评估(security control assessment, SCA)是根据基线或可靠性期望对安全基础设施的各个机制进行的正式评估。 SCA 可作为渗透测试或漏洞评估的补充内容,或作为完整的安全评估被执行。
安全控制评估(SCA)通常是指用于评估安全控制的正式美国政府流程,通常与安全测试和评估(ST&E)流程配对。
SCA 的目标是确保安全机制的有效性,评估组织风险管理过程的质量和彻底性,并生成关于已部署的安全基础设施的优缺点的报告。 SCA 结果可以证实安全机制已维持其先前的已验证的有效性水平,或者必须采取措施解决存在缺陷的安全控制。
评估还应考虑安全控制是否会影响隐私。一些控制可能会改善隐私保护,而其他控制实际上可能会导致隐私侵犯。应根据法规、合同义务和组织的隐私政策/承诺来评估安全控制的隐私方面。
1.10.7 监控与测量
安全控制提供的收益应该是可被监视和测量的。
安全控制可能提供本地或内部监视,或者可能需要外部监视。
通常为了测量控制措施的成败,必须在安全措施执行前后进行监视和记录。只有知道了起点(即正常点或初始风险水平),才能准确地衡量收益。
1.10.8 报告
风险报告是风险分析结束时需要执行的一项关键任务。风险报告包括编制风险报告,并将该报告呈现给利益相关方。
风险报告应能准确、及时、全面地反映整个组织的情况,能清晰和准确地支持决策的制订,并定期更新。
风险登记册或风险日志是一份风险清单文档,它列出组织或系统或单个项目内的所有已识别的风险。风险登记册可作为项目管理文件,用于跟踪风险响应活动的完成情况以及风险管理的历史记录。
风险矩阵或风险热图是一种在基本图形或图表上执行的风险评估形式。它有时被称为定性风险评估。
1.10.9 持续提高(如风险成熟度模型)
风险分析/风险评估是一种“时间点“度量。威胁和脆弱性不断变化,风险评估需要定期进行以支持持续改进。
可以使用风险成熟度模型(risk maturity model, RMM)评估企业风险管理(enterprise risk management, ERM)计划。
典型的RMM 级别
初始级(ad hoc)——所有组织开始进行风险管理时的混乱状态。
预备级(preliminary)——初步尝试遵守风险管理流程,但是每个部门执行的风险评估可能各不相同。
定义级(defined)——在整个组织范围内采用通用或者标准化的风险框架。
集成级(integrated) ——风险管理操作被集成到业务流程中,收集有效性指标数据,风险被视为业务战略决策中的一个要素。
优化级(optimized)—— 风险管理侧重于实现目标,而不仅仅是对外部威胁做出响应;增加战略规划是为了业务成功,而不只是避免事故;并将吸取的经验教训重新纳入风险管理过程。
遗留设备风险
生产期终止(end-of-life, EOL)是指制造商不再生产产品的时间点。
服务期终止(EOSL)或支持期终止(EOS)系统是指那些不能再从供应商处获得更新和支持的系统。
1.10.10 风险框架
风险框架是关于如何评估、解决和监控风险的指南或方法。
风险管理框架(risk management framework, RMF)
为联邦机构制定的强制性要求
RMF 中有六个循环性阶段
准备 通过建立管理安全和隐私风险的上下文和优先级,准备从组织级和系统级的角度执行 RMF
分类 根据对损失影响的分析,对系统以及系统处理、存储和传输的信息进行分类。
选择 为系统选择一组初始控制并根据需要定制控制,以根据风险评估将风险降低到可接受的水平。
实施 实施控制并描述如何在系统及其操作环境中使用控制。
评估 评估控制以确定控制是否正确实施,是否按预期运行以及是否产生满足安全和隐私要求的预期结果。
授权 在确定组织运营和资产、个人、其他组织和国家/地区面临的风险是可接受的基础上,授权系统或共同控制。
监控 持续监控系统和相关控制,包括评估控制有效性,记录系统和操作环境的变化,进行风险评估和影响分析,以及报告系统的安全和隐私状况。
网络安全框架(cyber security framework, CSF)
为关键基础设施和商业组织设计的
CSF 以一个框架核心为基础,该框架核心由五个功能组成:识别、保护、检测、响应和恢复。
CSF 并不是检查清单或程序,它是为支持和改进安全而需要持续执行的操作活动的规定。 CSF 更像是一个改进系统而不是其所规定的风险管理流程或安全基础设施。
CSF 并不是检查清单或程序,它是为支持和改进安全而需要持续执行的操作活动的规定。 CSF 更像是一个改进系统而不是其所规定的风险管理流程或安全基础设施。
ISO/IEC 31000“ 风险管理-指南”文档
对风险管理理念的高层次概述
ISO/IEC31004“ 风险管理-ISO 31000 实施指南”
ISO/IEC27005“ 信息技术-安全技术-信息安全风险管理”
其他风险管理框架
Treadway 委员会的 COSO 企业风险管理-综合框架
ISACA IT 风险框架
可操作的关键威胁、资产和脆弱性评估(Operationally Critical Threat, Asset, and Vulnerability Evaluation, OCTA VE)
信息风险因素分析(Factor Analysis oflnformation Risk, FAIR)
威胁代理风险评估(Threat Agent Risk Assessment, TARA)
1.11 理解并应用威胁建模的概念和方法
威胁建模是识别、分类和分析潜在威胁的安全过程。威胁建模可被当作设计和开发期间的一种主动措施来执行,也可作为产品部署后的一种被动措施来执行。这两种情况下,威胁建模过程都识别了潜在危害、发生的可能性、关注的优先级以及消除或减少威胁的手段。
威胁建模不是个独立事件。组织通常在系统设计过程的早期就开始进行威胁建模,并持续贯穿于系统的整个生命周期。主动式威胁管理方法,微软使用安全开发牛命周期(SDL)过程在产品开发的每个阶段考虑和实现安全。这种做法支待“设计安全,默认安全,部署和通信安全”(也被称为 SD3+-C) 的座右铭。
威胁狩猎
并非所有威胁都能在设计阶段被预判到,所以仍然需要被动式威胁建模来解决不可预见的问题。这个概念远常被称作威胁狩猎,也可以被称为对抗性方法。
阶段
识别威胁三种方法
关注资产
该方法利用资产评估结果,试图识别有价值的资产面临的威胁
关注攻击者
有些组织能识别潜在攻击者,并能根据攻击者的动机、目标或者策略、技术和程序(TTP)来识别其所代表的威胁。
关注软件
如果组织开发了软件,就需要考虑软件受到的潜在威胁。
确定和绘制潜在的攻击
通常通过创建事务中的元素图表及数据流和权限边界来完成
执行简化分析
简化分析也被称为分解应用程序、系统或环境。这项任务的目的是更好地理解产品的逻辑、内部组件及其与外部元素的交互。
在分解过程中,必须确定五个关键概念。
信任边界
信任级别或安全级别发生变化的位置。
数据流路径
数据在两个位置之间的流动。
输入点
收外部输入的位置。
特权操作
需要比标准用户账户或流程拥有更多特权的忏何活动,通常需要修改系统或更改安全性。
安全声明和方法的细节
关千安全策略、安全基础和安全假设的声明。
在降维分析中,安全专业人员将系统分为五个关键要素:信任边界、数据流路径、输入点、特权操作和有关安全控制的细节。
优先级排序和响应
”概率*潜在损失”排序技术会生成一个代表风险严重程度的编号。
DREAD 评级系统旨在提供一种灵活的评级解决方案,它基于对每个威胁的五个主要问题的回答。
·潜在破坏:如果威胁成直,可能造成的损宝有多严重?
.可再现性:攻击者复现攻击的过程有多复杂?
·可利用性:实施攻击的难度有多大?
·受影响用户:有多少用户可能受到攻击的影响(按百分比)?
·可发现性:攻击者发现弱点有多难?
.可再现性:攻击者复现攻击的过程有多复杂?
·可利用性:实施攻击的难度有多大?
·受影响用户:有多少用户可能受到攻击的影响(按百分比)?
·可发现性:攻击者发现弱点有多难?
威胁建模的最终目标是对危害组织有价值资产的潜在威胁进行优先级排序。
微软开发了一种被称为 STRIDE 的威胁分类方案。
欺骗(Spoofing)
通过使用伪造的身份获得对目标系统的访问权限的攻击行为。
篡改(Tampering)
对传输或存储中的数据进行任何未经授权的更改或操纵的行为。
否认(Repudiation)
用户或攻击者否认执行动作或活动的能力。
信息泄露{Information Disclosure)
将私有、机密或受控信息泄露或发送给外部或未经授权的实体。
拒绝服务(DoS)
该攻击试图阻止对资源的授权使用。
特权提升(Elevation of Privilege)
该攻击是将权限有限的用户账户转换为具有更大特权、权利和访问权限的账户。
攻击模拟和威胁分析过程(Process for Attack Simulation and Threat Analysis, PASTA)是一种由七个阶段构成的威胁建模方法。
·阶段 1: 为风险分析定义目标
.阶段 2: 定义技术范围(Defi tion of the Technical Scope, DTS)
.阶段 3: 分解和分析应用程序(Application Decomposition and Analysis, ADA)
·阶段 4: 威胁分析(Threat Analysis, TA)
·阶段 5: 弱点和脆弱性分析(Weakness and Vulnerability Analysis, WV A)
.阶段 6: 攻击建模与仿真(Attack Modeling & Simulation, AMS)
.阶段 7: 风险分析和管理(Risk Analysis & Management, RAM)
.阶段 2: 定义技术范围(Defi tion of the Technical Scope, DTS)
.阶段 3: 分解和分析应用程序(Application Decomposition and Analysis, ADA)
·阶段 4: 威胁分析(Threat Analysis, TA)
·阶段 5: 弱点和脆弱性分析(Weakness and Vulnerability Analysis, WV A)
.阶段 6: 攻击建模与仿真(Attack Modeling & Simulation, AMS)
.阶段 7: 风险分析和管理(Risk Analysis & Management, RAM)
可视化、敏捷和简单威胁(Visual, Agile, and Simple Threat, VAST)是一种基于敏捷项目管理和编程原则的威胁建模概念。 VAST 的目标是在可扩展的基础上将威胁和风险管理集成到敏捷编程环境中
1.12 应用供应链风险管理(SCRM)概念
1.12.1 与硬件、软件和服务相关的风险
供应链可能是一个威胁载体,当从一个本应可信的来源获得材料、软件、硬件或数据时,该来源背后的供应链可能已被破坏,资产可能已中毒或被修改。
1.12.2 第三方评估和监控
针对供应链的评估和监控可能由供应链中的第一个或者最后一个组织进行,也可能需要外部审计人员参与完成。当使用第三方评估和监控服务时,请记住,每个供应链实体都需要在其业务操作中体现出安全意识。
1.12.3 最低安全要求
如果可能,应为供应链中的每个实体设立最低安全要求。
1.12.4 服务水平要求
对新的硬件、软件或服务的安全要求应该始终满足或超过对最终产品安全性的预期。通常需要详细审查 SLA、合同和实际执行情况。
当供应链组件供应商正在制作软件或提供服务时,可能需要定义服务级别需求(SLR) SLR 是对供应商产品(或服务)的服务和性能期望的说明。
1.13 制定并维护安全意识、教育和培训计划
社会工程
社会工程是一种利用人类天性和人类行为的攻击形式。人员是安全方面的薄弱环节,因为他们可能会犯错误,会被愚弄而造成损害或故意违反公司安全。
社会工程攻击有两种主要形式:说服某人执行未经授权的操作或说服某人泄露机密信息。
社会工程原理
权威
权威是一种有效的技巧,因为大多数人可能会顺从池响应权威。
恐吓
恐吓有时可以被视为权威原理的衍生品。恐吓利用权威、信任甚至威胁伤害来推动某人执行命令或指示。
共识
共识或社会认同是利用一个人的自然倾向的行为。
稀缺性
稀缺性是一种用千使某人相估某个目标因其稀缺性而具有更高价值的技术。
熟悉
熟悉或喜欢是一种社会工程原理,它试图利用一个人对熟悉事物的固有信任。
信任
在信任这一社会工程原则中,攻击者努力与受害者建立关系。
紧追性
紧迫性通常与稀缺性相呼应,因为稀缺性代表错失的风险更大,所以迅速采取行动的需求就会增加
获取信息
获取信息是指从系统或人员那里收集或汇聚信息的活动。
借口是精心制作的虚假陈述,盺起来可信,目的是说服你采取行动或作出有利于攻击者的回应。
通过社会工程收栠的数据可用千支持物理或逻辑哏术攻击。
前置词
前置词是在其他通信的开头或标题中添加的一个术语、表达式或短语。通常使用前置词是为了进一步完善或建立社会工程攻击的借口,例如垃圾邮件、恶作剧和网络钓鱼。
网络钓鱼
网络钓鱼(phishing) 是一种社会工程攻击形式,主要是从任何潜在的目标窃取凭证或身份信息
鱼叉式网络钓鱼
鱼叉式网络钓鱼(spear phishing)是一种更有针对性的网络钓鱼形式,其中信息是专门针对一个特定用户群体制作的。
网络钓鲸
网络钓鲸(whaling) 是鱼叉式网络钓鱼的一种变体,针对的是特定的高价值人员(按照头衔、行业、媒体报告等),如首席执行官(CEO)和其他C-层高管、管理员或者高净值客户。
短信钓鱼
短消息服务(SMS) 网络钓鱼或短信钓鱼(smishing, 叩时消息垃圾邮件)是一种社会工程攻击,它发生在标准文本消息服务之上或通过标准义本消息服务进行。
语音网络钓鱼
语音网络钓鱼(vishing, 即基千语音的网络钓鱼)或 SplT(互联网电话垃圾邮件)是通过任何电话或语音通信系统进行的网络钓鱼。
垃圾邮件
垃圾邮件(spam)是任何类型的不受欢迎和/或未经请求的电子邮件。
肩窥
子主题
发票诈骗
发票诈骗(invoice scam)是一种社会工程攻击,通常通过提供虚假发票然后强烈诱使付款,以期从组织或个人那里窃取资金。
恶作剧
恶作剧(hoax) 是一种社会工程,旨在说服目标执行会导致问题或降低其 IT 安全性的操作。
假冒和伪装
假冒(impersonation) 是假冒他人身份的行为。
伪装(masquerading)则是业余的和更简单
尾随和捎带
垃圾箱搜寻
垃圾箱搜寻(dumpster diving) 是通过挖掘垃圾、废弃设备或废弃地点来获取有关目标组织或个人的信息的行为。
身份欺诈
身份盗窃和身份欺诈指的是所有类型的以欺诈或欺骗的方式非法获取和使用他人的个人数据的犯罪,通常是为了获得经济利益
误植域名
误植域名 (typo squatting) 是一种在用户错误输入目标资源的域名或 1P 地址时捕获和重定向流量的做法。
影响力运动
影响力运动(influence campaign)是试图引导、凋整或改变公众舆论的社会工程攻击。
Doxing 是指收集有关个人或组织(也可以包括政府和军队)的信息,以便公开披露收集的数据,以指向对目标的感知。
混合战争(非线性战争)
将传统的军事战略与现代能力相结合,包括社会工程、数字影响力运动、心理战、政治战术和网络战争能力。这就是所谓的混合战争(hybrid warfare)
社交媒体
社交媒体(social media) 已经成为民族国家手中的一件武器,因为他们对目标发动混合战争。
1.13.1 安全意识宣贯与培训的方法和技术(例如,社会工程、网络钓鱼、安全冠军、游戏化)
安全意识
实施安全培训的一个前提条件是建立安全意识。建立安全意识的目标是让用户将安全放到首位并认可这一点。安全意识在整个组织中建立了通用的安全认知基线或基础,并聚焦于所有员工都必须理解的与安全相关的关键或基本的内容和问题。
安全意识建立了对安全认知的最小化的通用标准或基础。
培训
培训是指教导员工执行他们的工作任务和遵守安全策略。培训通常由组织主办,面向具有类似岗位职能的员工群体。所有新员工都需要某种程度的培训,这样他们才会遵守安全策略中规定的所有标准、指南和程字。培训是一项南要持续进行的活动,每个员工在任职期间都必须持续接受培训。培训是和神管理性安全控制。
教育
教育是一项更详细的工作,学生/用户学习的内容比他们完成其工作任务实际需要知道的内容多得多。教育最常与寻求资质认证或工作晋升的用户相关联。个人在应聘安全专家时常遇到的要求之一就是教育经历。安全专业人员需要掌握大量的安全知识并对整个组织的本地环境有广泛的了解,而不局限于了解他们的具体工作任务。
改进
安全带头人
安全冠军security champions
安全冠军security champions
发展和鼓励安全带头人。这些人在项目中,如在开发、领导或培训等中,发挥带头作用,通过同级领导、行为示范和社会鼓励来启动、支持和鼓励安全知识的采用和实践。
游戏化
通常可以通过游戏化的方式来提升安令意识和改进培训。游戏化是一种通过将游戏的常见元素融入其他活动,例如安全合规和行为改变,来鼓励合规性和参与度的方法。这可以包括奖励合规行为和潜在地惩罚违规行为。
夺旗演习、模拟网络钓鱼、基于计算机的培训(CBT)和基于角色的培训等。
1.13.2 定期内容审查
必须对所有培训材料进行定期的内容审查,这很重要。审查有助于确保培训材料和演示文稿与业务目标、组织使命和安全目标保持一致。这种对培训材料的定期评仙还提供了调整重点、添加/删除主题以及将新的培训技术集成到课件中的机会。
如果不能定期检查内容的相关性,材料就会过时,员工则可能倾向千自己制订的指南和程序。
1.13.3 方案效果评估
应该持续进行或者在可持续的基础上开展培训和安全意识计划有效性评估。
应该使用一些验证手段来判断培训是有效益的还是在浪费时间和资源。在有些情况下,可以在培训课程结束后立即对员工进行测验或测试。应在三到六个月后再进行一次后续测试,以检查他们是否记住了培训中所提到的信息。应审查事件和事件日志,了解由员工行为和习惯导致的安全违规发生率,以查看培训演示前后事件的发生率或趋势是否有任何明显差异。
有效的培训(和可教化的员工)将通过用户行为的显著变化(特别是安全违规事件的减少)得到证实。如果员工在几个月后的安全测验中获得高分,则表明其记住了安全概念。
一个设计良好、引人入胜且成功的安全培训计划应该可以著降低与员工相关的安全事件管理成本,并有望获得远超培训计划本身成本的收益。因此此,这将是一个良好的安全投资回报(ROSI)
D2 资产安全
2.1 识别并分类信息和资产
定义敏感数据
个人身份信息(personally identifiable information, PII)
任何可以识别个人的信息。
受保护的健康信息(protected health information, PHI)
与特定个人有关的任何健康信息。
专有数据
专有数据指任何有助千纠织保持竞争优势的数据,它可以是开发的坎件代码、产品的技术计划、内部流程、知识产权或商业秘密。
数据分类
数据分类的主要目的是确定组织数据的价值。
政府数据分类
绝密(top secret)
绝密标签是“应用于此类信息,对其未经授权的披露必然会对国家安全造成异常严重的损害,这是最初的分类机构能够识别或说明的"。
秘密(secret)
秘密标签是“应用千此类信息,对其未经授权的披露必炽会对国家安全造成严重损害,这是最初的分类机构能够识别或说明的"。
机密(confidential)
机密标签是“应用千此类信息,对其未经授权的披露会对国家安全造成损害,这是最初的分类机构能够识别或说明的"。
未分类(unclassified)
未分类数据指不符合绝密、秘密或机密数据描述的任何数据。
其他子分类
“仅供官方使用 ”(for official use only, FOUO)
“敏感但未分类”(sensitive but unclassified, SBU)
其他组织分类
机密/专有(confidential/proprietary)
机密/专有标签通常指最高级别的机密数据。在这种分类下,数据泄露将对组织的使命造成异常严重的损害。
私有(private)
私有标签指应该在组织中保持私有但不符合机密/专有数据定义的数据。在这种分类下,数据泄露将对组织的使命造成严重损害。
敏感(sensitive)
敏感数据与机密数据类似。在这种分类下,数据泄露将对组织的使命造成损害。
公开(public)
公开数据类似于非分类数据,包括发布在网站、手册或其他任何公共资源的信息。虽然组织不保护公开数据的保密性,但却采取措施保护其完整性。
资产分类
资产分类应与数据分类相匹配。
通常在硬件资产上使用清晰的标签,以提醒人员可在资产上处理或存储的数据。
2.2 制定信息和资产处理要求
标记敏感数据和资产
标记(常被称为打标签)敏感信息确保用户可方便地识别任何数据的分类级别。标记(或标签)提供的最重要信息是数据类别
标签包括物理标签和电子标签。
物理标签在整个生命周期内会一直存留在系统或介质上。
标记还包括数字标记或标签的使用。一种简单方法是将分类标签放在文档的页眉或页脚,或在其中嵌入水印。页眉、页脚和水印的另一个好处是, DLP 系统可识别包含敏感信息的义档,并应用适当的安全控制。
一些组织要求在其计算机上设置特定的桌面背景。
在许多安全的环境中,人员也会对未分类的介质和设备使用标签。这可以防止遗漏错误——敏感信息未被标记。
处理敏感信息和资产
处理(handling) 指的是介质在有效期内的安全传输。
备份磁带应该和其中包含的数据具有相同级别的保护。
同样,在云中存储的数据需要受到与在本地存储的数据相同的保护级别。
需要制订策略和程序以确保人们了解如何处理敏感数据。首选应确保系统和介质被适当地标记。此外,正如里根总统所说的:“信任,但要验证。”
存储敏感数据
应以适当的方式存储敏感数据,以防止它受到任何类型损失的影响。加密方法防止未经授权的实体访问数据,即使他们获得了数据库或硬件资产,也无法实现访问。
如果敏感数据存储在便携式磁盘驱动器或备份磁带之类的物理介质上,那么人员应该遵循基本的物理安全实践来防止因盗窃而造成的损失。
将这些设备存储在加锁的保险箱或保险库中,或存储在包括若干附加物理安全控制的安全房间内。
应该使用环境控制来保护介质。这包括温度和湿度控制,如供暖、通风和空调(heating, ventilation, and air conditioning, HVAC)系统。
任何敏感数据的价值都远大于保存敏感数据的介质的价值。换句话说,购买高质量介质的做法应是具有成本效益的,特别是当数据将存储很长时间时,例如存储在备份磁带上。
确定合规要求
每个组织都有责任了解适用于他们的法律要求,并确保他们满足所有合规要求。如果组织在不同的国家/地区处理 PII ,这一点尤其重要。
有些组织设立了一个正式职位,名为合规官。担任此职位的人员确保组织遵守了适用于该组织的法律和法规,以进行所有业务活动。
假设通过了一部新法律,如果公司的数据被盗,那么可能会面临巨额罚款。组织应该重新查看数据类别并将数据恰当分类。选择新基线或加密可能无法改变数据泄露已经造成的影响。
确定数据安全控制
管理层决定制订一个数据安全策略,规定使用特定安全控制来保护这些类别中的数据。
安全管理员使用安全策略中定义的要求来识别安全控制。
2.3 安全配置资源
信息和资产所有权
数据所有者对数据担负最终组织责任。数据所有者可以是高管,如首席运营官(CEO)、总裁或部门主管。同样,高级管理人员对其他资产(如硬件资产)负最终责任。管理服务器的IT 部门拥有这些服务器,而 IT 部门的高级管理人员承担保护责任。
数据所有者通常将数据保护工作委托给组织中的其他人。
资产列表(如有形、无形)
硬件资产清单
硬件资产包括计算机、服务器、路由器、交换机和外围设备等 IT 资源。许多组织使用数据库和库存应用程序在整个设备生命周期内执行资产盘点和跟踪硬件资产。
条形码/射频识别(radio frequency identification, RFID)标签
在处理设备之前,员工会对其进行净化(sanitize) 。当设备使用周期结束时,员工很容易忽视其存储的数据,因此通常应使用检查表(checklist) 来清理系统。检查表包含对系统内各类介质的净化步骤,净化对象包括系统内置硬盘、非易失性存储器,以及 CD DVD USB 闪存驱动器等可移动介质。
软件资产清单
软件资产包括操作系统和应用程序。组织会支付软件费用,并通常使用许可密钥(license key)来激活软件。激活过程往往需要通过互联网连接许可服务器,以防止盗版行为。如果许可密钥被泄露到外部,可能导致组织内使用的许可密钥失效。还应监测软件的许可合规来避免法律纠纷,这一点也非常重要。
无形资产清单
组织不会使用库存方式来盘点无形资产。但是,组织需要跟踪无形资产并加以保护。
高级管理团队通常是无形资产的所有者。他们试图通过评估资产为组织带来的收益来确定无形资产的价值。
大型组织使用公认会计原则(GAAP)在其资产负债表上报告无形资产的价值。这种做法便于组织至少每年审查一次无形资产。
资产管理
资产管理是指管理有形资产和无形资产。资产管理通常从资产清单开始,要求跟踪资产,并采取额外措施在整个生命周期内保护资产。
有形资产包括组织拥有的硬件资产和软件资产。无形资产包括专利、版权、公司声誉和其他代表潜在收入的资产。
许多组织使用自动配置管理系统(configuration management system, CMS)来帮助管理硬件资产。
2.4 管理数据生命周期
数据角色(例如,所有者、控制着、保管员、处理员、用户/对象)
数据所有者(data owner)
数据所有者(data owner)(有时被称为组织所有者或高管)是对数据负有最终组织责任的人。所有者通常是首席运营官(CEO) 、总裁或部门主管(DH)
数据所有者识别数据的分类并确保它被正确地标记。他们还确保它在分类和组织的安全策略要求的基础上有足够的安全控制。所有者如未能在制订和执行安全策略时在保护和维持敏感资料方面进行尽职审查,则可能需要对其疏忽负责。
数据所有者,负责数据分类,为每个分类的数据选择合适的安全控制/建立适当的使用保护数据的规则
资产所有者
资产所有者(或系统所有者)是拥有处理敏感数据的资产或系统的人员。
业务/任务所有者(business owner)
业务所有者也可使用被其他实体管理的系统。例如,销售部门是业务所有者, IT 部门和软件开发部门是销售流程中使用的系统的所有者。
业务所有者需要平衡好创造价值、业务监管、业务安全和其他要求。在这样的需求下,越来越多的公司采用了像COBIT这样的框架。
数据处理者和数据控制者
任何处理数据的系统都可以被称为数据处理者。
GDPR 将数据处理者定义为"仅代表数据控制者处理个人数据的自然人或法人、公共权力机构、代理机构或其他机构”。
数据管理员(Data stewards)
主要工作时监督数据。
数据托管员
数据所有者常将日常任务委托给数据托管员(custodian) 。托管员通过正确存储和保护数据来帮助保护数据的完整性和安全性。
管理员
该术语在不同的上下文中有着不同的含义。许多组织将任何具有高级权限的人员都视为管理员,即使他们没有完全的管理权限。
系统管理员的主要工作是授予数据管理员访问权限,其次负责落实安全控制措施。
用户和主体
用户是通过计算系统访问数据以完成工作任务的人。用户只能访问执行上作任务所需的数据。也可将员工或最终用户视为用户。
主体是访问文件或文件夹等客体的任何实体。主体可以是用户、程序、进程、服务、计算机或任何其他可以访问资源的东西。
GDPR 将数据主体(不仅仅是主体)定义为可以通过标识符(如姓名、身份训号或其他方式)识别的个人。
数据采集
防止数据丢失的最简单方法之一就是不收集数据。
指导方针很明确。如果数据没有明确的使用目的,请不要收集和存储。
数据位置
数据位置是指数据备份或数据副本的位置。
最佳做法是在本地站点保存一个备份副本,并在外部站点保存另一个备份副本。
一些组织在大型数据中心维护数据。通常将此数据复制到一个或多个其他的数据中心以保持关键数据的可用性。这些数据中心通常位于不同的地理位置。使用云存储进行备份时,某些组织可能需要验证云存储的位置,以确保其位于不同的地理位置。
数据维护
数据维护是指在数据的整个生命周期中不断地组织和维护数据。
物理隔离是—种物理安全控制,意味着来自分类网络的系统和电缆在物理上永远不会接触来自未分类网络的系统和电缆。
向分类网络添加数据方法
一种方法是手动,人员将数据从未分类网络复制到 USB 设备并将其携带到分类网络。
另一种方法是使用单向网桥,这将两个网络连接起来,们只允许数据从一个方向传轮,即从未分类网络到分类网络。
第三种方法是使用技术防护解决力案,它是放置在两个网络之间的硬件和软件的组合。
组织应定期审杳数据策略,以确保它们保持更新并且人员遵循这些策略。
数据保留
保留要求适用于数据或记录、保存敏感数据的介质、处理敏感数据的系统和访问敏感数据的人员。记录保留和介质保留是资产保留最重要的因素。
记录保留指在需要时保留和维护重要信息,并在不需要时销毁它。组织的安全策略或数据策略通常会标识保留时间期限。一些法律法规指定了组织保存数据的时间长度,如三年、七年,甚至不确定期限。
数据残留
数据残留(data remanence)是指本应擦除却仍遗留在介质上的数据。通常将硬盘驱动器上的数据称为剩磁或者剩余空间。如果介质中包含任何类型的私有数据和敏感数据,则消除数据残留的步骤是非常重要的。
剩余空间是磁盘栠群中未使用的空间。操作系统以簇的形式将文件存储在硬盘驱动器上,这些簇是扇区组(硬盘驱动器上的最小存储单元)。
一些操作系统用内存中的数据填充这个剩余空间。如果用户刚才正在处理一个绝密文件,然后创建了一个未分类的小文件,则该小文件可能包含从内存中提取的绝密数据。这就是工作人员永远不应该在非机密系统上处理机密数据的原因之一。
还可使用bmap (Linux) 和 slacker(windows)等工具将数据隐藏在剩余空间中。
还可使用bmap (Linux) 和 slacker(windows)等工具将数据隐藏在剩余空间中。
使用系统工具删除数据时通常会让许多数据残留在介质上,并且有很多工具可以轻易地取消删除操作。即使你使用复杂工具来覆写介质,原始数据的痕迹也可能保留为不易察觉的磁场。
消除数据残留的一种方法是用消磁器。消磁器产生一个强磁场,它可在磁性介质(如传统硬盘驱动器、磁带和软盘驱动器)中重新调整磁场。使用一定功率的消磁器,能够可靠地重写这些磁场并去除数据残留。然而,消磁器仅对磁性介质有效。
净化 SSD 的最佳方法是销毁。
保护 SSD 的另一种方法是确保存储的所有数据都被加密。即使净化方法无法去除所有数据残留物,这种方法也会使剩余数据变得不可读。
数据销毁
组织不再需要敏感数据时,应该销毁它。适当的销毁举措确保敏感数据不会落入坏人之手并导致未经授权的泄露。销毁高分类级别数据的步骤与销毁低分类级别数据的步骤是不同的。组织的安全策略或数据策略应该基于数据的分类来确定可接受的消毁方法。
净化
净化指直接销毁介质或使用可信方法从介质中清除机密数据而不销毁它。
常见数据销毁方法
擦除(erasing)
擦除介质只对文件、文件选段或者整个介质执行删除操作。大多数情况下,删除或移除过程只删除数据的目录或目录链接。
清理(clearing)
清理或覆盖操作,以便重新使用介质,并确保攻击者不能使用传统复原工具来恢复已被清理的数据。当介质被清理时,介质上的所有可寻址位置都被写入未分类的数据。一种方法是在整个介质上写入单个字符或指定位模式。更彻底的方法是在整个介质上写入单个字符,然后写入该字符的补码,最后写入随机比特。
或许可以使用复杂的实验室技术或取证技术检索一些原始数据。
或许可以使用复杂的实验室技术或取证技术检索一些原始数据。
清除(purging)
清除是一种更强烈的清理形式,为在不太安全的环境中重用介质做准。它提供了一定程度的保障,不管用哪种已知方法都无法恢复原始数据。清除过程将多次
重复清理过程,且可与另一种方志(如消磁)组合在一起以完全去除数据。尽管清除是为了消除所有数据残留物,但它并不总是被信任的。
重复清理过程,且可与另一种方志(如消磁)组合在一起以完全去除数据。尽管清除是为了消除所有数据残留物,但它并不总是被信任的。
消磁(degaussing)
消磁器产生一个强磁场,在消磁过程中擦除某些介质上的数据。技术人员通常使用消磁方法从磁带中去除数据,目的是使磁带恢复到原来的状态。也可对硬盘进行消磁,但我们不推荐这种做法。对硬盘进行消磁时通常会销毁用于访问数据的电子设备。但你无法保证磁盘上的所有数据都已被销毁。
消磁不影响光盘 CD DVD SSD
消磁不影响光盘 CD DVD SSD
销毁(destruction)
销毁是介质生命岗期中的最后阶段,是最安全的介质净化力法。当钠毁介质时,要确保介质不能被重用或修复,而且他人不能从被销毁的介质中提取数据。销毁方法包括焚烧、粉碎、分解和便用腐蚀性或酸性化学品溶解。
销毁是确保数据无法泄露的最完整方法,组织通常选择销毁驱动器或整个工作站或设备,以确保数据无法恢复或泄露。
解除分类(declassification) 指任何在未分类的环境中为重复使用介质或系统而清除数据的过程。可用净化方法为解除介质分类做准备,但通常安全解除介质分类所需的付出远大于在较不安全环境中使用新介质的成本。
清理Clearing
相同敏感级别运行环境中重复使用
清除Purging
一种更加密集的清理形式,为了在安全性较低的区域中重用
遵循公司的清除流程,然后降级并更换标签。首先进行重新标记可能导致故障,导致组织使用未清除的介质。
加密擦除
如果数据在设备上是加密的,则可以使用加密擦除或加密粉碎来销毁数据。在使用云存储时,销毁加密密钥可能是组织可用的唯一安全的删除形式。
2.5 确保适当的资产保留(例如,使用寿命结束(EOL),支持结束(EOS))
生产期终止(EOL) 、支持期终止(EOS)和服务期终止(EOSL)适用于软件或硬件。在资产保留方面,它们直接适用于硬件资产。大多数供应商将 EOL 称为他们停止销售产品的时间。EOS 是指这种支持结束的时间。大多数硬件都基于 EOL 和 EOS 时间周期进行更新。组织有时会保留旧硬件以便访问旧数据,如磁带驱动器上的数据。
如果保存数据的时间比必要的时间更长,也会带来不必要的法律问题。在受到起诉后,公司删除潜在证据的行为是不合法的。然而,如果保留策略规定在设定时间后删除数据,该行为则是合法的。
2.6 确定数据安全控制和合规要求
数据状态(例如,使用中、传输中、静止)
静态数据
静态数据(有时被称为存储中的数据)是存储在系统硬盘、固态驱动器(SSD)外部 USB 驱动器、 SAN(存储区域网络)和备份磁盘等介质上的任何数据。
传输中的数据
传输中的数据(有时被称为动态数据)是通过网络传输的任何数据。
对称加密和非对称加密的组合使用可以保护传输中的数据。
对称加密和非对称加密的组合使用可以保护传输中的数据。
使用中的数据
使用中的数据(也被称为处理中的数据)是指应用程序所使用的内存或临时存储缓冲区中的数据。
当不再需要这些数据时,则必须刷新内存缓冲区。
应用程序可以使用同态加密技术处理加密数据。
当不再需要这些数据时,则必须刷新内存缓冲区。
应用程序可以使用同态加密技术处理加密数据。
保护数据保密性的最佳方法是使用强加密协议。此外,强大的身份认证和授权控制机制有助于防止未经授权的访问。
数据定界和定制
安全基线
安全基线提供了一个基点并确保了最低安全标准。组织经常使用的安全基线是映像。
将系统部署为安全状态后,审计进程会定期检查系统以确保它们一直处于安全状态。例如, Microsoft 组策略可定期检查系统并章新应用设置以匹配基线安全状态。
选择控制基线后,组织通过定制(tailoring)和范围界定(scoping) 流程对其进行微调。
定制(tailoring)
定制过程的很大一部分是使控制措施与组织的特定安全要求保持一致。
定制是指修改基线内的安全控制列表以使其符合组织的使命。NIST SP 800-53B 正式将其定义为“组织范围内风险管理流程的一部分,包括构建、评估、响应和监控信息安全和隐私风险”,并指出它包括以下活动:
·识别和指定通用控制措施
.应用范围界定事项
.选择补偿杜控制
·分配控制措施价值
.应用范围界定事项
.选择补偿杜控制
·分配控制措施价值
范围界定
范围界定指审查基线安全控制列表,并且仅选择适用于你要保护的 IT 系统的安全控制措施。或者,简而言之,范围界定过程消除了基线中推荐的一些控制措施。
标准选择
在基线内或其他情况下选择安全控制措施时,组织需要确保安全控制措施符合某些外部安全标准。外部要素通常为组织定义强制性要求。例如, PCI DSS 定义了企业处理信用卡时必须遵循的要求。同样,收集或处理属于欧盟公民的数据的组织必须遵守 GDPR 的要求。
尽管法律上没有要求你的组织遵循特定标准,但若能遵守精心设计的标准,你的组织将获益匪浅。
数据保护方法(例如,数字化权限管理(DRM)、数据丢失防护(DLP)、云访问安全代理(CASB))
数据丢失预防(DLP)
数据丢失预防(DLP)系统试图检测和阻止导致数据泄露的尝试。这些系统具有扫描未加密数据以查找关键字和数据模式的能力。
管理员可以设置一个 DLP 系统来根据自己的需求查找任何模式。基于云的 DLP 系统可以查找相同的代码字符或字符串。
DLP 系统分为两种主要类型
基于网络的 DLP
基于网络的 DLP 扫描所有传出数据以查找特定的数据。管理员将其放置在网络边缘以扫描所有离开组织的数据。如果用户发出包含受限数据的文件, DLP 系统将检测到该文件并阻止它离开组织。
基于终端的 DLP
基于终端的 DLP 可以扫描存储在系统上的文件以及发送到外部设备如打印机)的文件
DLP 系统通常可以执行深度检查。例如,如果用户将文件嵌入压缩的 zip 文件中, DLP系统仍然可以检测到关键字和模式。但是, DLP 系统无法解密数据或检查加密数据。
大多数 DLP 解决方案还包括内容发现功能。目标是发现内部网络中有价值数据的位置。当安全管理员知道数据在哪里时,他们可以采取额外的步骤来保护它。
DLP系统使用规则查找传输中的数据,而不是搜索静态和存储中的数据。“敏感数据扫描工具”被设计通过使用已知格式和结构来扫描和标识敏感数据类型。
数字版权管理( DRM)
数字版权管理(digital right management, DRM)方法试图为受版权保护的作品提供版权保护。其目的是防止未经授权使用、修改和分发知识产权等受版权保护的作品的行为。
DRM 解决方案
DRM 许可证
许可证授予对产品的访问权限并定义使用条款。 DRM 许可证通常是一个小文件,其中包含使用条款以及用于解锁对产品访问的解密密钥。
持久在线认证
持久在线认证(也被称为永远在线 DRM)要求系统连接到互联网后才能使用广品。系统会定期与认证服务器连接,如果迕接或认证失败, DRM 将会拒绝对该产品的使用。
持续审计跟踪
持续审计跟踪记录所有对受版权保护的产品的使用。当与持久在线认证结合在一起时,它还可以检测滥用行为,例如在两个不同的地理位置上同时使用一种产品的行为。
自动过期
许多产品都是以订阅的方式进行出售的。当订阅期结束时,自动到期功能会阻止任何进一步的访问。
有时使用隐写术将数字水印放置在音频或视频文件中。它们不会阻止复制,但可用于检测未经授权的文件复制。它们还可用于版权执法和起诉。同样,元数据有时会被放入文件中以识别买方。
数字水印用于识别文件的所有者。用于帮助识别文件持有人的内嵌数据
DRM 方法用于保护受版权保护的数据,但不用于保护商标、专利或商业秘密。
云访问安全代理
云访问安全代理(CASB)是指逻辑位置上处于用户和基于云的资源之间的软件。它可部署在本地或云端。任何访问云的人都须通过 CASB 软件。它监控所有活动并执行管理员定义的安全策略。
CASB 通常包括身份认证和授权控制,并确保只有授权用户能访问本资源。 CASB 还可记录所有访问、监控活动并发送可疑活动警报。通常,组织内部创建的任何安全控制都可被复制到 CASB 。这包括组织实施的任何 DLP 功能。
CASB 解决方案还可有效地检测影子 IT 。影子 IT 是指在 IT 部门尚未批准甚至不知情的情况下使用 IT 资源(如云服务)。CASB解决方案检测影子 IT 的一种方法是收集和分析来自网络防火墙和 Web 代理的日志。
假名化
假名化是一个使用假名来表示其他数据的过程。当假名化被有效执行时,可能不需要遵守那么严格的要求,否则将需要遵守欧盟(EU) 《通用数据保护条例》 (GDPR)
假名就是别名。
假名可防止攻击者直接通过数据识别实体,比如识别出个人。要有另外一个资源(如另外一个数据库)允许你使用假名在其中读取原始数据。
令牌化
令牌化是使用一个令牌(通常是一个随机字符串)来替换具他数据的做法。它经常用用卡交易中。
将信用卡与智能手机关联起来
注册
第一次将信用卡与智能手机相关联时,手机上的一个应用程序安全地将信用卡号码发送到信用卡处理器。信用卡处理器将信用卡发送到由信用卡处理器控制的令牌化保险库。该保险库创建一个令牌(一串字符),并记录该令牌和加密的信用卡号码,并将其与用户的电话关联起来。
使用
智能手机将令牌传递给销售点(POS)系统。 POS 系统将令牌发送给信用卡处理器以授权支付。
验证
信用卡处理器将令牌发送到令牌化保险库。该保险库使用未加密的信用卡数据进行应答,然后信用卡处理器处理费用。
完成销售
信用卡处理程序向 POS 系统发送一个回复,表明该费用已被批准,并将该购买费用记入卖方。
过去,信用卡数据曾在 POS 系统中被拦截和窃取。但是,当使用令牌化时, POS 系统不会使用或知道信用卡号码。
经常性收取费用的电子商务网站也使用令牌化。电子商务网站不收集和存储信用卡数据,而是从信用卡处理器获取令牌。该电子商务网站并不持有任何敏感数据。即使攻击者获得了令牌并试图对其进行攻击,也会失败,因为支付只会被电子商务网站接收。
匿名化(anonymization)
匿名化是删除所有相关数据的过程,使攻击者理论上无法识别出原始主体或个人。如果有效地完成了匿名化,匿名数据就不必再遵守 GDPR。
你很难将数据真正匿名化。个人数据即使已被删除,也能被数据推断技术识别出来。这有时被称为匿名化数据的重新识别。
随机屏蔽是一种匿名化数据的有效方法。随机屏蔽是指交换单个数据列中的数据,从而使每一条记录不再代表真实的数据。但是,数据仍然保持一个可用于其他目的的聚合值,比如科学目的。
与假名化和令牌化不同,匿名化过程是不可逆转的。使用随机屏蔽的方式匿名化数据后,该数据是无法恢复到原始状态的。
D3 安全架构与工程
3.1 使用安全设计原理来研究、实施与管理工程过程
威胁建模
威胁建模是识别、分类和分析潜在威胁的安全过程。
最小权限
最小特权原则规定,主体仅被授予执行指定工作所需的特权。
深度防御
纵深防御也被称为分层(layering) 防御,指简单使用一系列控制中的多个控制。
纵深防御原侧则建议使用多个重叠的安全控制来实现相同的控制目标。网络和主机防火培都是为了限制网络流量而设计,因此是深度防御的一个例子。
默认安全配置
设计者和开发者之所以为产品选择默认安全配置,其实是为了尽量减少安装问题,以免增加技术支持服务的负担。
微软的安全开发生命周期(SDL)有一个名为 SD3+C 的座右铭,其中包含了“默认安全配置“
失效安全
失效安全(fail-secure)
失效保障(fail-safe)
失效打开(fail-open)
失效关闭(fail-closed)
职责分离(SoD)
职责分离策略形成一个制衡系统,其中两个或多个用户验证彼此的行为,并且必须协同完成必要的工作任务。
保持简单(KISS 原则)
在安全领域,这个概念鼓励开发人员避免把环境、机构或产品设计得过于复杂。
其他类似概念
“不自我重复"(DRY)
计算极简主义
编写代码时使其尽可能少用使件和软件资源;这也是计划评审技术(PERT) 的目的
最低耗能规则
“更坏的就是更好的"(也叫新泽西风格)
比较差的软件状态(即功能较少)往往反而是更好的选项(即更合意的可能更安全)。
“你不需要它 "(YAGNI)
应该在真正需要的时候添加能力和功能
零信任
零信任(zero trust) 这一安全概念是指不对机构内部的任何东西自动予以信任。
零信任模型基于“假设违规“,这意味着你永远都应假设已经发生了违反安全规定的情况,并且提出请求的任何人或任何实体都有可能是恶意的。
零信任网络只有在保持对用户活动的实时审查和监控的前提条件下才能发挥效力。
通过设计保护隐私
通过设计保护隐私(Privacy by Design, PhD)是指这样一条指导原则:在产品的早期设计阶段就把隐私保护机制集成到产品之中,而不是在产品开发结束之后再尝试添加。
“全球隐私标准”(GPS) ,该标准的出台旨在建立一套通用且协调一致的隐私原则。
PbD 框架基于七大基本原则:
- ·主动而非被动,预防而非修补
- • 以默认方式保护隐私
- • 隐私嵌入式设计
- ·所有功能——正和而非零和
- .湍到端安全——全生命周期保护
- ·可见性和透明性
- ·尊重用户隐私
信任但要确认
那种自动信任公司安全边界内的主体和设备(即内部实体)的传统安全保护方法就是“信任但要验证"
“信任但要验证“安全模型已不能满足要求。如今,大多数安全专家都建议依照零信任模型设计机构的安全防护。
共同责任
共担责任(shared responsibility) 是安全设计的原则,表明任们机构都不是孤立运行的。
封闭系统和开放系统
封闭系统(closed system)经设计只与小范围的其他系统协作,这些系统通常来自同一家制造商。封闭系统的标准一般是专有的,且通常不会公开。
开放系统(open system)在设计卜使用公认的行业 标准。
开源与闭源
开源解决方案是指源代码和其他内部逻辑向公众公开的解决方案。
闭源解决方案则是指源代码和其他内部逻辑对公众保密的解决方案。
用于确保保密性、完整性和可用性的技术
限定
进程限定(confinement)使进程只能对某些内存位置和资源进行读和写。这也就是所谓的沙箱(sandboxing) ,即对进程执行最小特权原则。限定的目的是防止数据被泄露给未经授权的程序、用户或系统。
界限
系统上运行的每个进程都被分配了一个授权级别。授权级别告知操作系统该进程可以执行哪些操作。简单系统中可能只有两个授权级别:用户和内核。
进程的界限(bound) 由一些限制组成,这些限制规定了进程可以访问的内存地址和资源。界限将进程的活动限定或制约在特定的区域内。
界限可以充当执行限定的手段。
隔离
当一个进程因访问界限的执行而被限定时,它就是在隔离状态下运行。
隔离(isolation) 是用来保护操作环境、操作系统内核以及其他独立应用程序的。隔离是稳定的操作系统的重要组成部分。隔离能阻止一个应用访问另一应用的内存或资源,不论访问是善意的还是恶意的。隔离使软失效环境得以实现,被隔离的进程无论是正常运行还是失效/崩溃,都不会干扰或影响其他进程。隔离
的实现依赖于限制的执行(以设置界限的方式)。
的实现依赖于限制的执行(以设置界限的方式)。
限定、界限和隔离这三个概念增加了设计安全程序和操作系统的难度,但它们也使组织有可能实现更安全的系统。
限定确保活跃进程只能访问特定资源(如内存)
界限是对进程的授权限制,使进程只能与规定的资源交互,且只被允许进行特定类型的交互。
隔离则是通过界限执行限定的手段。
访问控制
访问控制限制主体对客体的访问。访问规则规定了每个主体可以合法访问的客体。
信任与保证
可信系统(trusted system) 是指所有保护机制协同工作,可为许多类型的用户处理敏感数据,同时使计算环境保持稳定、安全的系统。换句话说,信任是安全机制、功能或能力的体现。
保证(assurance) 是指满足安全需求的可信程度。换句话说保证体现了安全机制在提供安全保护方面有多可靠。保证必须持续保持、即时更新和反复验证。
信任可通过执行特定的安全性能以融入系统,而保证则是对这些安全性能在现实中表现出来的可靠性和实用性做出的评价。
3.2 理解安全模型的基本概念(例如Biba、Star Model、Bell-LaPadula等模型)
可信计算基
安全边界
系统的安全边界(security perimeter)是一个假想的边界,可将 TCB 与系统的其余部分分隔开来
参考监视器
TCB 中负责在授权访问请求之前验证对每个资源的访问的部分被称作参考监视器(reference monitor) 。
内核
TCB 中用千执行参考监视器功能的组件集合被称为安全内核(security kernel) 。
状态机模型
状态机模型(state machine model)描述了一个无论处于什么状态都始终安全的系统。它基于有限状态机(finite state machine, FSM) 的计算机科学定义。
信息流模型
信息流模型(information flow model)专注于控制信息的流动。信息流模型基于状态机模型。信息流模型不一定只处理信息流动的方向,还可处理信息流动的类型。
信息流模型还可通过明确排除所有非定义流动路径来解决隐蔽信道问题。
无干扰模型
无干扰模型(noninterference model)大致基于信息流模型。不过,无干扰模型关注的并不是信息流,而是较高安全级别主体的动作会对系统状态或较低安全级别主体的动作产生的影响。
组合理论分三种
级联(cascading) :一个系统的输入来自另一系统的输出。
反馈(feedback) :一个系统向另一系统提供输入,由后者进行角色互换
连接(hookup) :一个系统在把输入发送给另一系统的同时还将其发送给了外部实体。
获取-授予模型
获取-授予模型(take-grant model)用一个定向图规定应该怎样把权限从一个主体传递给另一个主体或者从一个主体传递给一个客体。
获取-授予模型基本上有 4 条规则。
- ·获取规则:允许主体获取客体的权限。
- ·授予规则:允许主体向客体授予权限。
- ·创建规则:允许主体创建新权限。
- ·移除规则:允许卞体移除自己拥有的权限。
访问控制矩阵
访问控制矩阵(access control matrix) 是一个由主体和客体组成的表格,标明了每个主体可对每个客体执行的操作或功能。
矩阵的每一列都是依照客体排列的访问控制列表(ACL) 。矩阵的每一行都是每个被列主体的能力列表。
矩阵的每一列都是依照客体排列的访问控制列表(ACL) 。矩阵的每一行都是每个被列主体的能力列表。
Bell-LaPadula 模型
美国国防部于 20 世纪 70 年代根据其多级安全政策开发了 Bell-LaPadula 模型。多级安全政策规定,具有任何级别许可权的主体可以访问该许可权级别或低于该级别的资源。然而在许可权级别内,也只能按因需可知(need-to~know) 原则授予对分隔开的客体的访问权。
Bell-LaPadula 模型建立在状态机概念和信息流模型之上,还采用了强制性访问控制和基于格子的访问控制概念。
三个基本属性
简单安全属性(Simple Security Property) 规定主体不可读取更高敏感度级别的信息(不可向上读)。
*安全属性(*Security Property) 规定主体不可把信息写进较低敏感度级别的客体(不可向下写)。这也被称为限定属性(Confinement Property)
自主安全属性(Discretionary Security Property) 规定系统通过一个访问矩阵执行自主访问控制。
Bell-LaPadula 模型有一个例外规定——”可信主体”不受*安全属性约束。可信主体是指“保证即便可能,也不会违反安全规则传输信息的主体”。
Biba 模型
Biba 模型是在 Bell-LaPadula 模型之后被设计出来的,但它侧重的是完整性问题。 Biba模型也建立在状态机概念上,基于信息流,而且是一个多级模型。
关心的是保护物体 不受外部威胁
Biba 模型的属性
简单完整性属性(Simple Integrity Property) 规定主体不能读取较低完整性级别的客体(不可向下读)。
*完整性属性(*Integrity Property) 规定主体不能修改较高完整性级别的对象(不可向上写)。
Biba 模型在设计上解决了三个完整性问题:
子主题
Clark-Wilson 模型
Clark-Wilson 模型通过一种涉及诸多方面的方法实现数据的完整性。 Clark-Wilson 模型没有定义正式状态机,而是定义了每个数据项并且只允许通过一个受限或受控中间程序或接口进行修改。
Clark-Wilson 模型不要求使用格子结构,而是采用一个名为三元组或访问控制三元组(access control triplet) 的主体/程序/客体(或主体/交易/客体)的三方关系。主体无法直接访问客体,只能通过程序访问客体。 Clark-Wilson 模型借助组织完善的事务和职责分离两项原则提供了保护完整性的有效手段。
Clark-Wilson 模型定义了以下数据项和规程:
受约束数据项(constrained data item, CDI)指完整性受安全模型保护的任何数据项。
无约束数据项(unconstrained data item, UDI)指不受安全模型控制的任何数据项。任何输入但未经验证的数据或任何输出,都属于无约束数据项。
完整性验证规程(integrity verification procedme, IVP)指扫描数据项并确认其完整性的规程。
转换规程(transformation procedure, TP)指玻允许修改 CDI 的唯一规程。通过 TP 限制对CDI 的访问,这一方法构成 Clark-Wilson 完整性模型的支柱。
Brewer and Nash 模型
创建 Brewer and Nash 模型是为了让访问控制可以根据用户先前的活动动态地作出改变(这也使其成为一种状态机模型)。这个模型适用于单个集成的数据库,它寻求创建对利益冲突概念敏感的安全域(例如,如果 A、B两家公司互相竞争,那么在 C公司工作且有权访问A公司专有数据的人员不应该被允许访问 B公司的类似数据)。
Goguen-Meseguer 模型
非干涉性概念理论的基础
Goguen-Meseguer 模型以主体可访问的预先确定的客体集或域(即一个列表)为基础。这一模型的根基是自动控制理论和域隔离。这意味着只允许主体对预定客体执行预定操作。当相似的用户被划分到各自的域(即集合),一个主体域的成员将不能干扰另一个主体域的成员。因此,主体不能干扰彼此的活动动。
Sutherland 模型
Sutherland 模型是一个完整性模型,专注千通过防止干扰来支持完整性。
这一模型依据的是一种理念:对一组系统状态、初始状态和状态转换给出明确定义。该模型通过只使用这些被预先定义的安全状态来保持完整性和阻止干扰。
使用 Sutherland 模型的一个常见例子是:防止隐蔽信道被用来影响进程或活动的结果。
Graham-Denning 模型
Graham-Delllling 模型专注于主体和客体的安全创建与删除。Graham-Delllling 模型是八条主要保护规则或操作的集合,用于定义某些安全操作的边界。
Harrison-Ruzzo-Ullman 模型
Harrison-Ruzzo-Ulhnan(HRU)模型专注于给主体分配客体的访问权限以及这些被分配权限的韧性。它是 Graham-Denning 模型的扩展。它以建立一个有限规程集(或访问权限集)为中心利用这些规程编辑或更改主体对客体的访问权哏。
HRU 下的访问权限状态可用一个矩阵表示,其中行是主体,列是客体(里面还会包含主体,因为主体也可以是客体)。每行和每列的交集包含允许每个主体针对每个客体执行的具体规程。
3.3 基于系统安全要求选择控制措施
“通用准则 ”(Common Criteria, CC)
“通用准则 ”(Common Criteria, CC) 定义了测试和确认系统安全能力的各种级别,级别上标注的数字表示执行了哪种测试和确认。
“通用准则”被设计成一个动态主观性产品评估模型,用于取代以前的静态系统例如美国国防部的“可信计算机系统评估准则 ”(TCSEC)和欧盟的“信息技术安全评估准则 ”(ITSEC)
ISO/IEC 15408-1 -2 -3
“通用准则“进程基千两个要素:保护轮廓和安全目标。
保护轮廓(protection profile, PP)
保护轮廓(protection profile, PP) 为将接受评估的产品(即受评估对象)规定了安全要求和保护措施,我们可以把这些要求和保护措施视为客户的安全期望或客户“想要的东西”。
安全目标(security targets, ST)
安全目标(security targets, ST)规定了应被供应商纳入受评估对象的安全性能。我们可以把安全目标视为已经执行的安全措施或供应商“将提供的东西"
安全性能包
安全性能包是“安全要求”成分的中间分组,既可被添加到受评估对象中,也可从受评估对象中移除(就像购买新车时的选项包)
评估保证级别 (evaluation assurance level, EAL)
EAL1 功能测试
适用于对正常运行的可信度有一定荌求,但安全威胁并不严重的情况。在保护个人信息方面,当需要对应尽关心的执行做出独立保证时,不妨用这个级别
EAL2 结构测试
适用于依照良好商业实践规范交付设计信息和测试结果的情况。当开发人员或用户要求得到低至中等级别且有独立保证的安全性时,这个级别适用。该级别特别适用于评估旧系统
EAL3 系统性测试和检查
适用于安全工程始于设计阶段且始终没有实质性更改的情况。当开发人员或用户要求得到中等级别且有独立保证的安全性(包括对受评估对象及其开发的全面调查)时,这个级别适用
EAL4 系统性设计、测试和审查
适用千使用了严格、主动安全工程和良好商业开发实践规范的清况。这个级别不需要大量专业知识、技能或资源。它涉及对受评估对象所有安全功能的独立测试
EAL5 半正式设计和测试
根据严格的安全工程和商业开发实践规范(包括专业安全工程技术)进行半正式测试。适用于开发人员或用户在规划开发方法以及严格开发的过程中要求得到高级别且有独立保证的安全性的情况
EAL6 半正式验证、设计和测试
在设计、开发和测试的所有阶段借助直接、严格的安全工程技术生产优质的受评估对象。适用于需要面对高风险情况的受评估对象,其中受保护资产的价值值得你为其增加成本。大范围测试可以降低遭渗透的风险、存在隐蔽信道的可能性以及面对攻击的脆弱性
EAL7 正式验证、设计和测试
只用于最高风险情况或涉及高价值资产的情况。仅适用于被严格要求的安全功能必须接受大范围正式分析和测试的受评估对象
验证Verification
验证过程与认证过程类以,因为它验证了安全控制。通过涉及第三方测试服务和得出广为信任的结果,验证可以进一步进行。
鉴定过程Accreditation
鉴定是管理层正式接受评估的系统,而非评估系统本身的行为。鉴定是指定审批机构(DAA)正式声明:T系统被批准在特定安全模式下使用规定的一套保障措
施在可接受的风,险水平下运行。一旦鉴定完毕,管理层就可以正式认可评估系统的整体安全性能。
施在可接受的风,险水平下运行。一旦鉴定完毕,管理层就可以正式认可评估系统的整体安全性能。
认证过程Certification
认证是对T系统以及为支持鉴定过程而制定的其他保护措施的技术和非技术安全功能的综合评估,从而确定特定设计和实施满足一组特定安
全要求的程度。
全要求的程度。
操作授权(Authorization To Operate, ATO)
就许多环境而言,必须得到正式批准才能将有安全保障的设备用千 IT 操作目的。这常常被称为操作授权(Authorization To Operate, ATO) 。
操作授权是一种正式授权,用于把有安全保证的 IT/IS 系统集合休投入使用,执行业务任务并接受已识别风险。操作授权的评估和分配由授权官员(Authorizing Official, AO) 负责执行。
被指定的批准机构(DAA) 、批准机构(AA) 、安全控制评估员(SCA)和推荐官(RO)
操作授权的有效期通常为 5 年(不过分配的时间期限各异,即便在操作授权签发之后,授权官员还是可以调整时间期限),并且一旦出现以下任意一种情况,就必须重新申请。
- .操作授权的时间期限到期。
- ·系统遭遇严重安全事件。
- ·系统发生重大安全变化。
授权官员可以作出 4 种授权决定。
操作授权
当组织对风险的管理达到可接受水平时,授权官员可作出这种决定。
通用控制授权
当安全控制继承自另外一家供应商,而且与通用控制相关的风险处于可接受水平并已从同一位授权官员处得到了操作授权时,授权官员可作出这种决定。
使用授权
当一家第三方供应商(如云服务提供商)提供的 IT/IS 服务器被认为达到可接受风险水平时,授权官员可作出这种决定;这一决定还可以用来接受另一授权官员的操作授权。
拒绝授权
当风险不可接受时,授权官员可作出这种决定。
3.4 理解信息系统(IS)的安全功能(例如:内存保护、可信赖平台模块(TPM)、加密/解密)
内存保护
内存保护是一个核心安全成分,必须通过设计纳入操作系统并在其中执行。内存保护旨在防止活动进程与并非专门指派或分配给它的内存区域交互。
Meltdown(熔毁)和 Spectre( 幽灵)
未经授权的进程可以利用 Meltdown 漏洞读取系统内核内存中的隐私数据。而 Spectre漏洞可以让人从其他正在运行的应用程序中批量窃取内存数据。
虚拟化
虚拟化技术用于在一台主机的内存中运行一个或多个操作系统,或运行与主机操作系统不兼容的应用程序。虚拟化是隔离操作系统,测试可疑软件或执行其他安全保护机制的一种工具。
可信平台模块
可信平台模块(Trusted Platform Module, TPM) 既是主板上密码处理器芯片的规范,也是此规范执行方案的称谓。
硬件安全模块(HSM)就是 TPM 的一个例子。 HSM 是一种密码处理器,用于管理/存储数字加密密钥,提升密码运算的速度,支待速度更快的数字签名以及改进身份认证。
接口
受约束或受限制接口 (constrained or restricted interface)在应用程序内执行,旨在使用户只能按自己的权限执行操作或查看数据。
应用程序可借助多种方法约束接口,其中一种常用方法是把用户无权使用的功能隐藏起来。
容错
容错(fault tolerance) 是指系统虽然发生故障,但仍能继续运行的能力。
加密/解密
加密是指把明文转换成密文的过程,而解密是加密过程的反向过程。
3.5 评估并降低安全架构、设计和解决方案方面的漏洞
硬件
处理器
中央处理单元(central processing unit, CPU) 通常被称作处理器(processor) 或微处理器(microprocessor)
CPU 本身却只能执行一组有限的计算和逻辑操作,为了使 CPU 能够以超快的速度执行计算和逻辑操作。
执行类型
多任务处理
多任务处理(multitasking) 是指同时处理两个或多个任务。
多核
大多数 CPU 都是多核的(multicore)
multistate
经过认证的多核系统通过实施适当的保护机制来隔离数据,可同时处理来自不同安全分类级别的数据
Multistate systems are certified to handle data from different security classifications simultaneously by implementing
protection mechanisms that segregate data approprately.
Multistate systems are certified to handle data from different security classifications simultaneously by implementing
protection mechanisms that segregate data approprately.
多重处理
在多重处理(multiprocessing)环境中,一个多处理器系统驾驭多个处理器的处理能力来完成一个多线程应用的执行。
多程序设计
多程序设计(multiprogramming)类似于多任务处理。它是指由操作系统进行协调,假性地在单个处理器上同时执行两个任务,以提高操作效率。
大多数情况下,多程序设计属于一种批处理或序列化多个进程的方法,可在一个进程因等待外设而停下来时,把它的状态保存下来,由下一个进程开始进行处理。
多线程
多线程(multithreading) 允许在一个进程中执行多个并发任务。
保护机制
保护环
从安全的角度看,保护环(protection ring)把操作系统中的代码和组件(以及应用程序、实用程序或在操作系统控制下运行的其他代码)组织成同心环。
人多数现代操作系统使用 4个环的模型(编号为0到3)
环0
操作系统内核/内存(驻留组件)
环1
其他操作系统组件
环2
驱动程序、协议等
环3
用户层面的程序和应用
环模型的本质在于优先级、权限和内存分段。计划执行的任何进程都必须排队(等待的进程队列)。环号最低的进程总是先于环号较高的进程运行。环号较低的进程可比高环号进程访问更多资源,其与操作系统的交互也更直接。在编号较高的环中运行的进程通常必须向编号较低环中的处理程序或驱动程序请求它们所需的服务(即系统调用),这有时也叫中介访问模型(mediated-access model) 。
在实践中,许多现代操作系统只使用两个环或两个分区:一个用于系统层面访问(环 0~2) ,通常被称作内核模式(kernelmode)或特权模式(privileged mode) ,另一个用于用户层面的程序和应用(环 3) ,通常被称作用户模式(user mode)
进程状态
就绪状态
就绪状态(ready state)是指进程已经做好准备,被安排执行时可立刻恢复或开始处理。
运行状态
运行状态(running state) 或问题状态是指进程在 CPU 上执行并持续运行的状态,直到完成运行,时间片用完或者由于某种原因而被阻塞(通常是因为进程对 IO产生了干扰)时为止
等待状态
当进程处于等待状态(waiting state) 时,它已经准备好继续执行,但在可以继续处理之前需要等待IO 提供的服务。
管理程序状态
当进程必须执行一项操作,而这项操作要求权限(包括修改系统配置、安装设备驱动程序、修改安全设置等)必须大于问题状态的权限时,进程就进入管理程序状态。
停止状态
当一个进程结束或必须终止(因为发生错误,需要的资源不可用或者某项资源请求无法满足)时,它将进入一种停止状态(stopped state) 。
操作模式
用户模式
用户模式是 CPU 在执行用户应用程序时使用的基本模式。在此模式下, CPU只允许执行其全部指令集中的部分指令。
特权模式
CPU 还支持特权模式,这种模式的设计旨在使操作系统可以访问 CPU 支持的所有指令。这种模式还被称作管理程序模式、系统模式、监控模式或内核模式。
存储器
只读存储器
可编程只读存储器
可擦除可编程只读存储器
电子可擦除可编程只读存储器
闪存
随机存取存储器
真实内存
高速缓存 RAM
动态 RAM 与静态 RAM
静态 RAM 使用了更复杂的技术一一种名为触发器的逻辑装置。
寄存器
内存寻址
寄存器寻址
立即寻址
直接寻址
间接寻址
基址+偏移量寻址
二级内存
二级内存(secondary memory)这个词通常指磁性、光学或基于闪存的介质或其他存储设备,里面存储的是不能直接供 CPU 使用的数据。
虚拟内存(virtual memory)是一种特殊的二级内存,用于扩展真实内存的可寻址空间。
数据存储设备
主存储设备与辅助存储设备
易失性存储设备与非易失性存储设备
随机存取与顺序存取
存储器的安全问题
有一种方法可以在系统关闭或 RAM 被从主板拔出时通过冻结内存芯片的方式延迟驻留数据的衰减,这便是所谓的冷启动攻击。
存储介质的安全
发射安全
用来抵御发射攻击的手段和方式被称为 TEMPEST 对策。
应对 TEMPEST 窃听或 Van Eck 偷听的对策包括:
法拉第笼
白噪声
控制区
输入和输出设备
显示器
打印机
键盘 /鼠标
调制解调器
固件
固件(firmnware) 也叫微码(microcode) ,是用千描述存储在 ROM 芯片中的软件的词语。
基本输入/输出系统(basic input/output system, BIOS)
BIOS 包含计算机启动和从磁盘加载操作系统时所需的独立于操作系统的原始指令。
统一可扩展固件接口(unified extensible fmnware interface, UEFI)
UEFI 还包含一个独立于 CPU的架构、一个具有网络支持、测量启动、引导认证(即安全引导)以及向后向前兼容的灵活预操作系统环境。
刷新(flashing
更新 UEFI、 BIOS 或固件的过程被称为刷新
引导认证(boot attestation) 或安全引导(secure boot) UEFI 的一项功能,旨在通过阻止加载或安装未由预先得到批准的数字证书签名的设备驱动程序或操作系统来保护本地操作系统
测量启动(measmed boot) UEFI 的一个功能可选项,它对启动进程涉及的每个元素进行哈希计算。哈希计算由可信平台模块(TPM)执行并且其结果会砓保存在这个模块中。
基于客户端的系统
移动代码
applet 是服务器发送给客户瑞以执行某些操作的代码对象。 applet 实际上是独立于发送它们的服务器执行的自包含微型程序,即移动代码。
Java applet 和 ActiveX 控件是 applet 类型小程序历史上的两个例子。
JavaScript 是世界上应用最广的移动代码脚本语言,它通过<script></script> 附件标签嵌入(包含在) HTML 文档。
本地缓存
DNS 缓存
ARP 缓存
临时互联网文件
基于服务器的系统
就基于服务器端(可能也包括客户端)的系统安全而言,关注的要点应该是数据流控制(data flow control) 的问题。数据流是指数据在进程之间、设备之间、网络之间或通信信道之间的移动。
大规模并行数据系统
对称多处理(symmetric multiprocessing, SMP)
一台计算机含多个处理器,而这些处理器被一个操作系统同等地对待和控制一一这样的场景就叫对称多处理(symmetric multiprocessing, SMP) 。
非对称多处理(asymmetric multiprocessing, AMP)
各个处理器往往彼此独立工作。每个处理器通常都有自己的操作系统和/或任务指令集以及专用的数据总线和内存资源。
大规模并行处理(massive allel processing, MPP)
AMP 有一种变体叫大规模并行处理(massive allel processing, MPP) ,其中有大量 AMP系统被链接在一起,跨多个链接系统中的多个进程共同处理一项主任务。
网格计算
网格计算(grid computing)是一种并行分布式处理形式,它对大量处理节点进行松散的分组,使其共同去实现一个特定处理目标。
网格计算的最大安全问题是:每个工作包的内容都有暴露给外界的可能。
网格计算通常用一个核心中央服务器来管理项目,跟踪工仵包并染成返回的工作段落。
网格计算还存在这样一种潜在风险:有人可通过入侵中央网格服务器来攻击网格成员或欺骗网格成员执行非网格社区预期目的的恶意操作。
对等网络
对等网络(peer-to-peer, P2P)技术是在伙伴之间共享任务和工作负载的联网和分布式应用解决方案。
数据库系统
密码系统
工业控制系统(ICS)
可编程逻辑控制器(programmable logic controller, PLC)
PLC 单元其实是单用途或专用数字计算机。
用于以独立的方式控制单个设备。
分布式控制系统(distributedcontrol system, DCS)
DCS 侧重于流程,是状态驱动的
用于在有限的物理范围内连接多个PLC, 以便通过网络实施集中控制、管理和监督。
监测控制和数据采集(supervisory control and data acquisition, SCADA)系统
侧重于数据收集,是事件驱动的。
SCADA 系统可作为独立设备运行,也可与其他 SCADA 系统联网,或者与传统 IT 系统联网。 SCADA 常被称为一个人机界面(HMI) ,因为这样能让人更好地理解、监督、管理和控制复杂的机器和技术系统。
把这一点扩展到大规模物理区域,从而把多个 DCS 和各个 PLC 相互连接起来。
基于云端的系统(例如,软件即服务(SaaS)、基础架构即服务(IaaS)、平台即服务(PaaS))
分布式系统
分布式系统(distributed system)或分布式汁算环境(distributed computing env onment, DCE)是协同支持一个资源或提供一项服务的一组单个系统的集合。
DCE 也叫(或至少被描述为)并发计算、并行计算和分布式计算。
DCE 通常包含接口定义语言(Interface Definition Language, IDL) IDL 是用来定义分布式系统中客户端与服务器端进程或对象之间接口的一种语言。
DCE 存在一些固有的安全问题,其中的主要安全问题是组件之间的互联性。
数据主权(data sovereignty) 的问题
物联网(IoT)
智能设备(smart device) 是指可为用户提供大量自定义选项(通常通过安装 app 实现),并可利用配备在设备本地或云端的机器学习(ML) 处理的各种设备。
物联网(Internet ofThings, IoT) 属于智能设备的一个类别,它们与互联网连接,可为装置或设备提供自动化、远程控制或人工智能(AI) 处理。
嵌入式系统是指将计算机控制组件集成到大型机械装置的结构、设计和操作中(往往是安装到同一个底盘或机箱里)的系统。
与物联网相关的安全们题往往涉及访回控制和加密。物联网设备的设计通常不以安全为核心理念,有时甚至不把它当作事后考虑的问题。
可穿戴技术(wearabletechnology)或可穿戴设备(wearables)是专为个人设计的智能设备和物联网设备的一个分支。
传感器是企业环境中常见的物联网设备。
工业物联网(Industrial Internet of Things, lloT) 是物联网的衍生品,更侧噩千工业、工程、制造或基础设施层面的监督、自动化、管理和传感。
微服务
微服务(microservice) 是基千 Web 解决方案的一个新兴特性,隅千 SOA 的衍生品。微胀务只是 Web 应用程序的一个元素、特性、能力、业务逻辑或功能,可供其他 Web 应用程序调用或使用。
微服务通常很小,专注于某一单项操作,被设计得很少依赖其他元素,开发周期短平快(类似千敏捷)。
容器化
容器化或操作系统虚拟化(OS-virtualization) 基于一个概念:在虚拟机中消除操作系统的重复元素。
无服务器
无服务器架构(serverless architecture) 是一种云计算概念,其中代码由客户管理,平台(即支持性硬件和软件)或服务器由云服务提供商(CSP) 管理。
功能即服务(function as a service, FaaS)
嵌入式系统
嵌入式系统(embedded system) 是为提供自动化、远程控制和/或监控而被添加到现有机械或电气系统中的任何形式的计算组件。嵌入式系统的设计通常以与该系统所附着的较大产品相关的一组有限特定功能为核心 。嵌入式系统可由典型计算机系统的组件组成,也可以是一个微控制器(一个含板载内存和外设端口的集成芯片)。
嵌入式系统本身可能就是一种安全风险,因为它们通常是静态系统,这意味着即便是部署它们的管理员,也没有真正的办法为弥补安全漏涧而改变设备的运行方式。
静态系统
静态环境是一组静止不变的条件、事件和周围事物。
静态 IT 环境是指原本就不打算让用户和管理员改变的任何系统。它的目标是防止用户实施有可能导致安全性或性能下降的更改,或者至少减少这种可能性。静态系统也叫非持久性环境或无状态系统
静态系统的例子包括机场的值机柜台、 ATM 机以及通常在洒店或图书馆免费供客人使用的计算机。这些客户计算机经配置可为用户提供临时桌面环境,用于执行有限范围的任务。
可联网设备
可联网设备(network-enabled device) 是指具备本机联网能力的任何类型的设备——无论是移动的还是固定的。
信息物理融合系统
信息物理融合系统(cyber-physical system)指可提供计算手段来控制物理世界中某物的设备。
信息物理融合设备和系统属于由机器人技术和传感器组成的网络中的关键元素。
与嵌入式和静态系统相关的元素
嵌入式和静态系统的安全间题
有些嵌入式和专用系统依靠可更换或可充电电池运行。这些能量上的局限性会限制运行速度,进而限制安全组件的执行。
大多数嵌入式系统和专用系统都使用能力较低的 CPU 。
许多嵌入式和专用系统联网能力有限。
许多嵌入式和专用系统无法处理高端加密。
一些嵌入式和专用系统很难打补丁,而其他的甚至可能根本无法打补丁或升级。
一些嵌入式和专用系统不用身份认证来控制主体或限制更新。
由于天线功率低,一些嵌入式和专用系统的传输范围有限。
一些嵌入式和专用系统的成本较低,因此它们可能不包含必要的安全性能。
与供应链问题类似,机构使用嵌入式或专用系统时,会自动信任设备供应商及其背后的云服务。
大多数系统在设计上只注重最大限度地降低成本和减少无关性能。这往往会导致系统缺乏安全机制并造成升级或打补丁困难。
安全治理
通用安全管理原则
网络分段
应用程序防火墙
包装器(wrapper)
监控
高性能计算(HPC)系统
高性能计算(high-performance computing, HPC)系统是指专用于以极高速度执行复杂计算或数据操控的计算平台。超级计算机和 MPP 解决方案是 HPC 系统的常见例了。当需要为某一特定任务或应用进行海量数据实时或近实时处理时,就要使用 HPC 系统。
HPC 解决方案由三个主要元素组成:计算资源、网络能力和存储容量。为了优化整体性能, HPC 的每个元素都必须能够展现等效的能力。
HPC 有一个相关的概念叫实时操作系统(RTOS)。 HPC 往往执行实时操作系统的计算能力,或者以其他方式尝试实现实时处理和操作。
实时操作系统(real-time operating system, RTOS)经设计可在数据到达系统时以最小时延或延迟对它们进行处理或处置。实时操作系统通常保存在只读存储器(ROM)上,而且可在硬实时或软实时条件下运行。
边缘计算系统
边缘计算(edge computing)是让数据与计算资源尽可能靠近,在最大限度减少时延的同时优化带宽利用率的一种网络设计理念。
雾计算(fog computing)是先进计算架构的另一个例子,它也常被用作工业物联网部署的一个元素。雾计算依靠传感器、物联网设备乃至边缘计算设备收集数据,然后把数据传回一个中央位置进行处理。雾计算处理的位置被安排在一个局域网中。
虚拟化系统
虚拟化技术(virtualization technology)用于在一台主计算机的内存中托管一个或多个操作系统,或用于运行与主机操作系统不兼容的应用程序。
I 型管理程序(type I hypervisor) 是一个本地或裸机管理程序。这个配置中没有主机操作系统
II 型管理程序(type II hypervisor) 是一个受托管的管理程序。在这种配置中,硬件上有一个标准的常规操作系统,管理程序作为另一个软件应用程序被安装和使用。
虚拟软件
虚拟应用程序(virtual application) 或虚拟软件(virtual software) 是这样一种软件产品:它的部署方式会让访问者误认为自己正在与整个主机操作系统交互。
虚拟化网络
虚拟化网络(virtualized network) 或网络虚拟化(network virtualization) 是指将硬件和软件网络组件组合成一个集成的实体。
软件定义一切
软件定义一切(software-defmed everything, SDx)指的是通过虚拟化用软件取代硬件的一种趋势。 SDx 包括虚拟化、虚拟化软件、虚拟化网络、容
器化、无服务器架构、基咄设施即代码、软件定义网络、虚拟存储区域网(VSAN)、软件定义存储(SDS )、虚拟桌面基础设施(VDI) 、虚拟移动基础设施(VMI)、软件定义可见性(SDV)和软件定义数据中心(SDDC)
器化、无服务器架构、基咄设施即代码、软件定义网络、虚拟存储区域网(VSAN)、软件定义存储(SDS )、虚拟桌面基础设施(VDI) 、虚拟移动基础设施(VMI)、软件定义可见性(SDV)和软件定义数据中心(SDDC)
软件定义可见性(software-defined visibility, SDV)是一个推动网络监控和响应进程实现自动化的框架。
虚拟化的安全管理
hypervisor代表一个额外的受攻击面
每个虚拟机的客户操作系统仍然需要单独更祈。
虚拟机蔓延(VMsprawl)
缺乏一个全面的 IT 管理或安全计划实施管控时,会发生虚拟机蔓延(VMsprawl) 的情况
服务器蔓延或系统蔓延
指机构的服务器机房中有大量未被充分利用的服务器在运行的情况。
影子 IT(shadow IT)
机构的某个部门在高管或 IT 管理团队不知情或没有允许的情况下擅自部署 IT 组件(物理组件或虚拟组件)的情况。
虚拟机逃逸(VMescaping)
当客户操作系统中的软件能够突破管理程序提供的隔离保护,从而破坏其他客户操作系统的容器或渗透主机操作系统时,就惹味着发生了虚拟机逃逸(VMescaping)
专用设备
专用设备是指为某一特定目的而设计,供某一特定类型机构使用或执行某一特定功能的任何设备。车载计算系统、智能电表
基础设施即代码
基础设施即代码(infrastructure as code, IaC)体现了人们在认知和处理硬件管理方面的一种改变。
要像在 DevSecOps(安全、开发和运维)模式下管理软件和代码那样对硬件配置实施管理。采用 IaC 时,硬件基础设施的管理方式与软件代码的管理方式基本相同,包括:版本控制、部署前测试、定制测试代码、合理性检查、回归测试和分布式环境中的一致性。
不可变架构(innnutable architecture) 是指服务器一旦部署就绝不可变更的概念。当服务器需要更新、修改、修复或以其他方式更改时,要构建一个新服务器或从当前服务器克隆一个新服务器来实施必要变更,然后用这个新服务器取代以前的服务器。
软件定义网络(SDN)是基础设施即代码(IaC)和分布式计算环境(DCE) 的衍生品。 SDN指把网络当作虚拟或软件资源进行管理——即便从技术上说管理依然发生在硬件上。
移动设备
移动设备的安全性能
移动设备管理
移动设备管理(MDM)系统是一种软件解决方案,旨在管理员工用来访问公司资源的无数移动设备。
统一端点管理(unified endpoint management, UEM)是一种软件工具,它提供一个管理平台来控制移动设备、 PC 机、物联网设备、可穿戴设备、 ICS 和其他设备。
设备身份认证
全设备加密
通信保护
通信保护概念应适用千任何类型的传输,无论是视频、文本,还是数据。
远程擦除
远程擦除允许你从一台远程设备删除所涉设备上的所有数据乃至配置设置。擦除进程可以通过移动电话服务触发,有时也可通过任何互联网连接(如 Wi-Fi)触发。们远程擦除并不能保证数据安全。
设备锁定
如果用户多次尝试后仍不能提供凭证,他的账户或设备将被禁用(锁定)一段时 司,直到管理员清除锁定标志。
屏幕锁
屏幕锁(screen lock) 的设计是为了防止有人拿起你的手机或移动设备便能随意使用。
GPS 和定位服务
基千位置的授权策略可用来根据主体所处位置准许或拒绝资源访问,从而控制访问。
地理标签是指移动设备在其创建的任何介质(如照片、视频和社交媒体呫子)中收入位置细节的能力。
地理标记(geotagging) 可以用千邪恶的目的,例如确定一个人的日常活动规律。
地理围栏(geofencing)划定指的是指定一个特定的地理区域,移动设备进入该区域后自动执行设备功能或触发设置。
内容管理
内容管理旨在控制移动设备及其对被托管在公司系统上的内容的访问,并控制人员对保存在移动设备上的公司数据的访问。
应用程序控制
应用程序拧制(application control) 或应用程序管理(application management)是一种设备管理解决方案,规定了哪些应用程序可以被安装到设备上。
推送通知
推送通知(push notification) 服务能够向你的设备发送信息,而不是让设备(或设备的应用程序)从在线资源获取信息。
第三方应用商店
存储分段
存储分段(storage segmentation) 用于在存储介质上按各种类型和数值对数据进行人为划分。
资产跟踪和存货控制
资产跟踪是用来保持存货(例如已部署的移动设备)监控的管理进程。
可移动存储
连接方法
禁用无用性能
启用的性能和安装的应用程序范围越广,漏洞利用或软件缺陷给设备和 或其中所含数据造成损害的可能性越大。
生根或越狱
生根(rooting)或越狱(Jailbreaking)是苹果设备的特殊用语,拒打破移动设备引导加载程序数字权限管理(DRM) 的安全保护并以根或全系统特权操作设备的行为。
旁加载
旁加载(sideloading) 是指通过某种形式的文件传输或 USB 存储介质把安装程序文件带到设备上来安装某款应用程序的行为。
自定义固件
移动设备出厂时预装了供应商或电信公司提供的固件或核心操作系统。设备如果被生根或越狱,它将允许用户安装备选的自定义固件来替代默认固件。
运营商解锁
大多数直接从电信公司购买的移动设备都是被运营商锁定的。这意味着在运营商锁定被移除或运营商解锁之前,你无法在任何其他电信网络上使用该设备。
固件无线更新
固件无线(over-the-air, OTA)更新是指从电信公司或供应商无线下载(通过运营商提供的数据连接或通过 Wi-Fi) 的固件更新。
密钥管理
凭证管理
把凭证保存在一个中央位置的行为就是凭证管理。
手机短信
短消息服务(SMS) 、多媒体消息传递服务(MMS)和富通信服务(RCS)都是具有实用价值的通信系统,但它们也可以成为攻击向量
移动设备的部署策略
自带设备
自带设备(bring your owi1 device, BYOD)策略允许员工携带自己的个人移动设备上班,且允许他们用这些设备通过公司网络连接业务资源和/或互联网。
公司拥有,个人使用
“公司拥有,个人使用 ”(corporate-owned, personally enabled, COPE) 的概念是指机构购买设备并将其提供给员工使用。
自选设备
自选设备(choose your own device, CYOD) 的概念为用户提供了一个已获批准的设备列表,用户可以从中挑选自已将要使用的设备。
公司拥有移动设备战略
公司拥有移动设备战略(corporate-owned mobile strategy, COMS)或公司拥有仅用千业务(corporate-owned, business-only, CO BO) 战略是指公司购买可支持安全策略合规的移动设备。
移动设备部署策略的细节
数据的拥有权
机构应该制订明确的数据拥有权策略。一些 MDM/UEM 解决方案可以在不影响个人数据的情况下提供数据隔离/分隔功能并支持业务数据清理。
对拥有权的支持
移动设备部署策略应该阐明公司将提供哪些支持以及哪些问题该由个人及其服务提供商提供
补丁和更新管理
安全产品管理
移动设备部署策略应该规定是否要在移动设备上安装杀毒软件、反恶意软件、反间谍软件扫描程序、防火墙、 HIDS 或其他安全工具。
取证
隐私
列装/退役
移动设备列装包括安装安全、管理和生产应用程序以及执行安全和生产配置设置。
移动设备退役包括正式擦除业务数据以及删除所有业务专用的应用程序。
遵守公司策略
用户接受
移动设备部署策略必须明确并具体地说明在工作中使用个人设备时应具备的所有要素。
架构/基础设施方面的考虑
应该对自己的网络和安全设计、架构和基础设施进行评估。
法律问题
可接受的使用策略
移动设备部署策略应该参考公司可接受的使用策略(AUP) ,或者从中吸收专门针对移动设备特有问题的内容。
板载相机/摄像头
有些环境不允许使用任何类型的相机。
可录音的麦克风
Wi-Fi Direct
Wi-Fi Direct 是临时或对等连接无线拓扑的新名称它是无线设备之间直接连接而不需要中间基站的一种方式。
在业务环境下,应该只在可以使用 WPA2 WPA3 的地方使用 Wi-Fi Direct 。否则明文通信风险太大。
网络共享和热点
大多数机构都应该禁止热点设备的使用,因为它们在避开公司安全限制的情况下提供了与互联网的直接连接。
无接触支付方式
如果没有这些预防措施,你的设备的无接触支付信号可能会被人克隆,然后被拿去乱做交易。
SIM 卡克隆
SIM 卡可以被人轻易在设备之间交换和克隆,从而滥用受害者的电信服务。
基本安全保护机制
进程隔离
进程隔离(process isolation) 要求操作系统为每个进程的指令和数据提供单独的内存空间。
硬件分隔
硬件分隔(hardware segmentation)与进程隔离类似,旨在阻止人员对属千不同进程/安全级别的信息的访问。主要区别在于,硬件分隔通过使用物理硬件控制(而不是操作系统强加的逻辑进程隔离控制)来达到这些目的。
系统安全策略
系统安全策略的作用是告知和指导特定系统的设计、开发、实现、测试和维护。
常见的安全架构缺陷和问题
隐蔽通道
隐蔽通道(covert channel) 是指在不常被通信使用的路径上传递信息的一种方法。
隐蔽通道分两种基本类型。
隐蔽时序通道
隐蔽时序通道(covert timing channel)通过改变系统组件的性能或以某种可预测方式修改资源时序来传达信息。
隐蔽存储通道
隐蔽存储通道(covert storage channel)通过将数据写入可由另 进程读取的公共存储区来传达信息。
基于设计或编码缺陷的攻击
维护陷阱或后门
rootkit
rootkit 可以操纵能被操作系统看到并显示给用户的信息。 rootkit 可以更换操作系统内核,在内核下填充其自身,更换设备驱动程序,或者渗透应用程序库,从而使操作系统把 rootkit提供给它或对它隐藏的任何信息都看作正常的和可接受的。
对抗 rootkit 的最佳保护手段是防御而不是响应,也就是说,预防感染是第一位的。
增量攻击
有些形式的攻击以缓慢、渐进的方式发生,而不是通过明显或可识别的尝试来危害系统的安全性或完整性。这便是增量攻击(incremental attack)
数据欺骗(data diddling)
当攻击者获得对系统的访问权并在数据的存储、处理、输入、输出或交易过程中不断对数据进行微小、随机或增量更改,而不是明显修改文件内容或者损坏或删除整个文件
萨拉米香肠攻击(salami attack)
系统性地消减账户或其他具有财务价值的记录中的资产,定期和常规性地从余额中扣除不起眼的金额。
3.6 选择和确定加密解决方案
密码生命周期(如密钥、算法选择)
处理器迟早会达到能随意猜出通信所用加密密钥的力量级别。
安全专业人员在挑选加密算法时,必须重视密码生命周期问题,且必须通过适当的管治控制确保无论需要在多长时 间内保证受保护信息不泄密,所选中的算法、协议和密钥长度都足以保持密码系统的完整性。
加密方法(例如:对称、非对称、椭圆曲线、量子)
密码学基础知识
密码学的4个基本目标
保密性
完整性
身份认证
不可否认性
密码学概念
密钥空间(key space)
科克霍大原则(Kerckhoffs's principle)
只要密钥不被别人掌握,那么即便有关密码系统的一切都是公开的,密码系统也应该是安全的。
联邦信息处理标准(FIPS)140-2“ 密码模块安全要求“定义了可供联邦政府使用的密码模块的硬件和软件要求。
密码数学
布尔数学
逻辑运算
模函数
单向函数
公钥密码系统全都建立在某种单向函数的基础之上。
nonce
nonce 是一个随机数,可在数学函数中充当占位符变量。
零知识证明
分割知识
代价函数
密码
代码与密码
代码是由代表单词和矩语的符号构成的密码系统;
密码通过各种技术手段更改和/或重新排列消息的字符或位,以实现保密性。
移位密码
移位密码(transposition cipher)通过一种加密算法重新排列明文消息的字母,形成密文消息。解密算法只需要逆向执行加密位移便可恢复原始消息。
替换密码
替换密码(substitution cipher) 通过加密算法用一个不同的字符替换明文消息的每个字符或位。
单次密本
单次密本(one-time pad) 是极其强力的一种替换密码。单次密本为明文消息中的每个字母使用一个不同的替换字母表。
运动密钥密码/书密码(book cipher)
块密码
块密码(block cipher) 在消息“块“上运算,在同一时间对整个消息执行加密算法。移位密码是块密码的例子。
流密码
流密码(stream cipher) 一次在消息(或消息流)的一个字符或一个位上运行。凯撒密码是流密码的一个例子。
混淆和扩散
替换带来的就是混淆,移位带来的就是扩散。
现代密码学
对称密码
密码运行模式
电子密码本(Electronic Code Book, ECB)模式
密码块链接(Cipher Block Chaining, CBC)模式
密码反馈(Cipher Feedback, CFB)模式
输出反馈(Output Feedback, OFB)模式
计数器(Counter, CTR)模式
Galois/计数器模式(Galois/Counter Mode, GCM)
带密码块链接消息验证码的计数器模式(CCM)
数据加密标准DES
由于算法存在缺陷,密码学家和联邦政府现已不再认为 DES 是安全的。
三重 DES
DES-EDE3 和 DES-EEE3 使用了 3个不同的独立密钥: Kl K2 K3 。
DES-EEE3 是当前被 NIST 认为安全的唯一个 3DES 变体。112位
国际数据加密算法(IDEA)
Blowfish
Skipjack
Skipjack 很快袚美国政府接受,提供支持 Clipper Capstone 加密芯片的密码例程。
它支持加密密钥托管
Rivest Ciphers
RC4 Rivest 1987 年开发的一种流密码,在随后的几十年里被广泛使用。不安全
RC5 是一种块大小可变(32 64 128 位)的块密码,所用密钥大小为 0~2040 位。
RC6 是作为 RC5 的下一个版本而开发的一种块密码。它采用 128 位块大小,允许使用128 192 256 位对称密钥。
高级加密标准(AES)
2000 10 月,美国国家标准与技术研究院(NIST)宣布, Rijndael(读作 “rhine-doll")块密码被选中用来代替 DES 2001 11 月, NIST 发布 FIPS 197, 强制规定美国政府必须AES/Rijndael 给所有敏感非涉密数据加密。
CAST
CAST 算法是另一个被集成进一些安全解决方案的对称密钥块密码家族。 CAST 算法使用了 Feistel 网络
Twofish
Bruce Schneier(也是 Blowfish 的创造者)开发的 Twofish 算法是 AES 的另一个终极品。与Rijndael 一样, Twofish 是一种块密码。
对称密码熟记表
对称密钥管理
创建和分发对称密钥
线下分发
公钥加密
数字信封
Diffie-Hellman密钥交换算法
存储和销毁对称密钥
绝不将加密密钥与被加密数据保存在同一个系统里
对千敏感密钥,考虑安排两个人各持一半片段。
密钥托管和恢复
公平密码系统
在这种托管方法中,用千通信的秘密密钥被分解成两个或多个片段,每个片段都被交付给一个独立的第三方保管。
托管加密标准
种托管方法向政府或另一授权代理提供了解密密文的技术手段。这种方法是专门针对 Clipper 芯片提出的。
非对称密码
特点
密钥分发简便易行
可提供完整性、身份认证和不可否认性
RSA
RSA 算法所依靠的是因式分解大素数乘积的天然计算难度。
Merkle-Hellman 背包算法
也基于进行因式分解运算的艰难性,但它所依靠的是集合理论的一个组成部分(即超递增集)而非大素数。 Merkle-Hellman 1984 年被破解,因而被证明无效。
EIGamal
Diffie-Hellman 算法借助大整数和模运算,使人们能方便地利用不安全的通信信道安全地交换秘密密钥。
ElGamal 也有劣势一—由它加密的任们消息都被加长了一倍。
椭圆曲线
计算机科学家和数学家相信,即便 是已知的,也极难算出 。这道难题(被称为椭圆曲线离散对数题)构成了椭圆曲线密码的基础。
Diffie-Hellman 密钥交换
Diffie-Hellman 本身并不是加密协议。从技术角度说,它属于密钥交换协议。
量子密码
量子计算对密码学领域的最重要影响在于,量子计算机或许能够解决当代计算机无法解决的问题。这个概念被称为量子霸权(quantum supremacy)
哈希函数
哈希函数的目的非常简单一提取一条可能会比较长的消息,然后从消息内容中派生一个唯一的输出值。这个值就是我门常说的消息摘要(message digest) 。
RSA Security 公司指出,密码哈希函数有 个基本要求:
- ·输入可以是任何长度。
- ·输出有一个固定长度。
- ·哈希函数的计算对任何输入而言都相对容易。
- ·哈希函数是单向的(意味着很难根据输出确定输入)。
- ·哈希函数抗碰撞(意味着几乎不可能找到可以产生相同哈希值的两条消息)。
SHA
“安全哈希算法”(SHA)及其后继算法 SHA-1 SHA-2 SHA-3 是美国国家标准与技术研究院(NIST)力推的政府标准哈希函数
MD5
密码分析攻击显示, MD5 协议也非常容易出现碰撞,阻碍它成为保证消息完整性的手段。
RIPEMD
"RIPE 消息摘要 ”(RIPEMD) 系列哈希函数是 SHA 系列的替代方案
哈希算法记忆表
数字签名
数字签名算法依靠本章前面讨论过的两大概念——公钥加密法和哈希函数发挥组合作用。
HMAC
基于哈希的消息身份认址码(HMAC)算法执行部分数字签名——可保证消息在传输过程中的完整性,但不提供不可否认性服务。
数字签名标准DSS
美国国家标准与技术研究院(NIST)通过 FIPS 186-4“ 数字签名标准 ”(DSS)规定了数字签名算法可用千联邦政府。这份文件规定,联邦批准的所有数字签名算法都必须使用 SHA-3希函数。
DSS 还规定了可用来支持数字签名基础设施的加密算法。当前得到批准的标准加密算法有三种:
- • FIPS 186-4 规定的数字签名算法(DSA) 。该算法是前面介绍过的 ElGamal 非对称密码系统的创建者 Taher ElGamal 博士开发的一种算法的变体。
- • ANSIX9.31 规定的 Rivest-Shamir-Adleman(RSA)算法。
- • ANSIX9.62 规定的椭圆曲线 DSA(ECDSA)
公钥基础设施
证书
数字证书(certificate) 向通信双方保证,与之通信的确实是他们声称的人。数字证书其实就是一个人的公钥的签注副本。当用户证实一份证书是由一个可信的发证机构(CA)签发时,他们知道,公钥是合法的。
数字证书内含具体识别信息,它们的构成受国际标准 X.509 辖制。
发证机构
发证机构(certificate authority, CA)是将公钥基础设施结合到一起的粘合剂。这些中立机构提供数字证书公证服务。
注册机构(registration authority, RA)分担了 CA 签发数字证书前验证用户身份的工作。 RA虽然本身并不直接签发证书,但是它们在认证流程中扮演了重要角色,使 CA 能够远程验证用户的身份。
发证机构必须严密保护自己的私钥以维护自己的信任关系。为了做到这一点,他们往往用一个离线 CA (oflline CA)来保护自己的根证书(root certificate) ,即整个 PK.I 的顶级证书。这个离线 CA 不被需要时与网络断开连接并关闭电源。离线 CA 用根证书创建次级中间 CA(intermediate CA) ,这些中间 CA 充当在线 CA (online CA) ,常规签发证书。
这种 CA 信任模式会使用一系列中间 CA, 形成所谓证书链(certificate chaining) 。为了验证证书,浏览器首先验证中间 CA 的身份,然后沿信任路径追溯到已知的根 CA, 验证信任链中每一环的身份。
发证机构不一定是第三方服务提供商。许多机构运营自己的内部 CA, 这些 CA 提供自签证书(self-signed certificate) 以便机构内部使用。这些证书不会被外部用户的浏览器估任,但是内部系统经配置以后可信任内部 CA, 从而节约从第三方 CA 获取证书的费用。
证书的生命周期
注册
若想得到一份数字证书,则首先必须以某种方式向 CA 证明自己的身份;这个过程就是注册(enrollment) 。
验证
当收到某个要与你通信的人的数字证书时,应当用 CA 的公钥检查 CA 在证书上的数字签名,从而验证(verify)这份证书。接下来,必须检查证书的有效期,确保当前日期不早于证书的启用日期,并且证书还没有到期。最后,必须对照证书注销列表(Certificate Revocation List, CRL)或在线证书状态协议(Online Certificate Status Protocol, OCSP)对证书进行检查,以确保这份证书未被注销。
- • CA 的数字签名真实。
- ·你信任这家 CA
- ·证书未被 CRL 收录。
- ·证书确实包含你信任的数据。
证书固定(certificate pinning)法指示浏览器在很长一段时间内把证书附着在主体上。站点使用证书固定时,浏览器将把站点与它们的公钥关联起来。这使用户或管理员能够注意到证书的意外变更并对其进行干预。
注销
发证机构偶尔需要注销(revoke) 证书。这种情况的出现可能是由以下原因造成的。
- ·证书失信(例如,证书拥有者意外泄露了私钥)。
- ·证书误发(例如, CA 未经适当验证就错误签发了证书)。
- ·证书细节更改(例如,主体名称发生变化)。
- ·安全关联变更(例如,主体不再被申请证书的机构雇用)。
可以用以下三种技术手段验证证书的真实性并识别被注销的证书。
证书注销列表
证书注销列表(CRL) 由各家发证机构建立和维护,内含 CA 签发和注销的证书序号,以及注销的生效日期和时间。
在线证书状态协议(OCSP)
这一协议提供了实时验证证书的渠道,消除了证书注销列表固有的时间滞后问题。
OCSP 的主要问题是,它给由发证机构运行的 OCSP 服务器带来极大的负担。
证书装订
证书装订(certificate stapling) 是在线证书状态协议的扩展,可在一定程度上减轻原始协议给发证机构带来的负担。用户访问网站并发起安全连接时,网站会将它的证书发送给最终用户,通常最终用户应负责联系 OCSP 服务器以验证证书的有效性。而在证书装订法中, Web服务器负责联系 OCSP 服务器本身,并从 OCSP 服务器接收签名和时间戳回应,然后将这些东西附加或装订到数字证书上。
证书的格式
最常见的二进制格式是区分编码规则(DER)格式。 DER 证书通常保存在带.der .crt 和 .cer 扩展名的文件中。
隐私增强邮件(PEM)证书格式是 DER 格式的一种 ASCII 文本版。 PEM 证书通常保存在带.pem 或 .crt 扩展名的文件中。
个人信息交换(PFX)格式通常被 Windows 系统使用。 PFX 证书以二进制格式保存,可使用.pfx .pl2 文件扩展名。
Windows 系统还使用 P7B 证书,这种证书以 ASCII 文本格式保存。
非对称密钥管理
所用密钥的长度应在安全要求和性能考虑之间取得平衡。
还要保证密钥确实是随机生成的。
根据自己的密钥使用频率为密钥挑选一个适当的轮换时限。如果可行,你可能需要每隔几个月更换一次密钥对。
还必须备份自己的密钥!当你因为数据损毁、灾害或其他情况而丢失保存私钥的文件时,你肯定需要一个可用的备份。
硬件安全模块(hardware security module, HSM) 也提供管理加密密钥的有效方法。这些硬件设备以某种安全的方式存储和管理加密密钥,使人员不必直接接触密钥。许多 HSM 还能提高密码运算效率,形成所谓硬件加速流程。
密钥管理实践
数字签名和数字证书
数字签名原理
数字签名标准
不可否认性
完整性(例如:哈希函数)
应用密码学
便携设备
硬盘加密能力
基于硬件的可信平台模块(TPM)
电子邮件
良好隐私
“良好隐私 "(Pretty Good Privacy, PGP)安全电子邮件系
S/MIME
安全/多用途互联网邮件扩展(Secure/Multipurpose Internet Mail Extensions, S/MIME)协议已经成为加密电子邮件的事实标准。 S/MIME 使用 RSA 加密算法
Web 应用
安全套接字层(SSL)
传输层安全(TLS)
2014 年,一次名为 “Padding Oracle On Downgraded Legacy Encryption" (POODLE) 的攻
击揭示了 TLS SSL3.0 回退机制的一个严重缺陷。
击揭示了 TLS SSL3.0 回退机制的一个严重缺陷。
洋葱网和暗网
洋葱网(Tor) 以前叫洋葱路由器(The Onion Router) ,它提供了一种机制,可通过加密和一组中继节点在互联网上匿名传送通信流。
隐写术和水印
隐写术(steganography) 是通过加密技术把秘密消息嵌入另一条消息的技艺。隐写算法的工作原理是从构成图像文件的大量位中选出最不重要的部分并对其作出改动。
联网
线路加密
链路加密(link encryption)
端到端加密(end-to-end encryption)
IPsec
身份认证头(AH)
为消息的完整性和不可否认性提供保障。 AH 还提供身份认证和访问控制,可抵御重放攻击。
封装安全载荷(ESP)
为数据包内容的保密性和完整性提供保障。 ESP 还提供加密和有限的身份认证,也可抵御重放攻击。
IPsec 可在两种离散模式下运行。
传输模式(transport mode)
IPsec 在传输模式(transport mode) 下用千瑞到端加密时,只加密数据包载荷。这种模式是为对等通信设计的。
隧道模式(tunnel mode)
IPsec 在隧道模式(tunnel mode) 下使用时,将加密包括报头在内的整个数据包。这一模式是为链路加密设计的。
安全关联(security association, SA)
在运行过程中,要通过创建一个安全关联(security association, SA)来建立 IPsec 会话。 SA代表通信会话,记录了有关连接的所有配置和状态信息。 SA 还代表一次单纯连接若想建立一条双向信道,你将需要建立两个 SA, 两个方向各用一个。此外,若想建立一条支持同时使用 AH ESP 的双向信道,你将需要建立四个 SA
新兴的应用
区块链
区块链(blockchain) 是一种分布式不可变公共分类账。
轻量级加密
密码学家往往会设计耗能尽可能低的专用硬件来执行轻量级密码算法。
专用加密硬件也可解决许多低延时要求问题。
同态加密
同态加密(homomorphic encryption)技术可以满足我们的要求,它给数据加密的方式为我们保留了对数据进行计算的能力。
3.7 理解密码分析攻击方法
暴力破解
暴力破解攻击是直截了当的攻击。这种攻击尝试找出密钥或口令的每种可能的有效组合。实施攻击时极力使用处理能力来系统化猜测用于加密通信的密钥。
攻击者可从两个方面改过暴力破解攻击
彩虹表为密码哈希提供预先算出的值。彩虹表通常用千破解以哈希形式保存在系统中的口令。
专为暴力破解攻击设计的可扩展计算硬仵可以人幅提高这一攻击手段的效率。
密码盐(cryptograp salt)
密码盐是一个随机值,在操作系统对口令进行哈希运算之前被添加到口令末尾。盐随后与哈希值一起保存在口令文件中。PBKDF2、 bcrypt、 scrypt 等专用于口令的哈希函数允许利用盐创建哈希,同时采用一种名为密钥拉伸(key stretching) 的技术增加猜测口令的难度。
唯密文攻击
可供攻击者摆弄的只有经过加密的密文消息,这种情景就是唯密文攻击(ciphertext-only attack) 。
已知明文攻击
在已知明文攻击中,攻击者掌握了加密消息的副本以及用于生成密文(副本)的明文消息。
选择密文攻击
在选择密文攻击中,攻击者能够解密密文消息中被选中的部分,然后用解密了的那部分消息来发现密钥。
选择明文
在这种攻击中,攻击者获得与自己选中的一组明文对应的密文。这使攻击者可以尝试提取所使用的密钥,从而解密用该密钥加密的其他消息。这个过程可能很困难,但并非不可成功。差异密码分析等更先进的技术手段属于选择明文攻击类型。
频率分析
在这样的情况下,频率分析,即统计每个字母在密文中出现的次数,被证明是有助于破解简单密码的一种技术手段。
两个假设
如果这些字母也在密文中使用得最频繁,则密码可能是一种移位密码,即重新排列了明文字符而未加任何改动的密码。
如果密文中使用得最频繁的是其他字母,则密码可能是某种替换密码,即更换了明文字符的密码。
实现攻击
这是探寻密码系统在执行过程中暴露的弱点的一种攻击。它着重于挖掘软件代码,其中不仅包括错误和缺陷,还涉及用来给加密系统编程的方法。
边信道攻击
计算机系统会生成活动的特征足迹,例如处理器利用率、功耗或电磁辐射的变化。边信道攻击寻求利用这些信息监视系统活动并检索当前正在加密的信息。
故障注入
在这些攻击中,攻击者试图通过造成某种外部故障来破坏密码设备的完整性。例如,攻击者可能会利用高压电力、高温或低温或者其他因素引发故障,从而破坏设备的安全性。
定时
计时攻击是边信道攻击的一个例子,攻击者精确测出完成加密运算所需的时间,从中获取可用来破坏加密安全性的有关加密过程的信息。
中间相遇攻击
攻击者可能通过中间相遇攻击手段来击败采用两轮加密的加密算法。
中间人攻击(MITM)
在中间人攻击中,一个心怀歹意之人在两个通信方之间的某一个地方拦截所有通信(包括密码会话的设定)
生日攻击
生日攻击也叫碰撞攻击(collision attack)或反向哈希匹配(reverse hash matching),这种攻击寻求从哈希函数的一对一性质中找出破绽。实施生日攻击时,心怀歹意者尝式在有数字签名的通信中换用一条可生成和同消息摘要的不同消息,从而保待原始数字签名的有效性。
重放攻击
重放攻击针对的是没有采用临时保护措施的密砃算法。在这种攻击中,心怀歹意之人在通信双方之间拦截经过加密的消息(常常是身份认证请求),然后通过“重放”捕获的消息来建立一个新会话。
给每条消息打上时间戳并给它们设定过期时间,采用挑战-应答机制,用临时会话密钥给身份认证会丙加密,诸如此类的手段可以挫败重放攻击。
哈希传递攻击
哈希传递(PtH)攻击是指攻击者将捕获的口令哈希值发送到身份认证服务。通常,用户在客户端输入口令,然后客户端生成口令哈希值并将其发送出去。在哈希传递攻击中,攻击者不需要知道实际的口令。
Kerberos协议攻击
超哈希传递攻击
当网络上禁用 NTLM 时,可以使用这种方法替代哈希传递攻击。即使网络上禁用 NTLM, 系统仍会创建 NTLM 哈希值并将其存储在内存中。攻击者可以使用用户口令哈希值请求票证授予的票证(TGT) 并使用 TGT 访问网络资源。这种攻击有时被称为传递密钥。
票证传递
票证传递攻击中,攻击者试图获取 lsass.exe 进程中保存的票证。在获取票证后,攻击者注入票证以冒充用户。
白银票证(silver ticket)
白银票证使用截获的服务账户 NTLM 哈希值来创建票证授予服(TGS)票证。服务账户使用 TGS 票证,而不是 TGT 票证。白银票证授予攻击者服务账户的所有特权。
黄金票证
如果能获得 Kerberos 服务账户(KRBTGT) 的哈希值,攻击者就可以在活动目录中随意创建票证。这给了攻击者非常大的权力,因此被称为黄金票证。 KRBTGT 账户使用其口令的哈希值对域内的所有 Kerberos 票证进行加密和签名。因为 KRBTGT 账户的口令永远不会改变,其哈希值永远不会改变,所以攻击者仅需要获取一次哈希值。如果能获得域管理员账户的访问权限,攻击者就可以远程登录域控制器并运行 血如血来提取哈希值。黄金票证允许攻击者创建伪造的 Kerberos 票证并为任何服务请求 TGS 票证。
Kerberos 暴力破解
攻击者可以在 Linux 系统上运行 Python 脚本 kerbrute.py 或在Windows 系统上运行 Rubeus 。除了猜测口令,这些工具还可猜测用户名。 Kerberos 回复用户名是否有效。
ASREPRoast
此攻击识别未启用 Kerberos 预身份认证的用户。 Kerberos 预身份认证是Kerberos 的一项安全功能,有助于抵御口令猜测攻击。禁用预身份认证后,攻击者可以向 KDC发送身份认证请求。 KDC 将回复一个票证授予票证(TGT) ,使用客户端的口令进行加密。然后攻击者可以发起离线攻击来解密票证并发现客户端的口令。
Kerberoasting
此攻击收集加密的票证授予服务(TGS)票证。服务账户使用 TGS 票证。TGS 票证由用户账户上下文中运行的服务使用。此攻击试图找到没有 Kerberos 预身份认证的用户。
勒索软件
勒索软件生成一个只有勒索软件作者知道的加密密钥,并使用该密钥加密系统硬盘和任何已安装的驱动器上的关键文件。加密使授权用户或恶意软件作者以外的任何人都无法访问数据。
3.8 将安全原理运用到场所与设施的设计上
站点与设施设计的安全原则
安全设施计划
安全设施计划(secure facility plan) 需要列出组织的安全需求,并突出用于保障安全的方法及机制。该计划是通过风险评估和关键路径分析来制订的。
关键路径分析(critical path analysis) 是一项系统性工作,用于找出任务关键型应用程序、流程、运营以及所有必要的支撑元素间的关系。
设计安全 IT 基础设施的第一步是满足组织环境及信息设备的安全要求。这些基本要求包括电力、环境控制(建筑、空调、供暧、湿度控制等)以及供水/排水。
与关键路径分析同等重要的是针对已完成的或潜在的技术融合的评估。技术融合(technology convergence) 指的是各种技术、解决方案、实用程序及系统,随时间的推移而发展、合并的趋势。这通常会造成多个系统执行相似或兀余的任务,或者一个系统取代另一个系统的特殊功能。
信息安全人员应参与站点与设施的设计。否则,物理安全的很多重要方面可能会被忽视,而这些方面又是逻辑安全至关重要的基础。
安全设施计划基于分层防御模型。只有利用重叠的物理安全层,才能针对潜在入侵者建立合理的防御。
站点选择
站点位置与施工建造在整个选址过程中起着至关重要的作用。此外,还要重点考虑站点是否靠近其他建筑物与商业区。
工业伪装(industrial camouflage) 是指通过提供一个让人信服的外表替代方案来掩盖或隐藏设施的实际功能、目标或运营业务。例如,数据中心可能看起来像食品包装设施厂。
设施设计
安全的首要任务应始终是保护人员的生命和安全。因此,要确保所有设施设计和物理安全控制符合所有适用的法律、法规。
CPTED(通过环境设计预防犯罪)
CPTED 涉及设施设计、景观美化、入口概念、校园布局、照明、道路布置以及车辆和步行车辆的交通管理。
CPTED 的核心原则是,可以有目的地对物理环境的设计进行管理、操纵和精心编排,以便影响或改变这些区域中人们的行为,从而减少犯罪,并减少人们对犯罪的恐惧。
CPTED 有三种主要策略:
自然环境访问控制
自然环境访问控制是指通过设置入口,使用围栏和护柱,以及设置灯光,以对进出建筑物的人员进行微妙的引导。其理念是住建筑物的入口点看起来比较自然,而不必使用上面写着“由此进入!"的巨大标志牌。
自然环境监视
自然环境监视是一种通过增加罪犯被观察到的机会来使其感到不安的手段。这可以通过一个开放和无障碍的外部区域来实现,尤其是入口周围,应确保其容易被人看到。
自然环境领域加固
自然环境领域加固旨在使该区域令人感觉它像一个包容、关爱的社区。该区域的设计应使其看起来是备受关照和尊重的,并受到了积极的保护。
3.9 设计场所和设施安全控制措施
在为环境设计物理安全时,需要注意各类控制的功能顺序
(1) 威慑
安全控制的部署首先要能够“威慑"(例如使用边界限制)入侵者并抑制其接近物理资产的企图。
(2) 拒绝
如果威慑无效,应“拒绝”(如采用上锁的门)入侵者接触物理资产。
(3) 检测
如果拒绝失败,“检测”系统应能及时发现入侵行为(如使用运动传感器)。
(4) 延迟
如果入侵者入侵成功,"延迟”措施应尽晕延迟入侵者的闯入,以便安保人员有充分时间做出响应(如加固资产)。
(5) 判定
安保人员或法律机构应判定事件原因或评估情况
(6) 决定
然后根据评估结果决定实施什么应对措施,例如逮捕入侵者或收集进一步调查的证据。
设备故障
维修系统并将其恢复到可用状态的响应时间与付出的费用是成比例的
务必与硬件厂商签订服务水平协议(service-level agreement, SLA)
必须了解每项资产和业务流程的关键性以及相关的允许中断窗口(AIW) 、服务交付目标(SDO)和最大允许/容忍中断时间(MTD/MTO)
MTTF(mean time to failure, 平均故障时间)
MTTF 是特定操作环境下设备典型的预期寿命。
MTTR(mean time to repair, 平均恢复时间)
MTTR 是对设备进行修复所需的平均时间长度。
MTBF(mean time between failures, 平均故障间隔时间)
是第一次与后续的任何故障之间的间隔时间估值。
配线柜/中间配线设施
接入设施(entrance facility) :也袚称为分界点或 MDF,
设备间(equipment room)
骨干配线系统(backbone distribution system)
配线间(wiring closet)/中间配线设施
水平配线系统(horizontal distribution system)
配线间的安全策略应包括如下基本规则:
- ·永远不要把配线佪用作一般的储物区。
- ·配备充足的门锁,必要时采用生物因素。
- ·保持该区域的整洁。
- .该区域中不能存储易燃品。
- ·配备视频监控设备以监视配线间内的活动。
- .使用开 f] 传感器以进行日志记录。
- ·钥匙只能由获得授权的管理员保管。
- ·对配线间进行常规的现场巡视以确保其安全。
- ·将配线间纳入组织的环境管理和监控中,这样既能够确保合适的环境控制和监视,又能及时发现水灾和火灾之类的危险。
服务器机房/数据中心
各种技术的访问控制来管理物理访问
1. 智能卡和胸卡
智能卡
·包含集成电路(IC) 的身份令牌
·处理器 IC卡
·支持 ISO 7816 接口的 IC 卡
·处理器 IC卡
·支持 ISO 7816 接口的 IC 卡
磁条卡(memory cards)
胸卡可用千识别或身份认证。
2. 接近式设备
接近式设备(proxitnity device) 可能是一种无源设备、磁场供电设备或应答器。
入侵检测系统
动作探测器
“数字动作探测器”监视受控区域内数字图案的变化。这其实是一个智能安全摄像头。
“被动红外(PIR) 或热量动作探刻器”监视受控区域内热量级别与模式的变化。
“波动动作探测器“向被监测区域内发射持续的低频超声或高频微波信号,并监视反射信号中的变化与扰动。
“电容动作探测器“感知被监视对象周围电场或磁场的变化。
“光电动作探测器“感知受监视区域内可见光级别的变化。
“被动音频动作探测器”监盺被监视区域内是否有异常声响。
入侵警报
防护机制
阻止警报(deterrent alarms) 能启动的阻止手段可能有:关闭附加门锁、关闭房门等。该警报旨在进一步提升入侵或攻击的难度。
驱除警报(repellent alarms) 触发的驱除手段通常包括:拉响警报、警铃或打开照明。
通知警报(notification alarms)被触发时,入侵者/攻击者并无察觉,但系统会记录事件信息并通知管理员、安全警卫与执法人员。
按照警报安装的位置对警报进行分类
本地警报系统(local alarm system) 发出的警报声必须足够强(声音可能高达 120 分贝),以保证人员在 400 英尺以外也能听清。
中心站系统(central station system)通常在本地是静默的,当发生安全事件时,站区外监视代理会收到通知,同时安全团队会及时做出响应。
“专有系统 ”(proprietary system) 与中心站系统类似,但是,拥有此类系统的组织会在现场配备其专属的安保人员
辅助站(auxiliary station) 系统可附加到本地或中心警报系统中。当安全边界受到破坏时,应急服务团队收到警报通知,对安全事件侦出响应并及时到达现场。此类服务可能包含消防、警察及医疗救护。
二次验证机制
在使用动作探测器、传感器与警报时,还应配备二次验证机制。随着设备灵敏度的增加,出现误报的情况也日益频繁。
安全摄像头却可以用于自动系统触发后的二次或后续验证机制
摄像头
视频监视/监控、闭路电视(CCTV) 和安全摄像头都是威慑不必要的活动并创建事件数字记录的手段。摄像头的位置应能监视出入点,以允许授权或访问级别的变化。摄像机还应该用于监控重要资产和资源周围的活动,并为停车场和人行道等公共区域提供额外保护。
摄像头的类型各不相同,包括光学、红外和运动触发记录。一些摄像头是固定的,而另一些则支持远程控制的自动摇摄、倾斜和变焦(PTZ) 。一些摄像系统包括系统级芯片(SoC)或嵌入式组件,并且可以执行各种特殊功能,如延时记录、跟踪、面部识别、目标检测、红外或色彩过滤记录。此类设备可能会成为攻击者的目标,受到恶意软件的感染或受到恶意黑客的远程控制。
一些摄像头或增强型视频监控(EVS) 系统能够检测目标,包括人脸、设备和武器。
步态分析是对一个人走路方式的评估,是一种生物特征认证或识别的形式。
访问滥用
支持打开安全大门或者故障开启出口 (fail-safe exits)
绕过门锁或访问控制
假冒''(皿personation) 和“伪装”(masquerading)
"尾随"(tailgating)和“捎带”(piggybacking)
可以通过创建审计踪迹、保留访问日志、使用安全摄像头和使用保安来检测此类滥用行为。
介质储存设施
介质存储设施用千安全存储空白介质、可重用介质及安装介质。无论是硬盘、闪存设备、光盘,还是磁带,各种介质都应受到严格保护,以免其被盗或受损。
要保护安装介质,防止其被盗或被植入恶意软件。
实现安全介质存储设施的一些方法。
- .将存储介质保存在上锁的柜子或保险箱里,而不是办公用品货架上。
- ·将介质存放在上锁的柜子里,并指定专人进行管理。
- .建立检入/检出制度,跟踪库中介质的查找、使用与归还行为。
- ·当可重用介质被归还时,执行介质净化与清零过程(使用全零这样的无意义数据进行改写),以清除介质中的数据残余。
- ·采用基千哈希的完整性检查机制来校验文件的有效性,或验证介质是否得到了彻底净化并不再残留以前的数据。
证据储存
事故响应的一个关键部分是收集证据以进行根本原因分析。随着网络安全事件的持续增加,日志、审计记录以及其他数据事件记录的保留变得日益重要。同时,有必要保存磁盘镜像及虚拟机快照,以便以后对比。这样不仅有利于公司的内部调查,也有助于执法部门的取证分析。
安全证据存储的要求:
- .使用与生产网络完全不同的专用存储系统。
- ·如果没有新数据需要存入,应让存储系统保持离线状态。
- ·关闭存储系统与互联网的连接。
- .跟踪证据存储系统上的所有活动。
- ·计算存储在系统中的所有数据的哈希值。
- ·只有安全管理员与法律顾问才能访问。
- .对存储在系统中的所有数据进行加密。
电子证据监管链文件
限制区与工作区的安全
设施内所有区域的访问等级不能是整齐划一的。存放高价值或非常重要的资产的区域,应受到更严格的访问限制。任何进入设施的人可使用休息室及公共电话,但不能进入敏感区域;只有网络管理员与安全人员才能进入服务器间和配线间。高价值及保密的资产应处于设施的保护核心或中心。
一个安全受限工作区的实例是敏感隔间信息设施(sensitive compartmented information facility, SCIF) 。
基础设施及供暖、通风与空调(HVAC)
基础设施关注点
电力
UPS 的主要用途是在断电或与电网断开时,使用电池供电以继续支持设备的运行。可以持续供电数分钟或数小时
另一个电源选项是备用电池或故障转换电池。
最高级别的电力保护是使用发电机。
电力术语
故障(fault)
瞬时断电。
停电(blackout)
完全失去电力供应。
电压骤降(sag)
瞬时低电压。
低电压(brownout)
长时低电压。
尖峰(spike)
瞬时高电压。
浪涌(surge)
长时高电压。
合闸电流(inrush)
通常是接入电源(主电源、替代/副电颉)。
接地(ground)
电路中接地导线将电流导入大地。
噪声
噪声是某种形式的紊乱、插入或波动的功率产生的十扰。
有两种类型的“电磁干扰"(electromagnetic interference, EMI) :普通模式与穿透模式。
“无线电频率干扰"(radio-frequency interference, RFI)是另一种噪声与干扰源,它像 EMI一样能够干扰很多系统的正常工作。
保护的措施有:提供充足的电力供应、建立正确的接地、采用屏蔽电缆、将电缆铺设在屏蔽干扰的管道中、使用光纤网络、使铜缆远离 EMI RFI 发射源。
温度、湿度与静电
放置计算机的房间温度通常要保持在 59~89.6"F(15~32°C)之间,极端环境下,设备的运行温度低于或高于此范围1(),-.,20 下。
冷、热通道是大型服务器机房中保持最佳工作温度的一种方式。每个通道是冷热循环的。
常见的暖通空调(HVAC)是正压送风系统。
计算机机房内的湿度应保持在 20%~80%(新的数据中心标准)。湿度太高时会发生冷凝作用,腐蚀计算机中的配件;湿度太低时会产生静电,导致静电放电(ESD) 。
40%~60%
关于水的问题(如漏水、洪水)
在关键系统的周围,还需要在地板或者数据中心的架空地板下面安装漏水探测绳。如果设备周围发生渗水事故,漏水探测绳会发出警报以提醒相关人员。
环境问题
防火、检测和灭火
不同的灭火剂原理
- ·水降低温度。
- ·碳酸钠和其他干粉灭火剂阻断燃料的供应。
- .二氧化碳抑制氧气的供应。
- ·哈龙替代物和其他不可燃气体千扰燃烧的化学反应和 或抑制氧气供应。
火灾的四个主要阶段
阶段 1: 早期阶段只有空气电离,没有烟雾产生。
阶段 2: 在烟雾阶段,可以看见烟雾从着火点冒出。
阶段 3: 在火焰阶段,用肉眼就能看见火焰。
阶段 4: 在炙热阶段,火场温度沿着时间轴急剧升高,火场中聚集了大晕热量,其中的任何可燃物都燃烧起来。
阶段 2: 在烟雾阶段,可以看见烟雾从着火点冒出。
阶段 3: 在火焰阶段,用肉眼就能看见火焰。
阶段 4: 在炙热阶段,火场温度沿着时间轴急剧升高,火场中聚集了大晕热量,其中的任何可燃物都燃烧起来。
还应培训人员如何发现与使用灭火器。其他防火或通用应急响应培训内容还包括心肺复苏(CPR) 、紧急关机程序、一般急救、自动体外除颤器(AED) ,以及预设集合点或安全验证机制(如语音邮箱)。
灭火器
火灾探测系统
”固定温度探测”系统在环境达到特定温度时会触发灭火装置。
“上升率探测”系统在温度的上升速率达到特定值时启动灭火功能。
“火焰驱动”系统依靠火焰的红外热能触发灭火装置。
“烟雾驱动”系统将光电或辐射电离传感器用作触发器。
早期(火情)烟雾探测系统,也被称为吸气传感器,能够探测出燃烧早期阶段产生的化学物质,此阶段使用其他方法尚不能发现潜在的火情。
喷水消防系统
“湿管系统”(也被称为封闭喷头系统)的管中一直是充满水的。当打开灭火功能时,管中的水会立刻喷洒出来进行灭火。
“干管系统”中充满了压缩的惰性气体。 旦打开灭火功能,惰性气体就会释放出来,供水阀门会随即打开,管中进水,然后开始喷洒灭火
“预响应系统“是干管系统的变体,使用两级检测和释放机制。这种机制允许纠织在喷淋头触发前通过人工干预(通常通过安装在墙上的按钮)阻止水管喷水。
“密集洒水系统”采用更粗的管道,因而可以输送更大的水最。
气体消防系统
气体消防系统使用压缩气体高效灭火。然而,不能将气体消防系统用在有入员常驻的环境中。
如果二氧化碳被泄漏到封闭空间,浓度达到 7.5 %就可能导致窒息,而二氧化碳灭火剂的使用浓度通常为 34%或更高。
哈龙是一种有效的灭火用化合物(通过耗尽氧气来阻止燃烧),但在 900 下,会分解出有毒气体。所以,哈龙不是环境友好型的(同时,它会消耗臭氧)。1989 年,《蒙特利尔议定书》开始倡议终止包括哈龙在内的消耗臭氧层的物质的生产。
破坏
火灾的主要破坏因素包括烟、高温,也包括水或碳酸钠这样的灭火剂。
人员在用水管灭火、使用 救生斧寻找火源、救援人员的过程中也可能造成损坏。
电源(如,冗余、备份)
D4 通信与网络安全
4.1 评估和实施网络架构中的安全设计原则
开发系统互连(OSI)和传输控制协议/互联网协议(TCP/IP)模型
OSI 模型
应用层
应用层(第 7层)负责将用户应用程序、网络服务或操作系统与协议栈相连接。软件应用程序不在此层内;相反,这里可找到传输文件、交换消息、连接到远程终端等所需的协议和服务。
表示层
表示层(第 6层)负责将数据转换为遵循 OSI 模型的任何系统都能理解的格式。它将通用或标准化的结构和格式规则强加在数据之上。表示层还负责加密和压缩。在 TCP/IP 网络上,没有实际的表示层。目前不需要为网络传输重新格式化数据,协议栈压缩仅与一些加密操作协同进行。
会话层
会话层(第 5层)负责建立、维护和终止两台计算机之间的通信会话。它管理对话规则或对话控制(单工、半双工、全双工),建立分组和恢复的检查点,并重传自上次验证检查点以来失败或丢失的 PDU 。在 TCP/IP 网络上,没有实际的会话层。会话层功能由 TCP 在传输层处理,或者使用 UDP 时根本不处理。
传输层
传输层(第4 层)负责管理连接的完整性并控制会话。传输层在节点(也称为设备)之间建立通信连接并定义会话规则。会话规则指定每个段可包含多少数据,如何验证消息的完整性,以及如何确定数据是否已丢失。
传输控制协议(Transmission Control Protocol, TCP)
用户数据报协议(User Datagram Protocol, UDP)
传输层安全(Transport Layer Security, TLS)
网络层
网络层(第 3层)负责逻辑寻址和执行路由。当地址由软件或协议分配和使用,而不是由硬件提供和控制时,就会发生逻辑寻址。数据包的包头包括源和目标 IP 地址。网络层负责提供路由或传递导航信息,但它不负责验证信息是否传递成功。网络层还管理错误检测和节点数据流量(即流量控制)。
路由协议
内部路由协议
距离矢量
距离矢量路由协议维护目标网络的列表,以及以跳数度量的方向和距离度量(即到达目的地的路由器的数量)
RIP IGRP EIGRP
链路状态
链路状态路由协议收集路由特性,将速率、延迟、误码率和实际使用的资金成本等信息制成表格,以做出下一跳的路由决策。
OSPF IS-IS
外部路由协议
路径向量路由协议
路径向量路由朸议根据到目的地的整个剩余路径(即向量)做出下一跳决策
边界网关协议(BGP)
数据链路层
数据链路层(第 2层)负责将数据包格式化为传输格式。正确格式由网络硬件、拓扑和技术决定,如以太网(IEEE 802.3) 。对数据链路层内的网络容器处理包括将源和目标硬件地址添加到帧的操作。
交换机、网桥
物理层
物理层(第1 层)将帧转换为比特,以便通过物理连接介质进行传输;反之亦然,以便接收通信。
在第 1层(物理层)运行的网络硬件设备是 NIC 、集线器、中继器、集中器和放大器。
TCP/IP 模型
应用层——应用层、表示层、会话层
传输层——传输层
互联网层——网络层
链路层——数据链路层、物理层
TCP/IP 的漏洞很多。如果在各种操作系统中不正确地实现 TCP/IP 堆栈,将容易受到缓冲区溢出攻击、 SYN 洪水攻击、各种拒绝服务(DoS)攻击、碎片攻击、超大数据包攻击、欺骗攻击、中间人攻击(路径攻击)、劫持攻击和编矶错误攻击。 TCP/IP(以及大多数协议)也会受到监视或嗅探等被动攻击。
封装/解封
封装是指在将每层从上面的层接收到的数据传递到下面的层之前,为其添加头部,也可能添加尾部。数据从物理层到应用层向上移动时的逆操作被称为解封。
第5、6、7层——协议数据单元(PDU)
第4层——段(TCP)或数据报(UDP)
第3层——数据包
第2层——帧
第1层——比特
通用应用层协议
Telnet
Telnet, TCP 23 端口,是一个终端仿真网络应用程序,支持远程连接以执行命令和运行应用程序,但不支持文件传输。不应使用 Telnet, 而应该用 SSH 替代。
FTP
FTP, TCP20 端口(活动数据连接)/短暂(被动数据连接)和 21 (控制连接)端口,是一个网络应片程序,支持需要匿名或特定身份认证的文件传输。
TFTP
TFTP, UDP69 端口,是一个支持不需要身份认证的文件传销的网络应用程序。
SMTP
SMTP, TCP25 端口,是一种用于将电子邮件从客户端传输到电子邮件服务器以及从一个电子邮件服务器传输到另一个电子邮件服务器的协议。仅在使用 TLS 加密创建 SMTPS使用。
POP3
POP3, TCP 110 端口,是一种用于将电子邮件从电子邮件服务器上的收件箱中拉到电子邮件客户端的协议(即客户端存档)。仅在使用 TLS 加密创建 POPS 时使用。
IMAP(IMAP4)
IMAP(IMAP4), TCP 143 端口,是一种用于将电子邮件从电子邮件服务器上的收件箱拉到电子邮件客户端的协议。 IMAP 能仅从电子邮件服务器中检索标头并直接从电子邮件服务器删除邮件(即服务器存档)。仅在使用 TLS 加密创建 IMAPS 时使用。
DHCP
DHCP, UDP 67(服务器)端口和 68 (客户端)端口,用于集中控制启动时为系统分配的TCP/IP 配置设置。
HTTP
HTTP, TCP 80 端口,是用明文将 Web 页面元素从 Web 服务器传输到 Web 浏览器的协议。
HTTPS
HTTPS, TCP443 端口,是 HTTP TLS 加密版本。
LPD
LPD, TCP 515 端口,是一种网络服务,用于假脱机打印作业以及将打印作业发送到打印机。应封闭在 VPN 中使用。
X Window
X Window, TCP 6000~6063 端口,是用千命令行操作系统的 GUI API 。应封闭在 VPN中使用。
NFS
NFS, TCP 2049 端口,是一种网络服务,用于支持不同系统之间的文件共享。应封闭在VPN 中使用。
SNMP
SNMP, UDP 161 端口(用于陷阱消息的是 UDP 162 端口),是一种网络服务,用于从中央监控服务器收集网络运行状况和状态信息。仅 SNMPv3 是安全的。
传输层协议
端口允许单个 IP 地址同时支持多个通信,每个通信使用不同的端口号(即通过 IP多路复用)。 IP 地址和端口号的组合被称为套接字。
前 1024 (0~1023)被称为众所周知的端口或服务端口。这些端口被保留,以供服务器独占使用。
端口 1024-49 151 被称为已注册的软件端口。这些端门具有一个或多个专门在 IANA (互联网编号分配机构)网站上注册的网络软件产品。
端口 49 152-65 535 被称为随机、动态或临时端口,它们通常被客户端随机地 临时用作源端口。
TCP/IP 的两个主要传输层协议是 TCP UDP
TCP
TCP 协议支持全双工通信,面向连接,并采用可靠的会话。
三次握手
(1) 客户端将 SYN(同步)标记的数据包发送到服务器。
(2) 服务器以 SYN/ACK(同步和确认)标记的数据包响应客户瑞。
(3) 客户端以 ACK(确认)标记的数据包响应服务器。
两种方法可断开 TCP 会话
使用 FIN(完成)标记的数据包来优雅地终止 TCP 会话
使用 RST(重置)标记的数据包,这会导致会话立即或突然终止。
UDP
UDP 是一和无连接单工协议。
UDP 通常用于音频和/或视频的实时或流通信。
网络流量分析
协议分析器是用于检查网络流量内容的工具。协议分析器可以是安装在典型主机系统上的专用硬件设备或软件。
协议分析器也可被称为嗅探器、网络评估器、网络分析器、流量监视器或包捕获实体。嗅探器通常是一种数据包(或帧)捕获工具,而协议分析器能够解码和解释数据包/帧内容。
协议分析器通常将 NIC 置于混杂模式,以查看和捕获本地网段上的所有以太网帧。
域名系统
DNS 是公共和专用网络中使用的分层命名方案。 DNS 将 IP地址和人性化的完全限定域(FQDN)链接在一起。
FQDN 包含三个主要部分:
顶级域名(TLD)-www.google.com 中的 com
注册域名-www.google.com 中的 google
子域或主机名-—-www.google.com 中的 WWW
FQDN 的总长不能超过 253 个字符(包括点)。任何单个部分不能超过 63 个字符。 FQDN只能包含字母、数字和连字符。 TLD 右侧有一个点(通常不显示),表示整个 DNS 命名空间的根。
每个注册的域名都有一个指定的权威名称服务器。主要的权威名称服务器托管域的可编辑的原始区域文件。辅助的权威名称服务器可用千托管区域文件的只读副本。区域文件是资源记录的集合或有关特定域的详细信息。
域名系统安全扩展(Domain Name System Security Extensions, DNSSEC)是对现有 DNS础结构的安全性改进。 DNSSEC 的主要功能是在 DNS 操作期间在设备之间提供相互验证租过程加密。DNSSEC 仅适用千DNS 服务器,而不适用千对 DNS 服务器执行查询的系统(如客户端)。
对于非 DNS 服务器(主要是客户端设备),尤其是在使用互联网时,应该考虑通过HTTPS(DoH)使用 DNS 。
2020 年后期对 DoH 的增强是隐性DoH(ODoH) 。ODoH 在客户端和 DNS 解析程序之间添加 DNS 代理,以便将客户端的身份与 DNS 解析程序隔离。因此, ODoH DNS 查询提供匿名性和隐私保护。
DNS 中毒
流氓 DNS 服务器
流氓 DNS 服务器使用错误的 IP 信息向客户端发送 DNS 响应。
DNS 查询未经过身份认证,但它们包含一个 16 位的值,该值袚称为查询 ID(Query ID, QID) DNS 响应必须包含与要接受的查询相同的 QID 。因此,流氓 DNS 服务器必须将请求QID 纳入虚假回复中。
执行 DNS 缓存中毒
DNS 中毒涉及攻击 DNS 服务器并将不正确的信息放入域文件或缓存中的行为。
DNS 域欺骗
域欺骗是将有效网站的 URL IP 地址恶意重定向到假网站的行为。域欺骗通常通过修改系统上的本地 HOSTS 文件或通过毒化或欺骗 DNS 解析来实现。
改变 HOSTS 文件
通过在 HOSTS 文件中放置虚假 DNS 数据来修改客户端上的 HOSTS 文件的行为会将用户重定向到错误位置。
破坏 IP 配置
破坏 IP 配置的行为可能导致客户端具有错误的 DNS 服务器定义(即 DNS 查找地址更改)。DNS 服务器地址通常通过 DHCP 被分配给客户端,也可以被静态分配。通过破坏 DHCP 或 脚本,可以执行更改 DNS 服务器中客户端查找地址的攻击。
DNS 查询欺骗
当黑客能够窃听客户端对 DNS 服务器的查询时,就会发生 DNS 查询欺骗攻击。然后,攻击者发回带有虚假信息的回复。
使用代理伪造
虽然代理伪造攻击严格来说不是 DNS 问题,但如果客户端必须解析代理的域名才能使用代理,则可以通过 DNS 来实施代理伪造攻击。攻击可能会修改本地配置、配置脚本或路由表,以将通信重定向到错误的代理。
DNS 中毒的防御措施
限制从内部 DNS 服务器到外部 DNS 服务器的区域传输。这是通过阻止入站 TCP端口53 (区域传输请求)和 UDP 端口 53 (查询)来实现的。
要求内部客户端通过内部 DNS 解析所有域名。这将要求你阻止出站 UDP 端口 53 (用于查询),同时保持打开的出站 TCP 端口 53 (用千区域传输)。
限制外部 DNS 服务器。内部 DNS 服务器从这些外部 DNS 服务器拉取区域传输。
部署网络入侵检测系统(NIDS) 以监视异常 DNS 流量。
正确加固专用网络中的所有 DNS 、服务器和客户端系统。
使用 DNSSEC 保护 DNS 基础设施。
在所有支持的客户端上使用 DoH 或 ODoH
拆分 DNS 部署供公共使用的 DNS 服务器和供内部使用的独立 DNS 服务器。
另一个 DNS 防御机制是 DNS 陷坑。
域名劫持
域名劫持或域名盗窃是在未经所有者授权的情况下更改域名注册的恶意行为。
防止域名劫持的最佳措施是在登录域注册器时使用强多因素身份认证。为了防止域名注册失效,请设置自动续费,并在续费日期前一周再次检查付款方式。
误植域名攻击
当用户错误输入预期域名或 1P 地址时,这种错误如果被攻击者利用,则总味着发生了误植域名攻击(typosquatting) 。
同形词攻击
另一个 DNS 、地址或超链接问题是同形词攻击。这些攻击利用字符集的相似性来注册肉眼看起来合法的虚假国际域名(IDN) 。
URL 劫持
URL 劫持指的是显示其他链接或广告的行为,该链接或广告看起来像知名产品、服务或网站的链接或广告,但单击后会将用户重定向到其他位置、服务或产品。
点击劫持
点击劫持攻击将用户在网页上的点击或选择重定向到另一个目标(通常是恶意的),而不是其预期位置。
互联网协议(IP)网络(例如,互联网协议安全(IPSec)、互联网协议(IP)v4/6)
IPv4 与IPv6
IPv4 使用 32 位寻址方案,而 IPv6 使用 128 位寻址。
IPv6 的一些新功能包括作用域地址、自动配置和服务质量(QoS) 优先级值。IPsec 内置于IPv6 中
向IPv6 的过渡或迁移引起了几个安全问题
随着 128 位地址空间的增大,攻击者可将更多的地址用作源地址;IP 过滤和阻止列表的效果会降低
IPv6 的安全部署要求在生产网络上启用协议之前,必须对所有安全筛选和监视产品进行升级,以完全支持 1Pv6 。
IPv6 的第三个问题是 NAT 的丢失或缺乏。未来随着 IPv6 地址被固定到 NIC, 源系统的身份可能会变得难以隐藏
同一网络上使用 IPv6 IPv4方法
双堆栈意味看让系统同时运行 IPv4 和IPv6, 并为每个会话使用适当的协议。
隧道允许大多数系统操作 1Pv4 或IPv6 的单个堆栈,并使用封装隧道访问其他协议的系统。
网络地址及协议转换(NAT-PT)(RFC-2766)可用与 IPv4 和 IPv6 网段之间的转换
IP 分类
A类
B类
C类
D类,用于多播
E类,将来使用
ICMP
ICMP 可用于 ping traceroute pathping网络管理工具。
死亡之 ping
Smurf攻击
ping 洪水攻击
IGMP
IGMP 允许系统支待多播。多播将数据传输到多个特定接收者,
ARP
ARP使用缓存和广播来执行其操作。
第一步是检查本地 ARP 缓存。如果所需信息已存在于ARP 缓存中,则使用它。
如果 ARP 缓存不包含必要信息,则发送广播形式的 ARP 请求。如果查询地址的所有者位于本地子网,则可使用 ARP 应答或响应估息进行响应。
如果不是,系统将默认使用其默认网关的 MAC 地址来转发。然后,默认网关(或者路巾器)将需要执行自己的 ARP 过程。
第一步是检查本地 ARP 缓存。如果所需信息已存在于ARP 缓存中,则使用它。
如果 ARP 缓存不包含必要信息,则发送广播形式的 ARP 请求。如果查询地址的所有者位于本地子网,则可使用 ARP 应答或响应估息进行响应。
如果不是,系统将默认使用其默认网关的 MAC 地址来转发。然后,默认网关(或者路巾器)将需要执行自己的 ARP 过程。
ARP滥用
ARP缓存中毒或 ARP 欺骗是由以伪造的回复进行响应的攻击者引起的。
另一种形式的 ARP 中毒使用无目的的或未经请求的 ARP 回复。
另外,当共享 IP 地址且可能共享相同 MAC 地址的冗余设备被使用时,定期发送无目的的
ARP通知有助于确保可靠的故障切换。
ARP通知有助于确保可靠的故障切换。
第三种形式的 ARP 缓存中毒是静态 ARP 条目的创建。这是通过 ARP 命令完成的,必须在本地完成。
防御措施
针对基于 ARP 的攻击的最佳防御是实施交换机上的端口安全。
本地或软件防火墙、主机入侵检测和防御系统(HIDPS)或特定端点安全产品也可用于阻止未请求的 ARP 回复或通告。检测 ARP 中毒的一个流行工具是
arpwatch
arpwatch
另一种防御措施是建立静态 ARP 条目。
安全通信协议
IPsec
IPsec Internet Protocol Security(IPsec)基千 IP 协议,使用公钥加密系统来提供加密、访问控制、不可否认性和消息验证。 IPsec 主要用千虚拟专用网络(VPN) ,因此 IPsec 可以在传输或隧道模式下运行。 IPsec IP 安全扩展的标准,被用作 IPv4 的附加组件,并集成到 IPv6中。
Kerberos
为用户提供单点登录(SSO)解决方案,并为登录凭证提供保护。 Kerberos 的最新实现是使用混合加密来提供可靠的身份认证保护。
SSH
端到端加密
信令协议
是一种加密协议,为语音通信、视频会议和文本消息服务提供端到端加密。信令协议是非联邦(nonfederated)协议,是名为 “Signal" 的即时通信 APP 中的核心元素。
安全远程过程调用
Secure Remote Procedure Call(S-RPC)是用于跨网络服务通信的身份认证服务,旨在防止在远程系统上未经授权执行代码。
传输层安全
Transport Layer Security(TLS)是一种在 OSI 层运行的加密协议(加密 TCP通信的有效载荷)。它主要用于加密 HTTPS Web 通信,也可加密应用层协议。
- ·支待跨不安全网络的安全客户端-服务器通信,同时防止篡改、欺骗和窃听。
- ·支持单向身份认证。
- ·支持使用数字证书进行双向身份认证。
- .通常应用于 TCP 包的基本有效载荷,使其能封装更高层协议有效载荷。
- ·可用于加密用户数据报协议(UDP)和会话初始协议(SIP) 连接。 (SIP 是与 IP 语音相关的协议。)
多层协议的含义
TCP/IP 是一和多层协议。 TCP/IP 从其多层设计中获得了若干好处,这与它的封装机制有关。
多层协议具有以下优点:
- ·可在更高层使用各种协议。
- ·加密可包含在各个层中。
- ·支持复杂网络结构中的灵活性和弹性。
多层协议有一些缺点:
- ·允许隐蔽通道。
- ·可以绕过过滤器。
- ·逻辑上强加的网段边界可被超越。
DNP3 (分布式网络协议 3) 主要用于电力和水利行业。它用于支待数据采集系统和系统控制设备之间的通信。DNP3 是一个开放的公共标准,具有多层协议,功能与 TCP/IP 类似,具有链路、传输和应用层。
融合协议
融合协议是专业(或专有)协议与标准协议的结合,如那些源自 TCP/IP 套件的协议。融合协议的主要好处是能使用现有的 TCP/IP 支持网络基础设施来托管特殊服务或专有服务,不需要独立部署备用网络硬件。
存储区域网络(Storage Area Network, SAN)
SAN 的运作方式是将数据存储仁号封装或聚合到 TCP/IP 通信中,以实现分离存储和接近性。
SAN 可能导致单点故障,因此需要进行冗余集成以保证可用性。
以太网光纤通道(Fibre Channel over Ethernet, FCoE)
光纤通道是一种网络数据存储解决方案(SAN NAS) ,允许高达 128 Gbps 的文件传输速率。它在第 2 层运行,被设计用于光纤电缆;后来增加了对铜缆的支持,以提供更便宜的选择。
多协议标签交换(Multiprotocol Label Switching, MPLS)
MPLS 是一种高吞吐晕的高性能网络技术,它基于短路径标签(而不是更长的网络地址)来引导网络上的数据。相比千比传统的基于 1P 的路由过程,这种技术节省了大量时间,但可能非常复杂。此外, MPLS 旨在通过封装处理各种协议。
互联网小型计算机系统接口(Internet Small Computer System Interface, iSCSI)
iSCSI 是一种基于IP 的网络存储标准,运行在第3 层。利用此技术,可通过 LAN WAN 或公共互联网连接启用与位置无关的文件存储、传输和检索。 iSCSI 通常被视为光纤通道的低成本替代方案。
网络电话
网络电话(Voice over IP, Vi IP) 是一种隧道机制,它将音频、视频和其他数据封装到 IP数据包中,以支持语音呼叫和多媒体协作。
黑客可以对 VoIP 解决方案发起多种潜在攻击。
许多 VoIP 工具都可以轻易用来伪造来电显示,因此黑客可以执行 vishing(VoIP 网络钓鱼)攻击或语音垃圾邮件(SPIT)攻击。
呼叫管理器系统和 VoIP 电话本身可能容易受到主机操作系统攻击和 DoS 攻击。
攻击者可能通过伪造呼叫管理器或端点连接协商或响应消息来执行 MITM/路径攻击。
根据部署情况,如果在与桌面和服务器系统相同的交换机上部署 VoIP 电话,也存在相关风险。
由于 VoIP 流量是未加密网络流量,可通过解码 VoIP 流量来监听 VoIP 通信。
安全实时传输协议或安全 RTP(SRTP)是对 VoIP 通信中使用的实时传输协议(RTP) 的安全改进。 SRTP 旨在通过强加密和可靠的身份认证,将拒绝服务、路径攻击和其他 VoIP 攻击的风险降至最低。 RTP SRTP 在会话初始协议(SIP) 建立端点之间的通信链路后接管。
SIPS是VoIP会话初始化协议的安全版本,它添加了TLS加密,以确保会话初始化过程的安全。
软件定义网络
SDN 旨在将基础设施层(亦称数据平面和转发平面一—硬件和基于硬件的设置)与控制层(即数据传输管理的网络服务)分离。控制平面使用协议来决定向何处发送流量,而数据平面包含决定是否转发流量的规则。
虚拟化网络概念带来的另一个有趣的发展是虚拟 SAN(VSAN)。虚拟 SAN 或软件定义的共享存储系统是 SAN虚拟化网络或 SDN 上的虚拟重现。
软件定义存储(SDS) 是SDN 的另一个衍生产品。 SDS是 SAN 或NAS 的SDN 版本。
软件定义广域网(SDWAN SD-WAN) SDN 的一种演变,用于远程数据中心、远端位置和 WAN 链路上的云服务之间的连接管理和服务控制。
聚合协议(例如,以太网光纤通道(FCoE)\互联网小型计算机系统接口()iSCSI)、IP语音(VoIP)
微隔离(例如,软件定义网络(SDN)、虚拟可扩展局域网(VXLAN)、封装、软件定义广域网(SD-WAN))
用于改善网络的各个方面。
提高性能
网络分段可以通过组织体系来提高性能,在这种组织体系中,经常通信的系统位于同一分段中。此外,广播域的划分可以显著提高大型网络的性能。
减少通信问题
网络分段可减少拥塞并抑制通信问题,如广播风暴。
提供安全
网络分段还可通过隔离通信流量和用户访问权限来提高安全性。
网络分段概念的演变是微分网段。微分网段将内部网络划分为多个子区域,这些子区域可能小到单个设备,例如高价值服务器,甚至客户端或端点设备。
虚拟可扩展 LAN(VXLAN)是一种封装协议,可使 VLAN(见第 12 章)跨子网和地理距离扩展。 VLAN 通常仅限千第 层网络域,并且不能包含来自其他网络的成员,这些网络只能通过路由器入口访问。
无线网络(如Li-Fi、Wi-Fi、Zigbee、卫星)
802.11无线网络协议
Wi-Fi部署模式
ad hoc 模式(也称为点对点 Wi-Fi)。ad hoc 模式意味着任何两个无线网络设备都可以在没有集中控制权限(即基站或接入点)的情况下进行通信。Wi-Fi 直连是 ad hoc 模式的升级版本,可支持 WPA2 WPA3(ad hoc 仅支持 WEP) 。
基础设施模式意味着需要无线接入点(WAP) ,并且强制执行无线网络访问限制。
独立模式
独立模式部署是指使用 WAP 使无线客户端彼此连接但没有连接到任何有线资源(因此, WAP 是独立的)。
有线扩展模式
有线扩展模式部署是指由 WAP 充当连接点,将无线客户端链接到有线网络。
企业扩展模式
企业扩展模式部署是指使用多个无线接入点(WAP)将大型物理区域连接到同一有线网络。每个 WAP 都将使用相同的扩展服务集标识符(ESSID) ,以便客户端在保持网络连接的同时在该区域漫游,使无NIC 将关联从一个 WAP 更改到另一个 WAP 。
桥接模式
桥接模式部署是指无线连接被用千连接两个有线网络。
Fat AP 是一个完全自主管理的无线系统基站,作为独立的无线解决方案运行。
Thin AP 只是一个无线发射机 接收机,必须从被称为无线控制器的独立外部集中管理控制台进行管理。
保护 SSID
基础架构模式 SSID 有两种类型
扩展服务集标识符(ESSID)
ESSID 是使用 WAP 时无线网络的名称。
基本服务集标识符(BSSID)
BSSID 是基站的 MAC 地址,用十区分支持 ESSID 的多个基站。
独立服务集杠识符(ISSID) Wifi直连或 ad hoc 模式使用。
WAP 通过被称为信标帧的特殊传输来广播 SSID 。信标帧允许其范围内的任何无线 NIC看到无线网络并使连接尽可能简单。应禁用此 SSID 的默认广播以保待无线网络的安全。然而攻击者仍可通过无线嗅探器发现 SSID, 因为 SSID 仍可用于连接的无线客户端和 WAP间的传输。因此,禁用 SSID 广播的方案不是真正的安全机制。
无线信道
当两个或更多个 2.4 GHz 接入点在物理上相对靠近彼此时,一个信道上的信号可能干扰另一个信道上的信号。
5GHz 无线设计旨在避免这种信道重叠和干扰问题。
2.4GHz通常是首选,因为它可以在一定距离内提供良好的覆盖,但速度较慢;
5GHz 通常是内部网络的首选,因为它提供了更高的吞吐最(但覆盖面积较小),而且不能穿透墙壁和家具等固体物体。
5GHz 通常是内部网络的首选,因为它提供了更高的吞吐最(但覆盖面积较小),而且不能穿透墙壁和家具等固体物体。
5G技术包括新的相互身份认证能力和对用户身份的额外保护。
进行现场调查
WAP 位置是通过执行现场调查并生成热图来确定的。
现场调查是指使用射频信号检测器对无线信号强度、质量和干扰进行正式评估。
无线安全
WEP
有线等效保密(Wired Equivalent Privacy, WEP) 由原始的 IEEE 802.11 标准定义。
WEP使用预定义的共享 Rivest Cipher 4(RC4)密钥进行身份认证(即 SKA)和加密;不幸的是,共享密钥是静态的,并在 WAP 和客户端之间共享。
WAP
Wi-Fi 受保护访问(Wi-Fi ProtectedAccess, WPA)被设计为 WEP 的替代品;在新的 802. 11i 版本发布前,这是 个临时版本
WPA 使用 RC4 算法,并采用临时密钥完整性协议(TKIP) Cisco 替代品-~轻量级可扩展身份认证协议(LEAP) 。然而, WPA 已不再安全。
WPA2
IEEE 802.11i 或 WiFi受保护访问 2(Wi-Fi Protected Access 2, WPA2)取代了 WEP WPA它实现了 AES-CCMP, 而不是 RC4 。
计数器模式和密码分组链接消息认证码协议(CCMP)(计数器模式/CBC-MAC 协议)是两种分组密码模式的组合,通过分组算法实现流传输。
基于AES
WPA3
WPA3-ENT 使用 192 AES CCMP 加密, WPA3-PER 保持 128 AES CCMP WPA3-PER 将预共享密
钥身份认证替换为对等同步身份认证。
钥身份认证替换为对等同步身份认证。
对等同步身份认证(Simultaneous Authentication of Equals, SAE)仍然使用密码,但它不再加密并通过连接发送该密码以执行身份认证。相反, SAE 执行被称为蜡蜓密钥交换(Dragonfly Key Exchange) 的零知识证明过程,该过程本身就是 Diffie-Hellman 的衍生物。
802.1X/EAP
WPA WPA2 WPA3 都支持被称为 802.IX/EAP 的企业(ENT)身份认证,这是一种基于端口的标准网络访问控制,可确保客户端在进行正确身份认证之前无法与资源通信。
可扩展身份认证协议(EAP)不是特定的身份认证机制;相反,它是一个身份认证框架。
LEAP
轻量级可扩展身份认证协议(Lightweight Extensible Authentication Protocol, LEAP)是针对WPA TKIP Cisco 专有替代方案。
PEAP
受保护的可扩展身份认证协议(Protected Extensible Authentication Protocol, PEAP) 将EAP方法封装在提供身份认证和可能加密的 TLS 隧道中。因为 EAP 最初被设计用于物理隔离通道,所以被假定为安全通道,因此, EAP 通常不加密。 PEAP 可为 EAP 方法提供加密。
Wi-Fi 保护设置(WPS)
Wi-Fi 保护设置(Wi-Fi Protected Setup, WPS)是无线网络的安全标准。它旨在减少将新客户端添加到无线网络的工作量。
WPS 是大多数 WAP 默认启用的功能,因为它是设备 Wi-Fi 联盟认证的必要条件。在以安全为中心的预部署过程中,有必要禁用它。
无线 MAC 过滤器
MAC 过滤器可被用在 WAP 上以限制对已知或经批准设备的访问。
无线天线管理
标准直线或极天线是全向天线,是在大多数基站和一些客户端设备上采用的天线类型这种类型的天线有时也被称为基础天线或橡胶鸭天线
大多数其他类型的天线是定向的,这意味着它们将发送和接收能力集中在一个主要方向上。定向天线的一些示例包括八木天线、卡特纳天线、平板天线和抛物线天线。
调整功率级别时,请进行微调,而不是尝试最大化或最小化设置。
使用强制门户
强制门户是一种身份认证技术,可将新连接的客户端重定向到基于 Web 的门户网站访问控制贞面。
强制门户还用于向用户显示可接受的使用策略、隐私策略和跟踪策略。用户必须先同意策略才能通过网络进行通信。
一般 Wi-Fi 安全程序
(1) 更新固件。
(2) 将默认管理员密码更改为独特复杂的密码。
(3) 启用 WPA2 WPA3 加密。
(4) 用长而复杂的密码启用 ENT 身份认证或 PSK/SAE
(5) 更改 SSID(默认值通常为供应商名称)。
(6) 更改无线 MAC 地址(以隐藏默认 MAC 地址的 OUI 和设备品牌/型号编码)。
(7) 根据部署要求决定是否禁用 SSID 广播(即使这不会增加安全性)。
(8) 如果无线客户端数量很少(通常小于20) ,启动 MAC 地址过滤并使用静态 IP 地址。
(9) 考虑使用静态 IP 地址,或使用预留设置配置 DHCP(仅适用于小型部署)。
(10) 将无线视为外部或远程访问,并使用防火墙将 WAP 与有线网络分开。
(11) 将无线视为攻击者的入口点,并使用 NIDS 监控所有 WAP 到有线网络的通信。
(12) 部署无线入侵检测系统(WIDS)和无线入侵预防系统(WIPS)
(13) 考虑在 Wi-Fi 链路上使用 VPN
(14) 部署强制门户。
(15) 跟踪/记录所有无线活动和事件。
(2) 将默认管理员密码更改为独特复杂的密码。
(3) 启用 WPA2 WPA3 加密。
(4) 用长而复杂的密码启用 ENT 身份认证或 PSK/SAE
(5) 更改 SSID(默认值通常为供应商名称)。
(6) 更改无线 MAC 地址(以隐藏默认 MAC 地址的 OUI 和设备品牌/型号编码)。
(7) 根据部署要求决定是否禁用 SSID 广播(即使这不会增加安全性)。
(8) 如果无线客户端数量很少(通常小于20) ,启动 MAC 地址过滤并使用静态 IP 地址。
(9) 考虑使用静态 IP 地址,或使用预留设置配置 DHCP(仅适用于小型部署)。
(10) 将无线视为外部或远程访问,并使用防火墙将 WAP 与有线网络分开。
(11) 将无线视为攻击者的入口点,并使用 NIDS 监控所有 WAP 到有线网络的通信。
(12) 部署无线入侵检测系统(WIDS)和无线入侵预防系统(WIPS)
(13) 考虑在 Wi-Fi 链路上使用 VPN
(14) 部署强制门户。
(15) 跟踪/记录所有无线活动和事件。
无线通信
通用无线概念
无线通信使用无线电波在一定距离上传输信号。无线电频谱使用频率区分。
几种频谱使用技术
扩频(Spread Spectrum)
扩频(Spread Spectrum) 意味着通信在多个频率上发生。因此,消息被分成几部分,并且每个部分同时发送但使用不同的频率。实际上,这是并行通信,而不是串行通信。
跳频扩频(Frequency Hopping Spread Spectrum, FHSS)
FHSS在一个频率范围内串行传输数据,但一次只使用一个频率。
直接序列扩频(Direct Sequence Spread Spectrum, DSSS)
同时并行使用频率。DSSS使用被称为码片编码的特殊编码机制,即使信号的某些部分因干扰而失真,也允许接收机重建数据。
正交频分复用(Orthogonal Frequency-Division Multiplexing, OFDM)
采用数字多载波调制方案,允许更紧凑的传输。调制信号是垂直的(正交的),因此不会相互干扰。最终 OFDM要更小的频率集(即信道频带),但可提供更大的数据吞吐釐。
蓝牙(802.15)
蓝牙在 IEEE 802.15 中定义,使用 2.4 GHz 频率。
蓝牙的标准或官方使用范围可达100 米。
蓝牙低能耗设备(蓝牙 LE 、BLE 、蓝牙智能)是标准蓝牙的低功耗衍生产品。 BLE 被设计用于物联网、边缘/雾设备、移动设备、医疗设备和计步器。
蓝牙易受多种攻击:
蓝牙嗅探(bluesniffing) 是以蓝牙为中心的网络数据包捕获。
蓝牙攻击(bluesmacking) 是针对蓝牙设备的 DoS 攻击,可以通过传输垃圾流量或干扰信号来实现。
蓝牙劫持(bluejacking) 涉及在未经所有者/用户许可的情况下向支持蓝牙功能的设备发送未经请求的消息。
蓝牙侵吞(bluesnarfing) 是通过蓝牙连接对数据进行未经授权的访问。
蓝牙窃听(bluebugging) 允许攻击者通过监牙连接远程控制设备的硬件和软件。
RFID
射频识别(Radio Frequency Identification, RFID)是一种用放置在磁场中的天线产生的电流为无线电发射机供电的跟踪技术.
RFID 可从相当远的距离(可能数百米)触发/供电和读取。只需要携带 RFID 读取器,黑客就可以收集该区域内芯片传输的信息。
NFC
近场通信(near-field communication, NFC) 是在非常接近的设各之间建立无线电通信的标准(如无源 RFID 的几英寸与英尺)
NFC 芯片可以支持挑战-响应对话,甚至可以使用公钥基础设施(PKI)密解决方案。
针对 NFC 的攻击包括路径攻击、窃听、数据操纵和重放攻击等。因此,虽然一些 NFC实现支待可靠的身份认证和加密,但并非所有 NFC 实现都支持。最好的做法是在需要使用NFC 功能之前将其禁用。
无线攻击
Wi-Fi 扫描器
战争驾驶( driving)是某些入使用检视 工具寻找无线网络信号的行为。
无线扫描仪能够确定该区域是否存在无线网络、使用的频率和信道、 SSID 以及使用的加密类型(如果有)。无线破解可以用来破解 WEP WPA 网络的加密。
恶意接入点
为方便起见,员工可种植流氓 WAP, 也可由物理入侵者在内部安装,或由攻击者在外部操作。
对现有无线客户端的攻击要求对流氓 WAP 进行配置,以复制有效 WAP SSIDMAC 地址和无线信道,但以更高的额定功率运行。
第二种使用流氓 WAP 的方法侧重千吸引新的访问无线客户端。通过将 SSID 设置为看起来和原始有效 SSID 一样合法的备用名称,这种类型的流氓 WAP 配置有社会工程技巧。流氓WAP 不需要克隆原始 WAP MAC 地址和信道。
为防御流氓 WAP, 可操作 WIDS 来监视无线信号滥用,例如新出现的 WAP, 尤其是那些使用模仿的 SSID MAC 操作的 WAP 。管理员或安全团队成员可以尝试通过使用无线扫描仪和定向天线进行三角测量来定位恶意 WAP 。
对于客户端,最好的选择是连接无线链路时使用 VPN, 并且只有成功建立 VPN 连接时,才应使用无线链路。
Evil Twin
Evil Twin 是种攻击,其中黑客操作虚假接入点,该接入点将根据客户端设备的连接请求自动克隆(或孪生)接入点的身份
Evil Twin 攻击系统窃听这些重新连接请求的无线信号。一旦 Evil Twin 看到重新连接请求,它就用这些参数伪造它的身份,并提供与客户端的明文连接。客户端接受请求并与虚假 Evil Twin 基站建立连接。这使得黑客能通过路径攻击窃听通信,这可能导致会话劫持、数据操纵凭证被盗和身份盗用。
解除关联
解除关联(disassociation) 是许多类型的无线管理帧之一。当客户端连接到同一 ESSID 网络覆盖区域中的另一个 WAP 时,解除关联帧用于断开客户端与一个 WAP 的连接。如果它被恶意使用,客户端将丢失其无线连接。
类似的攻击可以使用取消身份认证数据包执行。此数据包通常在客户端启动 WAP 身份认证后立即使用,但无志提供正确的凭证。但是,如果在连接会话期间发送,客户端会立即断开连接,就像身份认证失败一祥。
这些管理帧可用于多种形式的无线攻击:
- .对于具有隐藏 SSID 的网洛,将 MAC 地址伪造为 WAP 地址们解除关联数据包并将其发送到连接的客户端,导致客户端失去连接,然后发送重新关联请求数据包(尝试重新建立连接),其中包括已清除的 SSID
- ·攻击可以向客户端发送重复的解除关联帧以防止重新关联,从而导致拒绝服务。
- .会话劫持事件可以通过使用解除关联帧来启动,以使客户端保持断开连接的状态,同时攻击者模拟客户端并通过 WAP 接管其无线会话。
- .通过使用解除关联帧断开客户端连接,可以实现路径攻击。攻击者使用的 SSIDMAC 与原始 WAP 的相同,而且其流氓/假 WAP 提供更强的信号;一且客户端连接到错误的 WAP, 攻击者就会连接到有效的 WAP
针对这些攻击的主要防御措施是运行 WIDS 以监控无线沾用。
阻塞
阻塞(jamming) 是指通过降低有效信噪比来故意阻止或干扰通信的无线电信号传输。
初始化向量滥用
初始化向量(Intialization vector, IV)是随机数的数学和加密术语。大多数现代加密功能使IV 来降低可预测性和可重复性,从而提高其安全性。当 IV 过短,以明文交换或选择不当时, IV 会成为弱点。
IV 攻击的一个例子是使用 aircrack-ng 套件中的 wesside-ng 工具破解 WEP加密。
重放
重放攻击(replay attack) 是指重传捕获的通信,以期获得对目标系统的访问。
防御措施
保持基站的固件更新
WIDS 将能检测到此类滥用情况,并及时通知管理员有关情况。
使用一次性身份认证机制,每条消息包含时间戳和过期期限
使用基于挑战-响应的身份认证以及使用顺序会话标识。
LiFi(Light Fidelity)
LiFi(Light Fidelity) 是一种利用光进行无线通信的技术。
它使用可见光、红外线和紫外线光谱来支持数字传输。它的理论传输速率为 100 Gbps
LiFi 有潜力用于基于无线解决方案但存在电磁辐射干扰问题的领域。
卫星通信(satellite communications)
卫星通信(satellite communications) 主要基于地面位置和在轨人造卫星之间的无线电波传输。
卫星用于支持电话、电视、广播、互联网和军事通信。卫星可以定位在三个主要轨道上:近地轨道(LEO )160~2000 千米、中地轨道(MEO)2000~35 786 千米和地球同步轨道(GEO)35 786 千米。
窄带无线通信(narrow-band wireless)技术
窄带无线通信(narrow-band wireless)技术被 SCADA 系统广泛用于在电缆或传统无线无效或不合适的距离或地理空间进行通信。应监控和加密窄带无线通信。
Zigbee
Zigbee 是一种基于蓝牙的物联网设备通信的概念。 Zigbee 具有低功耗和低吞吐率,并且需要接近设备。 Zigbee 通信使用 128 位对称算法加密。
蜂窝网络(如4G、5G)
蜂窝通信服务通常是加密的,但仅限于通信从移动设备传输到传输塔时。一旦通过电线传输,通信实际上就是明文。
在通过蜂窝连接传输之前,使用加密通信应用程序(如 TLS VPN)对通信进行预加密。
4G 自21 世纪初开始使用,大多数蜂窝设备支持 4G 通信。4G 标准允许移动设备达到 100Mbps, 而固定设备可以达到 1Gbps。
5G是最新的移动服务技术,可用于某些手机、平板电脑和其他设备。许多 ICS 、物联网和专用设备可能具有嵌入式 5G 功能。 5G 使用的频率比以前的蜂窝技术所用的更高,它允仵更高的传输速度(高达 10 Gbps) ,但距离更短。
关千手机无线传输,需要记住几个关键问题
首先,通过手机提供商的网络进行的通信,无论是语音、文本还是数据,都不一定是安全的。
第二,如果使用特定的无线嗅探设备,你的手机传输的数据可能会被截获。实际上,可模拟提供商的基站,以进行中间人/路径攻击。
第三,使用手机连接访问互联网或办公室网络的行为为攻击者提供了另一种潜在的攻击、访问和破坏途径。
内容分发网络(CDN)
内容分发网络(content distribution network, CDN)或内容传递网络是在互联网上的多个数据中心中部署的资源服务的集合,以便提供托管内容的低延迟、高性能和高可用性。
不是将媒体内容存储在单个中心位置以传输到互联网的所有位置,而是将其分发到地理上更靠近用户群体的多个互联网预备平台位置上
有许多 CDN 服务提供商,包括 CloudFlare、Akamai 、Amazon CloudFront、 CacheFly 、Level 3 Communications 。
虽然大多数 CDN 都关注服务器的物理分布,但基于客户端的 CDN 也是可能的。这通常被称为 P2P(点对点,peer-to-peer) 。最广为人知的BitTorrent
4.2 安全的网络组件
网络基本类型
内联网
内联网为用户提供对内部服务器上的 Web/电了邮件和其他服务的访问权限,私有网络外的任何人都无法访问这些服务。
外联网
外联网是互联网和内联网之间的交叉。
屏蔽子网(以前被称为非军事区)是一种具有特殊用途的外联网,专门供低信任度和未知用户访问特定系统,例如访问 Web 服务器的公众。它可以通过两个防火墙或一个多宿主防火墙来实现。
互联网
屏蔽主机是一个受防火墙保护的系统,逻辑上位于网段内部。所有入站流量都被导到屏蔽主机,该主机反过来充当专用网络中所有受信任系统的代理。
硬件操作(例如,冗余电源、保修、支持)
冗余电源
UPS
冗余电源
负载均衡
热插拔支持
保修
购买设备时,务必询问保修范围和退货政策限制。如果设备在约定时间内出现故障,你可以获得退款或更换。
技术支持
可能需要专门的培训或认证才能进行配置、组装和部署,需要依赖供应商提供的支持服务
在获得新设备时,应询问可用的技术支持服务,以及这些服务是否包含在产品购买中,或者这些服务是否需要额外费用、订赎或合同。
常用网络设备
中继器、集中器和放大器
中继器、集中器和放大器(RCA)用于加强电缆通信信号以及连接使用相同协议的网段。
集线器
集线器用十连接多个系统以及连接使用相同协议的网段。集线器是多端口中继器。集线器在 OSI 层运行。集线器两侧的系统是同一冲突域和广播域的一部分。
调制解调器
传统的 landline 调制解调器是一神通信设备,它覆盖或惆制模拟载波信号和数字信息,以支持 PSTN 线路的计算机通信。
调制解调器通常被数字宽带技术所取代,包括电缆调制解调器、 DSL 调制解调器、 802.11 无线以及各种形式的无线调制解调器。
网桥
网桥用于将两个网络(甚至是不同拓扑结构、布线类型和速率的网络)连接在一起,以便连接使用相同协议的限段。网桥将流量从一个网络转发到另一个网络。使用不同传输速度连接网络的网桥可能用缓冲区来存储数据包,直到它们可被转发到较慢的网络。这被称为存储转发设备。网桥在 OSI 层运行。网桥主要用于将集线器网络连接在一起,因此大部分已被交换机所取代。
交换机
交换机通过 MAC 地址管理帧的传输。交换机在创建 VLAN 时,可创建单独的广播域。交换机主要在 OSI 第2层运行。如果交换机具有其他功能(例如在 VLAN 之间路由时),它们也可在 OSI 第3层运行。
路由器
路由器用于控制网络上的流量,通常用千连接类似的网络并控制两者之间的流量。
LAN 扩展器
LAN 扩展器是一种远程访问的多层交换机,用于在广域网链路上连接远程网络,也被称为广域网交换机或广域网路由器。
跳转箱
跳转服务器或跳转箱(jumpbox) 是一种远程访问系统,用于使对特定系统或网络的访问更容易或更安全。
传感器
传感器收集信息,然后将其传输回中央系统以进行存储和分析。许多传感器都基于 SoC
采集器
安全采集器是将数据收集到日志或记录文件中的系统。采集器的功能类似于审核、记录和监控的功能。
聚合器
聚合器是一种多路复用器。大量输入被接收、定向或传输到单个目的地。MPLS 是聚合器的一个示例。一些 IDS/IPS 使用聚合器收集或接收来自多个传感器和
采集器的输入,并将数据集成到单个数据流中以进行分析和处理。
采集器的输入,并将数据集成到单个数据流中以进行分析和处理。
传输媒介
同轴电缆
同轴电缆(coaxial cable) 也被称为 coax, 是一种流行的网络电缆类型,在整个 20 世纪 70年代和 80 年代使用。
同轴电缆具有由一层绝缘层包围的铜线芯,该绝缘层又由导电编织屏蔽层包围并封装在最终绝缘护套中。中心的铜芯和编织屏蔽层是两个独立的导体,因此允许通过同轴电缆进行双向通信。同轴设计电缆使其具有相当的抗电磁干扰(electromagnetic interference, EMI)能力,支持高带宽(与同时期的其他技术相比),并提供比双绞线更长的有效传输距离。
细网(10Base2) 通常用于将系统连接到粗网布线的主干中继线。细网可以跨越 185米的距离,并提供高达 10 Mbps 的吞吐量。
粗网(10Base5) 可以跨越 500 米,最高吞吐量达 10 Mbps
基带和宽带电缆
基带电缆一次只能传输一个信号,宽带电缆可以同时传输多个信号
双绞线
如果外部护套下面的导线周围有金属箔包装,则将该导线称为屏蔽双绞线(STP)
没有箔的双绞线被称为非屏蔽双绞线(UTP)
原始 UTP 类别
导线
基于导体的网络布线的距离限制源于被用作导体的金属的电阻。
每一种电缆的最大传输长度表明,信号号的退化程度在某一点可能开始影响数据的有效传输。这种信号的退化被称为衰减。
5-4-3 规则
在任意两个节点(节点可以是任何类型的处理实体,如服务器、客户端或路由器)之间,最多可有五个段由四个中继器/集中器连接,并且它仅表明可填充这五个段中的三个(即具有附加主机或网络设备连接)。
光缆
极快且几乎不受攻击和干扰。
光纤可以部署为单模(支持单个光信号)或多模(支持多个光信号)
单模光纤具有较细的光纤芯、较低的远距离衰减以及潜在的无限带宽。它便用 1310 纳米或 1550 纳米波长的激光器,可在不使用中继器的情况下传输一万米,并且通常用黄色护套。
多模光纤具有更粗的光纤芯、更高的距离衰减和带宽限制(与距离成反比)。它使用 850 纳米或 1300 纳米波长的 LED 或激光器,最大传输距离为 400 米,通常采用蓝色护套。
网络拓扑
环形拓扑
总线拓扑
星形拓扑
逻辑总线和逻辑环可实现物理星形网络。以太网是一种基千总线的技术。它可以被部署为物理星形
网状拓扑
LAN 技术
模拟和数字
模拟通信发生在频率、幅度、相位、电压等变化的连续信号上。
通过使用不连续的电信号和状态改变或开关脉冲来进行数字通信。
同步和异步
同步通信依赖于基千独立时钟或嵌入数据流中的时间戳的定时或时钟机制。同步通信通常能够支持非常高的数据传输速率。
异步通信使用停止和启动分隔符位来管理数据传输。由于使用了分隔符位及其传输的停止和启动特性,异步通信最适用于较少量的数据。
基带和宽带
基带技术只能支持单个通信通道。以太网采用基带技术。
宽带技术可支持多个同步信号。宽带使用频率调制来支待多个信道,每个信道支待不同的通信会话。宽带适用千高吞吐率,特别是当多个信道被多路复用时。宽带是一种模拟信号。
广播、多播和单播
广播(broadcast)技术支持与所有可能的接收者进行通信。
多播(multicast) 技术支待与多个特定接收者的通信。
单播(unicast)技术仅支待与特定接收者的单一通信。
局域网介质访问
载波侦听多路访问(Carrier-Sense Multiple Access, CSMA)
(1) 主机侦听 LAN 介质以确定它是否正在使用中。
(2) 如果 LAN 介质未被使用,则主机发送其通信。
(3) 主机等待确认。
(4) 如果在超时后没有收到确认,则主机从步骤(1)重新开始。
(2) 如果 LAN 介质未被使用,则主机发送其通信。
(3) 主机等待确认。
(4) 如果在超时后没有收到确认,则主机从步骤(1)重新开始。
载波侦听多路访问/冲突检测(Carrier-Sense Multiple Access with Collision Detection, CSMA/CD)
(1) 主机侦听 LAN 介质以确定它是否正在使用中。
(2) 如果 LAN 介质未被使用,则主机发送其通信。
(3) 在发送时,主机侦听冲突(即两个或多个主机同时发送)。
(4) 如果检测到冲突,则主机发送阻塞信号。
(5) 如果收到阻塞信号,则所有主机都停止发送。每个主机等待一段随机时间,然后从步骤(1) 开始。
以太网采用 CSMA/CD 技术。
(2) 如果 LAN 介质未被使用,则主机发送其通信。
(3) 在发送时,主机侦听冲突(即两个或多个主机同时发送)。
(4) 如果检测到冲突,则主机发送阻塞信号。
(5) 如果收到阻塞信号,则所有主机都停止发送。每个主机等待一段随机时间,然后从步骤(1) 开始。
以太网采用 CSMA/CD 技术。
载波侦听多路访问(冲突避免 (Carrier-Sense Multiple Access with Collision Avoidance, CSMA/CA)
(1) 主机有两个到 LAN 介质的连接:入站和出站。主机侦听入站连接以确定 LAN 介质是否正在使用中。
(2) 如果未使用 LAN 介质,则主机请求传输权限。
(3) 如果在超时后未授予权限,则主机将从步骤(1)重新开始。
(4) 如果授予了权限,则主机通过出站连接发送其通信。
(5) 主机等待确认。
(6) 如果在超时后未收到确认,则主机在步骤(1) 重新开始。
802.11 无线网络是采用 CSMA/CA 技术的网络示例。
(2) 如果未使用 LAN 介质,则主机请求传输权限。
(3) 如果在超时后未授予权限,则主机将从步骤(1)重新开始。
(4) 如果授予了权限,则主机通过出站连接发送其通信。
(5) 主机等待确认。
(6) 如果在超时后未收到确认,则主机在步骤(1) 重新开始。
802.11 无线网络是采用 CSMA/CA 技术的网络示例。
令牌传递
是使用数字令牌执行通信的 LAN 介质访问技术。拥有令牌的主机才允许传输数据。传输完成后,它会将令牌释放到下一个系统。令牌通过基千环形拓扑的
网络进行传递,例如传统令牌环和光纤分布式数据接口 (FDDI) 。
网络进行传递,例如传统令牌环和光纤分布式数据接口 (FDDI) 。
轮询
这是使用主从配置执行通信的 LAN 介原访问技术。一个系统被标记为主系统,而所有其他系统都被标记为次要系统。主系统轮询或查询每个二级系统是否需要传输数据。如果辅助系统指示需要,则授予其传输许可。传输完成后,主系统继续轮询下一个辅助系统。大型机通常使用轮询。
网络访问控制(NAC)设备
网络访问控制(network access control, NAC)指通过严格遵守和执行安全策略来控制对环境的访问。 NAC 是一个自动检测和响应系统,可实时做出反应,以确保所有受监控系统的补丁和更新都是最新的,并符合最新的安全配置,同时防止未经授权的设备进入网络。
NAC目标如下:
.防止/减少已知的直接攻击和间接的零日攻击。
.在整个网络中实施安全策略。
.使用标识执行访佪控制。
.在整个网络中实施安全策略。
.使用标识执行访佪控制。
基于代理的 NAC 系统的典型操作是在每个受管系统上安装 NAC 监控代理。 NAC 代理定期(可能每天或在网络连接时)检索配置文件,以对照本地系统检查当前配置基线要求。如果系统不合规,则可将其隔离到修正子网中,在该子网中,它只能与 NAC 服务器通信。 NAC 代理可以下载并应用更新和配置文件,以使系统符合要求。一且实现合规性, NAC 代理将系统返回到正常生产网络。
无代理或网络监控评估 NAC 解决方案从 NAC 服务器对网络系统执行端口扫描、服务查询和漏洞扫描,以确定设备是否经过授权且符合基线。无代理系统需要管理员手动解决发现的任何问题。
防火墙
防火墙是管理、控制和过滤网络流量的重要工具。防火墙可以是用于保护一个网段与另一个网段的硬件或软件组件。防火墙部署在信任度较高和较低的区域之间,如专用网络和公用网络(如互联网),或者部署在具有不同安全级别/域/分类的两个网段之间
防火墙有几种基本类型
静态数据包过滤防火墙
静态数据包过滤防火墙(也被称为筛选路由器)通过检查消息头中的数据来过滤流量。通常,规则涉及源、目标 IP 地址(第 3层)和端口号(第4 层)。这也是一种无状态防火墙因为每个数据包都是单独评估的,而不是在上下文中由状态防火墙执行。
应用级防火墙
用级防火墙基于单个互联网服务、协议或应用过滤流晕。应用级防火墙在 OSI 模型的应用层(第7 层)运行。 Web 应用程字防火墙(WAF)就是一个例子,可以部署为无状态的或有状态的防火墙。
电路级防火墙
电路级防火墙(也被称为电路代理)用于在可信赖的合作伙伴之间建立通信会话。理论上,它们在 OSI 模型的会话层(第 5层)上运行(尽管在现实中,它们的运行涉及在传输层建立 TCP 会话)。 SOCKS(来自 Socket Secure, 如在 TCP/IP 端口中)是电路级防火墙的常见实现方式。电路级防火墙并非以流量的内容为重点,而是侧重基于 IP 地址和端口的简单规则使用强制门户建立电路(或会话),需要通过 802.1X 进行端口身份认证,或更复杂的元素,如基于上下文或属性的访问控制。这也是一种无状态防火墙。
状态检查防火墙
状态检查防火墙(也被称为动态数据包过滤防火墙)评估网络流量的状态、会话或上下文。通过检查源和目标地址、应用程序使用情况、来源(即本地或远程、物理端口,甚至路由路径/向量)以及当前数据包与同一会话的先前数据包之间的关系,状态检查防火墙能为授权用户和活动授予更广泛的访问权限,并主动监视和阻止未经授权的用户和活动。状态检查防火墙在 OSI 模型的第 3~7 层运行。
状态检查防火墙知道任何有效的出站通信(特别是与 TCP 相关的)都将触发外部实体的相应响应或回复。因此,这种类型的防火墙会自动为请求创建临时响应规则。但这条规则只有在对话发生时才存在。
此外,状态检查防火墙可以保留会话中以前数据包的信息,以检测不需要的或恶意的流量,这些流量在仅评估单个数据包时不明显或不可检测。这被称为上下文分析或语境分析。状态检查防火墙还可执行深度数据包检查,对数据包的有效载荷或内容进行分析。
下一代防火墙(next-generation firewall, NGFW)
下一代防火墙是一种多功能设备(MFD), 或统一威胁管理(UTM) ,除防火墙外,还包含多种安全功能。集成组件可包括应用程序过滤、深度数据包检测、 TLS 卸载和/或检查(又名 TLS 终止代理)、域名和 URL 过滤、IDS IPS Web 内容过滤、 QoS 管理、带宽限制/管理、 NAT VPN 描定、身份认证服务、身份管理和反病毒/反恶意软件扫描。
内部分段防火墙(internal segmentation firewall, ISFW)
内部分段防火墙是部署在内部网络分段或公司部门之间的防火墙。其目的是防止恶童代码或有害朸议在专用网络中进一步传播。有了 ISFW, 就可以创建网段,而不必借助物理隔离、 VLAN 或划分子网。 ISFW 通常用于微分网段体系结构。
代理
代理服务器(proxy server)是应用级防火墙或电路级防火墙的变体 代理胀务器用于在客户端和服务器之间进行调解。代理最常用于为专用网络上的客户端提供互联网访问,同时保护客户端的身份。除了 NAT 等功能外,代理服务器还可提供缓存及站点或内容过滤。
反向代理提供与正向代理相反的功能;它处理从外部系统到内部吸务的入站请求。反向代理类似于端口转发和静态 NAT 的功能。有时在屏蔽子网的边界上使用反向代理,以便在资源服务器上使用私有 IP 地址,但允许来自公共 Internet 的访问者。
内容/URL 过滤器
内容过滤或内容栓查是检查应用程序协议有效负载内容的安全过滤功能。这种检查通常基于关键字匹配。URL 过滤,也被称为 Web 过滤,是基于请求访问的全部或部分URL 阻止对网站的访问的行为。
Web 安全网关是一种 Web 内容过滤器(通常基于 URL 和内容关键字),也支持恶意软件扫描。一些 Web 安全网关还包含非 Web 功能,包括即时消息(IM)过滤、电子邮件过滤、拉圾邮件阻止和欺骗检测。因此一些 Web 安全网关被认为是 UTM NGFW
防火墙部署体系结构
终端安全
端点安全是指无论网络或电信通道是否提供安全性,每个单独的设备都必须维护本地安全的概念。有时,这被表述为“终端设备负责其自身的安全”。
终端安全解决方案由于可以创建大量的数据而面临挑战。当每个工作站都生成关于事件的数据时,这可能产生大量的数据。
保护的政策
·必须对电子邮件进行筛选,使其不会成为恶意软件感染的媒介;电子邮件还应遵守一些策略以管理其适当使用并限制其潜在责任。
.必须创建下载/上传策略,以便筛选传入和传出的数据,并阻止可疑材料。
.系统必须受到强大的访问控制,其中可能包括多因素身份认证和/或生物测定,以限制对最终用户设备的访问,并防止未经授权访问服务器和服务的行为。
·应安装受限制的用户界面机制和数据库管理系统,并根据需要使用这些机制和系统,以限制和管理对关键信息的访问,从而使用户仅对敏感资源进行必要的访问。
·文件加密可能适用于存储在客户机上的文件和数据(事实上,驱动器级加密非常适用于笔记本电脑和其他移动计算设备,这些设备可能会在组织场所之外丢失或被盗)。
.超时后强制执行屏幕保护程序。这将在屏幕保护程产后面隐藏任何机密资料,然后需要有效登录才能重新访问桌面、应用程序、存储设备等。
.必须隔离在用户和监控模式下运行的进程,以防止对高权限进程和功能进行未经授权和不必要的访问。
.应创建保护域或网段,这样一来,客户端受到的损害不会自动危害整个网络。
·磁盘和其他敏感材料应清楚标明其安全分类或组织敏感级别;程序过程和系统控制应结合起来,以帮助保护敏感材料,使其不受不必要或未经授权的访问。
·理想情况下,台式计算机上的文件以及服务器上的文件都应该备份,若将某种形式的集中式备份实用程序与客户端代理软件结合起来使用,可从客户端安全备份存储归档中识别和捕获文件。
• 台式计算机用户需要定期的安全意识培训,以保持适当的安全意识;他们还需要了解潜在的威胁,并学习如何适当地处理这些威肋。
• 台式计算机及其存储介质需要防止环境危害(温度、湿度、电源损耗/波动等)。
• 台式计算机应该被纳入组织的灾难恢复和业务连续性规划,因为它们有助于让用户返回到其他系统上工作,而且其作用可能与别的系统和服务一样重要(甚至更重要)。
. 内置和用于分布式环境的定制软件的开发人员还需要考虑安全性,包括使用正式的开发和部署方法,如代码库、更改控制机制、配置管理以及补丁和更新部署。
.必须创建下载/上传策略,以便筛选传入和传出的数据,并阻止可疑材料。
.系统必须受到强大的访问控制,其中可能包括多因素身份认证和/或生物测定,以限制对最终用户设备的访问,并防止未经授权访问服务器和服务的行为。
·应安装受限制的用户界面机制和数据库管理系统,并根据需要使用这些机制和系统,以限制和管理对关键信息的访问,从而使用户仅对敏感资源进行必要的访问。
·文件加密可能适用于存储在客户机上的文件和数据(事实上,驱动器级加密非常适用于笔记本电脑和其他移动计算设备,这些设备可能会在组织场所之外丢失或被盗)。
.超时后强制执行屏幕保护程序。这将在屏幕保护程产后面隐藏任何机密资料,然后需要有效登录才能重新访问桌面、应用程序、存储设备等。
.必须隔离在用户和监控模式下运行的进程,以防止对高权限进程和功能进行未经授权和不必要的访问。
.应创建保护域或网段,这样一来,客户端受到的损害不会自动危害整个网络。
·磁盘和其他敏感材料应清楚标明其安全分类或组织敏感级别;程序过程和系统控制应结合起来,以帮助保护敏感材料,使其不受不必要或未经授权的访问。
·理想情况下,台式计算机上的文件以及服务器上的文件都应该备份,若将某种形式的集中式备份实用程序与客户端代理软件结合起来使用,可从客户端安全备份存储归档中识别和捕获文件。
• 台式计算机用户需要定期的安全意识培训,以保持适当的安全意识;他们还需要了解潜在的威胁,并学习如何适当地处理这些威肋。
• 台式计算机及其存储介质需要防止环境危害(温度、湿度、电源损耗/波动等)。
• 台式计算机应该被纳入组织的灾难恢复和业务连续性规划,因为它们有助于让用户返回到其他系统上工作,而且其作用可能与别的系统和服务一样重要(甚至更重要)。
. 内置和用于分布式环境的定制软件的开发人员还需要考虑安全性,包括使用正式的开发和部署方法,如代码库、更改控制机制、配置管理以及补丁和更新部署。
端点检测和响应(endpoint detection and response, EDR)
是一种安全机制,是传统反恶意软件产品、 IDS 和防火墙解决方案的演变。
EDR 旨在检测、记录、评估和响应可疑活动和事件,这些活动和事件可能由有问题的软件或有效和无效的用户引起。它是连续监控的自然延伸,关注终端设备本身以及到达本地接口的网络通信。
托管检测和响应(managed detection and response, MDR)
MDR 侧重于威胁检测和调解,但不限千端点的范围。
MDR 是一种试图实时监控 IT环境以快速检测和解决威胁的服务。 MDR 解决方案通常是多种技术的组合和集成,包括SIEM 、网络流量分析(network traffic analysis, NTA) EDR 和IDS
端点保护平台(endpoint protection platform, EPP)
EPP 是EDR 的变体,就像 IPS 是IDS 的变体一样。 EPP 的重点是四个主要的安全功能:预测、预防、检测和响应。因此, EPP 更主动地进行预防和预测,是更被动的 EDR 概念的变体。
扩展检测和响应(extended detection and response, XDR)
至于 XDR, 与其说它是另一种工具,不如说它将几个概念收集并集成到一个解决方案中。 XDR 组件可能因供应商而异,但它们通常包括 EDR MDR EPP 元素。此外, XDR不仅关注端点,而且通常包括 NTA NIDS NIPS 功能。
托管安全服务提供商(managed security service provider, MSSP)
可以提供集中控制和管理的 XDR 解决方案。 MSSP 解决方案可以完全部署在本地,完全部署在云中或部署为混合结构。 MSSP 解决方案可通过 SOC 进行监督,而 SOC 本身是本地或远程的。
4.3 根据设计实施安全通信通道
协议安全机制
身份认证协议
PAP(Password Authentication Protocol, 密码身份认证协议)
PAP 使用明文传输用户名与密码。
CHAP (Challenge Handshake Authentication Protocol, 征询握手身份认证协议)
CHAP 采用无法重放的挑战-应答对话进行验证
在连接时执行定期重新身份验证,从而防止重播攻击
EAP(Extensible Authentication Protocol, 可扩展身份认证协议)
EAP 是一种身份认证框架,而不是真实协议。 EAP 支持可定制的身份认证安全解决方案,如智能卡、令牌和生物身份认证。 EAP 最初用千物理隔离通道,因此采用安全通道。
LEAP(Lighmr~ight Exte~sible A~thenticati~~. Protocol, 轻量级可扩展身份认证协议)
PEAP(Protected Extensible Authentication Protocol, 受保护的可扩展身份认证协议)在 TLS隧道中封装 EAP 协议。
EAP-SIM(EAP Subscriber Identity Module, EAP 用户识别模块)是通过全球移动通信系统(GSM) 网络认证移动设备的一种手段。
EAP-FAST(EAP Flexible Authentication via Secure Tunneling, EAP 通过安全隧道进行灵活的身份认证)是一种 Cisco 协议,旨在取代 LEAP 。
EAP-MD5 是使用 MD5 哈希密码的最早 EAP 方法之一,现在已被弃用。
EAP-POTP(EAP Protected One-Time Password, EAP 保护的一次性密码)支持在多因素身份认证中使用 OTP 令牌(包括硬件设备和软件解决方案),用千单向和交叉身份认证。
EAP-TLS(EAP Transport Layer Security, EAP 传输层安全)是一个开放的 IETF 标准,用于保护身份认证流量的 TLS 协议的实现。
EAP-TTLS(EAP Tunneled Transport Layer Security, EAP 隧道传输层安全)是 EAP-TLS扩展,它在身份认证进行之前在端点之间创建类似千 VPN 的隧道。
IEEE 802.1X 定义了封装 EAP 的使用,以支待 LAN 连接的广泛身份认证选项。 IEEE 802.1X 标准被正式命名为“基于端口的网络访问控制“
端口安全
对所有连接点的物理控制
端口安全的另一个含义是管理 TCP UDP 端口。
为了确保端口安全性,在允许通过端口或跨端口通信之前,还需要对端口进行身份认证。
服务质量
服务质量(QoS)是对网络通信效率和性能的监督和管理。
要测量的项目包括吞吐量、比特率、数据包丢失、延迟、抖动、传输延迟和可用性。
语音
公共交换电话网
PBX 和 PSTN 语音通信易受到拦截、窃听、 tapping 及其他破解技术的攻击。通常,在组织的物理范围内,要通过物理安全来保护语音通信的安全。在组织场所外部,语音通信的安全主要由提供通信线路租用服务的公司来负责。
VoIP
VoIP(Voice over Internet Protocol, 网络电话)是一种将语音封装在 IP 包中的技术,该技术支持在 TCP/IP 网络中打电话。 VoIP 也是许多结合音频、视频、聊天、文件交换、白板和应用程序协作的多媒体消息服务的基础。
只有当你呼叫的人与你使用相同的 ISP 提供的 VoIP 服务时,你才能建立端到端加密。
即使你的 VoIP 服务以某种方式为你提供了安全连接, VoIP 解决方案仍然容易受到许多其他威胁。这些攻击包括所有标准网络攻击,如中间人/路径攻击、劫持、域欺骗和拒绝服务(DoS) 。此外,还存在着对语音钓鱼、电话飞客、欺骗和滥用的担忧。
VoIP通信的保护
.使用强密码和双因素身份认证。
.记录通话日志并检查是否有异常活动。
·阻止国际电话。
.将 VoIP 外包给受信任的 Saas
·更新 VoIP 设备固件。
.限制对 VoIP 相关网络设备的物理访问。
·就 VoIP 安全最佳实践培训用户。
.通过阳止不存在或无效的原始号码,防止 IP 电话上的幽灵呼叫。
·部署带有 VoIP 评估功能的 NIPS
.记录通话日志并检查是否有异常活动。
·阻止国际电话。
.将 VoIP 外包给受信任的 Saas
·更新 VoIP 设备固件。
.限制对 VoIP 相关网络设备的物理访问。
·就 VoIP 安全最佳实践培训用户。
.通过阳止不存在或无效的原始号码,防止 IP 电话上的幽灵呼叫。
·部署带有 VoIP 评估功能的 NIPS
语音钓鱼和电话飞客
防止语音钓鱼的唯一方法,就是教育用户如何应对任何形式的交流。
指导方针
.要一直对任何看起来奇怪的、来历不明的或意外的语音通信倍加小心。
·在继续进行涉及敏感、个人、财务或机密信息的通话之前,要一直进行身份认证。
.对千所有单一语音请求的网络变更行为,要进行“回叫“授权。回叫授权的过程是:首先断开来电者的通话,然后使用来电者的预设号码回叫该用户(该号码通常存储在公司目录中),以验证用户身份。
.对信息(用户名、密码、 IP 地址、经理姓名、拨入号码等)进行分级,并渚楚地标识出可通过语音通信讨论或确认的信息。
.如果有人通过电话索要特权信息,而且此人应该知道此种行为是违反公司安全策略的,那么,你应询问此人请求信息的原因,并再次检验他的身份,还应将此种活动报告给安全管理员。
·严禁通过单一语音通信交出或更改密码。
·阻止与语音钓鱼关联的号码。
·不要假设显示的来电 ID 是有效的。应该利用来电 ID 标示你不想和谁说话,而不是确认谁在打电话。
·在继续进行涉及敏感、个人、财务或机密信息的通话之前,要一直进行身份认证。
.对千所有单一语音请求的网络变更行为,要进行“回叫“授权。回叫授权的过程是:首先断开来电者的通话,然后使用来电者的预设号码回叫该用户(该号码通常存储在公司目录中),以验证用户身份。
.对信息(用户名、密码、 IP 地址、经理姓名、拨入号码等)进行分级,并渚楚地标识出可通过语音通信讨论或确认的信息。
.如果有人通过电话索要特权信息,而且此人应该知道此种行为是违反公司安全策略的,那么,你应询问此人请求信息的原因,并再次检验他的身份,还应将此种活动报告给安全管理员。
·严禁通过单一语音通信交出或更改密码。
·阻止与语音钓鱼关联的号码。
·不要假设显示的来电 ID 是有效的。应该利用来电 ID 标示你不想和谁说话,而不是确认谁在打电话。
被称为电话飞客(pbreaker) 的恶意攻击者滥用电话系统的方式与攻击者滥用计算机网络的方式大致相同(“ph” 代表“电话”)
PBX 欺骗与滥用
专用交换机(private branch exchange, PBX)是一种部署在私人组织中的电话交换系统,用于支持多台电话使用少量外部 PSTN 线路。
远程呼叫,也被称为 hoteling, 是指在办公室之外呼入办公室PBX 系统,键入密码后可以拨打另一个电话号码的能力。远程呼叫的最初目的是通过让外部
人员使用免费电话号码呼叫办公室,然后根据办公室的长途呼叫计划拨打长途电话,以节省资金。
人员使用免费电话号码呼叫办公室,然后根据办公室的长途呼叫计划拨打长途电话,以节省资金。
许多 PBX 系统受到恶意攻击,攻击目的是逃避电话费用或隐藏身份。电话飞客可能会非法访问个人的语音信箱,重定向消息,阻塞访问以及重定向呼入与呼出电话。
·考虑用信任卡或呼叫卡系统来替代通过 PBX 进行的远程访问或长距离呼叫。
·只向工作中需要该类业务的合法用户提供拨入及拨出的功能。
·如果仍然使用拨入调制解调器,应使用未公布的电话号码,号码的前缀区号要与现在使用的不同。
·保护 PBX 的管理员接口。
·阻止或停用任何未分配的访问码或账户。
.制订切实可行的用户策略,并教用户如何正确使用系统。
·记录并审计 PBX 上的所有活动,并通过审计踪迹发现安全及使用上的违规行为。
·禁用维护调制解调器(即厂商用千远程管理、更新、调试产品的远程访问调制解调器)或任何形式的远程管理访问。
.更改默认配置,尤其是密码及有关管理或特权特点的功能。
·阻止远程呼叫。
.使用供应商服务提供商更新来保持系统的更新。
·采用 DISA(direct inward system access ,直接拨入系统访问)技术,减少外部实体对 PBX的欺骗。
·只向工作中需要该类业务的合法用户提供拨入及拨出的功能。
·如果仍然使用拨入调制解调器,应使用未公布的电话号码,号码的前缀区号要与现在使用的不同。
·保护 PBX 的管理员接口。
·阻止或停用任何未分配的访问码或账户。
.制订切实可行的用户策略,并教用户如何正确使用系统。
·记录并审计 PBX 上的所有活动,并通过审计踪迹发现安全及使用上的违规行为。
·禁用维护调制解调器(即厂商用千远程管理、更新、调试产品的远程访问调制解调器)或任何形式的远程管理访问。
.更改默认配置,尤其是密码及有关管理或特权特点的功能。
·阻止远程呼叫。
.使用供应商服务提供商更新来保持系统的更新。
·采用 DISA(direct inward system access ,直接拨入系统访问)技术,减少外部实体对 PBX的欺骗。
多媒体协同
多媒体协作就是使用多种支持多媒体的通信方法,以加强远距离的合作(身处不同地方的人参与同一个项目)。
远程会议
远程会议技术可应用于任何产品、硬件或软件,支持远程实体间进行交互。这些技术或方案被冠以很多术语:数字合作、虚拟会议、视频会议、软件或应用合作、共享白板服务、虚拟培训方案等。任何支持不同用户之间进行通信、交换数据、协作完成材料/数据 文档以及其他合作的服务,都可被视为远程会议技术服务。
安全性的问题
.服务是否使用了强身份认证技术?
.通信是否采用了开放协议或加密通道?
·加密是从端点到中心服务器,还是端到端?
.是否允许真正删除会议内容?
.是否对用户活动进行审计与日志记录?
.未经授权的实体能否参加私人会议?
·与会者能否通过语音、图像、视频或文件共享插入会议?
.平台是否将广告/垃圾邮件集成到界面中,是否可以禁用?
.使用了什么跟踪机制?可以禁用跟踪吗?收集的数据是用千什么的?
·会议被记录下来了吗?谁有权接触这些记录?它们可以被导出和分发吗?
.通信是否采用了开放协议或加密通道?
·加密是从端点到中心服务器,还是端到端?
.是否允许真正删除会议内容?
.是否对用户活动进行审计与日志记录?
.未经授权的实体能否参加私人会议?
·与会者能否通过语音、图像、视频或文件共享插入会议?
.平台是否将广告/垃圾邮件集成到界面中,是否可以禁用?
.使用了什么跟踪机制?可以禁用跟踪吗?收集的数据是用千什么的?
·会议被记录下来了吗?谁有权接触这些记录?它们可以被导出和分发吗?
即时通信和聊天
IM(instant messaging, 即时通信,实时消息或聊天)是一种实时通信工具,能为互联网上任何地方的两个或更多用户提供基于文字的聊天功能。一些 IM 工具支持文件传输、多媒体、语音、视频会议等功能。有些形式的 IM 基千端对端服务,而有些采用集中控制服务器。端对端和基于云形式的 IM 易于部署与使用,但从公司的角度看,却难以管理,因为它缺乏安全性或管理控制。消息传递系统和聊天服务存在大量漏洞:数据包易被嗅探/窃听,缺乏本地安全功能(如多因素身份认证和加密),不能或很少能提供隐私保护。
现代文本通信解决方案既支待两人间的交流,也支持群组内的合作与通信。
远程访问
远程访问形式
使用完整客户机
在互联网上通过 VPN 接入网络。
连接到 WAP(本地环境将其视为远程访问)。
通过瘦客户端连接接入终端服务器系统、大型机、虚拟私有云(VPC)端点、虚拟桌面接口或虚拟移动接口。
连接中央系统
使用远程桌面服务,如 Microsoft Remote Desktop TeamViewer GoToMyPC LogMeIn CitrixWorkspace 或VNC ,接入位于办公区的个人计算机。
使用基千云的桌面解决方案,如 Amazon Workspace Amazon AppStream V2 Cloud 和Microsoft Azure
使用调制解调器直接拨入远程访问服务器。
远程访问与远程办公技术
特定服务
定服务类型的远程访问,为用户提供远程接入和使用单一服务(如邮件)的功能。
远程控制
远程控制类型的远程访问使远程用户能够完全控制物理上相距遥远的系统。
远程节点操作
远程节点操作只是远程客户端与 LAN 建立直接连接时的另一个名称,例如使用无线、 VPN 或拨号连接。远程系统连接到一个远程访问服务器,而该服务器为远程客户端提供网络服务及可能的互联网连接。
抓屏/录屏
第一种场合,有时会用于远程控制、远程访问或远程桌面服务。这些服务也被称为虚拟应用或虚拟桌面。其思想是抓取目标机器的屏幕并显示给远程的操作者。因为远程访问资源会在传输过程中带来额外的泄露或破坏风险,所以,必须使用加密的抓屏方案。
第二,录屏是一项技术,允许自动化工具与人机界面进行交互。例如,某些数据收集工具在使用过程中会用到搜索引擎。屏幕抓取技术可与具有人性化设计的 Web 前端进行交互,将交互结果输入搜索引擎,然后解析 Web页中的搜索结果,提取出相关信息。
远程连接安全
- .远程用户应该经过严格的身份认证才能获得访问权限。
- · 只有那些工作中需要远程访问的特定用户,才有权建立远程连接。
- .所有远程通信都要防止被拦截和窃听。这样做通常需要加密技术来保护身份认证信息与数据传输。
- .任何具备远桯连接的人员,如果企图破坏组织的安全,物理安全的防护效果会降低。
- .远程办公人员可能使用不安全或低安全的远程系统来访问敏感数据,这样会给数据带来巨大的丢失、破坏与泄露风险。
- .远程系统可能遭受恶意代码攻击,并可能成为恶意代码传入专用网络的载体。
- .远程系统可能在物理上不够安全,因而也存在被非法实体滥用或偷窃的风险。
- .远程系统可能难以进行故障定位,尤其是出现有关远程连接的问题时。
- .远程系统可能难以升级或打补丁,原因在千其较少的连接或较慢的连接速度。如果存在高速宽带连接,这些问题会有所缓解。
规划远程访问安全策略
远程连接技术
每种连接都有其独特的安全问题。要对所选连接的各个方面进行全面的检查。可能的连接包括蜂窝/移动通信、 PSTN 调制解调器、有线电视互联网服务、数字用户线路(DSL) 、光缆连接、无线网络和卫星通信。
传输保护
有几种形式的加密协议、加密连接系统以及加密网络服务或应用。根据远程连接的需要选择合适的安全服务组合。可供选择的服务包括 VPN/TLS
身份认证保护
除了要保护数据流量,还要确保所有登录凭证的安全。需要采用安全身份认证协议以及必要的中心化远程访问身份认证系统和多因素验证。
远程用户助手
程访问用户有时可能需要技术上的协助。所以必须提供尽可能有效的获得协助的方法。
数据通信
虚拟网络
虚拟网络可用于组合现有网络或将网络划分为多个网段。可以使用虚拟网络来组合现有网络,然后使用软件定义的网络功能来分配和管理网络资源。
第三方连接
很少有组织只使用内部资源运营——大部分组织需要与外部第三方提供商进行交互。
IT 环境之间的任何连接都应在实际互连布线(物理或虚拟)之前进行详细规划。通常,这一过程以谅解备忘录开始,以 ISA 结束。
MOU
谅解备忘录(MOU)或协议备忘录(MOA)是两个实体之间协议或一致意向、意愿或目的的表达。它通常不是一种法律协议或承诺,而是一种更为正式的互惠协议或握手形式(这两种形式通常都不采用书面形式)。谅解备忘录也可被称为意向书。这是一种记录双方之间协议或安排细节的方法,因而不具有法律约束力。
ISA
互连安全协议(interconnection security agreement, ISA)是两个组织的 IT 基础设施之间链路的安全态度、风险和技术要求的正式声明。 ISA 的目标是定义在两个网络之间的通信路径上维护安全的期望和责任。网络连接可能对双方都有利,但也会带来需要识别和解决的额外风险。 ISA 是实现这一目标的一种手段。
第三方连接的另一种可能解释是远程工作者或远程通勤者。
将远程办公人员限制在外联网服务器上,或将其限制在面向公众的系统(如电子邮件和网站)上
为远程员工提供公司拥有和控制的设备
负载均衡
负载均衡的目的是获得更优化的基础设施利用率,最小化响应时间,最大化吞叶量,减少过载和消除瓶颈。
调度或负载均衡方法
随机选择
为每个数据包或连接随机分配一个目的地
循环
按顺序为每个数据包或连接分配下一个目的地
负载监测
根据目标的当前负载或容量为每个数据包或连接分配一个目的地。当前负载最低的设备/路径接收下一个数据包或连接
优先或加权
根据主观偏好或已知的容量差异为每个分组或连接分配一个目的地。
最少连接/流量/延迟
根据活动连接的最少数量、流量负载或延迟,为每个数据包或连接分配一个目的地
基于位置(地理)
根据目的地与负载均衡器的相对距离为每个数据包或连接分配一个目的地(当集群成员在地理上分离或跨越多个路由器跃点时使用)
基千位置(关联性)
根据来自同一客户机的先前连接为每个数据包或连接分配一个目的地,因此后续请求将转到同一目的地以优化服务的连续性
虚拟 IP 和负载持久性
虚拟 IP 地址有时用千负载均衡;客户端可以感知 IP 地址,甚至可以将其分配给域名,但该 IP 地址实际上并没有被分配给物理机器。相反,当 IP 地址处接收到通信时,它们以负载均衡调度的形式被分配给在另一组 IP 地址上运行的实际系统。
与负载均衡相关的待久性也被称为一致性。持久性被定义为:当客户端和负载均衡集群的成员之间建立会话时,来自同一客户端的后续通信将被发送到同一服务器,从而支持通信的持久性或一致性。
主动-主动与主动-被动
主动-主动(active-active)系统是一种负载均衡形式,在正常操作期间使用所有的可用路径或系统。如果一个或多个通路发生故障,剩余的活动通路必须支持之前由通路处理的所有负载。当正常运行期间的流量水平或工作负载需要最大化(如优化可用性)时使用此技术,但在不利条件(如降低可用性)下容量的降低是可以容忍的。
主动-被动(active-passive) 系统是另一种负载均衡形式,它在正常操作期间使某些路径或系统处于未使用的休眠状态。如果其中一个主动元素出现故障,则被动元素将联机并接管故障元素的工作负载。当吞吐量或工作负载水平需要在正常状态和不利条件之间保持一致(即保持可用性一致)时,使用此技术。
管理电子邮件安全
互联网中邮件基础设施主要是邮件服务器,使用 SMTP(Simple Transfer Protocol, 简单邮件传输协议, TCP25 端口)接收来自客户的邮件,并将这些邮件传送给其他服务器,这些邮件最后被存储到服务器的用户收件箱中
邮件客户端使用 POP3(Post Office Protocol version 3, TCP 110 端口)或 IMAP(Internet Message Access Protocol, V 4, TCP 143 端口)从邮件服务器的收件箱中查收邮件。与互联网兼容的邮件系统,依赖 X.400 标准进行寻址和消息处理。
Sendmail UNIX 系统中最常见的 SMTP 服务器, Exchange 是微软系统中最常见的 SMTP 服务器。
SMTP 是一种邮件中继系统,其作用是将邮件从发送者传递给接收者。如果 SMTP邮件服务器在接收并转发邮件前不对发送者进行验证,就很容易将 SMTP 邮件服务器变成一台“开放中继" (也被称为“开放中继代理”或“中继代理”)
公司邮件的另一个选择是 SaaS 邮件解决方案。云邮件或托管邮件的实例有 Gmial (谷歌Workspace) Outlook/Exchange Online
电子邮件安全目标
- ·消息只有收件人可以访问(即隐私与保密性)。
- ·维护消息的完整性。
- ·身份认证和验证消息源。
- .提供不可否认性。
- ·验证消息的传递。
- .对消息或附件中的敏感内容进行分级。
可接受的邮件使用策略明确了组织的邮件基础设施中,哪些活动是被允许的,以及哪些活动是被禁止的。
针对电子邮件的访问控制措施旨在使用户只能访问各自的收件箱及存档数据库信息。
应明确组织中用千实现、维护及管理邮件的制度和流程。最终用户不必知道邮件管理规定的细节,但一定要明白邮件是否应被视为私人通信。
根据所在国家/地区与行业的差别,会有不同的法规指示邮件的保存策略。
理解电子邮件安全问题
支持邮件的标准协议(如SMTP POP IMAP)都未采用本地加密措施。
邮件是较常见的传播病毒、蠕虫、特洛伊木马、文档宏病毒及其他恶意代码的途径。
邮件很少进行本地源验证,假冒邮件地址对千黑客新手来说也不是难事。邮件头部在发送源头及传输过程的任何位置都可能被修改。
邮件炸弹
当足够数量的邮件被直接发送到某个用户的收件箱,或经过特定的 SMTP 服务器时,就会产生拒绝服务(DoS)攻击。这种攻击常被称为邮件炸弹
邮件风暴
类似的 DoS 问题被称为邮件风暴。如果一封邮件的收件人(To: )和抄送人(CC:) 行中有大量其他收件人,那么当某人使用“回复全部 ”(Reply All)进行回应时,则会发生邮件风暴。
垃圾邮件(spamming)
发送无用的、不合适的或无关的邮件的行为被称为垃圾邮件(spamming)攻击。
电子邮件安全解决方案
安全/多用途互联网邮件扩展(Secure Multipurpose Internet Mail Extensions, S/MIME)
S/MlME 是一种邮件安全标准,能通过公钥加密、数字信封及数据签名为邮件提供身份认证和保密性保护。
良好隐私(Pretty Good Privacy, PGP)
PGP 是一种基千点对点对称密钥的邮件系统,使用大量的加密算法加密文件及邮件消息。
域名关键字标识邮件(DomainKeys Identified Mail, DKIM)
DKlM 通过验证域名标识确定来自组织的邮件是否有效。
发件人策略框架(Sender Policy Framework, SPF)
组织可通过为 SMTP 服务器配置 SPF来防止垃圾邮件及邮件欺骗。
域消息身份认证报告和一致性 (Domain Message Authentication Reporting and Conformance, DMARC)
DMARC 是一个基于 DNS 的电子邮件身份认证系统。它旨在防止商业电子邮件泄露(BEC) 、网络钓鱼和其他电子邮件欺诈行为。
STARTTLS
STARTTLS(又名显式 TLS SMTP 的投机 TLS)将尝试在支持 TLS 的情况下与目标电子邮件服务器建立加密连接。 STARTTLS 不是一个协议,而是一个 SMTP 命令。与电子邮件服务器建立初始 SMTP 连接后,将使用 STARTTLS 命令。如果目标系统支持 TLS, 则将协商加密通道。否则,它将保持为明文。
STARTTLS 的安全会话将在 TCP 587 端口上进行。STARTTLS 也可与 IMAP 连接一起使用,而 POP3 连接使用 STLS 命令来执行类似的功能。
隐式 SMTPS
它是 SMTP TLS 加密形式,假定目标服务器支持 TLS 。如果支持,则协商加密会话。如果不支持,因为明文不被接受,连接将终止。 SMTPS 通信使用 TCP 465 端口启动。
通过在网络邮件网关系统上拦截附件,能消除来自恶意附件的威胁。拦截策略可以是100%拦截,或只拦截已知的或疑似恶意的附件,如附件的扩展名是可执行文件或脚本文件。
阻止清单服务提供了一种订阅系统,记录已知的发送不良邮件的地址列表。
挑战-应答过滤器
在此类服务中,如果收到一封来自全新或未知地址的邮件,自动应答机将回复一条请求确认的消息,垃圾邮件或自动发送的邮件不会对该请求做出响应,但正常的发送者会应答。
虚拟专用网
VPN(virtual private network, 虚拟专用网)是两个实体之间跨越不可信网络建立的通信通道。
隧道技术
隧道技术(tunneling)是一种网络通信过程,通过将协议数据包封装到另一种协议报文中,对协议数据内容进行保护。
VPN 的工作机理
可在其他任何网络连接上建立起 VPN 链路。例子包括典型的 LAN 电缆连接、无线 LAN连接、远程访问的拨号连接、 WAN 链路,甚至包括利用互联网连接接入办公网络的客户端。
VPN 能连接两个单独的系统或两个完整的网络。唯一的差别在于传输的数据只有在 VPN隧道中才能得到保护。
VPN 可在两种模式下运行
传输模式
传输模式链路或 VPN 被铀定或终止千连接在一起的各个主机。
在传输模式下, IPsec 仅为有效负载提供加密保护,并使原始消息头保持不变 。这种类型的 VPN 也被称为主机到主机 VPN 或端到端加密 VPN, 因为通
信在连接的主机之间传输时保持加密。传输模式 VPN 不对通信的报头进行加密,因此最好仅在单个系统之间的可信网络中使用。当需要跨越不受信任的网络或链接到和/或来自多个系统时,应使用隧道模式。
信在连接的主机之间传输时保持加密。传输模式 VPN 不对通信的报头进行加密,因此最好仅在单个系统之间的可信网络中使用。当需要跨越不受信任的网络或链接到和/或来自多个系统时,应使用隧道模式。
隧道模式
隧道模式链路或 VPN 在连接网络(或一个远程设备)边界上的 VPN 设备处终止(即被锚定或终止)。在隧道模式下, IPsec 通过封装整个原始 LAN 协议数据包并添加自己的临时 IPsec头,为有效负载和消息头提供加密保护
站点到站点 VPN
VPN 可用千通过互联网连接两个网络
远程访问 VPN
链路加密VPN
链路加密VPN
允许远程客户端通过互联网连接到办公室局域网
始终在线 VPN
始终在线 VPN(always-on VPN)是指每当网络链接处千活动状态时,尝试自动连接到 VPN服务的 VPN 。
分割隧道与全隧道
分割隧道(split tunnel) 是一种 VPN 配置,允许 VPN 连接的客户端系统(即远程节点)同时通过 VPN 和互联网直接访问组织网络。当建立分割隧道 VPN 时,存在从互联网通过客户端到 LAN 的开放路径。
全隧道(full tunnel) 是另一种 VPN 配置,在该配置中,客户端的所有流量都通过 VPN路发送到组织网络,然后任何以互联网为目的地的流呈从组织网络的代理或防火墙接口路由到互联网。全隧道确保所有流晕都由组织网络的安全基础设施过滤和管理。
常用的 VPN 协议
点对点隧道协议
PPTP(Point-to-Point Tunneling Protocol, 点对点隧道协议)是一种在拨号点对点协议基础上开发的淘汰的封装协议。它运行在 OSI 参考模型的数据链路层(第 2层),用于 IP 网络。 PPTP使用 TCP 1723 端口。
第2层隧道协议(L2TP)
第2层隧道协议(Layer 2 Tunneling Protocol, L2TP) 是结合 PPTP Cisco 的第 2层转发(L2F)VPN 协议的特点开发的。 L2TP 自开发以来已成为一种互联网标准(RFC 2661) 。显然,L2TP 在第 2层运行,因此几乎可以支持任何第 3 层网络协议。 L2TP 使用 UDP 1701 端口。
L2TP 不提供本地加密,但它支持有效负载加密协议的使用。虽然 L2TP 不是必需的,但通常使用 IPsec ESP 进行有效负载加密。
SSH
Seeure Shell(SSH)是-Telnet(TCP23端口)和许多UMX行“ r“工具(如-rlogin rsh rexec rcp) 的安全替代品。
作为 VPN, SSH 仅限千传输模式(即单个主机之间的端到端加密,也被称为链路加密和主机到主机 VPN)
OpenVPN
OpenVPN 基千 TLS(正式的 SSL)提供了一个易千配置但安全可靠的 VPN 选项。 OpenVPN是一种开源实现,可以使用预共享密码或证书进行身份认证。
IP 安全协议
互联网协议安全(Internet Protocol Security, IPsec) IP 安全扩展的标准,被用作 1Pv4的附加组件,并集成到 IPv6 中。 IPsec 的主要用途是在内部和 或外部主机或网络之间建立VPN 链路。 IPsec 仅在 IP 网络上工作,并提供安全身份认证和加密数据传输。 IPsec 有时与L2TP 配对,组成 L2TP/IPsec。IPsec 不是单个协议,而是一组协议,包括 AH 、ESP、 HMAC、 IPComp、 IKE。
身份认证头(Authentication Header, AH)
提供消息完整性和不可否认性保护。 AH 还为IPsec 提供主要身份认证功能,实现会话访问控制,并防止重放攻击。
封装安全载荷(Encapsulating Security Payload, ESP)
可提供有效负载内容的保密性和完整性。它提供加密、有限的身份认证,并防止重放攻击。现代 IPsec ESP 通常使用高级加密标准(AES)加密。有限身份认证允许 ESP 在不使用 AH 的情况下建立自己的链接,并定期执行会话期间重新身份认证,以检测和响应会话劫持。 ESP 可以在传输模式或隧道模式下运行。
基千哈希的消息身份认证码(Hash-based Message Authentication Code, HMAC)
IPsec使用的主要哈希校验或完整性检查机制。
IP 有效负载压缩(IP Payload Compression, IPComp)
IPsec 使用的一种压缩工具,用于在 ESP 加密数据之前对其进行压缩,以提升传输速率。
交换与虚拟局域网
所有交换机都围绕四个主要功能运行:学习、转发、丢弃和泛洪。
VLAN(virtual local area network, 虚拟局域网)是一种在交换机上通过硬件实现的网络分段技术。网段的存在是为控制其中的流量,并阻止试图进出的流量。同一个 VLAN 中的成员间的通信毫无障碍,但不同 VLAN的通信需要路由功能。 VLAN 路由可由外部路由器提供,也可由交换机内部的软件实现(这也
是术语“三层交换”和“多层交换"的由来)
是术语“三层交换”和“多层交换"的由来)
VLAN 类似千子网,但它不是子网。 VLAN是交换机创建的,而子网是通过 IP 地址及子网掩码配置的。
VLAN 也可用来隔离不同网段之间的流量。要实现这个目标,有两种方法:一是不同的 VLAN 之间不提供路由功能,二是在特定的 VLAN(或 VLAN 的成员)之间设置拒绝过滤规则。某个网段如果不需要与另一个网段通信,它们之间就不能进行通信。
VLAN 间路由功能阻挡了子网与 VLAN 间的以太网广播,因为路由器(或任何执行第三层路由功能的设备,如三层交换机)并不转发第 层的以太网广播。
交换机的这种阻止 VLAN 间以太网广播的特点,有助千防止广播风暴。广播风暴(broadcast storm) 指大匿以太网广播垃圾流量。
交换机的这种阻止 VLAN 间以太网广播的特点,有助千防止广播风暴。广播风暴(broadcast storm) 指大匿以太网广播垃圾流量。
关千 VLAN 的部署,另一个要素是端口隔离或专用端口。专用 VLAN 或端口隔离 VLAN 的成员只能与彼此交互,或与预定义的退出端口或上行链路端口进行交互。
端口镜像
端口镜像是受管理交换机上的常见功能;它从一个或多个其他端口复制特定端口的流量。
端口监听(port tap)
现代的串联监听已经基本取代了抽式监听(vampire tap) 。要安装串联监听,首先必须从端口拔出原始电缆,然后插入分接头,并将窃听器插入空的原始端口。
trunk端口
VLAN 标签系统有可能被滥用。攻击者可以构造具有多个标记的报头以执行 VLAN 跳转。
MAC 泛洪攻击
MAC 泛洪(MAC flooding) 攻击是指故意滥用交换机的学习功能,使其陷入泛洪状态。这是通过使用带有随机源 MAC 地址的以太网帧淹没交换机来实现的。
MAC 泛洪与 ARP 中毒和其他类型的 MITM/路径攻击不同,因为攻击者不会进入客户端和服务器之间的通信路径;相反,攻击者(以及本地网络上的其他所有人)会获得通信的副本。此时,攻击者可以窃听通过受损交换机进行的任何通信。
防御 MAC 泛洪的措施通常出现在受管理交换机上。该功能名为 MAC 限制(MAC limiting) ,它限制从每个插孔/端口进入 CAM 表中的 MAC 地址数。网络入侵检测系统(NIDS)也可用千识别正在尝试的 MAC 泛洪攻击。
MAC 克隆
MAC 欺骗是将默认 MAC 地址更改为其他值。
MAC 克隆用千模拟另一个系统(通常是有效或授权的网络设备),以绕过端口安全或 MAC 过滤限制。
MAC 过滤是一种安全机制,旨在限制对具有已知特定 MAC 地址的设备的网络访问。 MAC 过滤通常用于 WAP 和交换机。
MAC 欺骗/克隆的对策包括:
- .使用智能交换机监控奇怪 MAC 地址的使用和滥用。
- .使用 NIDS 监控奇怪 MAC 地址的使用和滥用。
- ·维护设备及其 MAC 地址的清单,以确认设备是否为己授权、未知或恶意的。
网络地址转换
使用 NAT(network address translation, 网络地址转换)能实现:隐藏内部用户的身份、屏蔽私有网络的设计、降低公共 IPv4 地址的租用费用。
NAT 带来了很多好处
·利用 NAT, 整个网络可通过共享一个(或一些)公共 1Pv4 地址接入互联网。
·可在内部网中使用 RFC 1918 中定义的私有 IPv4 地址,同时仍能与互联网进行通信。
.通过 NAT 向外部隐藏了内部 1Pv4 地址的划分及网络拓扑。
• NAT 对连接做了限制;来自互联网的流星中,只有网络内部受保护连接的流量才被允许通过。这样,大多数入侵攻击会被自动拦截。
• NAT 作为基本的单向防火墙,只允许响应内部系统请求的传入流量。
·可在内部网中使用 RFC 1918 中定义的私有 IPv4 地址,同时仍能与互联网进行通信。
.通过 NAT 向外部隐藏了内部 1Pv4 地址的划分及网络拓扑。
• NAT 对连接做了限制;来自互联网的流星中,只有网络内部受保护连接的流量才被允许通过。这样,大多数入侵攻击会被自动拦截。
• NAT 作为基本的单向防火墙,只允许响应内部系统请求的传入流量。
端口地址转换(port address translation, PAT)
也被称为超载NAT、网络与端口地址转换(network and port address translation, NPAT) 以及网络地址与端口转换(network address and port translation, NAPT)一它允许单个公共IPv4地址承载多达65 536个来自内部客户端的同步通信(理论上的最大值;在实践中,由千硬件限制,在大多数情况下,你应该将数量限制为4000或更少)。
PAT并没有一对一地映射IPv4地址,而是使用传输层端口号,通过将内部套接字(即IPv4地址和端口号的组合)映射到外部套接字,在每个公共IPv4地址上同时承载多个通信。 PAT通过单个外部IPv4地址有效地多路复用来自内部系统的多个会话。
NAT也可以被称为状态 NAT 或动态 NAT ,因为映射和 IPv4 地址/套接字分配是在会话启动时创建的,而在会话中断时则会解散
NAT 遍历(NAT-T)(RFC 3947)
因为 IPsec 协议的要求和 NAT对数据包头的更改(被视为损坏或破坏完整性),传统 NAT 不支持 IPsec VPN 。但是, NAT-T专门用千支待 IPsec 和其他隧道 VPN 协议,如第 层隧道协议(L2TP) ,因此组织可以从跨同一边界设备 接口的 NAT 和 VPN 获益。
虽然默认情况下NAT—是一种动态出站映射机制,—但它也可被配置为执行入站映射。该技术被称为静态 NAT、反向代理、端口转发或目标网络地址转换(DNAT) ,它允许外部实体使用映射为重定向到内部系统的专用地址的公共套接字来启动与 NAT 后面的内部实体的通信。虽然这在技术上可行,但通常是要避免的。
私有 IP 地址
• 10.0.0.0 到 10.255.255.255 (全 A类地址)
• 172.16.0.0 到 172.31.255.255(16 个B类地址)
• 192.168.0.0 到 192.168.255.255(256 个C类地址)
• 172.16.0.0 到 172.31.255.255(16 个B类地址)
• 192.168.0.0 到 192.168.255.255(256 个C类地址)
不能对同一子网再次使用 NAT 。双重NAT不可能使用相同的IP范围,相同的IP地址不能出现在NAT路由器的内部和外部。
状态 NAT
NAT 维护了内部用户请求、内部用户 1P 地址以及互联网服务 1P 地址之间的映射表。当收到一个来自内部用户的请求报文时, NAT 会将该报文的源地址更改为 NAT 的服务器地址,所做的更改信息与目标地址一起记录到 NAT 数据库中。从互联网服务器上接收到回复信息后, NAT 将回复信息中的源地址与存储在映射数据库中的地址进行对比,确定该信息所属的用户地址,再将该回复信息转发给接收者。该过程被称为“状态 NAT", 因为它维护了用户与外部系统之间的通信会话信息。
自动私有 IP 分配
自动私有 IP 分配(Automatic Private IP Addressing, APIPA)也被称为本地链路地址分配(在RFC 3927 中定义),它在动态主机配置协议(Dynarnic Host Configuration Protocol, DHCP)分配失败的情况下,继续为系统分配 IP 地址。
APIPA 通常为 DHCP 分配失败的用户分配 169.254.0.1 到 169.254.255.254 地址段的一个 IP 地址,以及 B类子网掩码 255.255.0.0 。只有同一广播域中
APIPA 用户之间可通信,但无法跨越路由或和其他配置正确的 IP 地址通信。
APIPA 用户之间可通信,但无法跨越路由或和其他配置正确的 IP 地址通信。
环回地址
环回地址(loopback address)是一个单纯的软件实体。这个 IP 地址用千在 TCP/IP 上进行自发自收通信。环回地址用千进行本地网络的测试,而不受硬件及相关驱动状态的影响。在技术上,整个 127.x.x.x 地址段都留作环回用途,但被广泛使用的只有 127.0.0.1
交换技术
电路交换
电路交换(circuit switching) 最初旨在管理公用电话交换网络中的电话呼叫。在电路交换中,两个通信实体之间需要建立专门的物理通道。
电路交换确保了固定或可预知的通信时间,保证了通话质量的一致性、很小的信号损失、几乎不发生通信中断。系统提供的是永久物理连接。术语“永久“只适用于每次通信会话。
分组交换
分组交换(packet switching) 技术将估息或通信内容分为很小的段(固定长度单元或可变长度数据包,具体数值取决千所使用的协议和技术),并通过中间网络将这些分组传送到目的地。
每一个数据段都有自己的头部,其中包含源地址及目标地址信息。中间系统忱取头部信息,再选择合适的路由将数据段发送给接收者。传输通道和通信路径只保留给实际需要传送的分组。分组传送一结束,通道就被提供给其他通信使用。
分组交换并不强行独占通信路径。实际上,这可以被视为一种逻辑传输技术,因为寻址逻辑显示了信息如何穿越通信实体间的中间网络。
对千分组交换系统,在同一个物理连接中,可能会传输来自不同地址的数据,这就存在泄露、破坏或窃听的风险。
虚电路
虚电路(也称为通信路径)是一条逻辑路径或电路,在分组交换网络两个特定端点之间建立。
分组交换系统中存在两种类型的虚电路:
PVC(permanent virtual circuit, 永久虚电路)
PVC 类似千专用的租用链路,逻辑电路一直保持并时刻等待用户发送数据。 PVC 是一种预定义虚电路,并一直可用。
SVC(switched virtual circuit, 交换式虚电路)
当需要使用 SVC 时,必须利用当前可用的最优路径建立起虚电路。传输结束后,该链路就会被拆除。
WAN 技术
WAN(wide area network, 广域网)将远距离网络、节点或单独的设备连接起来。
WAN 链路及长距离连接技术可分为两大类:
专用线路(dedicated line)
专用线路(dedicated line)(也称为租用线路,或点对点链路)是一直保留给特定用户使用的线路。专用线路一直处千数据传输或等待数据传输的状态。客户的 LAN与专用 WAN 链路之间的线路一直是打开或建立的。
非专用线路(nondedicated line)
非专用线路(nondedicated line) 只在斋要传输数据时才建立连接。使用相同类型的非专用线路的任何远程系统都能通过非专用线路连接起来。
光纤链路
SDH(Synchronous Digital Hierarchy, 同步数字系列)
SDH 是国际电信联盟(ITU)标准
SONET(Synchronous Optical Netwo欢,同步光纤网络)
SONET 是美国国际标准化研究所(ANSI)标准。
SDH SONET 主要是硬件及物理层标准,定义了基础设施及线速需求。 SDH 和 SONET 使用同步时分复用(TDM)技术,实现了高速全双工通信,同时将日常的控制及管理需求降至最低。
SDH SONET 同时支持网状及环状拓扑。电信服务商经常以这些光纤方案作为骨千网,并将其容量切分以供用户使用。
安全控制特征
透明性
透明性(transparency) 是服务、安全控制或访问机制的一个特征,确保对用户不可见。
透明性常常是安全控制的一项必要特征。安全机制越透明,用户就越不可能绕过它,甚至察觉不到它的存在。
传输管理机制
传输日志(transmission logging) 是一种专注千通信的审计技术。传输日志记录源地址、目标地址、时间戳、识别码、传输状态、报文数量、消息大小等详细信息。对千故障的定位、非法通信的追踪或系统工作数据的提取,这些信息都是十分有用的。
传输错误纠正(transmission error correction) 是面向连接或会话的协议及服务的内置功能。该功能要求在确定一条消息的整体或部分受到了破坏、更改或丢失时,能够向信源发送请求,要求重新发送消息的整体或部分。
防止或减轻网络攻击
通信系统安全的常见威胁包括拒绝服务(见第 17 章)、假冒(见第 章)、重放(见第 11 章)及 ARP 中毒(见第 11 章)、 DNS 中毒(见第 11 章)、窃听和传输更改。
窃听
窃听(eavesdropping) 是指偷听通信过程,以复制并获取通信内容。复制可采用的手段包括:将数据录制到存储装置上,或使用提取程序从流晕数据中动态提取原始内容。
窃听装置及软件通常难以察觉,因为它们属千被动攻击。当窃听或偷听变成对通信内容的更改或注入,攻击就变成主动攻击。
保证物理访问安全
使用加密技术(如 IPsec SSH) 以及一次性身份认证方法(一次性面板或令牌装置)
篡改攻击
在篡改攻击(modification attacks) 中,捕获的报文经过修改后又被发送给系统。修改报文主要是为了绕过改进型身份认证机制与会话序列的限制。应对篡改重放攻击的措施包括使用数字签名验证及报文校验和验证(如完整性检查)。
0 条评论
下一页