AIX中基于角色的访问控制,第3部分

保护 root 用户的安全

下面的部分将介绍在增强的 RBAC 模式中运行时如何禁用 root 用户。

选择保护 root 用户的安全

当 AIX 系统运行于增强的 RBAC 模式时,可以对系统进行相应的配置,从而使 root 用户不具有超级 用户权限,并且将其禁用,以至使 root 用户帐号失去登录权限。

通常在 AIX 中,root 用户的 UID 值为 0,操作系统将其作为一种特权 UID,并允许 root 用户绕过 强制的安全检查。通过禁用 root 用户,可以有效地删除这些操作系统检查。

在禁用了 root 用户之后,对 root 用户进行了限制,不允许它访问系统,尽管它将仍然保留文件的 DAC 所有权(如果可以访问该帐号的话)。尽管 root 用户仍然可以拥有文件对象,但不能通过 su 命令 、或者远程登录、或者从定义的系统控制台来访问 root 用户。

传统的 UNIX 管理依赖于为执行某些特权命令而启用 root 用户;对于攻击者而言,他们也希望启用 root 用户,并集中其所有的力量攻击 root 用户。

攻击者可能试图获得对 root 用户的访问,如果 root 用户的完整性遭到破坏,那么攻击者将可以自 由地执行任何特权命令以实现其恶意的目的。如果获得了未经授权的 root 用户访问权限,那么攻击者就 可能对系统造成广泛的、且不受任何限制的危害。这种故意的损害称为恶意 root。

在禁用了 root 用户的增强的 RBAC 系统中,可以将攻击者可能造成的危害降到最低,因为禁用了 root 用户。即使攻击者破坏了现有的网络安全设施并收到一个登录提示,但是攻击者不能以远程的方式 、或者在控制台、或者通过 su 命令访问 root 帐号。

在禁用了 root 用户之后,必须由 root 用户以外的其他用户来执行系统管理任务。需要通过一个或 多个其他的用户帐号来访问由 root 用户所拥有的特权命令和文件。

使用 AIX V6 中预定义的 isso、so 和 sa 角色,就是这种方式的一个示例。

重要:isso、so 和 sa 角色可能并不包括管理系统所需的所有特权命令或者授权。

因此在尝试禁用 root 用户的功能之前,应该对系统以及正在系统中使用的应用程序进行仔细地分析 。

禁用 root 用户

通过 setsecconf 命令,可以禁用 root 用户的各种功能。

在这个场景中,我们首先将 isso 角色分配给 oper1 用户,这样一来,我们就可以测试 oper1 用户 执行禁用或者启用 root 用户模式所需的特权命令。

oper1 用户仍然具有 shutdown_reboot 角色,因此 oper1 用户仍然能够执行 reboot 和 shutdown 命令,以使系统重新启动。

执行下面的命令,然后重新启动系统,以禁用 root 用户的功能:

1. 以 oper1 用户的身份登录,并执行 swrole 命令启用 isso 角色:

swrole isso

时间: 2024-09-16 03:43:15

AIX中基于角色的访问控制,第3部分的相关文章

AIX中基于角色的访问控制,第1部分

简介:在本系列文章中,我们将向您陆续介绍并和您一起讨论基于角色的访问控制(Role Based Access Control)的相关内容.作为 AIX 6 的安全新特性,RBAC 为用户提供了细颗粒度的,更加灵活的 安全管理方法.本文是摘自 IBM 红皮书<AIX V6 Advanced Security Features Introduction and Configuration>. AIX V6 和基于角色的访问控制 (RBAC) AIX V6 引入了增强 RBAC,即向一个或者多个普通

AIX中基于角色的访问控制,第2部分

用户定义的角色 在这个部分中,我们将介绍用户定义的角色. 对用户定义的角色进行规划 正如我们在第 1 部分"RBAC 中的预定义角色"中所讨论的,AIX V6 中包括三种预定义角 色.这些预定义角色为划分管理职责提供了一种建议的方法. 可以对这些预定义角色进行修改或者删除,对于不同的环境,也可以创建一些合适的.新的角色. 注意:ISSO.SA 和 SO 角色由 Trusted AIX 使用.如果您的环境中包括 Trusted AIX,那么您可能 会希望通过使用用户定义的角色来自定义您的

