Опубликован: 31.07.2006 | Уровень: специалист | Доступ: свободно
Лекция 14:

Безопасность UNIX

Аудит системы Unix

Этот проект покажет пути проверки систему Unix на ошибки в конфигурации или на наличие неизвестных процессов и учетных записей.

Шаг за шагом

  1. Начните с системы Unix, к которой у вас имеется административный доступ (то есть у вас имеется пароль к корневой учетной записи этой системы) и на которой можно вносить изменения, не затрагивая рабочие приложения.
  2. Найдите файлы загрузки и определите, какие приложения запускаются при загрузке системы. Выявите приложения, которые являются необходимыми для системы, и отключите все остальные.
  3. Просмотрите файл inetd.conf и определите, какие службы включены. Определите службы, необходимые для системы, и отключите все остальные. Не забудьте выполнить команду kill -HUP для процесса inetd, чтобы перезапустить его с использованием новой конфигурации.
  4. Определите, используется ли в системе NFS. Внесите соответствующие изменения в файл dfstab.
  5. Если система использует telnet или FTP, загрузите TCP Wrappers и установите программу в системе. Настройте TCP Wrappers на разрешение доступа только к telnet и FTP, согласно требованиям системы.
  6. Найдите файл приветственного сообщения. Определите, используется ли корректное приветственное сообщение. Если это не так, разместите в системе корректное приветственное сообщение.
  7. Выясните, настроены ли в системе требуемые ограничения на пароли согласно политике безопасности организации. Если это не так, внесите соответствующие настройки.
  8. Определите, настроен ли в системе должным образом параметр umask по умолчанию. Если это не так, настройте umask соответствующим образом.
  9. Определите требования для входа через корневую учетную запись. Если администраторам требуется осуществлять вход сначала с использованием их собственного идентификатора (ID), настройте соответствующим образом конфигурацию системы.
  10. Проверьте систему на наличие неиспользуемых учетных записей. Все подобные учетные записи должны быть заблокированы.
  11. Установите в системе соответствующие обновления.
  12. Проверьте систему на некорректные пользовательские идентификаторы. В особенности следует искать учетные записи с UID, значение которого равно 0.
  13. Убедитесь в том, что в системе ведется журнал подозрительной активности, и что файл syslog.conf настроен соответствующим образом.
  14. Произведите в системе поиск скрытых файлов. Если будут найдены необычные скрытые файлы, исследуйте их, чтобы убедиться, что в систему никто не проник.
  15. Произведите поиск файлов SUID и SGID. Если будут обнаружены такие файлы, расположенные в каталогах пользователей, исследуйте их, чтобы убедиться, что в систему никто не проник.
  16. Произведите поиск файлов, общедоступных для записи. Если будут найдены такие файлы, либо устраните проблему посредством изменения разрешений (сначала выясните, для чего эти файлы используются), либо обратите на них внимание владельца.
  17. Проверьте сетевые интерфейсы на наличие любых неправильных настроек.
  18. Проверьте систему на предмет прослушиваемых (активных) портов. Если обнаружится какое-либо несоответствие, найдите процесс, использующий порт, и определите, должен ли данный процесс работать в системе.
  19. Проверьте таблицу процессов в системе и определите, выполняются ли какие-либо несоответствующие процессы.

Выводы

В зависимости от параметров проверяемой системы аудит может отнять некоторое время. Кроме того, может потребоваться помощь различных пользователей системы. Как вы увидите, гораздо легче сначала настроить систему корректным образом и затем поддерживать ее, чем осуществлять аудит системы и устранять проблемы.

Контрольные вопросы

  1. При отключении службы, запускаемой автоматически, что необходимо сделать в файле загрузки?
  2. Где находится файл конфигурации для inetd?
  3. Как отключить службу для inetd?
  4. Какие функции выполняет TCP Wrappers после установки?
  5. Почему не следует размещать сообщение входа в /etc/motd?
  6. Почему в системе Linux необходимо размещать сообщение в /etc/issue и /etc/issue.net?
  7. Каким образом настройки возраста паролей в системе Solaris отличаются от аналогичных настроек в Linux?
  8. Что устанавливает параметр umask?
  9. Почему зашифрованные пароли пользователей должны храниться в файле shadow, а не в файле passwd?
  10. Что должен проверить администратор, перед тем как включать BSM в системе Solaris?
  11. Почему в файл syslog.conf должна быть включена строка <auth.info /var/log/auth.log>?
  12. Почему общедоступный для записи файл SUID является потенциальной уязвимостью?
  13. Какую информацию выводит команда netstat -m?
  14. Каким образом использование lsof помогает защитить систему?
  15. Какие данные выводит команда ps?
Нияз Сабиров
Нияз Сабиров

Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей.

Елена Сапегова
Елена Сапегова

для получения диплома нужно ли кроме теоретической части еще и практическую делать? написание самого диплома требуется?

Евгений Рогонков
Евгений Рогонков
Россия, Гремячево, Гремячевская СОШ, 2008