本文为作者学习文章,按作者习惯写成,如有错误或需要追加内容请留言(不喜勿喷)
本文为追加文章,后期慢慢追加
by 2023年10月
访问控制概念
访问控制是计算机安全的一个重要组成部分,用于控制用户或程序如何使用系统资源。访问控制的目标是确保只有经过授权的用户或程序可以访问特定的资源,例如文件、文件夹、系统设置、网络服务和数据库等。
访问控制由以下三个概念构成:
-
主体:主体是指被授权或未经授权试图访问系统的用户、程序或进程。
-
资源:资源是指需要被保护的系统资源,例如文件、数据、设备或服务等。
-
访问控制规则:访问控制规则是指由系统管理员定义的规则,用于限制主体对资源的访问权限。根据访问控制规则的不同,主体可以被授予不同的访问权限,例如读取、写入、执行或删除等。
在实现访问控制时,通常会采用多层次的安全措施,例如认证、授权、审计和加密等技术。这些技术可以帮助系统管理员有效地控制和保护敏感信息和系统资源。
访问控制的主要目标
确保只有经过授权的用户、程序或进程可以访问特定的系统资源。以下是访问控制的目标:
-
保护系统资源:访问控制的主要目标是保护系统资源免受未经授权的访问或恶意攻击。这可以防止数据泄露、系统崩溃或破坏等安全问题。
-
实现数据保密性:访问控制可以确保只有授权用户可以访问敏感信息,从而保护数据的保密性。
-
管理权限:访问控制可以帮助管理员控制和管理用户权限,即用户可以做什么和不能做什么。这可以确保用户只能执行必要的任务,防止滥用权限和误操作。
-
管理身份验证:访问控制可以提供身份验证机制,以确保只有经过身份验证的用户可以访问资源。这可以防止身份伪造和欺诈。
-
管理审计:访问控制可以记录用户活动和系统事件,以帮助管理员审计用户行为。这可以帮助发现潜在的安全问题和保证合规性。
综上所述,访问控制的目标是保护系统资源,实现数据保密性,管理权限,管理身份验证和管理审计。它是计算机安全的重要组成部分,可以帮助组织保护敏感信息和系统资源。
访问控制模型
参考监视器访问控制模型组成要素主要有主体(Subject).(Reference Monitor) 、客体(Object) 、访问控制数据库、审计库。
访问控制模型组成要素
- 主体:是客体的操作实施者。实体通常是人、进程或设备等,一般是代表用户执行操作的进程。
- 客体:是被主体操作的对象
- 参考监视器:是访问控制的决策单元和执行单元的集合体
- 访问控制数据库:记录主体访问客体的权限及其访问方式的信息,提供访问控制决策判断的依据,也称为访问控制策略库。
- 审计库:存储主体访问客体的操作信息,包括访问成功访问失败以及访问操作信息。
访问控制类型
- 访问控制列表(Access Control List,ACL)
- 基于角色的访问控制(Role-Based Access Control,RBAC)
- 强制访问控制(Mandatory Access Control,MAC)
- 自主访问控制(Discretionary Access Control,DAC)
- 基于属性的访问控制(Attribute-Based Access Control,ABAC)
自主访问控制
自主访问控制(DAC)是一种访问控制机制,它根据主体(如用户)对资源(如文件或目录)的自主权来控制对资源的访问。这意味着主体拥有对自己所拥有的资源进行控制的权力,例如,决定其他主体是否可以访问、修改或删除该资源。
基于行的自主访问控制方法是在每个主体上都附加一个该主体可访问的客体的明细表,根据表中信息的不同又可分成三种形式,即能力表(capability list) 、前缀表(profiles) 和口令(password)。
- 能力表。能力是访问客体的钥匙,它决定用户能否对客体进行访问以及具有何种访问模式读、写、执行)。拥有一定能力的主体可以按照给定的模式访问客体。
- 前缀表。前缀表包括受保护客体名和主体对它的访问权限。当主体要访问某客体时,自主访问控制机制检查主体的前缀是否具有它所请求的访问权。
- 口令。在基于口令机制的自主存取控制机制中,每个客体都相应地有一个口令。主体在对客体进行访问前,必须向系统提供该客体的口令。如果正确,它就可以访问该客体。
基于列的自主访问控制机制是在每个客体上都附加一个可访问它的主体的明细表,它有两种形式,即保护位(protection bits)和访问控制表(Access Control List, ACL)。
- 保护位。这种方法通过对所有主体、主体组以及客体的拥有者指明一个访问模式集合,通常以比特位来表示访问权限。UNIX/Linux 系统就利用这种访问控制方法。
- 访问控制表。访问控制表简称ACL,它是在每个客体上都附加一个主体明细表,表示访问控制矩阵。表中的每项都包括主体的身份和主体对该客体的访问权限。
自主访问控制优点:访问机制简单、灵活
自主访问控制缺点:实施依赖于用户的安全意识和技能,不能满足高安全等级的安全要求。
强制访问控制
强制访问控制(Mandatory Access (ontrol,MAC)是指系统根据主体和客体的安全属性,以强制方式控制主体对客体的访问。与自主访问控制相比较,强制访问控制更加严格。BLP和Biba模型都属于强制访问控制。
在政府部门、军事和金融等领域,常利用强制访问控制机制,将系统中的资源划分安全等级和不同类别,然后进行安全管理。
基于角色的访问控制
基于角色的访问控制(Role-Based Access Control,RBAC)是一种常见的访问控制机制,用于控制用户对系统资源的访问。在基于角色的访问控制中,用户被分配到一个或多个角色,而每个角色具有一组权限,用于访问系统中的不同资源。用户可以访问与他们角色相对应的资源,而不能访问与他们角色不符合的资源。
基于角色的访问控制(RBACL是指根据完成某些职责任务所需要的访问权限来进行授权和管理。RBAC 由用户(U)、角色(R)、会话(S) 和权限(P)四个基本要素组成。
基于角色的访问控制有以下优点:
-
管理简单:通过角色来定义权限,降低了管理的复杂性,避免了在管理多个用户时需要分别分配权限的麻烦。
-
安全可控:基于角色的访问控制控制了用户对系统资源的访问权限,从而保证了系统的安全性。
-
可扩展性好:当系统需要增加新的用户或资源时,只需要将新用户分配到相应的角色,或将新资源的权限分配给现有的角色即可。
-
便于审计:基于角色的访问控制记录用户访问资源的信息,便于对系统的安全性进行审计。
基于属性的访问控制
基于属性的访问控制(ABAC)是一种访问控制模型,它使用多个属性(如用户、资源、环境和行为特征)进行决策。这种访问控制模型允许管理员为每个属性定义规则,并将其组合以形成访问控制策略。属性可以包括任何与访问控制相关的信息,例如时间、位置、设备等。基于属性的访问控制可以增强访问控制的精度和灵活性,还可以帮助组织遵守安全合规性要求。
访问控制策略
访问控制策略由所要控制的对象、访问控制规则、用户权限或其他访问安全要求组成。访问控制策略常见类型机房、拨号服务器、路由器、交换机、防火墙、主机、数据库、客户端、网络服务访问控制策略等。
访问控制规则
主要的访问控制规则:
- 基于用户身份的访问控制规则
- 基于角色的访问控制规则
- 基于地址的访问控制规则
- 基于时间的访问控制规则
- 基于异常事件的访问控制规则
- 基于服务数量的访问控制规则
访问控制过程
要实现访问控制管理,一般需要五个步骤
- 第一步,明确访问控制管理的资产,例如网络系统的路由器、Web 服务等
- 第二步,分析管理资产的安全需求,例如保密性要求、完整性要求、可用性要求等;
- 第三步,制定访问控制策略,确定访问控制规则以及用户权限分配;
- 第四步,实现访问控制策略,建立用户访问身份认证系统,并根据用户类型授权用户访问资产;
- 第五步,运行和维护访问控制系统,及时调整访问策略。
最小特权原则(Principle of Least Privilege) 指系统中每一个主体只能拥有完成任务所必要的权限集。特权的分配原则是"按需使用(Need to Use)"这条原则保证系统不会将权限过多地分配给用户,从而可以限制特权造成的危害。用户管理是网络安全管理的重要内容之一,其主要工作包括用户登记、用户权限分配、访问记录、权限监测、权限取消、撤销用户。
口令安全管理原则
- 口令选择应至少在8 个字符以上,应选用大小写字母、数字、特殊字符组合;
- 禁止使用与账号相同的口令;
- 更换系统默认口令,避免使用默认口令;
- 限制账号登录次数,建议为3次;
- 禁止共享账号和口令;
- 口令文件应加密存放,并只有超级用户才能读取;
- 禁止以明文形式在网络上传递口令;
- 口令应有时效机制,保证经常更改,并且禁止重用口令;
- 对所有的账号运行口令破解工具,检查是否存在弱口令或没有口令的账号。
访问控制主要产品
访问控制的主要产品类型有4A 系统、安全网关、系统安令增强等
- 4A系统:4A 是指认证(Authentication)、授权(Authorization)、账号(Account)、审计(Audit),中文名称为统安全管理平台平台集中提供账号、认证、授权和审计等网络安全服务。该产品的技术特点是集成了访问控制机制和功能,提供多种访问控制服务。平台常用基于角色的访问控制方法,以便于账号授权管理。
- 安全网关:安全网关产品的技术特点是利用网络数据包信息和网络安全威胁特征库,对网络通信连接服务进行访问控制。这类产品是一种特殊的网络安全产品,如防火墙、统一威胁管理(UTM)等
系统安全增强系统安全增强产品的技术特点是通常利用强制访问控制技术来增强操作系统、数据库系统的安防止特权滥用。如Linux的安全增强系统SELinux、Windows 操作系统加固等
访问控制主要技术指标:
- 产品支持访问控制策略规则类型。一般来说,规则类型多,有利于安全控制细化和灵活授权管理。
- 产品支持访问控制规则最大数量:访问规则的数量多表示该产品具有较高的控制能力。
- 产品访问控制规则检查速度:产品的主要性能指标,速度快则意味着产品具有较好的性能;
- 产品自身安全和质量保障级别:针对产品本身的安全所采用的保护措施,产品防范网络攻击的能力,产品所达到的国家信息安全产品的等级。
Linux 访问权限与方式
访问权限分为读(read)、写(write)、执行(execute)三种,
并且涉及到文件所有者(user)、文件所属组(group)、其他人(other)三个主体。
选取上图红框中的两行为例,结合下面的表格先讲一下基本结构:
改变文件/目录的放我权限命令:chomd [mode] filename
例:chmod 755testsh //755表示"创建者拥有读写可执行权限、同一组用户以及其他用户拥有读和执行权限
windows访问控制权限
Windows 用户登录到系统时,WinLogon 进程为用户创建访问令牌,包含用户及所属组的安全标识符(SID)作为用户的身份标识。文件等客体则含有自主访问控制列表(DACL),标明谁有权访问,还含有系统访问控制列表(SACL),标明哪些主体的访问需要被记录。
DACL主要用于设置用户以及用户组对安全对象的访问权限
SACL用于配置对安全对象的访问的审计(生成日志)
每个ACL由多个 ACE(Access Control Entries)构成
IIS服务器访问控制权限
IIS(Internet Information Services)服务器是一种Web服务器,可以用来托管Web应用程序和网站。在IIS服务器上,可以通过访问控制权限来限制用户对网站的访问。
以下是一些常见的访问控制权限:
-
IP地址限制:可以通过设置某些IP地址或IP地址范围来限制用户的访问。只有在指定的IP地址范围内的用户才能访问网站。
-
身份验证:可以设置必须进行身份验证才能访问网站或特定页面。可以使用基本身份验证、Windows身份验证或其他第三方身份验证方式。
-
目录权限:可以设置目录级别的权限来限制用户对文件和文件夹的访问。可以使用NTFS权限或IIS权限来实现。
-
SSL证书:可以通过安装SSL证书来加密传输数据,并限制只有拥有证书的用户才能访问网站。
以上是一些常见的访问控制权限,可以根据实际情况进行选择和设置。
网络访问控制
网络通信连接控制常利用防火墙、路由器、网关等来实现,通常将这些设备放在两个不同的通信网络的连接处,使得所有的通信流都经过通信连接控制器,只有当通信流符合访问控制规则时,才允许通信正常进行。
基于VLAN的网络隔离:根据网络的功能和业务用途,将网络划分为若干个小的子网(网段),或者是外部网和内部网,以避免各网之间多余的信息交换。