【安全编码】一个系统应该考虑的安全功能要素

引言

当我们考虑一个系统安全时候,往往第一印象是系统是否有漏洞,系统数据是否高可用,但实际上最容易疏漏和引入的安全问题却是系统的功能安全问题,那么评价一个系统的功能是否安全应该从哪几方面考虑?系统应提供多少特性才算做是基本安全的系统
图片名称

身份和鉴别

身份和鉴别在系统中扮演者守门员的角色,一旦系统的大门被攻破,系统内的数据将如摆设一般,任人鱼肉宰割。
图片名称

用户标识

  • 系统应提供独立的登录控制模块,对所有登录用户进行唯一身份标识

    用户鉴别

  • 系统应不允许匿名用户登录 √ √
  • 系统应确保用户在授予敏感权限之前被鉴别 ★ ★
  • 系统应具备防篡改和防重放机制的能力 √ x
  • 系统应能够支持双向鉴别机制 √ x
  • 系统应提供多重鉴别机制以支持用户鉴别 ★ x
  • 系统应由系统管理员分发用户的初始口令,并强制用户在初始登录时修改初始口令 ★ ★
  • 系统应除了系统管理员之外,不允许其它用户修改非本人的口令

    用户口令规范

  • 鉴别信系统应具备复杂度的功能 ★ ★
  • 系统应具备检查口令的有效期的能力 √ √
  • 系统的用户口令应有历史重复次数的限制

    鉴别失败

  • 系统应能够对失败的标识和鉴别尝试进行锁定 ★ ★
  • 系统应能够对鉴别尝试失败的次数和锁定时间进行设置

    用户-客户端绑定

  • 系统应能够设置客户端登录系统的用户属性

    会话鉴别

  • 系统应具有鉴别初始会话连接请求的能力 ★ ★
  • 系统应能够检测和处理会话的异常状态 ★ √

    用户角色

  • 系统的管理权限单独赋予各级系统管理帐号,这类帐号(角色)仅负责进行系统级的管理,不具备任何业务操作的权限★ ★
  • 系统应设置审核管理员,对关键的系统管理和特殊业务操作进行审批生效 √ √
  • 系统应保证审核管理员与系统管理员不是同一账户 √ √
  • 系统应通过设置审计管理员,对系统的所有安全功能进行管理和监视 ★ ★
  • 系统应将业务操作权限赋予非系统管理员,且业务操作用户不能具备任何系统级的管理权限 ★ ★

    访问控制

    本部分的核心是,不同的角色应该具备他所应有的最小权限,并且不同角色之间不能越权访问、处理数据。
    图片名称

    访问控制管理

  • 系统应提供用户授权的管理功能

    访问控制策略

  • 系统应由授权主体配置访问控制策略,限制默认用户的访问权限 ★ ★
  • 系统应授予不同用户为完成各自承担任务所需的最小权限,且相互制约 ★ ★
  • 系统应能够设置权限互斥原则 √ √
  • 访问控制功能
  • 系统应实现完整的访问控制功能,依据安全策略控制用户对文件、数据库表等客体的访问 ★ ★

    标记

  • 系统应具有对重要信息资源设置敏感标记的功能 √ x
  • 系统应依据安全策略控制用户对敏感标记信息的操作 √ x

    安全审计

    审计的功能一方面是发现异常,另一方面可以对系统有企图的人起到震慑作用。
    图片名称

    审计数据产生

  • 系统应提供覆盖到每个用户的安全审计功能,对应用系统重要安全事件能进行审计 ★ ★
  • 被检软件的审计事件类型至少应包括系统事件、业务事件、成功事件、失败事件及对审计功能的操作。 ★ ★
  • 系统审计记录中应包括了以下基本信息:日期、事件类型和内容、主体身份、事件的描述和结果等 ★ ★

    审计查阅

  • 系统应具有对审计数据的搜索、查询、分析、统计、分类、排序的功能。★ √

    审计响应

  • 系统应定义分级的系统异常事件类型,并根据异常的严重程度采用不同的通知方式 √ x

    审计事件存储

  • 系统应保证无法删除、修改或覆盖审计记录 ★ ★
  • 系统应对审计数据具有手动或自动备份的功能 √ x

    审计事件选择

  • 系统应具有对审计信息的访问控制机制 ★ x
  • 系统应允许审计管理员选择需要进行审计的事件项目,并提供对审计数据的管理功能 √ x

    数据完整性

    图片名称
    数据的完整性主要体现在存储完完整性和传输完整性上。

    存储完整性

  • 系统应采用校验技术保证存储过程中数据的完整性 ★ ★
  • 系统应能在检测到完整性错误时采取必要的恢复行动 ★ x

    传输完整性

  • 系统应采用密码技术保证传输过程中数据的完整性 ★ ★
  • 系统应检测到系统管理数据、鉴别信息和重要业务数据在传输过程中完整性受到破坏,并在检测到完整性错误时采取必要的恢复措施 √ √

    数据保密性

    数据保密性是指数据无论在传输过程中还是存储过程中,及时被截获或者获取依然不知道数据的真实意思
    图片名称

    会话初始化验证

  • 系统应在通信双方建立连接之前,利用密码技术进行会话初始化验证 √ x

    数据存储保密性

  • 系统应采用加密或其他保护措施实现系统管理数据、鉴别信息和重要业务数据存储的保密性。 ★ ★

    数据传输保密性

  • 系统应对通信过程中的整个报文或会话过程进行加密 ★ x
  • 系统应采用加密或其他有效措施实现系统管理数据、鉴别信息和重要业务数据传输保密性。 ★ ★
  • 系统应保证向客户端提供的数据信息中不包含会泄露应用系统安全数据的内容,及与用户请求无关的数据★ ★

    抗抵赖

  • 原发抗抵赖 系统应具有原发抗抵赖的功能 √ x
  • 接收抗抵赖 系统应具有接收抗抵赖的功能 √ x

    软件容错

    软件的容错有点类似数据库高可用

    数据有效性

  • 验证系统应提供数据有效性检测功能,保证通过人机接口输入或通过通信接口输入的数据符合系统设定的安全属性要求★ ★

    故障与恢复

  • 系统应提供自动保护功能,当故障发生时自动保护当前所有状态,保证系统能够进行恢复 ★ ★

    资源控制

  • 会话超时 系统应能根据设定时间(用户非活动期的间隔)自动终止用户会话。 ★ ★
  • 并发会话限制系统应能够限制属于同一用户(或同一组用户)的并发会话的最大数量 ★ ★
  • 系统应能够限制单个用户的多重并发会话的限制,防止单用户会话的重用 ★ ★
  • 资源分配系统应对一个访问帐户或一个请求进程占用的资源分配最大限额和最小限额 √ x
  • 系统应能够对系统服务水平降低到预先规定的最小值进行检测和报警 √ x
  • 服务优先级系统应能提供服务优先级的功能,并根据优先级分配系统资源 √ x

    备份与恢复

  • 系统应提供本地数据备份与恢复功能。 ★ ★

    声明

    本文30%为组合,70%为原创

    引用

    中国某院信息通信研究所资料
your support will encourage me to continue to create!
版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)