Category
Security
Release Phase
Resolved
ProductSolaris 9 Operating System
Solaris 7 Operating System
Solaris 8 Operating System
Bug Id
4079984
Date of Resolved Release15-SEP-2003
Impact
A local or remote unprivileged user may be able to execute arbitrary commands with the permissions of the sadmind(1M) daemon on Solaris systems which have sadmind(1M) enabled in inetd.conf(4). The sadmind(1M) daemon normally runs with "root" (uid 0) privileges. If the sadmind(1M) daemon is utilizing the default security level authentication mechanism of AUTH_SYS (see secure_rpc(3NSL)), users may be able to forge AUTH_SYS credentials as described in the sadmind(1M) man page.
An exploit has been discovered in the wild and this Sun Alert is to raise awareness of the default sadmind(1M) configuration on Solaris systems.
Sun acknowledges, with thanks, iDefense for working with us on this issue.
Contributing Factors
This issue can occur in the following releases:
SPARC Platform
-
Solaris 7 without patch 116456-01
-
Trusted Solaris 7
-
Solaris 8 without patch 116455-01
-
Trusted Solaris 8 04/01 and 12/02
-
Solaris 9 without patch 116453-01
x86 Platform
-
Solaris 7 without patch 116457-02
-
Trusted Solaris 7
-
Solaris 8 without patch 116442-01
-
Trusted Solaris 8 04/01 and 12/02
-
Solaris 9 without patch 116454-01
Sites which have sadmind(1M) enabled in inetd.conf(4) with strong authentication (-S 2) are not affected by this issue.
To determine if sadmind(1M) is enabled on the system, the following command can be run:
$ grep sadmind /etc/inet/inetd.conf
100232/10 tli rpc/udp wait root /usr/sbin/sadmind sadmind
This shows the sadmind(1M) daemon enabled with the default security level authentication mechanism.
Note: Previous releases of Solaris and Trusted Solaris which shipped with sadmind(1M) included the same default sadmind(1M) entry in the inetd.conf(4) file.
Symptoms
If the described issue occurs, the sadmind(1M) entry in the inetd.conf(4) will be enabled (not commented out) and will not be configured to use strong (AUTH_DES -- see secure_rpc(3NSL)) authentication.
The following example shows a system which is utilizing weak (AUTH_SYS) authentication and is affected by this issue:
$ grep sadmind /etc/inet/inetd.conf
100232/10 tli rpc/udp wait root /usr/sbin/sadmind sadmind
The following example shows a system which is utilizing strong (AUTH_DES) authentication and is not affected by this issue:
$ grep sadmind /etc/inet/inetd.conf
100232/10 tli rpc/udp wait root /usr/sbin/sadmind sadmind -S 2
The following example shows a system which is not utilizing sadmind(1M) as the sadmind entry has been commented out from the inetd.conf(4) file and is not affected by this issue:
$ grep sadmind /etc/inet/inetd.conf
#100232/10 tli rpc/udp wait root /usr/sbin/sadmind sadmind
Workaround
To workaround this issue, either disable the sadmind(1M) on the systems or enable strong (AUTH_DES) authentication by adding "-S 2" to the sadmind(1M) entry of the inetd.conf(4) file.
To disable sadmind(1M) on a Solaris system, do the following:
1. Edit the "/etc/inetd.conf" file and comment out the following line by adding the "#" symbol to the beginning of the line as follows:
#100232/10 tli rpc/udp wait root /usr/sbin/sadmind sadmind
2. Tell the inetd(1M) process to reread the newly modified "/etc/inetd.conf" file by sending it a hangup signal, SIGHUP:
# /usr/bin/pkill -HUP inetd
To enable strong (AUTH_DES) authentication for sadmind(1M) on a Solaris system, do the following:
1. Edit the "/etc/inetd.conf" file and append "-S 2" to the end of the sadmind line as follows:
100232/10 tli rpc/udp wait root /usr/sbin/sadmind sadmind -S 2
2. Tell the inetd(1M) process to reread the newly modified "/etc/inetd.conf" file by sending it a hangup signal, SIGHUP:
# /usr/bin/pkill -HUP inetd
Resolution
This issue is addressed in the following releases:
SPARC Platform
-
Solaris 7 with patch 116456-01 or later
-
Solaris 8 with patch 116455-01 or later
-
Trusted Solaris 8 07/03
-
Solaris 9 with patch 116453-01 or later
x86 Platform
-
Solaris 7 with patch 116457-02 or later
-
Solaris 8 with patch 116442-01 or later
-
Trusted Solaris 8 07/03
-
Solaris 9 with patch 116454-01 or later
Note: For Trusted Solaris, the full resolution is to disable sadmind. Use the same method as the Solaris workaround above.
Modification History
Date: 17-MAR-2004
-
Updated Contributing Factors and Resolution sections
Date: 18-MAR-2004
-
Updated Contributing Factors and Resolution sections
Date: 06-APR-2004
-
Updated Contributing Factors and Resolution sections
References
116456-01
116457-02
116455-01
116442-01
116453-01
116454-01
AttachmentsThis solution has no attachment