- •1.Основные св-в безопасной ос. Основные принципы построения безопасных ос.
- •2.Стандарты иб в обл. Ос. Оценка и сертификация ос по треб-ям без-ти инф-ции
- •4 Уровня контроля отсутствия ндв:
- •3. Упр-е доступом в ос. Дискрец. Упр-е дост. Особ-ти реал-ции в ос unix и Linux
- •4.Упр-е дост. В ос. Принудит. Упр-е дост. Особ-ти реализации в ос unix и Linux.
- •5. Суб. И объекты доступа в ос. Атр. Без-ти файла в ос Linux. Хранение атр. Без-ти.
- •6. Суб. И об. Доступа в ос. Атр. Без-ти процесса. Хранение атр.В без-ти. Жиз. Цикл процесса. Сост-я процесса. Вып-е процесса в режиме ядра и в режиме польз-ля.
- •7. Субъекты и объекты доступа в ос. Взаимод-е процессов в ос Linux. Механизм сигналов. Реакция на получение сигнала. Игнорир-е и перехват сигналов.
- •9. Упр-е дост. Польз-лей к файлам в ос Linux. Права доступа к файлам и кат-гам в ос Linux. Кодир-е прав доступа. Влия-е прав доступа на вып-е операций над ф и к.
- •10. Упр-е доступом польз-лей к файлам в ос Linux. Назначение прав доступа к файлам и каталогам при создании файла. Маска доступа. Изменение прав доступа.
- •11.Упр-е доступом к файлам в linux. Списки прав доступа acl: формат, хранение, создание, удаление, права по умолчанию для каталогов.
- •12. Упр-е польз-лями в ос Linux. Хар-и бюджета польз-ля. Формат файла /etc/passwd.
- •13. Идт-я, аут. И авт. Польз-ля. Вход польз. В сист. Вып-е команд от им. Др. Польз
- •14.Упр-е польз-лями в ос Linux. Создание, модиф-ция, удаление бюджета польз-ля
- •15.Упр-е польз. В ос Linux. Гр. Польз. Перв. Гр., pug. Формат файла /etc/group.
- •16.Упр-е польз-лями в ос Linux. Создание, модиф-ция, удал-е группы польз-лей.
- •17. Упр-е польз-ми в ос Linux. Хар-ки пароля польз-ля. Формат файла /etc/shadow
- •18. Упр-е польз-лями в ос Linux.
- •19. Упр-е дисковыми разделами, фс и простр-вом свопинга.
- •20. Упр-е дисковыми разделами, фс и пространством свопинга. Дисковые фс. Типы фс. Формат фс unix. Создание фс. Монтир-еФс.
- •21. Упр-е дисковыми разделами, фс и простр-вом свопинга. Создание и форматир-е раздела свопинга. Подключение и отключение раздела свопинга.
- •22.Упр-е по, входящим в состав ос. Без-ть при установке, обновлении и удалении по. Основные возм-ти системы упр-я пакетами rpm.
- •23.Упр-е по ос. Пакет rpm. Зависимости пакетов. Состав пакета (файлы, метаданные, скрипты). Бинарные и src-пакеты. Назначение spec-файла.
- •24.Упр-е по ос. Верификация установл. Пакета. Восстановление прав доступа файлов по бд пакетов. Восстановление владельца и группы файлов по бд пакетов.
- •25. Упр-е по ос. Обесп-е без-ти при уст-е и обнов-ии по ос. Подпись пакетов rpm.
- •26. Упр-е сервисами
- •27. Упр-е системными и сетевыми сервисами. Упр-е service-юнитами. Разрешенные и запрещённые сервисы. Запуск, останов и перезагрузка сервиса.
- •28. Упр-е системными и сетевыми сервисами. Упр-е target-юнитами, target-юнит по умолчанию.
- •29.Упр-е системными и сетевыми сервисами. Выгрузка системы, перезагрузка, приостановка и остановка системы.
- •30.Система принудит. Упр-я доступом seLinux. Режимы работы. Формат файла /etc/selinux/config. Получение инф-ции о режиме работы. Изменение режима работы.
- •31. Сист. Принуд. Упр-я дост. SeLinux. Об и суб дост. Назн-е и формат контекста без.
/boot/grub/grub.conf – файл с конфигом для загрузчика GRUB.
В строке kernel, касающейся selinux, добавить enforcing=0 (постоянный Permissive) или selinux=0 (постоянный Disabled)
31. Сист. Принуд. Упр-я дост. SeLinux. Об и суб дост. Назн-е и формат контекста без.
SELinux – реализация системы принудительного контроля доступа. Разграничение доступа основывается на ограничении доступа процессов к ресурсам. Все разграничение доступа в ОС основывается на типах атрибутов доступа объектов и субъектов. В SELinux эти атрибуты называются security context или контекст без-ти. Объекты доступа – то, к чему производится доступ: файлы; сокеты; network hosts; каналы, использующиеся для связи процессов друг с другом. Субъекты доступа – та сущность, которая пытается получить доступ к объекту доступа. Субъект доступа – это процесс. Все объекты и субъекты имеют связанный с ними контекст без-ти. Контекст без-ти состоит из 3х частей: польз-ль, роль и тип. Обычно контекст без-ти отображается в след виде: user:role:type
Чтобы увидеть отображение контекста без-ти достаточно добавить опцию -Z в команду. Например: $ id -Z
joe:user_r:user_t.
В SELinux индентификатор type явл-ся главной частью контекста без-ти, которая опр-ет, разрешен ли доступ или нет. Идентификатор type процесса часто называют доменом. Идентификаторы user и role имеют малое влияние на политику разграничения доступа для type enforcement. По отн-ю к процессам user и role имеют большее значение, так как они исп-ся для контроля соотв-я между type и идентификатором польз-ля (а следовательно, с аккаунтами польз-лей Linux).
По отн-ю к объектам user и role практически не имеют влияния. По соглашению role объекта – обычно object_r, а идентификатор user объекта - обычно пользовательский идентификатор процесса, который создал этот объект.
Назначение контекста без-ти – сопоставить каждому объекту и субъекту в системе свою метку, которая будет однозначно идентифицировать права. На основе сравнения вырабатывается окончательное решение о разрешении доступа или о запрете.
Есть несколько схем реализации разграничения доступа в SELinux. Одна из этих схем – Type Enforcement – основной механизм контроля доступа, используемый в целевых политиках. Позволяет детально, на самом низком уровне управлять разрешениями. Самый гибкий, но и самый трудоемкий для системного администратора механизм.
В SELinux доступ к любым объектам д.б. явно разрешен. В SELinux запрещает доступ по умолчанию, это значит, что в SELinux нет суперпольз-ля по умолчанию, как root в Linux.
Разрешение доступа для определенного типа субъекта (для домена) к определенному типу объекта осущ-ся при помощи команды allow.
Команда allow принимает 4 аргумента: source type (обычно домен процесса, которому разрешаем доступ); target type (тип объекта, к которому разрешаем доступ); object class (класс объекта); permissions (по сути действия, которые субъект может совершать над объектом с указанными типом и классом)
Пример: allow user_t bin_t : file {read execute getattr};
- разрешить процессам с доменом user_t чтение, запуск на исполнение и получение атрибутов файлов с типом bin_t.
getattr позволяет процессу получать сведения об объекте (дату создания, время создания и т.д.).
Визуализация правила allow: Рассмотрим, как программа passwd использует Type Enforcement для разграничения доступа. Программа passwd должна иметь доступ для чтения и редактирования файла /etc/shadow. В Linux достаточно запустить passwd от root, в Type Enforcement же исп-ся более тонкая настройка – можно разрешить доступ к файлу /etc/shadow только программе passwd, вне зависимости от того, какой польз-ль ее запустил.
В данном примере мы ввели 2 идентификатора type: passwd_t (домен, который будет использовать программа passwd) и shadow_t (тип для файла /etc/shadow).
Рассмотрим команду allow подробнее: ее назначение – разрешить домену passwd_t доступ к файлу с типом shadow_t. Это нужно для того, чтобы разрешить процессу перемещать и создавать новый shadow файл.
На картинке выше можно видеть, что упр-е файлом shadow будет выполнено успешно, т.к. процесс имеет эффективный id root и потому что правило allow Type Enforcement разрешает данному домену процесса доступ к файлу shadow.
32. Система принудит. упр-я доступом SELinux. Классы объектов ФС. Права доступа к обычному файлу (объект file). Назначение контекста файлам. Наследование по умолч-ю. Переход типа. Копир-е и перемещение файла внутри и за пределы ФС.
Классы объектов – категории каких-либо ресурсов, напр, files, sockets, а разрешения представляют собой доступ к этим ресурсами, напр, read, write, send….
Классы объектов:
Dir – директории
File – обычные файлы
Fd – дескрипторы файлов
Filesystem – Файловые системы
Lnk_file – Символьная ссылка (указатель на файл)
Process – процесс
System – Система в целом
Чтобы объявить класс объекта исп-ся оператор объявления: class class_name
Права доступа к классу file: append, create, entrypoint (file м.б. использован, как точка доступа к новому домену с помощью доменного перехода (об этом далее)), execute, link (создание жесткой ссылки), getattr, setattr, read, rename и т. д.
Изменение контекста без-ти файла
сhcon – изменяет контекст без-ти файла.
restorecon – восстанавливает контекст без-ти, определенный политикой.
Наследование контекста по умолчанию: Если процесс работает с каким-то контекстом и запускает новый процесс, то тот будет иметь тот же контекст. Файл или директория, созданные в директории с определенным контекстом, будут иметь тот же контекст.
Доменный переход – изменение польз-ля, роли или типа. Переход прописывается в политике без-ти. Условия разрешения доменного перехода:
Первоначальный домен должен иметь право execute на файл
allow user_t passwd_exec_t : file {execute getattr};
В контексте файла д.б. определен entrypoint к целевому домену
allow passwd_t passwd_exec_t : file entrypoint;
Первоначальный домен должен иметь разрешение переходить в целевой домен.
allow user_t passwd_t : process transition;
Пример: изменение пароля: если доменный тип user_t будет иметь возм-ть читать и записывать в файл с паролями, тогда любая программа сможет просматривать и изменять этот файл. Мы хотим, чтобы только программа с доменом passwd_t имела к нему доступ.
Копирование и перемещение файла внутри и за пределы файловой системы.
Если копировать файлы с помощью команды cp, то файл унаследует контекст без-ти от директории, в которую его копируют, поскольку он создает новый файл в целевой директории. С помощью опции –Z можно задать лэйбл (тип) файлу: –Z user:role:type.
Пример: cp -Z user_u:object_r:user_home_t foo /tmp/
Чтобы сохранить текущий контекст исп-ся cp –preserve=context
--context исп-ся чтобы изменить контекст без-ти копии.
cp –contest=system_u:object_r:samba_share_t:s0 file1 file2
При перемещении с помощью mv файлы сохраняют свой текущий контекст без-ти.