Помощь в написании студенческих работ
Антистрессовый сервис

Исследование уязвимостей операционных систем с использованием программных средств Microsoft Basline Sequrity Analyzer

КурсоваяПомощь в написанииУзнать стоимостьмоей работы

Несовершенство используемого программного обеспечения Программное обеспечение написано человеком, а человек склонен допускать ошибки. При создании программного продукта проследить все связи и возможные ошибки практически невозможно, даже когда над проектом работает большое количество людей. Создатели программных продуктов стараются как можно лучше оптимизировать код программы и избавить его… Читать ещё >

Исследование уязвимостей операционных систем с использованием программных средств Microsoft Basline Sequrity Analyzer (реферат, курсовая, диплом, контрольная)

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

" Оренбургский государственный университет"

Факультет информационных технологий Кафедра вычислительной техники и защиты информации КУрсовая работа По дисциплине «Защита информационных процессов в компьютерных системах»

Исследование уязвимостей ОС с использованием программных средств Microsoft Basline Sequrity Analyzer

Оренбург 2014

Содержание Введение Постановка задачи

1. Исследовательская часть

1.1 Безопасность операционной системы

1.2 Обзор уязвимостей ОС

1.3 Обзор приложения MBSA

2. Практическая часть

2.1 Работа с программами

2.2 Положительные и отрицательные стороны MBSA 2.3

Заключение

Список использованных источников операционный программный microsoft sequrity

Введение

Несовершенство операционных систем и программного обеспечения — едва ли не главная причина колоссального ущерба, нанесенного мировой экономике компьютерными злоумышленниками. Большинство хакерских атак становится возможными из-за наличия уязвимостей в существующих ОС и ПО. В Сети появляется все больше вредоносного кода, который использует их для проникновения в компьютеры, выполнения запрограммированных действий и дальнейшего своего распространения.

Текущее состояние защищенности системы может иметь одно из двух состояний: полностью защищена, либо полностью незащищена. Переход системы из одного состояние в другое осуществляется при обнаружении хотя бы одной уязвимости защиты, возвращение в исходное состояние — при устранении известной уязвимости. Другими словами, рассуждения о степени защищенности ОС неуместны — любая обнаруженная в системе уязвимость делает ее полностью незащищенной (рисунок 1).

Рисунок 1 — Уровень защищенности ОС Под уязвимостью системы защиты понимается такое ее свойство (недостаток), которое может быть использовано злоумышленником для осуществления несанкционированного доступа (НСД) к информации. При этом любая уязвимость системы защиты несет в себе угрозу осуществления злоумышленником НСД к информации, посредством реализации атаки на уязвимость в системе защиты. Таким образом, уязвимость системы защиты — это признак системы, а наличие (отсутствие) известных уязвимостей (известных, так как уязвимости в любой системе защиты присутствуют всегда) является характеристикой защищенности (текущего состояния защищенности) системы.

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

Считая, что обнаружение каналов НСД к информации (уязвимостей) — (или в терминологии теории надежности — отказов системы защиты), и процесс их устранения являются пуассоновскими потоками (соответственно, с интенсивностями л и м), можно оценить с использованием простейшей формулы (1):

С=1-л/м (1)

Уязвимости устраняются по мере их обнаружения, иначе нельзя обеспечить высокую интенсивность исправлений. Надежность системы защиты — вероятность того, что в любой момент времени система защищена (определяется тем условием, что число не устраненных уязвимостей равно 0)(таблица 1).

Таблица 1 -Вероятность защищенности системы.

Интенсивность отказов

1 в год

2 в год

5 в год

10 в год

Восстановление

1 нед.

0,98

0,96

0.93

0,81

2 нед.

0,96

0,92

0,81

0,62

1 мес.

0.92

0,85

0,62

0,23

2 мес.

0,85

0,69

0,24

-;

3 мес.

0,77

0,54

-;

-;

4 мес.

0,69

0,39

-;

-;

