![]() |
![]() |
| ||||||||||||||||||||||||||||
Chapter 4Securing Files (Tasks)This chapter describes the procedures for securing files in the Solaris environment. The following is a list of the step-by-step instructions in this chapter. File Security FeaturesThis section describes the features that constitute a file's security. User ClassesFor each file, there are three classes of users that specify the levels of security:
Only the owner of the file or root can assign or modify file permissions. File PermissionsThe following table lists and describes the permissions that you can give to each user class for a file. Table 4-1 File Permissions
These file permissions apply to special files such as devices, sockets, and named pipes (FIFOs), as they do to regular files. For a symbolic link, the permissions that apply are the permissions of the file that the link points to. Directory PermissionsThe following table lists and describes the permissions that you can give to each user class for a directory. Table 4-2 Directory Permissions
You can protect the files in a directory (and in its subdirectories) by disallowing access to that directory by setting restrictive file permissions. Note, however, that superuser has access to all files and directories on the system. Special File Permissions (setuid, setgid and Sticky Bit)Three special types of permissions are available for executable files and public directories. When these permissions are set, any user who runs that executable file assumes the user ID of the owner (or group) of the executable file. You must be extremely careful when you set special permissions, because special permissions constitute a security risk. For example, a user can gain superuser privileges by executing a program that sets the user ID (UID) to root. Also, all users can set special permissions for files they own, which constitutes another security concern. You should monitor your system for any unauthorized use of the setuid and setgid permissions to gain superuser privileges. To search for and list all of the files that use these permissions, see How to Find Files With setuid Permissions. A suspicious listing grants ownership of such a program to a user rather than to root or bin. setuid PermissionWhen set-user identification (setuid) permission is set on an executable file, a process that runs this file is granted access based on the owner of the file (usually root), rather than the user who is running the executable file. This special permission allows a user to access files and directories that are normally only available to the owner. For example, the setuid permission on the passwd command makes it possible for a user to change passwords, assuming the permissions of the root ID:
This special permission presents a security risk, because some determined users can find a way to maintain the permissions that are granted to them by the setuid process even after the process has finished executing. Note - The use of setuid permissions with the reserved UIDs (0-100) from a program might not set the effective UID correctly. Use a shell script instead or avoid using the reserved UIDs with setuid permissions. | ||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||