С. В. Рощин, С. М. Аракелян

Вид материалаДокументы
Подобный материал:

Использование специализированных систем моделирования для анализа устойчивости
телекоммуникационной инфраструктуры
к вирусным и другим атакам

С.В. Рощин, С.М. Аракелян


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

В работе рассматривается проблема моделирования процессов в информационных компьютерных сетях на различных уровнях модели OSI (Open Systems Interconnection) с использованием специализированных систем моделирования ns-2 и SSF.

Проектирование и построение крупных компьютерных информационных сетей, способ­ных успешно функционировать и противодействовать различного рода вирусным и хакер­ским атакам, является чрезвычайно сложной задачей. Не секрет, что на практике при рабо­те в Интернет даже простому пользователю, который чаще всего вряд ли представляет большой интерес с точки зрения ценности хранящейся на его компьютере информации, приходится сталкиваться со множеством неприятностей – вирусные атаки, поток посто­ронней корреспонденции (спам) и др. Что уж тут говорить о крупных корпоративных информационных системах, открытых для доступа через Интернет, которые одновремен­но обслуживают десятки и сотни тысяч внешних пользователей. Чаще всего именно подобные системы и представляют особый интерес для незаконного проникновения и/или вывода системы из строя. При этом речь может идти как о весьма простых атаках типа сканирования портов, так и о более сложных, например с подменой имен DNS, и даже о сложных распределенных DoS (Denial of Service) атаках, в которых задействуются сотни и тысячи компьютеров ничего не подозревающих пользователей Интернет.

В настоящее время ведущими компаниями производителями сетевого и системного программного обеспечения разработано множество типовых архитектурных схем построения крупных центров данных с доступом через Интернет, которые обеспечивают высокий уровень защищенности и надежности. Среди таких решений можно выделить, например, методологию Microsoft Systems Architecture 2.0 фирмы Microsoft, а также решения Cisco Systems, IBM, Intel и др. Причем, например, в документации MSA 2.0 приводится детальное описание параметров конфигурации всех устройств, сервисов, даны рекомендации по обслуживанию и рассмотрены варианты оперативного устранения возникших проблем. Однако практически во всех рассмотренных решениях за кадром остаются процессы, происходящие собственно в стеке протокола операционной системы, при передаче пакетов данных через каналы связи, при маршрутизации и т. п.

В настоящее время существует несколько программных пакетов для моделирования процессов в телекоммуникационных сетях на различных уровнях модели OSI. В большинстве случаев эти инструменты разработаны на платформах семейства UNIX, но легко переносятся и на другие платформы, например, Windows и Mac. Кратко рассмотрим наиболее известные – ns и SSF.

Система моделирования ns (Network Simulator) разработана и развивается в рамках проекта под названием VINT совместно UC Berkeley, LBL, USC/ISI и Xerox PARC [1; 2]. Проект поддерживается организацией DARPA (Defense Advanced Research Project Agency). Текущей является версия два (ns-2). Симулятор полностью написан на языке C++ и распространяется с открытым кодом. В качестве управляющего интерфейса используется язык OTcl. Определять и управлять моделью можно как через интерфейс OTcl, так и с использованием языка C++. Во второй версии ns была проведена ревизия иерархии классов, используется объектная версия языка Tcl, а также внесен ряд изменений в структуру модулей исходных кодов.

Первоначально ns разрабатывался на платформе семейства UNIX/Linux, однако легко может быть откомпилирован под управлением Windows. Кроме того, работа ns-2 может быть организована под управлением любой поддерживаемой платформы с использованием эмуляторов POSIX-систем, например RedHat CYGWIN или Microsoft Interix.

SSF (Scalable Simulation Framework) представляет собой дискретный симулятор событий для сложных систем [3]. Текущая версия SSF – 2.0. Существует несколько реализаций SSF на языках Java и C++, которые поддерживаются различными организациями:
  • Raceway – высокоскоростная реализация Java SSF API фирмы Renesys Corp.;
  • JSSF – эталонная реализация Java SSF API фирмы Cooperating Systems Corp.;
  • CSSF – эталонная реализация C++ SSF API фирмы Cooperating Systems Corp.;
  • DaSSF – многопоточная реализация C++ SSF API, выполненная в Dartmouth.

Каждая из модификаций имеет некоторые персональные особенности, однако реализует одну и ту же идею. Во всех случаях интерфейсом для моделирования служат либо специальный язык DML (Domain Modeling Language) [4], который отличается простым синтаксисом и служит для декларации топологии и объектов моделей сетей, либо языки Java и C++. Совместно с SSF распространяется открытый код Java моделей протоколов (IP, TCP, UDP, BGP4, OSPF и др.), аппаратных устройств (маршрутизатор, коммутатор, хост и др.), а также ряд вспомогательных классов, необходимых для моделирования.

При использовании обоих инструментов пользователь может расширять функциональ­ность системы, разрабатывая на основе предоставляемых стандартных классов собствен­ные модификации. Таким образом, ns-2 и SSF представляют собой универсальную среду для моделирования, легко адаптируемую для новых технологий, например, новых прото­колов или устройств коммуникации.

В рамках ведущихся исследований вышеуказанные системы моделирования используются для моделирования сценария распространения вирусного червя с последующей запланированной DoS атакой на сервисы открытого для доступа через Интернет фрагмента сетевой инфраструктуры мнимой компании.

За основу в сценарии взято поведение хорошо известного по событиям зимы 2003/2004 г. вируса W32.Blast в различных модификациях.

Предполагается, что корпоративная сеть построена по схеме, предложенной в документации MSA 2.0 фирмы Microsoft [5], и включает в состав сегменты IDC (Internet Data Centre) и EDC (Enterprise Data Centre). Компьютерная сеть состоит из центрального фрагмента и двух региональных офисов, связанных между собой через VPN посредством открытых каналов связи Интернет.

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

Целью работы является выявление слабых мест в рассматриваемой архитектуре путем более дешевого (в широком смысле) по сравнению с физическим экспериментом моделирования. В процессе моделирования используются оба симулятора ns-2 и SSF, что позволяет дополнительно убедиться в адекватности полученных результатов.

На основании результатов моделирования выявлены некоторые особенности обоих пакетов моделирования, например незначительные различия в реализации протоколов TCP/IP. Тем не менее качество результатов моделирования позволяет сделать выводы в пользу эффективности использования данных средств моделирования в ходе проектирования сложных компьютерных систем, при котором становится возможным избежать некоторых проблем еще на этапе проектирования.

___________________

1. S. McCanne and S. Floyd. ns – Network Simulator. cs.berkeley.edu/ns/.

2. The ns manual. du/nsnam/ns/ns-documentation.php.

3. James H. Cowie Scalable Simulation Framework API Reference Manual.
t.org/SSFdocs/ssfapiManual.pdf.

4. Domain Modeling Language (DML) Reference Manual. t.org/SSFdocs/dmlReference.php.

5. MSA 2.0: Microsoft Systems Architecture. soft.com/technet.