Тестирование алгоритмов искусственной иммунной системы: ais и clonalg

Знакомство с искусственными иммунными системами

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

Теория. Естественные и искусственные иммунные системы

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

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

Занимаются этим распознаванием и классификацией так называемые иммунокомпетентные клетки, среди которых главными являются лимфоциты (если быть точнее, две их группы – Т- и В-лимфоциты). После того, как антиген распознан, B-лимфоциты синтезируют антитела, способные бороться с конкретным антигеном.

Обратите внимание

После его разрушения или нейтрализации часть антител остается в организме в качестве иммунной памяти – на случай, если в дальнейшем тот же антиген снова «забредет» в организм. При этом, во второй раз иммунная реакция организма на антиген – так называемый вторичный ответ – будет гораздо быстрее.

Так что же вдохновило создателей искусственных иммунных систем? Если присмотреться внимательнее, естественная иммунная система способна одновременно обрабатывать большие объемы данных – по сути, она производит параллельные вычисления, используя память для эффективного решения задач, подобных тем, что приходилось решать до этого, и одновременно занимаясь поиском решений новых, нетривиальных для нее задач.

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

Практика. Алгоритмы и их применение в решении конкретных задач

Алгоритмы, или методы работы искусственной иммунной системы (ИИС), основаны на конкретных теориях иммунологии, объясняющих функции и поведение антител адаптивной иммунной системы.

Для начала рассмотрим общий принцип работы ИИС в виде примерного алгоритма, входящего в класс клональных алгоритмов отбора:

  1. На входе в систему – набор распознаваемых образцов S; на выходе мы должны получить набор «распознавателей» M, которые в дальнейшем будут способны классифицировать новые для системы образцы. Создается случайный набор антител A.
  2. Далее, для каждого образца из набора S происходит следующее:
    1. определяется мера аффинности (affinity – характеристика, определяющая сходность генетического набора антигена (образца) и антитела; в ИИС определяется с помощью математических расстояний) с каждым конкретным антителом из набора A;
    2. антитела из поднабора A с наивысшей аффинностью клонируются, причем число клонов каждого антитела пропорционально его аффинности;
    3. каждый клон подвергается мутации (изменению атрибутов; степень зависит от целевой функции), после чего вся популяция клонов одного антитела сравнивается с родителем. Если мутировавший клон оказывается лучше родителя, то он заменяет последний в наборе A. Копии антител с наивысшей аффинностью отправляются в набор M;
    4. n антител c самой низкой аффинностью заменяются в наборе A на случайно сгенерированные антитела.

Существует еще три основных класса алгоритмов отбора, которые используют ИИС:

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

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

Источник: http://datareview.info/article/znakomstvo-s-iskusstvennyimi-immunnyimi-sistemami-zadachi-algoritmyi-primenenie/

Искусственные иммунные системы как средство сетевой самозащиты

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

Эта тема неоднократно освещалась и на страницах “Компьютерного Обозрения”. На сей раз давайте поговорим еще об одной вещи, которую специалисты по информационным технологиям решили позаимствовать

у природы, — об иммунитете.

Что такое иммунитет, знает практически каждый. Поэтому вы наверняка уже догадались, для чего предназначены искусственные иммунные системы (AIS — Artificial Immune System) — для защиты.

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

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

Роль упомянутых шаблонов выполняют лимфоциты, постоянно генерируемые спинным мозгом и тимусом с учетом информации, содержащейся в ДНК (такая информация все время накапливается, и процесс этот называется эволюцией генной библиотеки), и разносимые организмом через лимфатические узлы, причем каждый тип лимфоцита отвечает за обнаружение какого-то ограниченного числа антигенов. При генерировании лимфоцитов имеется одна очень важная стадия, называемая негативной селекцией, на которой происходит своеобразный тест на соответствие родным клеткам организма: если подобное соответствие имеет место, “зародышевый” лимфоцит убивается, ведь в противном случае, как несложно догадаться, он будет бороться с собственными клетками. Иными словами, благодаря негативной селекции создаются “шаблоны”, содержащие ту информацию, которая внутри организма отсутствует, и если какое-то тело подходит под данный шаблон, значит, оно явно чужое.

В случае обнаружения лимфоцитами антигена на основании соответствующего шаблона вырабатываются антитела, которые и уничтожают его.

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

Важно

При этом сведения о сгенерированных антителах “заносятся” в упоминавшуюся выше генную библиотеку.

Специалистами, работающими в области AIS, отмечаются три основных свойства иммунной системы человека: во-первых, она является распределенной; во-вторых, она самоорганизующаяся; и в-третьих, она относительно “легковесна”, или, говоря на “информационном” языке, не особо требовательна к вычислительным ресурсам. Именно этими свойствами, по мнению многих экспертов, должна обладать система обнаружения вторжений в сеть (IDS — Intrusion Detection System), которая по своим характеристикам приближалась бы к максимально эффективной.