Рассмотрев, например, значение «0,98» (лучшее значение надежности системы защиты в таблице). Оно достигается в том случае, если в среднем обнаруживается одна уязвимость в год при среднем времени ее восстановления разработчиком, составляющим одну неделю. При этом вероятность того, что в любой момент времени система защищена, равна 0,98, т. е. в любой момент времени с вероятностью 0,02 систему защиты можно считать отказавшей. Для современных систем это практически идеальная ситуация. Сегодня во многих современных системных средствах за год находится отнюдь не одна уязвимость, а продолжительность устранения уязвимости разработчиком может составлять несколько месяцев.

Используя данный подход, можно оценить защищенность современных ОС, с учетом того, что средняя задержка появления исправлений — один-два месяца. Обнаружение лишь 5 уязвимостей в год уже является достаточным для вывода о незащищенности системы.

Таким образом, безопасность ОС характеризуется не только достаточностью и корректностью реализации механизмов защиты, но и ошибками программирования, приводящими к уязвимостям, а также способностью разработчика системы быстро и качественно устранять подобные ошибки.

Также от эффективности защиты операционных систем напрямую зависит уровень безопасности сетевой инфраструктуры организации в целом. Системы анализа защищенности способны обнаруживать уязвимости в сетевой инфраструктуре, анализировать и выдавать рекомендации по их устранению, а также создавать различного рода отчеты. В данной работе будет использоваться такое программное средство для анализа защищенности ОС, как Microsoft Baseline Security Analyzer.

Постановка задачи Целью данной курсовой работы является выявление уязвимостей ОС Microsoft Windows 7 с помощью программного продукта Microsoft Baseline Security Analyzer. Данная цель достигается путем выполнения следующих задач:

— Выбор версии и последующая установка Microsoft Baseline Security Analyzer;

— Проведение аудита нашей ОС с помощью данной программы;

— Сравнение нашего «Сканера» с другим программными продуктами обладающими такими же заявленными возможностями.

— Возможное устранение найденных уязвимостей.

1. Исследовательская часть

1.1 Безопасность операционной системы У различных категорий людей слово «безопасность» вызывает свои ассоциации. Имеется множество разновидностей этого термина, которые связаны с различными сферами деятельности человека. Например, государственная безопасность или безопасность жизнедеятельности, политическая или строительная безопасность. Вообще таких разновидностей большое количество, в каждом случае к этому термину предъявляются специфические для конкретного рода деятельности требования, отличные от всех остальных. Обобщенное же определение термина «безопасность» можно сформулировать так: безопасность — это набор средств и требований, направленных на предотвращение запрещенных действий, выполнение которых может привести к нежелательным последствиям.

Термин «информационная безопасность» появился сравнительно недавно, с развитием вычислительной техники и ЭВМ. Информационная безопасность включает в себя кроме безопасности используемого программного обеспечения, также безопасность аппаратных средств, безопасность каналов связи и многое другое.

Под безопасностью же операционной системы понимается помимо безопасности самого ядра операционной системы еще и безопасность программного обеспечения, установленного на ней. Другими словами, безопасность операционной системы — это комплекс мер, направленных на предотвращение действий со стороны пользователя или других программ, которые могут привести к нарушению нормального функционирования операционной системы.

Если есть запрет, появится и человек, который попытается его нарушить! С развитием информационных технологий и внедрением компьютера практически во все сферы деятельности появились люди, так называемые «крякеры» (от англ. cracker — «взломщик компьютерных сетей и программ»), которые различными ухищрениями и нестандартными методами пытаются с целью собственной выгоды получить несанкционированный доступ к информации, которая для них не предназначена. Порой это приводит к плачевным последствиям для владельца этой информации. Тогда и возникла потребность в борьбе с «информационными вредителями». Были разработаны целые комплексы программ для усиления информационной безопасности и борьбы с крякерами. А поскольку любым электронно-вычислительным комплексом управляет определенная ОС, то, соответственно, для обеспечения безопасности системы в целом необходимо позаботиться о безопасности самой ОС.

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

