- •0.1 Что такое операционная система?
- •0.1.1 Структура вычислительной системы
- •0.1.2 Что такое ос?
- •Раздел 1 Основные понятия ос Тема 1.1. Основные понятия. Эволюция ос.
- •1.1.1 Основные понятия
- •1.1.2 Краткая история эволюции вычислительных систем
- •Принцип функциональной избирательности
- •Принцип генерируемости ос
- •Принцип функциональной избыточности
- •Темак 1.2 Принципы построения ос. Состав ос. Функции ос.
- •1.2.1 Принципы построения ос
- •Принцип модульности
- •Принцип виртуализации
- •Принцип независимости программ от внешних устройств
- •Принцип совместимости
- •Принцип открытой и наращиваемой ос
- •Принцип переносимости
- •Принцип обеспечения безопасности вычислений
- •1.2.2 Назначение и состав операционной системы компьютера.
- •1.2.3 Функции ос
- •1.2.4 Классификация ос
- •Тема 1.3 Архитектура ос (монолитные и микроядерные ос).
- •1.3.1 Монолитное ядро
- •1.3.2 Слоеные системы (Layered systems)
- •1.3.3 Виртуальные машины
- •1.3.4 Микроядерная архитектура.
- •1.3.5 Смешанные системы
- •1.6 Резюме
- •Раздел 2 Машинно-зависимые свойства ос Тема 2.1 Управление процессами (планирование и диспетчеризация)
- •2.1.1 Понятие процесса
- •2.1.2. Состояния процесса
- •2.1.3. Операции над процессами и связанные с ними понятия
- •2.1.3.1. Набор операций
- •2.1.3.2. Process Control Block и контекст процесса
- •2.1.3.3. Одноразовые операции
- •2.1.3.4. Многоразовые операции
- •2.1.3.5. Переключение контекста
- •2.1.4. Резюме
- •Тема 2.2 Управление памятью Часть 1 Физическая память
- •2.2.1 Основы управления памятью
- •2.2.2 Связывание адресов.
- •2.2.3 Простейшие схемы управления памятью.
- •2.2.3.1 Схема с фиксированными разделами.
- •2.2.3.2 Свопинг
- •2.2.3.3 Мультипрограммирование с переменными разделами.
- •2.2.4 Резюме
- •Часть 2 Виртуальная память
- •2.2.5. Проблема размещения больших программ. Понятие виртуальной памяти.
- •2.2.6 Архитектурные средства поддержки виртуальной памяти.
- •2.2.7 Страничная память
- •2.2.8 Сегментная и сегментно-страничная организации памяти
- •2.2.9 Таблица страниц
- •2.2.10 Ассоциативная память.
- •2.2.11 Иерархия памяти
- •2.2.12 Размер страницы
- •Тема 2.3 Обработка прерываний
- •2.3.1. Механизм общей обработки прерывания
- •2.3.2. Программные прерывания или системные вызовы
- •2.3.3.Аппаратные или внешние прерывания
- •2.3.3.1. Немаскируемые внешние прерывания
- •2.3.3.2. Маскируемые внешние прерывания
- •2.3.4. Внутренние прерывания или исключения.
- •2.3.5. Таблица прерываний
- •2.3.6. Уровни приоритета прерываний
- •Тема 2.4 Обслуживание ввода-вывода
- •2.4.1 Основные понятия и концепции организации ввода/вывода в ос
- •2.4.2 Менеджер ввода-вывода
- •2.4.2.1.Основные задачи супервизора следующие:
- •2.4.2.2. Состав супервизора:
- •2.4.3. Основные режимы ввода/вывода:
- •2.4.5. Виды ввода-вывода:
- •2.4.6. Функции ос по обслуживанию ввода-вывода:
- •Раздел 3 Машинно-независимые свойства ос Тема 3.1 Планирование заданий
- •3.1.1. Стратегия планирования
- •3.1.2. Дисциплины диспетчеризации
- •3.1.3. Вытесняющие и не вытесняющие алгоритмы диспетчеризации
- •3.1.4. Качество диспетчеризации и гарантии обслуживания
- •3.1.5. Диспетчеризация задач с использованием динамических приоритетов
- •Тема 3.2. Организация файловых систем. Типы файловых систем fat16, fat32, vfat, ntfs и другие.
- •Часть 1 Основные понятия
- •3.2.1 Введение в ос
- •3.2.2 Имена файлов
- •3.2.3 Структура файлов
- •3.2.4 Типы и атрибуты файлов
- •3.2.5 Доступ к файлам
- •3.2.6 Операции над файлами.
- •3.2.7 Директории. Логическая структура файлового архива.
- •3.2.9 Защита файлов.
- •3.2.9.1 Контроль доступа к файлам
- •3.2.9.2 Списки прав доступа
- •3.2.10 Резюме
- •Часть 2 Реализация файловой системы
- •3.2.11 Интерфейс файловой системы.
- •3.2.12 Общая структура файловой системы
- •3.2.13 Структура файловой системы на диске.
- •3.2.13.1 Методы выделения дискового пространства
- •3.2.13.2 Управление свободным и занятым дисковым пространством.
- •3.2.13.3 Размер блока
- •3.2.14 Реализация директорий
- •3.2.13.4 Структура файловой системы на диске
- •3.2.14.1 Примеры реализации директорий в некоторых ос
- •3.2.14.2 Поиск в директории
- •3.2.15 Монтирование файловых систем.
- •3.2.16 Связывание файлов.
- •3.2.16.1 Организация связи между каталогом и разделяемым файлом
- •3.2.17 Кооперация процессов при работе с файлами.
- •3.2.18 Надежность файловой системы.
- •3.2.18.1 Целостность файловой системы.
- •3.2.18.2 Управление плохими блоками
- •3.2.19 Производительность файловой системы
- •3.2.20 Реализация некоторых операций над файлами.
- •3.2.20.1 Системные вызовы, работающие с символическим именем файла.
- •3.2.20.2 Системные вызовы, работающие с файловым дескриптором
- •3.2.21 Современные архитектуры файловых систем
- •3.2.22 Резюме
- •Часть 3. Примеры файловых систем
- •3.2.23. Файловая система fat
- •3.2.24 Файловая система fat32
- •3.2.25. Файловая система vfat
- •3.2.26. Файловая система ntfs
- •Тема 3.3. Защищенность и отказоустойчивость ос
- •3.3.1. Введение в безопасность ос
- •3.3.2 Классификация угроз
- •3.3.3 Формализация подхода к обеспечению информационной безопасности. Классы безопасности
- •3.3.5 Криптография, как одна из базовых технологий безопасности ос.
- •3.3.6 Введение в защитные механизмы операционных систем
- •3.3.7. Идентификация и аутентификация
- •3.3.7.1 Пароли, уязвимость паролей
- •Шифрование пароля
- •3.3.8. Авторизация. Разграничение доступа к объектам ос
- •3.3.8.1 Домены безопасности
- •3.3.8..2 Матрица доступа
- •3.3.8.3 Недопустимость повторного использование объектов
- •3.3.9. Аудит, учет использования системы защиты
- •3.3.10. Анализ некоторых популярных ос с точки зрения их защищенности.
- •3.3.11. Резюме
- •Раздел 4 ос ms-dos Тема 4.1 Структура ос ms-dos
- •4.1.1. Структура dos
- •4.1.2. Загрузка. Dos
- •Тема 4.2 Команды ms-dos
3.3.2 Классификация угроз
Знание возможных угроз, а также уязвимых мест защиты, которые эти угрозы обычно эксплуатируют, необходимо для того, чтобы выбирать наиболее экономичные средства обеспечения безопасности.
Общей классификации угроз не существует. Имеет смысл различать неумышленные и умышленные угрозы.
Неумышленные угрозы связаны с:
Ошибками оборудования или матобеспечения: сбои процессора, питания, нечитаемые дискеты, ошибки в коммуникациях, ошибки в программах.
Ошибками человека: некорректный ввод, неправильная монтировка дисков или лент, запуск неправильных программ, потеря дисков или лент.
Форс-мажорными обстоятельствами
Умышленные угрозы, в отличие от случайных, преследуют цель нанесения ущерба пользователям ОС и, в свою очередь, подразделяются на активные и пассивные. Пассивная угроза - несанкционированный доступ к информации без изменения состояния системы, активная - несанкционированное изменение системы. Можно выделить следующие типы угроз:
Незаконное проникновение под видом легального пользователя
Нарушение функционирования системы с помощью программ-вирусов или программ-червей.
Нелегальные действия легального пользователя.
Типизация угроз не слишком строгая.
А.Таненбаум приводит свой список наиболее успешных атак на ОС:
Попытки чтения страниц памяти, дисков и лент, которые сохранили информацию предыдыдущего пользователя.
Попытки выполнения нелегальных системных вызовов, или системных вызовов с нелегальными параметрами
Внедрение программы, которая выводит на экран слово login . Многие легальные пользователи, видя такое, начинают пытаться входить в систему, и их попытки могут протоколироваться (вариант Троянского коня).
Попытки торпедировать программу проверки входа в систему путем многократного нажатия клавиш del, break, rubout, cancel и.т.д. В некоторых системах проверочная программа погибает, и вход в систему становится возможным.
Подкуп персонала. Hапример, малооплачиваемого секретаря.
Использование закладных элементов (дыр), специально оставленных дизайнерами системы.
И т.д.
Много говорят и пишут и о программных вирусах, червях, троянских конях. В этой связи обратим внимание на следующий факт, несмотря на экспоненциальный рост числа известных вирусов, аналогичного роста количества инцидентов, вызванных вирусами, не зарегистрировано. Соблюдение несложных правил компьютерной гигиены сводит риск заражения практически к нулю. Многопользовательские компьютеры меньше страдают от вирусов по сравнению с персональными компьютерами, поскольку там имеются системные средства защиты. Мы не будем останавливаться на уточнении понятий "зловредный код", "вирус", "червь", "Троянский конь", бомба.
Таковы основные угрозы, на долю которых приходится львиная доля урона, наносимого информационным системам.
3.3.3 Формализация подхода к обеспечению информационной безопасности. Классы безопасности
Существует ряд основополагающих документов, в которых регламентированы основные подходы к проблеме информационной безопасности:
оранжевая (по цвету обложки) книга МО США
гармонизированные критерии европейских стран
руководящие документы Гостехкомиссии при Президенте РФ
рекомендации X.800 по защите распределенных систем
федеральный закон Об информации, информатизации и защите информации.
и др.
Основополагающие документы открыли путь к ранжированию информационных систем по степени надежности. Так, в Оранжевой книге определяется четыре уровня безопасности - D , С , В и А. По мере перехода от уровня D до А к надежности систем предъявляются все более жесткие требования. Уровни С и В подразделяются на классы (C1, С2, В1, В2, ВЗ). Чтобы система в результате процедуры сертификации могла быть отнесена к некоторому классу, ее политика безопасности и гарантированность должны удовлетворять оговоренным требованиям.
В качестве примера рассмотрим требования класса C2, которому удовлетворяют некоторые популярные ОС (Windows NT, отдельные реализации Unix и др.):
Каждый пользователь должен быть идентифицирован уникальным входным именем и паролем для входа в систему. Система должна быть в состоянии использовать эти уникальные идентификаторы, чтобы следить за действиями пользователя.
Операционная система должна защищать объекты от повторного использования.
Владелец ресурса (например, такого как файл) должен иметь возможность контролировать доступ к этому ресурсу.
Системный администратор должен иметь возможность учета всех событий, относящихся к безопасности.
Система должна защищать себя от внешнего влияния или навязывания, такого как модификация загруженной системы или системных файлов, хранимых на диске.
15.4 Политика безопасности
Основополагающие документы содержат определения многих ключевых понятий связанных с информационной безопасностью. Так, например, важность и сложность проблемы обеспечения безопасности требует выработки политики информационной безопасности, которая подразумевает ответы на следующие вопросы:
Какую информацию защищать?
Какого рода атаки на безопасность системы могут быть предприняты?
Какие средства использовать для защиты каждого вида информации?
В дальнейшем мы будем оперировать понятиями субъект и объект безопасности. Субъект безопасности - активная, а объект - пассивная системные составляющие, к которым применяется политика безопасности. Примерами субъектов могут служить пользователи и группы пользователей, а объектов - файлы, системные таблицы, принтер и т.п. Политика безопасности состоит в присвоении субъектам и объектам идентификаторов и фиксации набора правил, используемых для определения, имеет ли данный субъект авторизацию, достаточную для получения к данному объекту данного типа доступа.
Формируя политику безопасности необходимо учитывать несколько базовых принципов. Так, Saltzer и Schroeder (1975) на основе своего опыта работы с MULTICS сформулировали следующие принципы разработки ОС:
Проектирование системы должно быть открытым. Hарушитель и так все знает. (криптографические алгоритмы открыты)
Не должно быть доступа по умолчанию. Ошибки с отклонением легитимного доступа могут быть выявлены скорее, чем ошибки, там, где разрешен неавторизованный доступ
В третьих. Тщательно проверять текущее авторство. Так, многие системе проверяют привилегии доступа при открытии файла и не делают этого после. В результате пользователь может открыть файл и держать его открытым в течение недели и иметь к нему доступ, хотя владелец уже сменил защиту.
Давать каждому процессу минимум возможных привилегий. ...
Защитные механизмы должны быть просты, постоянны и встроены в нижний слой системы, это не аддитивные добавки. (Известно много неудачных попыток улучшения защиты слабо приспособленной для этого ОС MS-DOS).
Физиологическая приемлемость. Если пользователь видит, что защита требует слишком много усилий, он от нее откажется.
Можно добавить еще ряд, например:
Принцип комплексного подхода, баланс надежности защиты всех уровней
Принцип единого контрольно-пропускного пункта
Принцип баланса возможного ущерба от реализации угрозы и затрат на ее предотвращение
И ряд других.
Приведенные соображения показывают необходимость продумывания и встраивания защитных механизмов на ранних стадиях проектирования системы.