IDS для одного сегмента сети, построенная на принципах искусственной иммунной системы, подразделяется на основную и набор вторичных. Основная является неким аналогом спинного мозга, а вторичные — аналогами лимфатических узлов.

В основной IDS на базе AIS реализуются, а точнее, имитируются два процесса —
эволюция генной библиотеки и негативная селекция.

На этапе эволюции генной библиотеки происходит накопление информации о характере аномалий сетевого трафика.

Генная библиотека искусственной иммунной системы должна содержать “гены” (это могут быть, например, данные о характерном количестве пакетов, их длине, структуре, типичных ошибках и т. д.

), на основании которых будут генерироваться особые программные агенты — детекторы, служащие аналогами лимфоцитов.

Начальные данные для формирования генной библиотеки выбираются, исходя из особенностей применяемых сетевых протоколов, в частности их слабых с точки зрения защиты мест. В дальнейшем, при обнаружении детекторами аномальной активности в сети к библиотеке будут добавляться соответствующие этим проявлениям новые “гены”. Следует заметить, что поскольку размер генной библиотеки ограничен, в ней сохраняются

только “гены”, проявляющиеся наиболее часто.

На втором этапе путем произвольного комбинирования “генов” происходит генерирование так называемых пре-детекторов (аналоги “зародышевых” лимфоцитов), которые затем с помощью механизма той самой негативной селекции проверяются на совместимость (или точнее, на несовместимость) с нормальным сетевым трафиком. При этом используются данные о характере такого трафика (профили), формируемые так называемым автоматическим профайлером (automated profiler), постоянно анализирующим поток данных, поступающий от маршрутизатора, стоящего на входе в сетевой сегмент.

Совет

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

Стоит отметить, что разработанные на сегодняшний день алгоритмы негативной селекции оперируют вероятностными характеристиками — вместо точного соответствия используется частичное, степень которого может произвольно варьироваться. Ее изменение, как несложно догадаться, в конечном итоге должно приводить к уменьшению или увеличению частоты “ложных срабатываний”.

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

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

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

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

сети получит сигнал тревоги.

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

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

Обратите внимание

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

а во второй носит кратковременный характер и т. п.

Масштабные исследования в области искусственных иммунных сетей ведутся относительно недавно — большинство работ по данной тематике относится к 90-м годам. Тем не менее не исключено, что довольно скоро их возможности начнут использоваться на практике.

Так, недавно ученые Лондонского Королевского колледжа сообщили о разработке в рамках проекта The Computational Immunology for Fraud Detection (CIFD) защитной системы для Internet на базе AIS. Предполагается, что на завершение указанного проекта уйдет еще около трех лет.

Ну а первым пользователем системы обнаружения

вторжений, реализующей функции AIS, должна стать почтовая служба Великобритании.

Источник: https://itc.ua/articles/iskusstvennye_immunnye_sistemy_kak_sredstvo_setevoj_samozashhity_4270/

Иммунная система для компьютера

СЕРГЕЙ ЯРЕМЧУК, фрилансер. Автор более 800 статей и шести книг. С «СА» с первого номера. Интересы: сетевые технологии, защита информации, свободные ОС

Иммунная система для компьютера

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

Между тем природа терпеливо оттачивает свои алгоритмы уже не один миллион лет, человечеству не сравниться с такими сроками. Именно поэтому в последнее время наметился большой интерес к «натуральным» алгоритмам.

Читайте также:  Нейронные сети способны распознавать объекты

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

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

Но природа дала человеку более совершенное средство, помогающее справиться с неизвестными болезнями – иммунитет. Именно это свойство пытаются сейчас выработать у компьютерных систем специалисты.

Такие системы, заимствующие у природы принцип иммунитета, называют искусственными иммунными системами (AIS – Artificial Immune System).

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

Важно

Хотя имеется достаточно много различий между живыми организмами и компьютерными системами, но цель – обозначить подобия, переносимые в компьютерную защиту.

Защита организма многослойна, здесь и кожа, второй барьер – pH, температура, делающая невозможной существование инородных организмов и, наконец, наиболее сложная из них, иммунная система человека.

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

Причем генные библиотеки эволюционируют постоянно, поэтому изменяется и содержащаяся в них информация. В этом процессе имеется несколько интересных моментов. Так, лимфоциты обнаруживают только некоторое ограниченное подмножество патологий, и поэтому для гарантированного обнаружения всех возможных вариантов во всем организме их должно быть достаточное количество (не говоря уже о том, что около 100 миллионов замещаются каждые 2-3 дня в процессе, называемом apoptosis).

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

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

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

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

