1.6 基本安全设计准则

思维导图:

1.6 基本安全设计准则_第1张图片

 1.6 基本安全设计准则_第2张图片

 1.6 基本安全设计准则笔记


目标:理解和遵循一套广泛认可的安全设计准则,以指导保护机制的开发。

主要准则

  1. 机制的经济性:安全机制应设计得简单、短小,便于测试和验证,减少漏洞和降低维护难度。
  2. 故障安全默认:默认应该是无访问权限,只有在核实条件满足时才允许访问。出现错误时更容易发现。
  3. 完整的监察:每个访问都要检查,不依赖缓存决策。例如,每次访问文件或数据库时,都需要执行访问控制。
  4. 开放的设计:安全机制的设计应公开,密钥保密,加密算法公开,增加用户对算法的信任。
  5. 权限分离:访问受限资源时需要多个权限属性。例如,多因素用户认证。
  6. 最小权限:执行任务所需的最小权限集。例如,基于角色的访问控制。

讨论点

  • 设计的简化性是关键,但在现实中可能是最难实现的,因为系统不断演进和添加新特性。
  • 故障安全默认值在多数文件访问系统和客户端/服务器系统中得到实现。
  • 在完整的监察准则中,资源密集型的监察方法很少使用。
  • 加密算法的开放性是建立其可靠性和信任的关键。
  • 权限分离和最小权限可以有效地减少潜在的损害和风险。

我的理解:

  • 机制的经济性:这个准则强调的是“简洁是美”。一个简单而直接的设计更容易被测试、验证和理解。复杂的设计提供了更多的缝隙和可能性供攻击者寻找和利用弱点。

  • 故障安全默认:这个概念建议采取一种“宁可错杀一千,不可放过一个”的策略。默认情况下,应拒绝所有访问请求,除非它们经过明确的验证和授权。

  • 完整的监察:这意味着安全系统不应偷懒。每次资源访问请求都应该经过验证,而不是仅依赖于之前的决策或缓存结果。

  • 开放的设计:安全不应该依赖于秘密的设计或实现,而是应该依赖于秘密的数据,如密钥。通过公开设计,可以让整个社区参与到评估和改进的过程中。

  • 权限分离:这是一个多重验证的概念。要访问某些特定的资源或执行某些操作,可能需要满足多个条件或具有多个授权。

  • 最小权限:这是“给予必要、拒绝多余”的概念。用户或程序只应该获得完成其任务所需的最小权限,这样即使出现安全问题,破坏也会最小化。

 

1.6 基本安全设计准则_第3张图片 

主要概念:

  1. 最低权限原则:

    • 为角色分配仅完成其功能所需的最低权限。
    • 只有在显式获得权限后才能访问资源。
    • 权限应根据时间限制进行调整。例如,系统管理员在执行普通任务时应收回特殊权限。
  2. 最小共同机制准则:

    • 尽量减少不同用户之间共享的功能。
    • 目标是减少非预期的通信路径和所有用户依赖的硬件和软件数量。
  3. 心理接受度准则:

    • 安全机制应尽量对用户透明。
    • 如果安全机制过于复杂或妨碍资源的使用,用户可能关闭它。
  4. 隔离准则:

    • 公共访问系统应与关键资源隔离。
    • 用户的进程和文件也应被隔离。
    • 安全机制自身也应隔离,以防止未经授权的访问。
  5. 密封准则:

    • 类似面向对象编程的封装,集合数据和过程来提供保护。
  6. 模块化准则:

    • 安全功能应作为独立的模块开发。
    • 公共的安全函数与服务应当作公共模块提供。
  7. 分层准则:

    • 使用多层叠加的保护方法。
    • 即使其中一层失败,整个系统依然受到保护。
  8. 最小意外准则:

    • 接口应使意外事故的处理响应最小化。
    • 安全机制应对用户透明,让用户能理解其工作方式。

1.6 基本安全设计准则_第4张图片

1.6 基本安全设计准则_第5张图片 

你可能感兴趣的:(网络安全,密码学)