
- •1. Основные понятия и определения
- •Протоколирование и аудит
- •2. Источники, риски и формы атак на информацию
- •Определение понятия атаки
- •2.2 Виды атак
- •Инициаторы атак
- •Системы обнаружения атак
- •2.5 Классификация ids по используемым механизмам обнаружения атак
- •Методы анализа и корреляция данных
- •2.7 Архитектура ids
- •2.8 Перспективы развития
- •Представление данных в системах обнаружения атак.
- •Принятие решений, прогнозирование атак.
- •3. Политика безопасности
- •3.1 Суть проблемы
- •3.2 Определение
- •Формирование рекомендаций по формированию политики безопасности, необходимое по и оборудования.
- •3.4 Дискреционная политика (Discretionary policy)
- •Политика mls. (Многоуровневая политика безопасности)
- •4. Стандарты безопасности (классификация систем защиты)
- •4.1 Документы гтк по защите информации [4]
- •4.2 Классификация систем защиты по "Оранжевой книге"
- •4.2.1 Выбор класса защиты
- •Международные стандарты
- •Новый подход к безопасности
- •4.3.2 Содержание и основные идеи "Общих критериев"
- •4.3.3 Функциональные требования общих критериев
- •4.3.4 Требования гарантии "Общих критериев"
- •4.3.5 Классы безопасности компьютерных систем
- •4.3.6 Перспективы Общих критериев
- •4.3.6 Использование стандарта ”Общих критериев” в снг
- •Р ис. 5а. Схема симметричного шифрования
- •5.1 Алгоритмы с секретным ключом
- •5.1.1 Алгоритмы блочного шифрования
- •Стойкость des
- •Гост-28147-89
- •5.2 Алгоритмы с открытым ключом
- •5.2.1 Стандарт ассиметричного шифрования rsa
- •5.2.1.1 Генерация ключей
- •5.3 Комбинированный метод
- •6. Электронная цифровая подпись
- •Положение о эцп в России
- •6.2 Технология обработки и обмена электронными документами
- •7. Алгоритмы аутентификации пользователей
- •Определение и основные типы аутентификации
- •7.1.2 Общие политики аутентификации в Интернете
- •7.1.3 Политика администрирования паролей
- •7.1.4. Политика для устойчивой аутентификации
- •7.2 Протокол аутентификации Kerberos
- •7.2.1 Преимущества протокола Kerberos, версия 5
- •7.2.2 Пример работы протокола
- •7. 2.3 Особенности реализации протокола Kerberos в Windows 2000
- •7. 2.4 Условия использования протокола Kerberos
- •8. Многоуровневая защита корпоративных сетей
- •8.1 Особенности корпоративных сетей.
- •8.1.1 Наличие централизованной справочной службы
- •8.1.2 Серверы приложений
- •8.1.3 Асинхронность
- •Служба безопасности
- •9. Защита информации в сетях
- •9.1 Межсетевые экраны.
- •9.2 Коммутаторы (канальный уровень).
- •9.3 Сетевые фильтры (сетевой уровень).
- •9.4 Шлюзы сеансового уровня (сеансовый уровень).
- •9.4.1 Фильтры контроля состояния канала связи
- •9.4.2 Шлюзы, транслирующие адреса или сетевые протоколы
- •9.4.3 Посредники сеансового уровня
- •9.4.4 Общие недостатки шлюзов сеансового уровня
- •9.5 Посредники прикладного уровня (прикладной уровень).
- •9.6 Инспекторы состояния
- •9.7 Другие возможности межсетевых экранов
- •10. Средства анализа защищенности
- •10.1 Механизмы работы
- •10.2 Этапы сканирования
- •11. Виртуальные частные сети
- •11.1 Основные подходы к построению vpn
- •11.2 Классификация по типу реализации.
- •11.3 Vpn в системах Windows 2000
- •11.3.1 Аутентификация
- •11.3.2 Использование коммутируемых соединений
- •11.3.4 Создание и настройка vpn-подключения
- •12. Защищенные протоколы
- •12.1 Протокол Рoint-to-point tunneling protocol (pртр)
- •12.1.1 Особенности архитектуры
- •12.1.2 Обеспечение безопасности
- •12.2 Протокол l2f
- •12.3 Протоклы ipSec
- •12.3.1 Распределение функций между протоколами ipSec
- •12.3.2 Безопасная ассоциация
- •12.3.3 Транспортный и туннельный режимы
- •12.4 Протокол Secure Socket Layer (ssl)
- •12.4.1 Принцип работы
- •13.1 Локальная безопасность на уровне системы
- •13.1.2 Остальные субъекты локальной безопасности
- •13.2 Безопасность на уровне домена
- •13.3 Безопасность на уровне домена и локальная безопасность
- •14. Безопасность в unix
- •14.1 Система идентификации и аутентификации в unix-подобных ос
- •14.1.1 Пользователи и группы
- •Добавление пользователей
- •14.1.3 Удаление пользователей
- •14.1.4 Группы
- •14.2 Безопасность файловой системы в unix-подобных ос
- •14.2.1 Атрибуты процессов и элементов файловой системы
- •14.3 Права доступа
- •14.3.1 Команды используемые для работы с правами доступа
- •3. Назначение прав доступа по умолчанию.
- •4. Изменение владельца файла и его группы
- •14.4 Доверительные отношения
14.1.3 Удаление пользователей
Аналогично, удаление пользователей может быть выполнено с помощью команд userdel или deluser в зависимости от конкретного дистрибутива. Если вы пожелаете временно "отключть" пользователя от системы, (без удаления его account ), вы можете просто приписать звездочку ("*") в поле пароля в файле пароля /etc/passwd.
Например, изменить у kiwi в файле /etc/passwd
kiwi:*Xv8Q981g71oKK:102:100:Laura Poole:/home/kiwi:/bin/bash это закроет для kiwi вход в систему.
14.1.4 Группы
Каждый пользователь принадлежит к одной или более группам. Каждый файл имеет "групповое владение" ("group ownership"), то есть хранит права доступа, которые определяют, как члены группы могут обращаться с файлом. Существует несколько групп, определяемых системой, вроде bin, mail и sys. Пользователи не могут принадлежать к какой-либо из этих групп. Эти группы используются для системных файлов. А пользователи, наоборот, принадлежат к специальной группе, например users. Файл /etc/group содержит информацию о группах. Формат каждой строки следующий:
group name :password:GID: other members Примерами групп могут быть:
root:*:0:
users:*: 100:mdw,larry
guest:*:200: other:*:250:kiwi
Но пользователь может принадлежать более, чем к одной группе, путем добавления имен пользователей в другие группы (в строки файла /etc/group). Команда groups перечисляет, в какие группы вы входите.
Поле "пароль" в /etc/group редко используется. Иногда оно используется для установления пароля на доступ к группе. Это редко бывает нужно. Для защиты привилегированных групп от обычных пользователей (с помощью команды newgroup) установите в поле пароля звездочку ("*").
Команды addgroup или groupadd могут быть использованы для добавления групп в вашу систему. Обычно легче просто самому добавить запись в /etc/group, поскольку не требуется других настроек при добавлении группы. Для удаления группы просто удалите соответствующую запись в /etc/group.
14.2 Безопасность файловой системы в unix-подобных ос
14.2.1 Атрибуты процессов и элементов файловой системы
Основой идеологии безопасности UNIX-подобных систем является разграничение доступа процессов к элементам файловой системы. В UNIX все системные ресурсы для системных и прикладных программ представлены в виде файлов. Такое единообразие позволяет более гибко управлять ресурсами системы и облегчает работу пользователям и программистам.
Под авторизацией доступа мы понимаем действия системы, которые допускают или не допускают доступ данного пользователя к данному файлу в зависимости от прав доступа пользователя и ограничений доступа, установленных для файла.
Схема авторизации доступа, примененная в ОС UNIX, настолько проста и удобна и одновременно настолько мощна, что стала фактическим стандартом современных операционных систем (не претендующих на качества систем с многоуровневой защитой).
Чтобы понять её, рассмотрим более подробно организацию файлов и процессов в UNIX-подобных системах.
Каждый файл в системе UNIX имеет уникальный индекс. Индекс или индексный дескриптор (i-node или i-узел) - это управляющий блок, который содержит информацию, необходимую любому процессу для того, чтобы обратиться к файлу. Индексы существуют на диске в статической форме и ядро считывает их в память прежде, чем начать с ними работать. Индексы включают в себя следующие поля:
1.Тип файла.
2.Временные сведения, характеризующие работу с файлом: время внесения последних изменений в файл, время последнего обращения к файлу, время внесения последних изменений в индекс.
3.Число указателей на индекс, означающее количество имен файлов, ссылающихся на данный файл.
4.Таблицу адресов дисковых блоков, в которых располагается информация файла. Хотя пользователи трактуют информацию в файле как логический поток байтов, ядро располагает эти данные в несмежных дисковых блоках.
5.Размер файла в байтах.
6.Идентификатор владельца файла (UID) и идентификатор группы (GID).
7.Права доступа к файлу.
Перечисленные выше атрибуты файла находящиеся в его индексе назначаются ядром при создании файла. Обратим внимание, что в индексе отсутствует составное имя файла, необходимое для осуществления доступа к файлу. Содержимое файла меняется только тогда, когда в файл производится запись. Содержимое индекса меняется как при изменении содержимого файла, так и при изменении владельца файла, прав доступа и так далее. Изменение содержимого файла автоматически вызывает коррекцию индекса, однако коррекция индекса еще не означает изменения содержимого файла. При открытии файла индекс копируется в память и записывается обратно на диск, когда последний процесс, использующий этот файл закроет его.
В UNIX существует восемь типов файлов.
Обычные (или регулярные) файлы реально представляют собой набор блоков (возможно, пустой) на устройстве внешней памяти, на котором поддерживается файловая система. Такие файлы могут содержать как текстовую информацию (обычно в формате ASCII), так и произвольную двоичную информацию. Файловая система не предписывает обычным файлам какую-либо структуру, обеспечивая на уровне пользователей представление обычного файла как последовательности байтов.
Для некоторых файлов, которые должны интерпретироваться компонентами самой операционной системы, UNIX поддерживает фиксированную структуру. Наиболее важным примером таких файлов являются объектные и выполняемые файлы. Структура этих файлов поддерживается компиляторами, редакторами связей и загрузчиком. Однако, эта структура неизвестна файловой системе. Для нее такие файлы по-прежнему являются обычными файлами.
Каталоги представляют собой особый вид файлов, которые хранятся во внешней памяти подобно обычным файлам, но структура которых поддерживается самой файловой системой. Структура файла-каталога это таблица, каждый элемент которой состоит из двух полей: номера i-узла данного файла в его файловой системе и имени файла, которое связано с этим номером (конечно, этот файл может быть и каталогом). "Родительским" (parent) каталогом называется каталог, в котором содержится имя данного каталога.
Специальные файлы обеспечивают механизм отображения физических внешних устройств в имена файлов файловой системы. Каждому устройству, поддерживаемому системой, соответствует, по меньшей мере, один специальный файл. Существует два типа специальных файлов:
1. Блок-ориентированный файл устройства служит для представления физического устройства, которое передаёт данные блоками. Примерами являются дисководы жёстких дисков.
2. Байт-ориентированный файл устройства служит для представления физического устройства, которое передаёт данные байтами. Примерами являются принтеры, консоли, модемы.
Доменные гнезда UNIX - соединения между процессами, которые позволяют им взаимодействовать, не подвергаясь влиянию других процессов. Обращение к ним осуществляется через объект файловой системы, а не через сетевой порт. Примеры использующих их стандартных средств: система печати, X Windows.
Именованные каналы (программный канал, pipe) - предназначены для организации канала и создания временного буфера, обеспечивающего взаимодействие двух или более несвязанных процессов посредством записи данных в этот буфер и чтения данных из буфера
Ссылка - дополнительное имя файла. У каждого файла имеется минимум одна ссылка - имя под которым он был создан. Добавлением ссылки создаётся псевдоним файла. UNIX подсчитывает количество ссылок, указывающих на каждый файл, и не освобождает блоки данных до тех пор, пока не удалит его последнюю ссылку. Существует два вида ссылок:
1. Жесткая ссылка - является прямой и указывает на номер индексного дескриптора. Их создание возможно только в пределах одной файловой системы. Могут создаваться только root1 ом.
2. Символическая (косвенная) ссылка представляет собой ссылку по имени. Индексный дескриптор ссылки содержит путевое имя файла, на который делается ссылка. Может указывать на файлы хранящихся в других файловых системах, или даже на не существующие файлы. Несколько символических ссылок могут образовывать цикл.
В приведённой ниже таблице проводится сравнение обоих типов ссылок:
Жесткая ссылка
|
Символическая ссылка
|
Не создаёт нового индексного дескриптора
|
Создает новый индексный дескриптор
|
Не позволяет привилегированному пользователю ссылаться на каталоги
|
Может ссылаться на каталоги
|
Не может ссылаться на файлы в других файловых системах
|
Может ссылаться на файлы в других файловых системах
|
Увеличивает значение счетчика жестких ссылок соответствующего индексного дескриптора
|
Не изменяет значение счетчика жестких ссылок соответствующего индексного дескриптора |
Другой стороной механизма авторизации является процесс:
Процесс - программа находящаяся в стадии выполнения. Новые процессы порождаются другими процессами. Процесс, создавший порождённый процесс (процесс-потомок), становится родительским процессом. Процессы инициированные ядром называются системными процессами. Большинство процессов связаны с пользователями зарегистрированными в системе. Для отслеживания всех активных процессов в ядре UNIX используется таблица процессов.
В структурах данных ядра хранятся информация о каждом процессе, в частности: - идентификатор процесса РID присваиваемый ядром при его создании; - идентификатор родительского процесса PPID; - идентификатор пользователя UID и идентификатор группы GID; - эффективные идентификаторы пользователя и группы EUID и EGID.
Все процессы в UNIX-системе, кроме самого первого (Ю=0), который создаётся программой начальной загрузки системы, создаются с помощью системного вызова fork. Для создания нового процесса существующий процесс копирует самого себя с помощью fork, который создает копию исходного процесса идентичную родителю, но имеющую отличия:
у нового процесса свой PID
PPID нового процесса равен PID родителя
учетная информация нового процесса обнулена;
новый экземпляр дескрипторов файлов.
Но при этом наследуются: UID, GID, EUID, EIGID, SUID, SGID. Исходя из вышесказанного процесс авторизации можно описать следующим образом:
Для определения прав доступа процесса к любому файлу служат EUTD и ЕСГО процесса. Ядро сначала сверяет EUID, от имени которого выполняется процесс, с UTD владельца файла. Если они совпадают, процессу для доступа к файлу предоставляются права владельца файла. Если EUID процесса отличается от UID файла, но EGID совпадает с GID владеющей файлом, процесс получает права доступа, установленные для группы. В случае полного несоответствия предоставляются права доступа по категории "прочие пользователи"
Отсюда видно, что правильнее говорить не о "правах пользователя" по отношению к какому-нибудь элементу файловой системы, а о "правах процесса" (выполняемой программы). Это можно проиллюстрировать следующим:
1. Если пользователь и вносит какие-то изменения в файлы или директории, он это делает с помощью каких-то программ (редакторов, "коммандеров", системных утилит для копирования, удаления файлов и т.п.), которые в момент выполнения являются процессами.
2. Не все программы запускаются пользователями "вручную". Некоторые из них (демоны) запускаются при старте системы. Другие могут запускаться в определенные моменты времени (с помощью программы cron), или вызываться по мере необходимости для обслуживания запросов приходящих по сети (обычно их запускает программа-"диспетчер" inetd). Кроме того, существует ряд программ, которые для выполнения каких-то вспомогательных действий сами запускают другие программы. Понятно, что хотелось бы и этим программам (процессам) ограничить доступ к файлам.
3. В некоторых случаях очень полезно, чтобы программа, запущенная юзером, имела больше прав, чем обычно имеет этот пользователь.