.NET框架中基于角色的安全性(1)

.net框架|安全|安全性 在过去的相当长一段时间内,计算机及信息犯罪的比例正在逐渐升高.美国联邦调查局的计算机安全组织在2001年的研究调查中发现85%企业的企业安全受到侵害.在对这些企业进行调查之后提出的财物损失报告中指出,合计损失为3亿7千7百万美元,比起2000年的2亿6千5百万美金增加了42%.由此可清楚的看出,计算机及信息犯罪的发生次数越来越频繁,其所造成的损失也越来越大,另外,犯罪的手段也越来越丰富,令企业安全人员防不胜防.因此企业必须有所行动来保护有价值的信息资产.自然而然的,安

.NET框架中基于角色的安全性(3)

.net框架|安全|安全性 Permissions对象       作为.NET安全性两个重要的分支,基于角色的安全性和代码访问安全都离不开一个重要的概念--权限(permissions).在基于角色的安全性中,PrincipalPermission类用来检查调用线程的用户身份:而在代码访问安全中,从CodeAccessPermission派生的类则用来检查执行当前方法的所有线程各自的权限.       权限对象通过已有的安全策略来说明操作是否被允许或拒绝.对于代码访问安全权限(不过这不适用于用

Asp.net中基于角色验证授权

Asp.net的身份验证有有三种,分别是"Windows | Forms | Passport",其中又以Forms验证用的最多,也最灵活.Forms 验证方式对基于用户的验证授权提供了很好的支持,可以通过一个登录页面验证用户的身份,将此用户的身份发回到客户端的Cookie,之后此用户再访问这个web应用就会连同这个身份Cookie一起发送到服务端.服务端上的授权设置就可以根据不同目录对不同用户的访问授权进行控制了.问题来了,在实际是用中我们往往需要的是基于角色,或者说基于用户组的验证

了解AIX高级特性: 简便的基于角色的访问控制

简介 过去,由单一用户(root 用户)控制系统的安全机制.root 用户决定谁可以登录.谁可以访问数据 .哪些进程有权进入内核模式等.但是,单一 root 用户的缺点是,如果未经授权的人控制了根用户,系 统就非常容易受到攻击. 为了避免这个问题,AIX 的最新版本(5.3TL07 和 6.1)引入了 RBAC 和多级安全性 (MLS) 等新的安 全特性,还在传统的基于 root 用户的身份验证中增加了其他特性,比如 Trusted Execution (TE). Encrypted File

.NET框架中基于角色的安全性(2)

.net框架|安全|安全性 Principal对象       Principal对象是实现了IPrincipal接口的类的实例,这些对象用来表示用户,并且包括了用户的身份信息.System.Security.Principal命名空间包括了几种类型的Principal类,这些类中封装了程序代码运行的的安全环境(security context).我们在后面将会看到对用户名和角色进行检查以确定根据用户身份和角色资格是否可以让用户执行某些特定操作的示例代码.       对于每一个线程来说都与一个

AngularJs实现基于角色的前端访问控制

Github 项目地址 https://github.com/zgljl2012/angular-permission 最近做的项目是使用Angular做一个单页应用,但因为用户有不同的角色(管理员.编辑.普通财务人员等),所以需要进行不同角色的访问控制. 因为后端访问控制的经验比较丰富,所以这里只记录了前端访问控制的实现.请注意,前端最多只能做到显示控制!并不能保证安全,所以后端是一定要做访问控制的! 基于角色的访问控制需要做到两个层面的访问控制: 控制页面路由的跳转,没有权限的用户不能跳转到

AngularJs基于角色的前端访问控制的实现_AngularJS

最近做的项目是使用Angular做一个单页应用,但因为用户有不同的角色(管理员.编辑.普通财务人员等),所以需要进行不同角色的访问控制. 因为后端访问控制的经验比较丰富,所以这里只记录了前端访问控制的实现.请注意,前端最多只能做到显示控制!并不能保证安全,所以后端是一定要做访问控制的! 基于角色的访问控制需要做到两个层面的访问控制: 控制页面路由的跳转,没有权限的用户不能跳转到指定url 页面元素的显示控制,没有对应权限的用户不能看到该元素 但在此之前,我们还有一项重要的事要做. 存储用户信息