Two Security Vulnerabilities in Solaris 8 Role Based Access Control (rbac(5)) may Allow Unauthorized Remote Access |
|
| Category : | Security |
| Release Phase : | Resolved |
| Product : | Solaris 8 Operating System
|
| Bug Id : | 4625194, 4418892
|
| Date of Resolved Release : | 16-AUG-2007
|
Impact
Two security vulnerabilities in the Solaris 8 Role Based Access Control (RBAC) mechanism on hosts on which RBAC roles (see rbac(5)) have been created may allow a remote user who knows the passwords for certain roles to gain unauthorized access to the system via the role accounts. If the root user has been assigned a role, a remote user who knows the password for that role may gain unauthorized root privileges on the system.
Contributing Factors
This issues can occur in the following releases:
SPARC Platform
x86 Platform
Note 1: Solaris 9 and Solaris 10 are not impacted by this issue.
Note 2: Solaris 8 hosts on which RBAC roles have been created are affected by the issue that allows unauthorized remote access via the role accounts.
Roles are configured in the user_attr(4) database. If the host is configured to only use a local file for this database, a command such as the following can be used to determine if any roles have been created on the system:
$ grep type=role /etc/user_attr
testrole::::type=role
For hosts which are configured via nsswitch.conf(4) to use a source other than a local file for the user_attr(4) database, please refer to the relevant documentation for that source (for example, ldap(1), ypfiles(4) or nis+(1)).
If the root user has any roles assigned, it may be possible to gain root privileges on the host by knowing the passwords for those role accounts. The following command may be executed to see if the root user has been assigned any roles:
$ roles root
roles: root : No roles
Symptoms
If the described issues are exploited, output from commands such as last(1) (which display information about login and logout activity), may show logins to roles assigned to the users on the system. Using the "-a" flag with the last(1) command will show the hostname associated with these logins.
Workaround
To work around the issue that allows unauthorized remote root access, remove all rbac(5) roles assigned to the root user. This may be done by executing the following command as the root user:
# usermod -R "" root
To prevent unauthorized access to the system via the role accounts, the role accounts can be removed from the system using a command such as the following:
# userdel role_name
Note: This will also disable legitimate access to those role accounts until they are recreated.
Resolution
This issue is addressed in the following releases:
SPARC Platform
x86 Platform
AttachmentsThis solution has no attachment