Изучая безопасность ОС, нельзя не коснуться теории компьютерной безопасности. Теория компьютерной безопасности оперирует тремя основными понятиями: угроза, уязвимость и атака.

Угроза безопасности компьютерной системы — это потенциально возможное происшествие, которое может оказать нежелательное воздействие на саму систему (такое, как перезагрузка, зависание), а также на информацию, находящуюся в ней (удаление, порча файлов и так далее).

Уязвимость компьютерной системы — это такая неудачная или не совсем корректная ее характеристика, которая представляет возможным возникновение угрозы. Уязвимости как раз и являются причиной возникновения неприятных ситуаций.

К уязвимостям можно отнести следующие состояния информационных систем:

— Несовершенство используемого программного обеспечения Программное обеспечение написано человеком, а человек склонен допускать ошибки. При создании программного продукта проследить все связи и возможные ошибки практически невозможно, даже когда над проектом работает большое количество людей. Создатели программных продуктов стараются как можно лучше оптимизировать код программы и избавить его от ошибок, но, тем не менее, предусмотреть все возможные ситуации не представляется возможным. Иногда такие недоработки не несут никаких критических последствий для самой программы или данных, которыми она оперирует, но бывает, что они позволяют использовать программу в целях, отличных от тех, для которых она создавалась первоначально, иногда с очень серьезными последствиями (порча данных, например). Такие недоработки в программе обычно называют «дырами» .

Еще существует такое понятие, как «люк». Люком называют специальные комбинации действий над программой, которые позволяют обойти некоторые этапы выполнения. Обычно люки используются программистами при разработке и тестировании программ с целью обхода уже проверенных блоков и в конце должны «закрываться», то есть программный код, отвечающий за люк, должен быть удален из готовой программы. Но то, что должно, делается не всегда. Программист попросту может забыть про люк, в результате люк остается в готовой программе и может представлять угрозу для правильного выполнения;

— Неправильная настройка программного обеспечения Безопасность системы во многом зависит от правильной настройки программного обеспечения, установленного в ней. За правильную настройку программ, установленных на пользовательском компьютере, отвечает сам пользователь компьютера (обычно, его владелец), за правильную настройку программ и сервисов, работающих на специализированном компьютере, обслуживающем запросы пользователей (сервере), отвечает администратор. В обоих случаях эти лица несут полную ответственность за сохранность данных и нормальное функционирование программ на обслуживаемом компьютере. От того, насколько правильно настроено то или иное программное обеспечение, может зависеть, получит злоумышленник доступ к компьютеру или нет.

1.2 Обзор уязвимостей ОС Используя статистику успешных атак, представленную в существующих каталогах, их можно сгруппировать на основании используемых уязвимостей. Объединение по различным признакам позволяет получить следующую классификацию атак:

— получение имени и пароля ОС или БД.

В эту группу входят уязвимости позволяющие узнать из файлов и реестра имена и пароли пользователей системы, включая имя и пароль администратора;

— получение имени и пароля других служб и приложений.

Такие уязвимости позволяют сделать тоже, что и в первой группе, но с учетом того, что несистемные имена и пароли могут совпадать с системными;

— крах системы.

Уязвимости, приводящие к аварийному завершению работы системы в результате ошибки в ядре. Типичная настройка ОС Windows генерирует файл дампа памяти, в котором могут содержаться имена и пароли пользователей в том или ином виде;

— использование некорректных настроек безопасности реестра.

Позволяет беспрепятственно читать и записывать информацию из/в реестр ОС. Поскольку реестр — это системная БД ОС, которой также пользуются и другие приложения, получив к нему полный доступ можно получить полный доступ и к ОС;

— использование некорректных настроек файловой системы.