Совет

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

Итак, иммунная система человека обладает некоторыми свойствами:

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

А как раз именно этими свойствами, по мнению специалистов, должна обладать эффективная система обнаружения атак.

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

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

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

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

Изменение коэффициента соответствия изменяет количество ложных срабатываний системы. В качестве замены белку антигенов выступают системные вызовы или сетевые пакеты.

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

Обратите внимание

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

Один из компьютеров может играть роль тимуса, и при наличии вторичных IDS весь набор рассылается и на остальные узлы. Хотя в принципе такая централизация необязательна и лимфоциты при обнаружении аномалии могут самостоятельно копироваться на остальные узлы. При обнаружении проблем возможна разная реакция. Например, проблемная машина или сервис может быть просто изолирован (перестройкой firewall, маршрутизатора, перезагрузкой, остановкой и пр.), или IDS пытается перестроиться на параметры атакующего. Сетевые реализации AIS имеют еще один компонент, называемый коммуникатором, оперирующий таким параметром, как уровень риска. При обнаружении аномалий коммуникатор поднимает свой уровень риска и отсылает значение на другие системы, которые также поднимают свой уровень. Поэтому при появлении аномалий сразу на нескольких системах общий уровень быстро растет, и администратор будет оповещен об опасности.

Рисунок 1

После прочтения всего вышеизложенного у многих может возникнуть вопрос, в чем же отличие и преимущество искусственных иммунных систем от искусственных нейронных сетей.

Работы по изучению искусственных нейронных сетей (Artificial Neural Networks – ANN) ведутся сравнительно давно и отнюдь небезуспешно, основной пик работ приходится где-то на семидесятые-восьмидесятые.

В результате разработано множество теорий и алгоритмов, теория Дарвинизма привела к появлению эволюционных алгоритмов (evolutionary algorithms – EA).

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

Однако отличие нервной и иммунной систем человека накладывает и свои отпечатки на алгоритмы работы. Для AIS характерны самоорганизация и эволюция, для ANN поведение во многом зависит от алгоритма.

Количество ячеек AIS не является строго фиксированным, их положение изменяется динамически, происходит постоянное производство и отмирание ячеек, нейроны же имеют конкретное местоположение, и количество их фиксировано. Более того, для первой не характерно длительное взаимодействие между элементами, концентрация и характер их динамически изменяется, для второй оно постоянно и задается при подключении. Далее, для AIS, как правило, нехарактерно централизованное управление и даже более того, оно противоречит самой природе вопроса, в ANN всем заправляет мозг, настраивающий веса. Одна из проблем для изучающих ANN состоит в том, что иногда трудно выделить, что именно сеть сейчас «знает».

Более подробно этот вопрос освещен в документах «Immune and Neural Network Models:

Важно

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

