2.3. Настройка прав доступа к объектам файловой системы

При настройке прав доступа к объектам файловой системы необходимо:

2.3.1. Установить корректные права доступа к файлам настройки пользователей, а именно к файлам с перечнями пользовательских идентификаторов (/etc/passwd) и групп (/etc/group), либо хранилищам хешей паролей (в операционных системах GNU/Linux, Solaris, HP-UX: /etc/shadow, AIX: /etc/security/passwd), с помощью команд:

chmod 644 /etc/passwd;

chmod 644 /etc/group;

chmod go-rwx /etc/shadow.

2.3.2. Установить корректные права доступа к файлам запущенных процессов путем выполнения команды вида: chmod go-w /путь/к/файлу для всех исполняемых файлов, запущенных в настоящий момент, и соответствующих библиотек. После этого необходимо осуществить проверку, что директория, содержащая данный файл, а также все родительские директории недоступны для записи непривилегированным пользователям.

2.3.3. Установить корректные права доступа к файлам, выполняющимся с помощью планировщика задач cron неавторизованными пользователями путем выполнения команды chmod go-w путь_к_файлу для каждого файла (либо команды), который вызывается из заданий cron. В противном случае это может привести к выполнению произвольного кода от имени владельца задания cron (в том числе root, что приведет к полной компрометации операционной системы).

2.3.4. Установить корректные права доступа к файлам, выполняемым с помощью sudo путем изменения владельца командой chown root путь_к_файлу для каждого исполняемого файла, который можно запускать с привилегиями суперпользователя root, но владельцем которого является обычный пользователь и выполнения команды chmod go-w путь_к_файлу для каждого исполняемого файла, который можно запускать с привилегиями суперпользователя root и к которому имеют доступ на запись все пользователи.

2.3.5. Установить корректные права доступа к стартовым скриптам системы путем выполнения команды chmod o-w <filename> к каждому файлу в директориях /etc/rc#.d, а также к файлам .service, присутствующим в системе.

2.3.6. Установить корректные права доступа к системным файлам заданий (конфигурационным файлам) cron при помощи команды chmod go-wx путь_к_файлу_или_директории.

К системным файлам-описаниям очередей cron относятся следующие файлы (могут присутствовать не всегда, в зависимости от операционной системы и ее настроек):

/etc/crontab;

/etc/cron.d (директория и файлы внутри нее);

/etc/cron.hourly (директория и файлы внутри нее);

/etc/cron.daily (директория и файлы внутри нее);

/etc/cron.weekly (директория и файлы внутри нее);

/etc/cron.monthly (директория и файлы внутри нее).

2.3.7. Установить корректные права доступа к пользовательским файлам заданий cron при помощи команды вида: chmod go-w путь_к_файлу_заданий.

2.3.8. Установить корректные права доступа к исполняемым файлам и библиотекам операционной системы путем анализа корректности прав доступа к утилитам и системным библиотекам, расположенным по стандартным путям (/bin, /usr/bin, /lib, /lib64 и другим путям), а также к модулям ядра (для Linux: /lib/modules/версия-текущего-ядра). Местоположение большинства стандартных исполняемых файлов указано в переменной $PATH пользователя root.

2.3.9. Установить корректные права доступа к SUID/SGID-приложениям путем проведения аудита системы на предмет поиска всех SUID/SGID-приложений - права доступа к каждому из них не должны позволять остальным пользователям изменять его содержимое (в особенности если это SUID-приложение и его владелец root). В противном случае следует выполнить команду вида: chmod go-w /путь/к/приложению. Проверить, что среди выявленных SUID/SGID-приложений не присутствуют лишние (например, если определен "белый" список таких приложений), в противном случае следует снять с таких приложений SUID/SGID-биты.

2.3.10. Установить корректные права доступа к содержимому домашних директорий пользователей (.bash_history, .history, .sh_history и т.п. - файлы истории команд оболочек, .bash_profile, .bashrc, .profile, .bash_logout и т.п. - файлы настройки оболочки, .rhosts - настройки R-подсистем) путем установки на каждый из указанных файлов корректных прав доступа с помощью команды вида: chmod go-rwx путь_к_файлу.

2.3.11. Установить корректные права доступа к домашним директориям пользователей с помощью команды chmod 700 домашняя_директория.