安全审计产品用到访问控制技术(软考-信息安全工程师学习笔记24——访问控制技术原理与应用)

访问控制概念
  • 认证(避免不合法的用户访问
  • 访问控制(避免越权的用户访问

访问控制是指对资源对象的访问者授权、控制的方及运行机制。

访问者又称为主体:

  • 用户
  • 进程
  • 应用程序

资源对象又称为客体,被访问的对象:

  • 文件
  • 应用服务
  • 数据

授权是访问者可以对资源对象进行访问的方式:

  • 文件的读、写、删除、追加
  • 电子邮件服务的接收、发送等

控制就是对访问者使用方式的监测和限制以及对是否许可用户访问资源对象做出决策:

  • 拒绝访问
  • 授权许可
  • 禁止操作




访问控制目标

访问控制的目标:

  1. 防止非法用户进入系统
  2. 阻止合法用户对系统资源的非法使用,即禁止合法用户的越权访问。

身份认证→访问权限,进而保护系统资源→安全审计→监控






访问控制模型

访问控制机制由几方面组成 :

  • 主体(Subject):主体是客体的操作实施者。
  • 参考监视器(Reference Monitor):客体是被主体操作的对象。
  • 客体(Object):参考监视器是访问控制的决策单元和执行单元的集合体
  • 访问控制数据库:记录主体访问客体的权限及其访问方式的信息,提供访问控制决策判断的依据,也称为访问控制策略库。
  • 审计库:存储主体访问客体的操作信息,包括访问成功访问失败以及访问操作信息。




访问控制模型发展

访问控制模型:

  • 自主访问控制模型
  • 强制访问控制模型
  • 基于角色的访问控制模型
  • 基于使用的访问控制模型
  • 基于地理位置的访问控制模型
  • 基于属性的访问控制模型
  • 基于行为的访问控制模型
  • 基于时态的访问控制模型

用于操作系统、数据库系统的资源访问的访问控制模型:

  • 自主访问控制模型
  • 强制访问控制模型
  • 基于角色的访问控制模型常

用于隐私保护、敏感信息安全限制、知识产权保护的访问控制模型:

  • 基于使用的访问控制模型则

用于移动互联网应用的访问控制模型:

  • 基于地理位置的访问控制模型:打车服务中的地理位置授权使用

用于提供分布式网络环境和 Web 服务的访问控制模型:

  • 基于属性的访问控制

用于提供安全风险的控制的访问控制模型

  • 基于行为的访问控制模型:上网行为的安全管理和电子支付操作控制

利用时态作为访问约束条件,增强访问控制细粒度的访问控制模型

  • 基于时态的访问控制模型:如手机网络流量包的限时使用




访问控制类型

常用的访问控制类型:

  • 自主访问控制
  • 强制访问控制
  • 基于角色的访问控制
  • 基于属性的访问控制

访问控制的基本原则
  • 最小特权原则
  • 多人负责原则
  • 职责分离原则

自主访问控制

自主访问控制又称任选访问控制(Discretionary Access Control,DAC)是指客体的所有者按照自己的安全策略授予系统中的其他用户对其的访问权。

自主访问控制是最常用的一种对网络资源进行访问约束的机制

  • 特点:授权的实施主体自主负责赋予和回收其它主体对客体资源的访问权限。
  • 优点:是用户自己根据其安全需求,自行设置访问控制权限,访问机制简单、灵活。
  • 缺点:这种机制的实施依赖于用户的安全意识和技能,不能满足高安全等级的安全要求。信息在移动过程中其访问权限关系会被改变。

如用户A对客体O具有访问权限,而B没有。当A将对O的访问权限传递给B后,B就有了对

O的访问权限。从而使不具备对O访问权限的B可访问O。

Unix和Windows系统都是采用自主型的访问控制策略。DAC的安全级别比较低,不太适

合网络环境

  • 不能抵御特洛伊木马的攻击

自主访问控制的实现方法有两大类:

  • 基于行的自主访问控制(基于主体)
  • 基于列的自主访问控制(基于客体)

1.基于行的自主访问控制

基于行的自主访问控制方法是在每个主体上都附加一个该主体可访问的客体的明细表,根据表中信息的不同又可分成三种形式,即能力表(capability list)、 前缀表(profiles)和口令(password)

  • 能力表:(从主题角度出发)能力是访问客体的钥匙,它决定用户能否对客体进行访问以及具有何种访问模式(读、写、执行)。拥有一定能力的主体可以按照给定的模式访问客体。
  • 前缀表:(从主客体角度出发)前缀表包括受保护客体名和主体对它的访问权限。当主体要访问某客体时,自主访问控制机制检查主体的前缀是否具有它所请求的访问权。
  • 口令:在基于口令机制的自主存取控制机制中,每个客体都相应地有一个口令。主体在对客体进行访问前,必须向系统提供该客体的口令。如果正确,它就可以访问该客体。

2.基于列的自主访问控制

基于列的自主访问控制机制是在每个客体上都附加一个可访问它的主体的明细表,它有两种形式,即保护位(protection bits)访问控制表(Access Control List,ACL)

(1)保护位

这种方法通过对所有主体、主体组以及客体的拥有者指明一个访问模式集合,通常以比特位来表示访问权限。UNIX/Linux 系统就利用这种访问控制方法。

(2)访问控制表

访问控制表简称 ACL,它是在每个客体上都附加一个主体明细表,表示访问控制矩阵。表中的每一项都包括主体的身份和主体对该客体的访问权限。




案例

访问控制矩阵也称访问许可矩阵,它用行表列客体,行表示主体,在行和列的交叉点上设定访问权限。



表中,一个文件的Own权限的含义是可以授予(Authorize)或者撤销(Rmvoke) 其他用户对该文件的访问控制权限。例如,张三对File1具有Own权限,所以张三可以授予或撤销李四和王五对File1的读(R)写(W)权限。

访问能力表(CL)



访问控制表(ACL)

安全审计产品

访问控制表,是从客体出发,描述控制信息,可以用来对某一资源指定任意一个用户的访问权限。




与访问控制表相比,基于访问能力表的系统具有如下安全特性
  • 最小特权。在访问控制表系统中,进程根据用户身份获得权限,同一用户发起的所有进程都有相同的权限,因此最小特权无法在访问控制表系统上真正实现。
  • 选择性授权访问。访问控制表系统中,父进程创建子进程后,不能有选择的指定子进程拥有哪些权限。
  • 责任分离。访问控制表不能解决责任分离问题,会导致责任混淆。
  • 自验证性。访问控制表系统无法控制权限和信息的流动,因而其自身无法验证所有的安全策略是否得到了遵守和执行。
  • 有利于分布式环境。由于分布式系统中很难确定特定客体的潜在主体集,因此访问控制表一般用于集中式系统,而分布式系统采用访问能力表。

强制访问控制

强制访问控制(Mandatory Access Control,MAC)是指系统根据主体和客体的安全属性以强制方式控制主体对客体的访问。

  • MAC常用将系统中的信息分密级和类进行管理,适用于政府部门、军事和金融等领域
  • 是一种不允许主体干涉的访问控制类型 基于规则访问控制 管理指定型访问控制
  • 是基于安全标识和信息分级等信息敏感性的访问控制
  • 自主访问控制(DAC)相比,强制访问控制提供的访问机制无法绕过
强制访问控制的实现机制

强制访问策略将每个用户及文件赋予一个访问级别。共四个安全级别:

  • 绝密级(Top Secret)
  • 机密级(Confidential)
  • 秘密级(Secret)
  • 无密级(Unclassified)

用户与被访问信息的读写关系

  • 下读(read down) :用户级别高于文件级别的读操作。
  • 上写(write up) :用户级别低于文件级别的写操作。


  • 下写(write down) :用户级别高于文件级别的写操作。
  • 上读(readup) :用户级别低于文件级别的读操作。

上读----下写保证了数据的完整性:权限低的主题可以读权限高的客体,但是不能写。

上写----下读保证了数据的保密性:纪委不会告诉你,XX是贪官,但是你可以向纪委举报


基于角色的访问控制(Role Based Access Control)

基于角色的访问控制RBAC

  • 是目前流行的先进的安全访问控制方法,
  • 通过分配与取消角色来完成用户权限的授予和取消,并提供角色分配规则。
  • 安全管理人员根据需要定义各种角色,并设置合适的访问权限,
  • 用户根据起责任和资历再被指派为不同的角色

整个访问控制过程分为两个部分:

  • 访问权限与角色关联
  • 角色再与用户关联

从而实现了用户与权限的逻辑分离

RBAC模型由三个实体组成:用户(U)、角色(R)、权限(P)

用户与角色是多对多关系



基于RBAC访问控制策略的优点

  • 便于授权管理,如系统管理员需要修改系统设置等内容时,必须有几个不同角色的用户到场方能操作,从而保证了安全性;
  • 便于根据工作需要分级,如企业财务部门与非财力部门的员工对企业财务的访问权就可由财务人员这个角色来区分;
  • 便于赋予最小特权,如即使用户被赋予高级身份时也未必一定要使用,以便减少损失。只有必要时方能拥有特权;
  • 便于任务分担,不同的角色完成不同的任务;
  • 便于文件分级管理,文件本身也可分为个同的角色,如信件、账单等,由不同角色的用户拥有

基于属性的访问控制(属性采用 key-value)

基于属性的访问控制(Attribute Based Access Control)简称为 ABAC,其访问控制方法是根据主体的属性、客体的属性、环境的条件以及访问策略对主体的请求操作进行授权许可或拒绝




访问控制策略设计与实现

访问控制策略

访问控制策略用于规定用户访问资源的权限,防止资源损失、泄密或非法使用。在设计访问控制策略时,一般应考虑下面的要求:(了解)




  1. 不同网络应用的安全需求,如内部用户访问还是外部用户;
  2. 所有和应用相关的信息的确认,如通信端口号、IP 地址等;
  3. 网络信息传播和授权策略,如信息的安全级别和分类;
  4. 不同系统的访问控制和信息分类策略之间的一致性;
  5. 关于保护数据和服务的有关法规和合同义务;
  6. 访问权限的更新和维护。



访问控制策略必须指明禁止什么和允许什么,在说明访问控制规则时,应做到以下几点

  1. 所建立的规则应以“未经明确允许的都是禁止的”为前提,而不是以较弱的原则“未经明确禁止的都是允许的”为前提:
  2. 信息标记的变化,包括由信息处理设备自动引起的或是由用户决定引起的;
  3. 由信息系统和管理人员引起的用户许可的变化;
  4. 规则在颁布之前需要管理人员的批准或其他形式的许可



访问控制策略组成:

  • 控制的对象
  • 访问控制规则
  • 用户权限
  • 其他访问安全要求




在一个网络系统中,访问控制策略有许多,具体包括

  • 机房访问控制策略
  • 拨号服务器访问控制策略
  • 路由器访问控制策略
  • 交换机访问控制策略
  • 防火墙访问控制策略
  • 主机访问控制策略
  • 数据库访问控制策略
  • 客户端访问控制策略
  • 网络服务访问控制策略




访问控制规则

访问控制规则实际上就是访问约束条件集,是访问控制策略的具体实现和表现形式。

常见的访问控制规则:

  • 基于用户身份的访问控制规则 基于用户身份的访问控制规则利用具体的用户身份来限制访问操作,通常以账号名和口令表示用户,当用户输入的“账号名和口令”都正确后,系统才允许用户访问。
  • 基于角色的访问控制规则 基于角色的访问控制规则是根据用户完成某项任务所需要的权限进行控制的。
  • 基于地址的访问控制规则 基于地址的访问控制规则利用访问者所在的物理位置或逻辑地址空间来限制访问操作。例如,重要的服务器和网络设备可以禁止远程访问,仅仅允许本地的访问,这样可以增加安全性。基于地址的访问控制规则有 IP 地址、域名地址以及物理位置。
  • 基于时间的访问控制规则 基于时间的访问控制规则利用时间来约束访问操作,在一些系统中为了增加访问控制的适应性,增加了时间因素的控制。例如,下班时间不允许访问服务器。
  • 基于异常事件的访问控制规则 基于异常事件的访问控制规则利用异常事件来触发控制操作,以避免危害系统的行为进一步升级。例如,当系统中的用户登录出现三次失败后,系统会在一段时间内冻结账户。
  • 基于服务数量的访问控制规则 基于服务数量的访问控制规则利用系统所能承受的服务数量来实现控制。例如,为了防范拒绝服务攻击,网站在服务能力接近某个阈值时,暂时拒绝新的网络访问请求,以保证系统正常运行。




访问控制过程与安全管理

访问控制过程

实现访问控制管理,一般需要五个步骤:(了解

  1. 明确访问控制管理的资产,例如网络系统的路由器、Web 服务等;
  2. 分析管理资产的安全需求,例如保密性要求、完整性要求、可用性要求等;
  3. 制定访问控制策略,确定访问控制规则以及用户权限分配;
  4. 实现访问控制策略,建立用户访问身份认证系统,并根据用户类型授权用户访问资产;
  5. 运行和维护访问控制系统,及时调整访问策略。




最小特权管理

特权(Privilege)是用户超越系统访间控制所拥有的权限这种特权设置有利于系统维护和配置,但不利于系统的安全性。例如,在普通的 UNX 操作系统中,超级用户的口令泄露将会对系统造成极大的危害。因此,特权的管理应按最小化机制,防止特权误用。

最小特权原则(Principle of Least Privilege)指系统中每一个主体只能拥有完成任务所必要的权限集




用户访问管理

用户管理是网络安全管理的重要内容之一,其主要工作包括

  • 用户登记
  • 用户权限分配
  • 访问记录
  • 权限监测
  • 权限取消
  • 撤销用户







口令安全管理(背下来)

口令管理一般遵守以下原则:

  • 口令选择应至少在 8 个字符以上,应选用大小写字母、数字、特殊字符组合;
  • 禁止使用与账号相同的口令;
  • 更换系统默认口令,避免使用默认口令;
  • 限制账号登录次数,建议为 3 次;
  • 禁止共享账号和口令;
  • 口令文件应加密存放,并只有超级用户才能读取 ;
  • 禁止以明文形式在网络上传递口令;
  • 口令应有时效机制,保证经常更改,并且禁止重用口令;
  • 对所有的账号运行口令破解工具,检查是否存在弱口令或没有口令的账号




访问控制主要产品与技术指标

访问控制主要产品

访问控制的主要产品类型有 4A 系统、安全网关、系统安全增强

1.4A 系统

4A 是指认证(Authentication),授权(Authorization)、账号(Account)、审计(Audit),中文名称为统一安全管理平台平台集中提供账号、认证、授权和审计等网络安全服务。该产品的技术特点是集成了访问控制机制和功能,提供多种访问控制服务。平台常用基于角色的访问控制方法,以便于账号授权管理。

2.安全网关

安全网关产品的技术特点是利用网络数据包信息和网络安全威胁特征库,对网络通信连接服务进行访问控制。这类产品是一种特殊的网络安全产品,如防火墙、统一威胁管理(UTM)等。

3.系统安全增强

系统安全增强产品的技术特点是通常利用强制访问控制技术来增强操作系统、数据库系统的安全,防止特权滥用。如 Linux 的安全增强系统 SELinux、 Windows 操作系统加固等

访问控制主要技术指标(了解)

不同的访问控制技术产品,其技术指标有所差异,但其共性指标主要如下。

1.产品支持访问控制策略规则类型

一般来说,访问控制策略规则类型多,有利于安全控制细化和灵活授权管理。

2.产品支持访问控制规则最大数量

产品受到硬件和软件的资源限制,访问规则的数量多表示该产品具有较高的控制能力

3.产品访问控制规则检查速度

访问控制规则检查速度是产品的主要性能指标,速度快则意味着产品具有较好的性能.

4.产品自身安全和质量保障级别

针对产品本身的安全所采用的保护措施,产品防范网络攻击的能力,产品所达到的国家信息安全产品的等级




访问控制技术应用

访问控制技术应用场景类型(了解)

按照访问控制的对象分类,访问控制技术的主要应用场景类型如下。

  • 物理访问控制:主要针对物理环境或设备实体而设置的安全措施一般包括门禁系统、警卫、个人证件、门锁、物理安全区域划分。
  • 网络访问控制:主要针对网络资源而采取的访问安全措施,一般包括网络接入控制、网络通信连接控制、网络区域划分、网络路由控制、网络节点认证。
  • 操作系统访问控制:针对计算机系统资源而采取的访问安全措施,例如文件读写访问控制、进程访问控制、内存访问控制等。
  • 数据库/数据访问控制:针对数据库系统及数据而采取的访问安全措施,例如数据库表创建、数据生成与分发。
  • 应用系统访问控制:针对应用系统资源而采取的访问安全措施,例如业务执行操作、业务系统文件读取等



UNX/Linux 系统访问控制应用参考(理解掌握)

普通的 UNIX、 Linux 等系统中,实现自主访问控制技术的基本方法是在每个文件上使用“9 比特位模式”来标识访问控制权限信息,这些二进制位标识了“文件的拥有者、与文件拥有者同组的用户、其他用户”对文件所具有的访问权限和方式



表中,r 表示“读”权限,w 表示“写”权限,x 表示“执行”权限。

  • owner 表示此客体的拥有者对它的访问权限
  • group 表示 owner 同组用户对此客体的访问权限
  • other 表示其他用户对此客体的访问权限




Windows 访问控制应用参考

Windows 用户登录到系统时, WinLogon 进程为用户创建访问令牌,包含用户及所属组的安全标识符(SID),作为用户的身份标识。文件等客体则含有自主访问控制列表(ACL),标明谁有权访问,还含有系统访问控制列表(ACL),标明哪些主体的访问需要被记录。用户进程访问客体对象时,通过 WIN32 子系统向核心请求访问服务,核心的安全参考监视器(SRM)将访问令牌与客体的 DACL(自主访问控制列表)进行比较决定客体是否拥有访问权限,同时检查客体的 SACL 系统访问控制列表,确定本次访问是否落在既定的审计范围内,是则送至审计子系统。




lIS FTP 访问控制应用参考

IIS FTP 服务器自身提供了三种访问限制技术手段,实现用户账号认证、匿名访问控制以

及 IP 地址限制。(掌握)

1. 匿名访问控制设置





2. FTP 的目录安全性设置

FTP 用户仅有两种目录权限:读取和写入读取权限对应下载能力,而写入权限对应上传能力。FTP 站点的目录权限对所有的 FTP 用户都有效,即如果某一个目录设置了读取权限,则任何 FTP 用户都只有下载文件能力,而没有上传文件能力 FTP 的目录安全性设置



网络访问控制应用参考

网络访问控制是指通过一定技术手段实现网络资源操作限制,使得用户只能访问所规定的资源,如网络路由器、网络通信、网络服务等。

网络访问控制实现方式

  • 网络通信连接控制:网络通信连接控制常利用防火墙、路由器、网关等来实现,通常将这些设备放在两个不同的通信网络的连接处,使得所有的通信流都经过通信连接控制器,只有当通信流符合访问控制规则时,才允许通信正常进行。
  • 基于 VLAN 的网络隔离:通过 VLAN 技术,可以把处于不同物理位置的节点,按照业务需要组成不同的逻辑子网。采用 VLAN 技术,不仅可以防止广播风的产生,而且也能提高交换式网络的整体性能和安全性。

Web 服务访问控制应用参考(掌握)



Web 服务访问控制机制可由网络通信、用户身份认证、操作系统、数据库等多个访问控制环节来实现,各种访问都有不同的技术来实现。网络通信既可以通过路由器、防火墙来实现,也可以使用 Web 服务器自身的访问控制来实现。用户身份认证可以通过用户口令、证书来实现。操作系统、数据库、Web 服务器都有自身所带的访问控制技术。其中,Web服务器可基于限定 IP 地址、IP 网段或域名来实现 Web 资源的访问控制。

以 apache httpd ,secret IP 的服务器为例,假设要保护/secret 目录资源,只有特定 IP地址、IP 子网或域名可以访问,则需要在 access.conf 中加一个类似下面的目录控制段。

<Directory /full/path/to/secret>

<Limit GET POST>

deny from all

allow from x.y.z XXX.XXX.XXX.cn

allow from a. b. c.d

</Limit>

</Directory>


基于角色管理的系统访问控制应用参考

参考选自 IBM 开发社区提供的方案。该方案针对系统管理员权限管理工作,实现既可集中管理又可分散管理的目标。该方案采用基于角色的访问控制技术。

  1. 权限被分配到相应的角色
  2. 角色委派给用户
  3. 从而动态产生主体能力表
  4. 即主体所拥有的权限
  5. 对主体权限进行审查
  6. 确认和修订无误后
  7. 最终赋予主体所拥有的权限集即能力表





网络安全等级保护访问控制设计应用参考(熟悉)

1.自主访问控制结构

等级保护对象系统在初始配置过程中,安全管理中心首先对系统中的主体及客体进行登记命名,然后根据自主访问控制安全策略,按照主体对其创建客体的授权命令,为相关主体授权,规定主体允许访问的客体及操作并形成访问控制列表。



2.强制访问控制结构

等级保护对象系统在初始配置过程中,安全管理中心对系统的主体及其所控制的客体实施身份管理、标记管理、授权管理、策略管理

  • 身份管理确定系统中所有合法用户的身份、工作密钥、证书等与安全相关的内容。
  • 标记管理根据业务系统的需要,结合客体资源的重要程度,确定系统中所有客体资源的安全级别和范畴,生成全局客体安全标记列表;同时,根据用户在业务系统中的权限和角色确定主体的安全级别和范畴,生成全局主体安全标记列表。
  • 授权管理根据业务系统需求和安全状况,授予用户(主体)访问资源(客体)的权限,生成强制访问控制策略和级别调整策略列表。
  • 策略管理则根据业务系统的需求,生成与执行主体相关的策略,包括强制访问控制策略和级别调整策略。
  • 安全审计员需要通过安全管理中心制定系统审计策略,实施系统的审计管理




学习参考资料:

信息安全工程师教程(第二版)

建群网培信息安全工程师系列视频教程

信息安全工程师5天修炼

您可以还会对下面的文章感兴趣

使用微信扫描二维码后

点击右上角发送给好友