Файл: Классификация систем защиты программного обеспечения (технология, методы и средства информационной безопасности в операционных системах и базах данных).pdf
Добавлен: 28.04.2023
Просмотров: 267
Скачиваний: 2
СОДЕРЖАНИЕ
ГЛАВА 1.БАЗОВЫЕ ПОНЯТИЯ ОБ ИНФОРМАЦИОННЫХ СИСТЕМАХ
1.1.Основы современных операционных систем
1.2. Классификация угроз и атак (STRIDE)
1.3 Назначение операционных систем
ГЛАВА 2. БЕЗОПАСНОСТЬ СЕРВЕРНЫХ ОПЕРАЦИОННЫХ СИСТЕМ
2.1. Самые популярные серверные операционные системы
ВВЕДЕНИЕ
В современных условиях на фоне усиления роли информационной сферы и интенсивного развития информационных технологий существенно возрастают потребности общества и государства в решении вопросов обеспечения информационной безопасности. Сфера жизнедеятельности общества, учитывая динамику научно-технического прогресса, все больше становится зависимой от информационной среды и информационных технологий. Соответственно, от состояния информационной безопасности и мер, принимаемых государством по защите различных видов информации, а также результативности деятельности субъектов ее обеспечения зависит в целом безопасность жизнедеятельности общества и государства.
Современные информационные технологии не только открывают значительные возможности, но и порождают новые проблемы развития российского общества и государства, несут новые опасности, вызовы и угрозы его безопасности, одной из важнейших составляющих которой является информационная безопасность.
Национальная безопасность Российской Федерации существенным образом зависит от обеспечения информационной безопасности, и в ходе развития технического прогресса, быстрыми темпами растущего использования современных информационных технологий эта зависимость неизбежно возрастает. Значимость информационной безопасности для Российской Федерации обусловлена тем, что информационная сфера обеспечивает функционирование всех остальных сфер жизни общества и государства.
Целью данной работы является изучение безопасности серверных операционных систем
Задачи работы:
Рассмотреть основы современных операционных систем;
Дать классификацию угроз и атак (STRIDE);
Показать назначение операционных систем;
Изучить современные аспекты информационной безопасности.
Объектом изучения является информационная безопасность.
Предметом изучения является технология, методы и средства информационной безопасности в операционных системах и базах данных.
Теоретической значимостью является то, что настоящее исследование может выступать, в качестве руководства, при эксплуатации корпоративного сервера.
ГЛАВА 1.БАЗОВЫЕ ПОНЯТИЯ ОБ ИНФОРМАЦИОННЫХ СИСТЕМАХ
1.1.Основы современных операционных систем
Trustworthy Computing (TWC) Initiative
Инициатива под таким названием (инициатива надежных и безопасных вычислений) объявлена в 2002 г. в историческом электронном письме основоположника корпорации Microsoft Билла Гейтса всем сотрудникам компании. Основная суть инициативы TWC заключается в том, что безопасности необходимо уделять особое внимание при разработке программной системы, начиная с самых ранних этапов. Однако этим инициатива TWC не исчерпывается – смысл и цели ее гораздо шире и охватывают также экономические, юридические аспекты и "человеческий фактор".[3]
Основные принципы инициативы TWC:
Безопасность (Security) – реализация и использование в любой программной системе действенных мер защиты от внешних атак; использование специальных методов разработки программ, направленных на достижение этой цели.
Сохранение конфиденциальности информации (Privacy) – использование программным обеспечением частной и корпоративной информации только с явного согласия пользователя и только для понятных ему законных целей; защита конфиденциальной информации от взлома в результате атаки.
Надежность (Reliability) – предсказуемость поведения программных систем, которые должны обеспечивать в заданном окружении ожидаемое правильное поведение программы. [6]
Сама корпорация Microsoft с 2002 г. полностью реорганизовала бизнес-процессы разработки программного обеспечения, используя новую схему жизненного цикла для разработки безопасных программ – SDLC (Security Development Life Cycle).Принципы TWC воплощены во всех новых версиях продуктов Microsoft: Internet Explorer 7 и 8, Windows Vista и др.
Microsoft своей инициативой TWC призвала все остальные компании и индивидуальных разработчиков следовать предложенным ею принципам, хотя изначально отношение к инициативе TWC в мире было достаточно осторожным и даже скептическим.
Microsoft финансировала работы по обеспечению TWC и обучение TWC в университетах.
Следует отметить, что обучение TWC в университетах в мире только начато. Наибольшее внимание этим вопросам в первую очередьуделяют университеты военного подчинения и назначения.
Одним из первых университетов, обучающих студентов ИТ-специальностей принципам TWC, является математико-механический факультет СПбГУ – более подробное изучение TWC в курсе проф. В.О. Сафонова "Архитектуры и модели программ и знаний" (4 курс) и изложение элементов TWC во всех других курсах проф. В.О. Сафонова: "Операционные системы и сети", "Java-технология", "Компиляторы".
Принципы разработки безопасных программных продуктов
Новая схема жизненного цикла для разработки безопасных программ, разработанная и применяемая компанией Microsoft, носит название Security Development Life Cycle (SDLC).Основная идея SDLC – учитывать требования безопасности в течение всего жизненного цикла разработки программ, начиная с самых ранних этапов. Схема SDLC приведена на Рис 1.
увеличить изображение
Рис. 1. Схема Security Development Life Cycle (SDLC).
На схеме приведены традиционные этапы жизненного цикла и стрелками показаны дополнения к ней, которые вносятся SDLC. В течение всего цикла разработки ПО, начиная с самых ранних этапов (требования, спецификации, проектирование), необходимо постоянно предусматривать меры надежности и безопасности ПО, чтобы впоследствии не пришлось их встраивать в систему в "авральном порядке", что значительно увеличит затраты.
Необходимо заранее анализировать и моделировать возможные угрозы и атаки на ПО и разрабатывать меры их отражения.
Необходимы инструменты количественной оценки рисков, с точки зрения надежности и безопасности. [10]
Необходимы специальные виды тестирования ПО – security testing, fuzzy testing (fuzzing) – тестирование подсистемы безопасности и тестирование на граничные или близкие к граничным значения параметров, имитирующее действия хакеров по подбору и взлому IP-адресов и других компонент компьютерной системы.
Необходимы эксперты по безопасности ПО (security buddies),участвующие в разработке в течение всего цикла.
Компания Microsoft предложила ряд простых схем для оценки и разработки безопасного программного обеспечения , для оценки угроз и атак и оценки последствий атаки, которые мы и рассмотрим.
Схема (формула) SD3C определяет основные принципы разработки безопасного программного обеспечения:
Secure in Design – применение принципов безопасного проектирования; учет возможных атак; реализация способов их отражения;
Secure by Default – включение установок безопасности по умолчанию;
Secure in Deployment – безопасное развертывание и инсталляция программного обеспечения;
Communication – постоянное взаимодействие группы сопровождения продукта с пользователями, быстрый выпуск новых версий продукта с исправленными ошибками безопасности; рекомендации по настройке безопасности.
1.2. Классификация угроз и атак (STRIDE)
По формуле STRIDE Microsoft предлагает классифицировать угрозы и атаки:
Spoofing – букв.: пародирование, розыгрыш – "подделка" под определенного пользователя; например, воспроизведение транзакции, выполняющей аутентификацию пользователя.
Tampering – Несанкционированное изменение данных с целью атаки; например, модификация аутентификационных файлов с целью добавления нового пользователя.
Repudiation – буквально означает категорическое несогласие, отрицание, отказ – отсутствие фиксации в системных журналах действий, которые могут привести к нарушению безопасности.
Например, драйвер видеоустройства, который не фиксирует запросы на изменение фокуса и уменьшение размеров изображения (что может привести к его искажению).
Information disclosure – есанкционированный доступ к конфиденциальной информации; например: Получение списка номеров кредитных карт клиентов банка.
Denial of service – Отказ в обслуживании; например: сознательное достижение эффекта излишней загрузки процессора, используя недостатки хеш-алгоритма. [7]
Оценка атак на программное обеспечение
Еще одна формула – DREAD – рекомендуется для оценки внешних атак:
Damage – Ущерб, нанесенный атакой.
Reproducibility – Воспроизводимость атаки: как часто она происходит и может ли быть воспроизведена (смоделирована).
Exploitability – здесь: квалификация (уровень); опыт и квалификация (хакера), необходимые для атаки.
Affected users – Против каких пользователей направлена атака.
Discoverability – Может ли атака быть обнаружена.
Борьба с атаками
Для борьбы с атаками могут быть предусмотрены следующие меры.
Проверка на подозрительные примеры активности – например, несколько подряд попыток ввести неверный пароль могут означать попытку его угадать.
Ведение журнала аудита (audit log) – в него записывается время, пользователь и тип каждой попытки доступа к объекту. Журнал используется для восстановления при нарушении защиты и для выработки более действенных мер безопасности.
Периодическое сканирование системы на предмет "дыр" в системе безопасности. Выполняется в моменты, когда компьютерпрактически не используется (пример - сканирование на вирусы).
Проверки на:
Короткие или простые для угадывания пароли
Несанкционированные программы, устанавливающие другие имена пользователей
Неверную защиту директорий
Неверную защиту системных файлов данных
Опасные элементы в путях для поиска программ (ведущие к троянским программам)
1.3 Назначение операционных систем
Определение операционной системы Центральной частью программного обеспечения ЭВМ является операционная система, в состав которой входят программные средства организации и планирования вычислительного процесса, управления вводом-выводом и данными, подлежащими хранению и обработке, а также средства подготовки и отладки программ пользователей. В ряде случаев используются и другие программные средства, расширяющие функции и возможности операционной системы, например средства обеспечения телеобработки данных, машинной графики и др. Кроме операционной системы в состав программного обеспечения ЭВМ входят также комплексы программ технического обслуживания ЭВМ и пакеты различных прикладных программ. Программное обеспечение ЭВМ находится в состоянии постоянного развития и совершенствования, что повышает эффективность использования ЭВМ, существенно расширяет их возможности и сферу применения. Благодаря этому в последние годы стало возможным создание, например, многопроцессорных вычислительных систем, многомашинных комплексов и сетей ЭВМ, систем коллективного использования и других перспективных вычислительных систем. [8]
ОПЕРАЦИОННАЯ СИСТЕМА (ОС) – совокупность программных средств, обеспечивающая управление аппаратной частью компьютера и прикладными программами, а также их взаимодействие между собой и пользователем. Если говорить об операционной системе ПЭВМ, то следует выделить две основные задачи, решаемые ею. Первая задача - организация связи, общения человека-пользователя с ПЭВМ в целом и с отдельными ее устройствами - устройствами печати, внешней памяти и т.д., в частности выполнение по требованию пользователя именно тех операций над программой в целом, о которых шла речь выше. Общение с ПЭВМ обеспечивается с помощью команд.
Каждая команда представляет собой краткое предписание, определяющее, какую операцию и над каким объектом (программой, файлом) ОС должна выполнить. ОС воспринимает команду, вводимую пользователем, расшифровывает ее и выполняет требуемые операции, весьма сложные и многочисленные, обеспечивающие получение результатов. Тем самым пользователь освобождается от утомительной, рутинной работы. Вторая задача - организация взаимодействия всех блоков ПЭВМ в процессе выполнения программы, и в частности: размещение в ОЗУ данных и результатов решения задачи; при использовании в программе файлов данных размещение их на диске в соответствии с требованием программы и т.д.; - своевременное включение в работу различных блоков и устройств ПЭВМ по требованию программы и пр. Таким образом, при выполнении программы ОС играет роль диспетчера вычислительного процесса. Как мы уже сказали, эффективность операционной системы основана на том, в какой степени она способствует работе по созданию программы, и на том, насколько эффективно с ее помощью выполняется распределение ресурсов вычислительной системы.