Но алгоритмы AIS уже находят применение при распознавании образов, в некоторых оптимизационных задачах, поиске и устранении неисправностей, в том числе и аппаратных (http://www.osp.ru/cw/2001/47/000_35.htm), обнаружении вирусов, биоинформатике и многих других задачах.

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

В любом случае свои исследования стоит начинать с сайта проекта ARTIST – ARTificial Immune SysTems (http://www.artificial-immune-systems.org), где вы найдете ссылки на проводимые конференции, новости и некоторую другую информацию. Задачей проекта ISYS (http://www.aber.ac.

uk/~dcswww/ISYS) является разработка теории AIS, исследование возможности ее применения в конкретных областях и предоставление инструмента, позволяющего самому собрать и испытать такую систему. Самая большая коллекция ссылок по теме AIS расположена по адресу: http://www.dca.fee.unicamp.br/~lnunes/immune.html, плюс здесь вы найдете руководство, и несколько алгоритмов, демонстрирующих работу AIS в Matlab.

Единственным русскоязычным материалом по защите компьютеров при помощи AIS, является статья Алексея Гвозденко «Искусственные иммунные системы как средство сетевой самозащиты» (http://itc.ua/article.phtml?ID=4270).

Computer Immune Systems (http://www.cs.unm.edu/~immsec) – единственный найденный проект по применению AIS для защиты компьютеров. Интересен он еще и потому, что предоставляет не только теоретические наработки, но и код.

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

Совет

Сетевая система обнаружения атак Lisys для обнаружения сетевых аномалий контролирует проходящие TCP SYN-пакеты. В случае обнаружения необычных TCP-связей, программа посылает предупреждение по e-mail. Далее решение принимает администратор.

Если администратор ничего не предпринимает, то детектор, пометивший подключение как аномальное, исчезнет и не будет больше беспокоить. Если аномалия подтверждена, то детектор станет частью набора и будет предупреждать пользователя всякий раз при обнаружении подобного подключения.

Состоит Lisys из распределенных детекторов размером 49 байт, контролирующих «data-path triple», т.е. IP-адресов источника и назначения, а также порт.

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

При таком подходе возможно появление незаполненных мест в наборе, которое устраняется использованием масок перестановки, позволяющих повторно отобразить «data-path triple», замеченное различными детекторами. Для уменьшения количества ложных тревог используется порог активации, превышение которого приводит к срабатыванию датчика. Этот порог активации, как говорилось выше, общий на всю сеть.

Process Homeostasis (pH) (рис. 2) представляет собой расширение к ядру Linux, позволяющее обнаруживать и при необходимости замедлять необычное поведение программы. Для обнаружения необычного поведения вначале автоматически создаются профили системных вызовов, сделанных различными программами.

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

Так как контролировать все вызовы накладно и нерационально, то система работает только с системными вызовами, имеющими полный доступ к ресурсам компьютера.

Рисунок 2

STIDE (Sequence Time-Delay Embedding) – также был призван помочь в обнаружении внедрений, распознавая необычные эпизоды системных вызовов.

Обратите внимание

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

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

RISE (Randomized Instruction Set Emulation Building) – эта разработка, основанная на документе «Diverse Computer Systems» (http://www.cs.unm.edu/~immsec/publications/hotos-97.pdf) являет собой попытку решения еще одной из проблем – однородности компьютерных систем. Как и в природе, если какой-то вид становится доминирующим, то он становится подвержен болезням, заражению и пр.

Читайте также:  Японцы работают над тем, чтобы роботы были максимально приближены к человеку

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

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

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

Так как изменить системы команд процессора довольно проблематично, то для реализации этой идеи используется x86 эмулятор Valgrind (http://valgrind.kde.org), первоначально предназначенный для отладки памяти. На нынешнем этапе RISE представляет собой скорее концепцию, так как Valgrind сильно замедляет процесс, и для нормальной работы эмулятору требуется большая оптимизация.

Работает RISE (как и остальные утилиты, кроме lisys ) пока только с ядрами 2.2 и 2.4, поэтому при попытке собрать с ядром серии 2.6, скорее всего, получите такое сообщение.

checking for the kernel version… unsupported (2.6.4-52-default)configure: error: Valgrind works on kernels 2.2 and 2.4

Еще один проект Computational Immunology for Fraud Detection (CIFD) (http://www.icsa.ac.uk/CIFD) занимается разработкой системы защиты на базе технологии AIS, которую затем планируется использовать в почтовой службе Англии, но на момент написания статьи проект предоставлял только общую информацию о разработках.

AIS – относительно новая область исследований. Изучая и подражая механизмам естественной иммунной системы, можно получить довольно эффективные решения.

Так, новый подход к обнаружению атак, примененный в компонентах Computer Immune Systems, позволяет выявить и остановить широкое разнообразие атак, при этом такие системы не требуют модификаций и минимальной администрации, так как способны самостоятельно адаптироваться к новым угрозам, при этом потребляют незначительное количество системных ресурсов. Остается надеяться, что подобные разработки в скором времени выберутся из концептуального состояния и станут доступны для широкого использования.

Источник: http://samag.ru/archive/article/370

Искуственные иммунные системы и их применение

Челнаков С.А.

Воронежский государственный педагогический университет

Искуственные иммунные системы и их применение

Аннотация

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

Данную задачу можно разбить на следующие подзадачи:

а) выделение подмножества существенных черт и особенностей естественной иммунной системы, необходимых для решения данной задачи;

б) описание искусственной иммунной сети и ее компонентов с учетом требований, полученных на предыдущем этапе;

в) построение обучающей выборки – набора изображений букв для обучения сети;

г) разработка собственно алгоритма для полученной искусственной иммунной сети;

д) разработка интерфейса пользователя.

Важно

Классификация отдельных клеток и молекул является важнейшим свойством естественной иммунной сети. Условно можно выделить 2 вида такой классификации: классификация «свой – чужой» и более детальный анализ тех клеток и молекул, которые были классифицированы как чужеродные.

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

В естественной иммунной системе классификация происходит за счет химических реакций. Для искусственной иммунной системы можно предложить следующий способ. Монохромное изображение можно представить как матрицу размера M x N булевых значений, в которых true стоит на тех местах, которые в изображении соответствуют пикселям черного цвета, которые и формируют изображение.

Лимфоцит, в свою очередь, можно представить как массив из P пар чисел. Каждая такая пара представляет собой координаты пикселя в изображении. Введем некое число S < P. Будем говорить, что лимфоцит реагирует на данный анти-ген, если количество элементов матрицы антигена со значениями true, определяемых номерами строк и столбцов массива пар чисел лимфоцита, больше либо равно S.

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

В идеальном случае (если антиген подан без искажений и иммунная сеть хорошо обучена) именно идентификатор этого антигена и будет ответом.

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

Описание работы алгоритма

Шаг 0: Обучение иммунной сети.

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

Совет

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

Шаг 1: Собственно распознавание.

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

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

Хранение иммунной системы в постоянной памяти

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

Количество распознаваемых символов – антигенов.

Размеры эталонных изображений.

Собственно иммунная сеть – совокупность всех лимфоцитов, ее составляющих.

Для каждого лимфоцита надо хранить следующую информацию:

Номер антигена, на который реагирует данный лимфоцит.

Список координат значащих пикселей символа.

Список координат незначащих пикселей символа.

Список координат представляет собой набор пар чисел (X, Y).

В качестве среды разработки была использована Visual Studio 2008 Professional, язык программирования – C#. Этот язык является полностью объект-но-ориентированным, что позволяет создать систему классов, каждый из которых представляет ту или иную сущность в данной предметной области.

Visual Studio обладает большим количеством необходимых стандартных ком-понентов, облегчающих создание удобного интерфейса пользователя. Также платформа .Net обеспечивает удобную работу с графическими файлами, позволя-ет легко создавать многооконные приложения.

Так как приложение написано в Visual Studio на платформе .Net, то необходи-мым условием является наличие установленного .Net Framework версии 3.5.

Заключение

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

Литература

Обратите внимание

Искусственные иммунные системы и их применение /[под ред. Д. Дасгупты] – М. : ФИЗМАТЛИТ, 2006 – 344 с.

Источник: https://research-journal.org/medical/iskustvennye-immunnye-sistemy-i-ix-primenenie/

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

Доброго времени суток, уважаемое хабро-сообщество!

Представляю на ваш суд статью, написанную по мотивам моей магистерской работы (факультет прикладной математики, информатики и механики Воронежского ГосУниверситета). Ее тема «Применение распределенных искусственных иммунных систем для решения задачи символьной регрессии».

Постараюсь коротко (но содержательно) рассмотреть основные понятия искусственных иммунных систем и мой подход к их реализации для решения задачи символьной регрессии – восстановления символьного представления функции по заданному множеству ее значений в некоторых точках.

Программа была написана на языке Python (версии 3.3), исходники доступны на Github.

Основные понятия и описание иммунной системы

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

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

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

В организме различают B-лимфоциты, которые являются и основными носителями иммунной памяти, и основными «боевыми единицами», обеспечивающими отпор врагу (антигену), и Т-лимфоциты, которые могут усиливать или подавлять реакцию B-клеток. В подавляющем большинстве работ рассматриваются только В-лимфоциты, мы тоже будем рассматривать только их.

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

В этом дереве могут использоваться различные операции (+, -, *, /, sin, cos), числа, переменные, максимальное количество которых задано (чтобы ограничить глубину поиска). Если пользоваться терминами генетических алгоритмов, лимфоцит – это просто особь.

Рис. 1

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

Важно

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

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

Алгоритм функционирования можно наблюдать на рисунке 2.

Рис. 2

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

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

  • Мутация числового значения 2*x →2,23*x
  • Мутация переменной 2*(x+y)*x →2*(x+y)*y
  • Мутация унарного оператора sin(x)*y→cos(x)*y
  • Мутация бинарного оператора x+y →x-y
  • Мутация подвыражения (поддерева дерева выражения) 2*(x+y)→2*sin(x)

Добавим параллелизм

Конечно, хотелось бы добавить возможность распараллелить эту систему для функционирования на нескольких машинах.

В этом случае от OpenMP пришлось отказаться именно по этой причине (запуск нужен на нескольких машинах), от MPI – по другой: хотелось бы, чтобы вычислительные узлы могли добавляться / выходить из строя / выключаться во время работы всей системы, и при этом система продолжала бы функционировать.

Добиться такого можно с помощью создания такой «топологии», какая используется в p2p. Один узел знает о нескольких соседях, обменивается только с ними. Конечно, похоже на велосипед, но для проверки самой возможности распараллеливания данной модели – самый раз.

Читайте также:  Создан искусственный интеллект, который способен обучаться как ребенок

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

Биологическую иммунную систему можно считать распределенной (в некоторой степени) – клетки распределены по всему организму. Поэтому в нашу модель можно просто добавить обмен лучшими лимфоцитами между двумя узлами каждые N итераций. Причем, конечно, не с одним и тем же, а с разными. Таким образом, параллельная версия нашего алгоритма примет следующий вид:

Рис. 3

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

Реализация и код

Я не Python программист (а очень даже C#), но Python мне близок и очень нравится, сдавал на нем задачи для численных методов (спасибо numpy, scipy, matplotlib), писал скрипты для себя.

Пару книжек прочитал (Lutz, Dive into python), PEP-8, конечно же, но думаю, что код для хороших Python программистов выглядит не очень аппетитно. По времени вышло где-то столько же, сколько я писал бы это на C#. Использовал unittest, для проверки работоспособности есть скрипты main.py, local_node.

py и local_server.py. Все замечания / дополнения / советы очень приветствуются, хотелось бы получить хоть какую-нибудь обратную связь.

Совет

Проект на Github

Вот так выглядит работа программы (для функции x*x+sin(sin(x))*x*y, значения функции заданы в 100 точках, 4 вычислительных узла, 200 итераций алгоритма, обмен после каждых 30 итераций):
Рис. 4

Литература и ссылки

1) Искусственные иммунные системы и их применение / [под ред. Дасгупты] – М.: Физматлит 2006 – 344 с.
2) Colin G. Johnson Artificial Immune Systems Programming for Symbolic Regression / Colin G. Johnson // Genetic Programming: 6th European Conference. – 2003. – P. 345–353 – ISBN=3-540-00971-X

