Note: This is an archival copy of Security Sun Alert 200081 as previously published on http://sunsolve.sun.com.|
Latest version of this security advisory is available from http://support.oracle.com as Sun Alert 1000065.1.
Solaris 8 Operating System
Date of Resolved Release
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.
This issues can occur in the following releases:
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
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.
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.
This issue is addressed in the following releases:
This solution has no attachment