Для ОС Windows применяются файловые системы FAT и NTFS. Есть различные версии этих файловых систем. Одни абсолютно не защищены (FAT), другие развиваются и включают все большее количество возможностей по защите (NTFS). Разрешения на чтение и запись в файловой системе позволяет узнавать конфиденциальную информацию и менять конфигурации ОС и приложений;

— подмена адреса программы, становится возможной, если получен доступ к реестру или файловой системе (см. предыдущие пункты). Замена стандартных программ с известными именами на вредоносные, возможно скрытые программы, позволяет незаметно внедряться в систему, расширяя права до прав системы или администратора;

— получение доступа к временным файлам (доступ к общим папкам неразделяемым ОС), Позволяет получить имена и пароли пользователей из временных файлов;

— использование ошибок программирования. Уязвимости, в результате наличия которых некорректно изменяются настройки безопасности после изменения состояния ОС, например переход в ждущий режим или запуск заставки. Некорректные настройки позволяют злоумышленнику расширить свои права в ОС;

— использование ошибки каталога «.» (две точки).

Полное имя файла включает в себя имена вложенных каталогов. Часто в конфигурациях безопасности явно указываются каталоги, к которым разрешен или запрещен доступ. Системный каталог «.» означает ссылку на родительский каталог данного каталога. Указав в пути к файлу системный каталог «.», из-за этого типа уязвимостей, можно получить доступ к файлам, изначально не подлежащим доступу. Кроме этого, уязвимость позволяет подменять одни файлы другими, включая исполняемые;

— перехват информации пользователя.

Позволяет получить имена и пароли, вводимые пользователем с клавиатуры или прочитать конфиденциальную информацию так же вводимую пользователем;

— определение имени пользователя (information leak).

Часто удаленные атаки, совершаемые злоумышленниками, имеют своей целью сбор первичной информации об атакуемой системе, а ряд уязвимостей позволяет удаленно получать список пользователей системы или имя текущего пользователя. Это позволяет более осмысленно искать недостающие пароли;

— дезинформация пользователя.

Эти уязвимости позволяют совершать с системой вредоносные манипуляции, о которых система или приложения либо не сообщают пользователю, либо явно дезинформируют его в результате программных ошибок;

— поиск и подбор пароля.

Стандартная функция для пользователя становится уязвимостью при получении доступа к компьютеру злоумышленником. Одним из основных действий, совершаемых с использованием возможности запуска произвольной программы, является поиск и подбор паролей пользователей. В эту группу не включаем запуск программ-тестов безопасности (exploit), которые необходимы для реализации уязвимостей. Эту группу также можно назвать «запуск вспомогательных программ». Ниже рассматриваются уязвимости требующие возможности запуска программ-тестов (exploit) без которых нельзя получить доступ к интерфейсам, недоступным через графический интерфейс и командную строку — например, подключение к именованным каналам, генерация нестандартных сетевых пакетов для служб различных протоколов. Все ручные операции и часть программ-тестов должны быть выполнены локально остальные с использованием сети локально или удаленно. Место запуска в нашей классификации характеризует необходимые или начальные условия для совершения атаки;

— удаление и перезапись.

Уязвимости этой группы позволяют удалять следы пребывания в системе злоумышленника, позволяя некорректно стирать и перезаписывать системные журналы событий;

— отождествление прав с правами системы (priveledge escalation/elevation, protection bypass, buffer overflow).

Ошибки компонентов системного ПО связанные с передачей или расширением прав приводят к выполнению произвольного кода с привилегиями системы или администратора.

1.3 Обзор приложения MBSA

Microsoft Baseline Security Analyzer (MBSA) — свободно распространяемое средство анализа защищенности операционных системWindows и ряда программных продуктов компании Microsoft (Internet Information Services, SQL Server, Internet Explorer и др.). Термин «Baseline «в названии MBSA следует понимать как некоторый эталонный уровень, при котором безопасность ОС можно считать удовлетворительной. MBSA позволяет сканировать компьютеры под управлением операционных систем Windows на предмет обнаружения основных уязвимостей и наличия рекомендованных к установке обновлений системы безопасности. Критически важно знать, какие обновления установлены, а какие еще следует установить на вашей ОС. MBSA обеспечивает подобную проверку, обращаясь к постоянно пополняемой Microsoft базе данных в формате XML, которая содержит информацию об обновлениях, выпущенных для каждого из программных продуктов Microsoft. Работать с программой MBSA можно через графический интерфейс и командную строку.

