Пояснительная записка Самойлов Д.С. 24Б (1209227), страница 3
Текст из файла (страница 3)
Осознанное внесение изменение в данные подготовленные в соответствие с протоколом. Для проведения данного вида тестирования должны быть проведены дополнительные исследования с целью определения, какие части данных должны оставаться константными, а какие изменяться. Подход является наиболее интеллектуальным, однако увеличивается затрата времени исследователя.
По типу воздействия фазеры можно разделить на несколько классов: локальные, удаленные, в памяти и универсальные.
Локальные фаззеры:
– фаззеры командной строки. Используются для выявления ошибок, связанных с разбором входных параметров программ;
– фаззеры переменных окружения. Используются для выявления ошибок, связанных с обработкой данных, получаемых через переменные окружения;
– фаззеры файлов. Используются для тестирования программного обеспечения, принимающего файлы в качестве входных данных.
Удаленные фаззеры:
– фаззеры сетевых протоколов. В зависимости от сложности протокола применяются фазеры соответствующей сложности;
– фазеры web-приложений. Получили особую актуальность с развитием Web 2.0;
– фазеры web-браузеров. Тестируется правильность разбора, как HTML-тэгов, так и других поддерживаемых расширений. Особо стоит выделить фазеры com-объектов поддерживаемых браузерами.
Фаззинг в памяти напрямую воздействует на точки ввода данных в код, минуя средства доставки данных. Методика требует более детального разбора и по этой причине описана в отдельном пункте.
Под универсальными фаззерами здесь понимается инструментарий для быстрой разработки инструментов фаззинга (fuzzing framework). Такой инструментарий должен содержать в себе примитивы для генерации входных данных, а так же для их внедрения. На их основе может быть разработан фаззер необходимой конфигурации.
-
Методы тестирования систем защиты
В анализе защищенности помимо использования методов поиска уязвимостей в ПО необходимо еще использовать методы тестирования систем защиты, так как любой программный продукт, используемый для защиты ИС, может иметь уязвимости.
Для проверки надежности и качества механизмов защиты, их устойчивости по отношению к различным атакам, а также для цели поиска уязвимостей проводится тестирование системы защиты ИС. Тестировать можно соблюдение любых требований, соответствие которым выявляется во время работы ПО. Выделяют виды тестирования, связанные с проверкой определенных характеристик и атрибутов качества — тестирование функциональности, надежности, удобства использования, переносимости и производительности, а также тестирование отдельных атрибутов — защищенности, функциональной пригодности и пр.
Традиционно используются два основных метода тестирования:
– по методу «черного ящика»;
– по методу «белого ящика».
Данные методы направлены на выявление трех основных видов ошибок:
– функциональности, которая поддерживается программным продуктом;
– производимых вычислений;
– допустимого диапазона, обрабатываемые программным продуктом.
Если тестирование на основе стратегии «белого ящика» исследует внутреннюю работу программы, то методы тестирования «черного ящика» сравнивают поведение приложения с соответствующими требованиями.
-
Метод «черного ящика»
На основе этой стратегии тестирование может быть лишь при наличии установленных открытых интерфейсов, а именно программный интерфейс приложения или интерфейс пользователя.
Стратегия «черного ящика» включает в себя следующие методы формирования тестовых наборов:
– эквивалентное разбиение;
– анализ граничных значений;
– предположение об ошибке;
– анализ причинно-следственных связей.
Группа тестирования изучает входные и выходные данные программного продукта. При тестировании методами черного ящика важно участие пользователей, поскольку именно они лучше всего знают, каких результатов следует ожидать от деятельности. Ключом к успешному завершению системного тестирования является корректность данных. Поэтому на фазе создания данных для тестирования крайне важно, чтобы конечные пользователи предоставили как можно больше входных данных.
Тестирование при помощи методов черного ящика направлено на получение множества входных данных, которые наиболее полно проверяют все функциональные требования системы. Это не альтернатива тестированию по методу белого ящика. Этот тип тестирования нацелен на поиск ошибок, относящихся к целому ряду категорий, среди них:
– неверная или пропущенная функциональность;
– ошибки интерфейса;
– проблемы удобства использования;
– методы тестирования на основе автоматизированных инструментов;
– ошибки в структурах данных или ошибки доступа к внешним базам данных;
– проблемы снижения производительности и другие ошибки производительности;
– ошибки загрузки;
– ошибки многопользовательского доступа;
– ошибки инициализации и завершения;
– проблемы сохранения резервных копий и способности к восстановлению работы;
– проблемы безопасности.
-
Метод «белого ящика»
Под понятием «белый ящик» обычно понимают, что при разработке тестовых случаев группа тестирования использует любые доступные сведения о внутренней структуре ИС или коде программы. Технологии, которые применяются во время использования метода «белого ящика», обычно называют технологиями статического тестирования.
Так как выявление синтаксических ошибок определяет компилятор, то данный метод ставит иные цели, которые направлены на локализацию ошибок, особенно сложно выявляемые, а в дальнейшем найти и зафиксировать данные ошибки. С их помощью можно обнаружить логические ошибки и проверить степень покрытия тестами.
Тестовые процедуры, которые связаны с использованием стратегии «белого ящика», используют управляющую логику процедур. Они предоставляют ряд услуг, в том числе:
– дают гарантию того, что все независимые пути в модуле проверены по крайней мере один раз;
– проверяют все логические решения на предмет того, истины они или ложны;
– выполняют все циклы внутри операционных границ и с использованием граничных значений;
– исследуют структуры внутренних данных с целью проверки их достоверности.
Тестирование посредством белого ящика, как правило, включает в себя стратегию модульного тестирования, при котором тестирование ведется на модульном или функциональном уровне и работы по тестированию направлены на исследование внутреннего устройства модуля. Данный тип тестирования называют также модульным тестированием, тестированием прозрачного ящика (clear box) или прозрачным (translucent) тестированием, поскольку сотрудники, проводящие тестирование, имеют доступ к программному коду и могут видеть работу программы изнутри. Данный подход к тестированию известен также как структурный подход.
На этом уровне тестирования проверяется управляющая логика, проявляющаяся на модульном уровне. Тестовые драйверы используются для того, чтобы все пути в данном модуле были проверены хотя бы один раз, все логические решения рассмотрены во всевозможных условиях, циклы были выполнены с использованием верхних и нижних границ и проконтролированы структуры внутренних данных.
-
Анализ защищенности внешнего периметра ИС
Защита внешнего периметра ИС является обязательной точкой в сфере обеспечения ИБ и включает в себя шлюзы безопасности, средства межсетевого экранирования, организацию виртуальных частных сетей, системы обнаружения и предотвращения вторжений (рисунок 1.4). Целью данного мероприятия является оценка уровня защищенности инфраструктуры информационных технологий ИС от атак со стороны сети Интернет, оценка возможной опасности уязвимостей, которые были выявлены, а также возможности по осуществлению атак. По итогу производится выработка рекомендаций по устранению и ликвидации уязвимостей, которые были обнаружены. То есть реализация этих действий является одной из основных задач ИБ и поддержкой основы надежного функционирования ИС.
Рисунок 1.4 – Схема сети организации
Сам же анализ производится рядом действий потенциально возможного нарушителя, проникающего в корпоративную сеть с целью внедрения вредоносного ПО, деструктивности сети, кражи информации конфиденциального характера. Также производится анализ настройки средств, составляющих защиту периметра сети.
Во время выполнения анализа в действие может быть введено множество инструментальных средств сетевого сканирования, подбора паролей, специализированные средства разбора сетевых приложений и веб-сайтов, кроме этого не исключены ручные проверки.
При анализе настройки средств защиты внешнего периметра ЛВС и координации межсетевыми взаимодействиями, должное внимание необходимо уделять на моменты, которые определены их конфигурацией:
– настройка правил разграничения доступа (правил фильтрации сетевых пакетов) на МЭ и маршрутизаторах;
– настройка параметров системы регистрации событий;
– настройка механизмов оповещения об атаках и реагирования;
– наличие и работоспособность средств контроля целостности;
– используемые схемы и настройка параметров аутентификации;
– использование механизмов, обеспечивающих сокрытие топологии защищаемой сети;
– версии используемого ПО и наличие установленных пакетов программных коррекций.
Пример проверочных мероприятий:
– проверка межсетевых экранов на наличие уязвимостей;
– проверка на степень устойчивости и возможности проникновения в локальную сеть компании из внешних ресурсов, включающих похищение и порчу данных;
– обследование Web и почтового серверов.
По итогам обнаружения уязвимостей, составляются и предоставляются документальные свидетельства потенциально возможных нарушений конфиденциальности, целостности или доступности информации в предоставленных для исследования объектах.
Отчет по результатам работы должен содержать:
– общую оценку уровня защищенности корпоративной сети от внешних атак;
– подробное описание обнаруженных уязвимостей;
– рекомендации по устранению, ликвидации уязвимостей;
– рекомендации по совершенствованию защиты.
-
Анализ защищенности внутреннего периметра ИС
Основной задачей анализа защищенности внутренней инфраструктуры информационных технологий сети – это определение уязвимостей ИС, которые дают возможность выполнения реализации атак на уровне сети на информационные ресурсы со стороны внутренних нарушителей (рисунок 1.5). Производится оценка степени критичности по выявленным уязвимостям и возможности реализации атак, следствием чего идет выработка рекомендаций по ликвидации этих уязвимостей.
В отличие от анализа защищенности внешнего периметра, анализ внутреннего периметра сети включает в себя как внешние, так и внутренние проверки хостов и установленные на них приложения.
Рисунок 1.5 – Схема сети организации
К внутренним проверкам относят изучение настроек ОС и приложений по спискам проверки на соответствие техническим стандартам и рекомендациям производителей, аудит паролей, а также проверки, которые определяются спецификой определенных систем.
Анализ защищенности внутреннего периметра ИС основывается на проведении полного комплекса мероприятий по техническому аудиту и включает в себя:
– анализ конфигурационных файлов маршрутизаторов, МЭ, почтовых серверов, DNS серверов и других элементов сетевой инфраструктуры;
– анализ конфигурации рабочих станций ЛВС и серверов за счет специализированного ПО и списков проверки;
– сканирование узлов сети, которые входят в состав ЛВС.
Также как и в случае анализа внешнего периметра корпоративной сети, по итогам внутреннего обнаруживаются уязвимости, составляются и предоставляются документальные свидетельства потенциально возможных нарушений конфиденциальности, целостности или доступности информации в предоставленных для исследования объектах.
Также должен быть составлен отчет по результатам работы анализа внутреннего периметра сети, включающий в себя:
– общую оценку уровня защищенности корпоративной сети от внутренних атак;
– подробное описание обнаруженных уязвимостей;
– рекомендации по устранению, ликвидации уязвимостей;
– рекомендации по совершенствованию защиты.
-
Инструментальные средства анализа защищенности
Анализ защищенности ИС включает в себя немало действий, при которых используются разные методики по поиску уязвимостей. Существуют инструментальные средства, которые включают в себя эти методики поиска уязвимостей и позволяют автоматически сканировать ПО и ИС в целом.
Ввиду того, что в любом ПО, присутствуют какие-либо уязвимости, возникающие на различных этапах «жизненного цикла» (проектировании, реализации, внедрении), то нарушители создают программы, позволяющие найти и использовать эти недостатки программы в автоматическом или ручном режиме.
В наше время большое количество атак на ресурсы ИС, в которых присутствуют уязвимости, ведется в автоматическом режиме и это ведет к различным ущербам предприятий. Для того чтобы определить данные уязвимости, степень их опасности, используют инструментальные средства анализа защищенности.
Инструментальный анализ защищённости представляет собой автоматизированное тестирование на проникновение согласно той или иной модели нарушителя.
При анализе защищенности информации могут быть задействованы:
-
Средства анализа защищенности ОС и сетевых сервисов
Средствами анализа защищенности ОС проводится контроль неизменности и целостности программных средств и системных установок, а также проверка присутствия уязвимостей системных и прикладных служб.