P.S. Простите, если текст получился немного сумбурным, в некотором роде это попытка подготовиться к защите – собрать мысли, рассказать о проделанной работе.

Источник: https://www.pvsm.ru/python/35491

Подход к обнаружению вторжений на основе модели иммунной системы и иммунокомпьютинга Вадим Д. Котов Уфимский Государственный Авиационный Технический Университет. – презентация

1 Подход к обнаружению вторжений на основе модели иммунной системы и иммунокомпьютинга Вадим Д. Котов Уфимский Государственный Авиационный Технический Университет Кафедра Вычислительной Техники и Защиты Информации<\p>

2 Содержание Информатика и компьютерные технология 1.Ссылки 2.Структура иммунной системы 3.Приобретенный иммунитет 4.Иммунный ответ по клеточному типу 5.Отрицательный отбор 6.Иммунный ответ по гуморальному типу 7.Иммунная сеть 8.Искусственные иммунные системы и иммунокомпьютинг 9.Алгоритм отрицательного отбора. 10.Аффинность 11.Модель костного мозга 12.Алгоритм клональной селекции 13.Классификация систем обнаружения вторжений 14.Модель иммунной системы для обнаружения вторжений 15.Formal Immune Network 16.Классификация с помощью иммунной сети 17.Иммунокомпьютинг в обнаружении вторжений 18.Предлагаемый подход 19.Представление данных 20.Расположение датчиков в сети 21.Эксперименты 22.Результаты 23.Сравнение с классической иммунной моделью 24.Выводы<\p>