Интерфейс MBSA выполнен на основе браузера Internet Explorer. Главное окно программы разбито на две области. Так как сеанс работы с MBSA настраивается с помощью мастера, то в левой области представлены шаги мастера, а в правой — основное окно с описанием действий каждого шага (рисунок 2).

Рисунок 2 — Интерфейс MBSA

на таблице ниже (таблица 2) приведены параметры которые можно включать в аудит в данном приложении:

Таблица 2 — Параметры аудита.

Проверка

Описание

Administrators

Выводит список учетных записей локальных администраторов компьютера

Auditing

Выводит настройки аудита на локальном компьютере

Autologon

Проверяет, включена ли функция Autologon

Domain Controller Test

Проверяет, не запущена ли служба IIS на контроллере домена (DC)

Exchange Server Security Updates

Проверяет пропущенные исправления для системы безопасности Exchange Server

File System

Проверяет тип файловой системы (например, NTFS)

Guest Account

Проверяет, не активирована ли учетная запись Guest

IE Zones

Выводит зоны безопасности IE для каждого пользователя

IIS Admin Virtual Directory

Просматривает виртуальный каталог IISADMPWD

IIS Lockdown Tool

Проверяет, проведена ли процедура защиты IIS Lockdown

IIS Logging Enabled

Выдает рекомендации по журналированию сайтов HTTP и FTP

IIS Security Updates

Проверяет пропущенные исправления для системы безопасности IIS

Local Account Password Test

Проверяет наличие пустых или слабых паролей для локальных учетных записей

Macro Security

Выводит установки для макросов Office по пользователям

Msadc and Scripts Virtual Directories

Просматривает виртуальный каталог MSADC и Scripts

Outlook Zones

Выводит зоны безопасности Outlook для каждого пользователя

Parent Paths

Выводит информацию о наличии ссылок на каталоги верхнего уровня от Web-узлов или виртуальных каталогов

Password Expiration

Выводит учетные записи с неограниченным сроком действия паролей, не перечисленные в NoExpireOk. txt

Restrict Anonymous

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

Sample Applications

Выводит установленные примеры приложений для IIS (например, Default Web Site, IISHelp)

Services

Выводит список несущественных служб (например, FTP, SMTP, Telnet, WWW), которые могут ослабить безопасность

Shares

Проверяет и выводит список общих ресурсов, а также их списки ACL

SQL Server Security Updates

Проверяет пропущенные исправления для системы безопасности SQL Server

SQL: CmdExec role

Проверяет ограничение на запуск CmdExec только для SysAdmin

SQL: Domain Controller Test

Проверяет, не запущен ли SQL Server на DC

SQL: Exposed SQL Password

Проверяет, не присутсвует ли пароль администратора (SA) в текством файле (например, setup. issили sqlstp. log)

SQL: Folder Permissions

Проверяет разрешения файлов в каталоге установки SQL Server

SQL: Guest Account

Выводит базы данных с активной учетной записью гостя

SQL: Registry Permissions

Проверяет разрешения реестра на разделы SQL Server

SQL: Service Accounts

Проверяет членство в группах учетных записей SQL Server и SQL Server agent

SQL: SQL Account Password Test

Проверяет на пустые или слабые пароли локальных учетных записей SQL

SQL: SQL Server Security Mode

Проверяет, запущен SQL Server в режиме Windows Only или Mixed

SQL: SysAdmin Role Members

Выводит членов роли SysAdmin

SQL: SysAdmins

Выводит количество SysAdmins

Windows Media Player Security Updates

Проверяет пропущенные исправления для системы безопасности WMP

