На пятом курсе было подумал, что неплохо было бы поступить в аспирантуру, стать кандидатом наук, возможно преподавать. Подошел к заведующему кафедрой сказал про своё желание - на что он предложил выступить на конференции, что собственно и сделал.
На прошлой неделе прошла ежегодная региональная научно-практическая конференция в г. Волгограде – Проблемы обеспечения информационной безопасности в регионе. С докладами выступали работники ФСТЭК, ФСБ, Администрации Волгоградской области, Казначейства, Пенсионного фонда и прочие. Кроме них доклады подготовили студенты 4, 5 курсов моей специальности, в том числе и я. Конференция прошла довольно интересно, после неё нам была предложена работа, но до этого момента я не досидел;) Впервые мой доклад напечатали в книге, содержащей отчеты по данной конференции, рад конечно. )) Свой доклад изменил, по сравнению с первой версией, поэтому сейчас представлю её здесь:
Разработка многоагентной модели борьбы с распространением сетевых червей
Разработка многоагентной модели связана с возможностью наблюдения динамических изменений в процессе взаимодействия нескольких интеллектуальных агентов. Этот процесс включает в себя начальные состояния отдельных агентов и изменение состояний агентов во времени.
В основе архитектуры разработанной модели лежат три класса агентов: агенты сетевых червей, агенты операционных систем и агенты антивируса.
Данные классы агентов можно формально представить в виде картежа элементов:
{N, P, A},
где N – вид (тип) агента, P – свойства (параметры) данного агента и A – его поведение.
Агент операционной системы является наименее динамичным. В его описание входят – наличие последних заплаток, уровень пользователя, а также наличие P2P-клиента и список пользователей IM. Под агентом операционной системы понимается пользователь компьютера, на котором установлена данная система. Здесь важным параметром является его уровень. Это этого зависит – будут ли установлены необходимые заплатки, закрывающие дыры для распространения червя и уровень эвристического анализа антивируса. Помимо этого уровень пользователя влияет также на то, откроит ли пользователь неизвестный файл, пришедший по e-mail, а если и откроет, то отправит ли его на экспертизу в антивирусную компанию. Соответственно, если файл отправлен на экспертизу, то через определённое время червь появляется в базе данных сигнатур антивируса и удаляется из операционной системы.
Агент антивируса описывается: базой данных сигнатур и уровнем эвристического анализа. Агент антивируса – это программное обеспечение, установленное в операционной системе, цель которого предотвратить проникновение червя в эту систему. Антивирус периодически обновляет базы вирусных сигнатур. Также червь может попасть в сигнатуры через хосты-ловушки антивируса (приходит по e-mail или в результате атаки сетевым червём). Нельзя не учесть уровень эвристического анализа антивируса – если уровень сложности реализации сетевого червя не многим больше уровня эвристики, антивирус может посчитать файл подозрительным и отослать его к себе на анализ, что так же приведёт к добавлению сигнатуры червя в базы данных сигнатур. Уровень эвристического анализа у всех антивирусов разный.
Агент сетевого червя описывается: видом червя, уровнем сокрытия в системе и уровнем сложности определения эвристикой. Под ним понимается злонамеренное программное обеспечение, целью которого стоит заражение как можно большего количества операционных систем. Работает по следующему алгоритму – червь сканирует диапазоны ip-адресов и последовательно проверяет установленные на них операционные системы на наличие определённых дыр. Если дыра в системе есть – используя её, он поражает систему, далее, червь продолжает своё распространение через сеть, контакты мессенджера, e-mail, а также если в операционной системе установлен p2p-клиент. Согласно этому, выделяются следующие виду червей по способу распространения:
1) IM черви – рассылают себя по контактам мессенджера агента операционной системы;
2) E-mail черви – для рассылки червей через почту используется e-mail-сервер, который содержит почтовые ящики пользователей (формат: id_отправителя, id_получателя, id_вируса). Проверка почты полностью расположена в агенте операционной системы, через определённые промежутки времени. За данный промежуток времени сигнатура червя может попасть в базу данных антивируса. Также присутствует возможность подключать к почтовому серверу агент антивируса;
3) Net Worm – рассылаются по компьютерам сети, при наличии уязвимости в операционной системе;
4) P2P – распространяются через P2P-сети при скачивании какой-либо программы. Реализованы следующим образом – пользователь агента операционной системы из клиента P2P, подключается к другому случайному агенту и скачивает программу. Эта программа может быть как нормальной (незаражённой), так и заражённой червём.
Многоагентная модель перечисленных классов агентов, отображена на следующем рисунке:
Количество агентов операционных систем не ограничено, на них установлены агенты антивируса с разным уровнем эвристики, заплатки – либо система обновлена полностью, либо не обновлена совсем. Так же случайно устанавливаются мессенджеры, e-mail и наличие p2p-клиента. Далее запускается агент сетевого червя, который начинает распространяться описанными выше видами. Сначала эпидемия поражает большую часть компьютеров, через некоторое время сигнатура червя попадает в базу данных сигнатур и начинается обратный процесс очистки компьютеров от червей.
Таким образом алгоритм работы системы в целом будет следующим:
1) Задается конфигурация (свойства) операционных систем, случайным образом;
2) Задается конфигурация антивирусов, установленных на операционных системах;
3) В информационную систему запускается червь, использующий все свои методы для заражения и распространения в данной ИС;
4) При столкновении червя с антивирусом проверяются параметры антивируса: если есть сигнатура или высокий уровень эвристики – червь удаляется, если нет сигнатуры и уровень эвристики минимальный – червь занимает ОС и продолжает своё распространение;
5) Через определенное время сигнатура червя попадает в базу данных сигнатур и начинается очистка от данного червя;
6) На почтовом сервере включаются антивирусы, т.е. черви, чьи сигнатуры есть в базе данных сигнатур антивируса удаляются;
Это один из сценариев борьбы с распространением сетевых червей, второй работает аналогичным образом, за исключением того, что на почтовых серверах устанавливается антивирусное программное обеспечение, следовательно, борьба с эпидемией червей будет проходить быстрей, т.к. распространение червей через e-mail будет невозможным.
Посредством данной модели и разрабатываемого приложения можно будет отследить возникновение эпидемии сетевых червей и процесс противоборства им антивирусного.