3 Ссылки D. Dasgupta, L. F. Nino, Immunological Computation. Theory and Applications. CRC Press, A. O. Tarakanov, Immunocomputing for Intelligent Intrusion Detection in IEEE Computational Intelligence Magazine, May 2008, pp A. O. Tarakanov, Mathematical Models for Intrusion Detection by Intelligent Immunochip in CCIS (LNCS), vol. 3630, pp , 2005 A. O. Tarakanov, V. A. Skormin, S. P. Sokolova, Immunocomputiong: Principles And Applications. New-York: Springer, 2003 J. Kim, P. Bentley, An Artificial Immune Model for Network Intrusion Detection in 7th European Congress on Intelligent Techniques and Soft Computing (EUFIT'99), 1999 J. Kim, P. Bentley, The Human Immune System and Network Intrusion Detection. in 7th European Congress on Intelligent Techniques and Soft Computing (EUFIT'99), 1999 E. Carter, J. Hogue, Intrusion Prevention Fundamentals. Cisco Press, DARPA Intrusion Detection Evaluation, Available: V. D. Kotov, V. I. Vasilyev Artificial Immune Systems Based Intrusion Detection System Proc. of the 2nd International Conference on Security of Information and Networks, 2009, pp D. Dasgupta (ed) Artificial Immune Systems And Their Applications, Springer-Verlag, De Castro L. N., Timmis J. Artificial Immune Systems: A New Computational Intelligence Approach, Springer-Verlag, Warrender C., Forrest S., Pearlmutter B. Detecting Intrusions Using System Calls: Alternative Data Models. Proc. of 1999 IEEE Symposium on Security and Privacy, pp , May Forrest S., Perelson A. S., Allen L., Cherukuri R. Self-nonself discrimination in a computer, Proc. of 1994 IEEE Symposium on Research in Security and Privacy, pp , May Информатика и компьютерные технология<\p>

4 Структура иммунной системы Кожа Пот Слюна Слезы Биохимический барьер Сдерживание инфекции Воспаление Врожденный иммунитет Уничтожение вредоносных организмов Иммунная память для быстрого ответа на подобные инфекции Приобретенный иммунитет Информатика и компьютерные технология<\p>