2. Практическая часть

2.1 Работа с программами Так как программный продукт будет тестироваться на Windows 7, то с официального сайта (http://www.microsoft.com/en-us/download/confirmation.aspx?id=7558) была скачана последняя версия данного приложения и была произведена его установка (рисунок 3).

Рисунок 3 — установка Microsoft Baseline Security Analyzer 2.3

После настройки программы (рисунок 4) был произведен аудит ОС который выдал следующий результат (рисунок 5).

Рисунок 4 — настройка параметров аудита Рисунок 5 — Результат аудита системы Была обнаружено несколько серьезных уязвимостей, так как наша ОС давно не обновлялась. Было включено «автоматическое обновление операционной системы». Данная уязвимость была устранена в ходе повторной проверки с помощью MBSA. Серьезных уязвимостей не обнаружено.

Также была проведена проверка системы с помощью другой программы (рисунок 6) в которой имеется встроенная функция проверки системы, с целью сверить полученные результаты, но Kaspersky не обратил на них внимания (рисунок 7).

Рисунок 6 — Интерфейс программы Кaspersky internet security

Рисунок 7 — Результат проверки ОС Следующим программным продуктом был «Windows Vulnerability Scanner» (рисунок 8).

Рисунок 8 — Результат проверки системы программой Как видно из рисунка, сканирование выдало ID найденных уязвимостей в нашей системе, такие же уязвимости показала нам и MBSA, по каждой строчке есть инструкция решения уязвимости и её полное описание (рисунок 9).

Рисунок 9 — Уязвимость MS13−099 critical

2.2 Положительные и отрицательные стороны MBSA 2.3

После проведения проверок нашей ОС с помощью различных программ, можно сделать сравнительный анализ (таблица 3).

Таблица 3 — Сравнение MBSA c программами выполняющие аналогичные функции.

Критерий

MBSA 2.3

Kaspersky IS

Winvulscan

Руссификация

;

;

Проверка нескольких компьютеров

;

;

Настройка параметров аудита

;

;

Скорость проверки ОС

;

Бесплатность

;

Положительный результат проверки

;

Сохранение результата проверки (log)

Заключение

В ходе данной курсовой работы были выполнены все поставленные задачи:

— Был произведен выбор программного продукта и его установка;

— Была произведена настройка параметров аудита;

— Была устранена найденная уязвимость;

— Была проведена проверка результата с другими программными продуктами.

В заключение хочется сказать что MBSA 2.3 во многом превосходит другие программные продукты тем что имеет более широкий набор возможностей, из минусов то что данная программа не руссифицирована.

Список использованных источников

1. Осовецкий Л., Шевченко В. Оценка защищенности сетей и систем // Экспресс электроника. 2002. № 2 — 3. С. 20 — 24.

2. Карпычев В. Ю., Минаев В. А. Цена информационной безопасности // Системы безопасности. 2003, № 5. С. 128 — 130.

3. Девянин П. Н. и др. Теоретические основы компьютерной безопасности. — М.: «Радио и Связь» — 2000.

4. Карасик И. Программные и аппаратные средства защиты информации для персональных компьютеров / /КомпьютерПресс № 3, 1995

5. Мафтик С. Механизмы защиты в сетях ЭВМ. /пер. с англ. М.: МИР, 1993.

6. Петров В. А., Пискарев С. А., Шеин А. В. Информационная безопасность. Защита информации от несанкционированного доступа в автоматизированных системах. — М., 1998.

7. Проскурин, В. Г. Защита в операционных системах / В. Г. Проскурин, С. В. Крутов, И. В. Мацкевич. — М.: Радио и связь, 2000.

8. Безбогов, А. А. Безопасность операционных систем: учебное пособие / А. А. Безбогов, А. В. Яковлев, Ю. Ф. Мартемьянов. — М.: «Издательство Машиностроение-1», 2007. — 220 с.

Показать весь текст
Заполнить форму текущей работой