5 Приобретенный иммунитет Свойства приобретенного иммунитета Основные участникиТипы иммунного ответа Специфичность иммунного ответа – способность лимфоцитов распознавать определенные антигены Т-лимфоциты (киллеры, хелперы, супрессоры) По клеточному (основные участники – Т- лимфоциты) Иммунная память – способность осуществлять быстрый иммунный ответ при повторной встрече с известным антигеном В-лимфоциты (В-лимфоциты, плазмациты, клетки памяти) По гуморальному типу (основные участники – B- лимфоциты) Саморегуляция –способность к активации и подавлению иммунного ответа Свободные антитела (рецепоторы В-лимфицита, покинувшие его поверхность) Лимфокины – вещества активирующие или подавляющие иммунный ответ Информатика и компьютерные технология<\p>

6 Иммунный ответ по клеточному типу 1.Фагоцит поглощает антиген; 2.Фагоцит переваривает поглощенный антиген и выделяет из него пептид; 3.Пептид презентуется на поверхности фагоцита; 4.Т-хелпер распознает пептид 5.Т-хелпер выделяет лимфокины, активирующие Т- киллеров; 6.Т-киллеры уничтожают зараженные клетки; 7.Т-супрессоры выделяют лимфокины, подавляющие иммунный ответ Информатика и компьютерные технология<\p>

7 Отрицательный отбор Информатика и компьютерные технология<\p>

8 Иммунный ответ по гуморальному типу 1.В-лимфоцит «узнает» антиген; 2.В-лимфоцит размножается, антитела на поверхности клонов претерпевают мутации; 3.Часть клеток выделяет антитела со свей поверхности (они становятся плазмацитами); 4.После иммунного ответа часть лимфоцитов умирает; 5.В-лимфоциты лучше «узнающие» антигены становятся клетками памяти и сохраняются примерно год (клональная селекция) Информатика и компьютерные технология<\p>

9 Иммунная сеть Информатика и компьютерные технология<\p>

Обратите внимание

10 Искусственные иммунные системы и иммунокомпьютинг Иммунная системаКомпьютерная имплементация Отрицательный отбор Т- лимфоцитов Алгоритм отрицательного отбора Клональная селекция В- лимфоцитов Алгоритм клональной селекции Иммунная сетьФормальная иммунная сеть (FIN, Formal Immune Network) Информатика и компьютерные технология<\p>

11 Алгоритм отрицательного отбора. Генерирование детекторов Паттерны нормальной активности Набор паттернов, сгенерированных случайным образом Удалить паттерн Набор детекторов Совпадение? Да Нет Информатика и компьютерные технология<\p>

12 Алгоритм отрицательного отбора.Обнаружение аномалий Набор детекторов Вновь поступающие паттерны Обнаружена аномалия Проверка следующего паттерна Совпадение? Да Нет Информатика и компьютерные технология<\p>

13 Аффинность Аффинность – степень соответствия между антигеном и лимфоцитом. Используемые виды аффинности: Правило r-смежных совпадений Аффинность равна максимальному числу совпадений в смежных позициях двух паттернов Расстояние по Хэммингу Аффинность равна числу совпадающих элементов в одинаковых позициях Расстояние по Чебышеву Аффинность равна наибольшему модулю разности элементов паттернов Аффинность = |3-6|=3 Аффинность = Аффинность = Информатика и компьютерные технология<\p>

14 Модель костного мозга … G12 G24 GM3 … Информатика и компьютерные технология<\p>

15 Алгоритм клональной селекции Создание начальной популяции лимфоцитов P Для каждого антигена повторить: Вычисление аффинности с каждым элементом P Выбор n1 элементов с лучшей аффинностью и копирование их (чем больше аффинность, тем больше копий) Внесение мутаций во все копии (чем больше аффинность, тем меньше мутаций) Условие останова? Нет Да Помещение n2 лучших лимфоцитов в пул клеток памяти Информатика и компьютерные технология<\p>

16 Классификация систем обнаружения вторжений Системы обнаружения вторжений По способу обнаружения Поведенческие Статистические средства, методы искусственного интеллекта Сигнатурные Поиск совпадений по шаблонам известных вторжений По типу мониторинга Узловые Мониторинг одного компьютера Сетевые Мониторинг сетевого трафика Информатика и компьютерные технология<\p>

17 Модель иммунной системы для обнаружения вторжений Клональная селекция Информатика и компьютерные технология<\p>

18 Formal Immune Network Формальная иммунная сеть (FIN)Набор клеток FIN=(V 1 …V m ) Клетка, VV=(c(V),P(V)), c(V) – класс клетки, P(V) – точка в Евклидовом пространстве Расстояние между клетками, dРасстояние по Чебышеву Распознавание клетки V1 клеткой V2Если c(V1)=c(V2) и d(V1, V2) < dmin, то клетка V1 «узнает» V2 АпоптозЕсли V 1 узнает V 2, то V 1 удаляется из FIN ИммунизацияЕсли V 1 ближайшая к V 2 среди остальных клеток, но классы этих клеток различны, то V 1 добавляется в FIN Информатика и компьютерные технология<\p>

Важно

19 Классификация с помощью иммунной сети Каждой клетке FIN соответствует класс Каждой клетке FIN соответствует класс Вновь поступившему антигену назначается класс ближайшей к нему клетки FIN Информатика и компьютерные технология<\p>

20 Иммунокомпьютинг в обнаружении вторжений Сетевой трафик Формирование клеток FIN КлеткаКлассОписание 1V10Нормальный трафик 2V21Buffer Overflow 3V33nmap ………… Апоптоз Иммунизация Обучение Мониторинг Сетевой трафик Формирование клеток без класса FIN Классификация Информатика и компьютерные технология<\p>

21 Предлагаемый подход. Обучение Генная библиотека Нормальные гены Нормальные гены Аномальные гены Ген 1Ген2…Fitness ………… Fitness + 1 Отрицательный отбор Сетевой трафик без атак Зрелые детекторы Иммунная сеть Иммунная сеть Информатика и компьютерные технология<\p>

22 Предлагаемый подход. Обнаружение вторжений Сетевой трафик Иммунная сеть Иммунная сеть Профайлер Классификатор Класс = 0 ОК Класс = 1 Тревога Ложное срабатывание? Нет Детектор Генная библиотека Fitness Информатика и компьютерные технология<\p>

23 Предлагаемый подход. Адаптация ДетекторFitness Детектор 1f1 Детектор 2f2 …… Детектор NfN …… Детектор LfL Генная библиотека f1 > f2 >…> fN >… > fL Замена худших детекторов новыми Детектор 1 Детектор 2 Детектор N Отрицательный отбор Новые детекторы N лучших детекторов Мутации Информатика и компьютерные технология<\p>

24 Представление данных Сетевой трафик Паттерн сетевой активности idсервисБайты от клиента серверу Байты от сервера клиенту Пакеты от клиента серверу Пакеты от сервера клиенту Среднекв. отклонение времени между пакетами Дискретизация Создание клеток FIN Информатика и компьютерные технология<\p>

25 Представление данных. Клетки FIN Паттерны сетевой активности P11P12P13P14P15P16 P21P22P23P24P25P26 ……………… P31P32P33P34P35P36 P11P21 P12P22 P13P23 P14P24 P15P25 P16P26 Сингулярное разложение Правые сингулярные вектора Информатика и компьютерные технология<\p>

26 Расположение датчиков в сети Solaris Первичная IDS Linux hub IDS * Для экспериментов использованы данные имитационной сети DARPA Sun OS FIN Сработавшие детекторы Концентратор Маршрутизатор Информатика и компьютерные технология<\p>

Совет

27 Эксперименты Проверка уровня обнаружения вторжений в зависимости от временного окна Уровень обнаружения – отношение числа распознанных вторжений к общему числу аномальных паттернов Проверка уровня ложных срабатываний в зависимости от временного окна Уровень ложных срабатываний – отношение числа ложных срабатываний к общему числу нормальных паттернов Зависимость уровней обнаружения вторжений от порогового значения расстояния между клетками FIN От порогового значения зависит количество клеток FIN, а также эффективность обнаружения вторжений Проверка уровней обнаружения вторжений и ложных срабатываний после адаптации Сравнение с классической моделью иммунной системы Определение того, насколько предлагаемый подход лучше классической модели Информатика и компьютерные технология<\p>

28 Результаты Паттерны сетевой активности P1P2P3P4…Pn Скользящее временное окно Информатика и компьютерные технология<\p>

29 Результаты График для временного окна = 8 Оптимальная величина порогового значения в данном случае выбирается исходя из числа ложных срабатываний Информатика и компьютерные технология<\p>

30 Результаты Число срабатываний 1020 Создание новой FIN Информатика и компьютерные технология<\p>

31 Сравнение с классической моделью иммунной системы Работа системы без средств иммунокомпьютинга Информатика и компьютерные технология<\p>

32 Выводы Дискретизация параметров трафика делает возможным создание детекторов Отображение паттернов сетевой активности в трехмерное пространство позволяет детекторам покрыть область аномальных паттернов Эффективность системы увеличивается благодаря эволюции генной библиотеки Информатика и компьютерные технология<\p>

33 Спасибо за внимание!Спасибо за внимание! Информатика и компьютерные технология<\p>

Источник: http://www.myshared.ru/slide/505550/

Ссылка на основную публикацию
Adblock
detector