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

кандидата технических наук
Глабай, Сергей Николаевич
город
Санкт-Петербург
год
2015
специальность ВАК РФ
05.13.19
Автореферат по информатике, вычислительной технике и управлению на тему «Метод повышения устойчивости браузеров мобильных устройств к атакам на основе межсайтового выполнения сценариев»

Автореферат диссертации по теме "Метод повышения устойчивости браузеров мобильных устройств к атакам на основе межсайтового выполнения сценариев"

На правах рукописи

ГЛАБАЙ Сергей Николаевич

МЕТОД ПОВЫШЕНИЯ УСТОЙЧИВОСТИ БРАУЗЕРОВ МОБИЛЬНЫХ УСТРОЙСТВ К АТАКАМ НА ОСНОВЕ МЕЖСАЙТОВОГО ВЫПОЛНЕНИЯ СЦЕНАРИЕВ

Специальность 05.13.19- Методы и системы защиты информации,

информационная безопасность

АВТОРЕФЕРАТ

диссертации на соискание ученой степени кандидата технических наук

Санкт-Петербург - 2015

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

Научный руководитель: кандидат технических наук, доцент

Богач Наталья Владимировна

Официальные оппоненты: Гаскаров Вагиз Диляурович

Доктор технических наук, профессор Государственный университет морского и речного флота имени адмирала С.О. Макарова, профессор кафедры комплексного обеспечения информационной безопасности Вяхирев Алексей Алексеевич Кандидат технических наук, ЗАО "Эврика", зам. начальника отдела

Ведущая организация: Федеральное государственное бюджетное

образовательное учреждение высшего профессионального образования "Сыктывкарский государственный университет"

Защита состоится 18 марта 2015 г. в 15 часов 50 минут на заседании диссертационного совета Д 212.227.05 при Санкт-Петербургском национальном исследовательском университете информационных технологий, механики и оптики по адресу: 197101, Санкт-Петербург, Кронверкский пр., д.49., ауд. 461.

С диссертацией можно ознакомиться в библиотеке Санкт-Петербургского национального исследовательского университета информационных технологий, механики и оптики по адресу: 197101, Санкт-Петербург, Кронверкский пр., д.49 и на сайте fppo.ifmo.ru .

Автореферат разослан «16» января 2015 года.

Ученый секретарь . /

диссертационного совета Д 212.227.05 /

кандидат технических наук, доцент //А, / Поляков В.И.

РОССИЙСКАЯ ГОСУДАРСТВЕИНАЯ БИЬЛИО'ГЕКА 2015

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

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

Большинство исследователей безопасности веб-приложений придерживаются мнения, что межсайтовое выполнение сценариев является проблемой уязвимого сервера, позволяющего пользователю внедрять произвольные данные, которые могут иметь вредоносную составляющую (Krutz, Dean, 2007). И соответственно, применяемые меры защиты направлены на фильтрацию данных на стороне сервера (Galan et al., 2010). Однако объектом атаки является браузер конечного пользователя, обрабатывающий получаемый с веб страницы код (Harper et al., 2011). И хотя код JavaScript должен обрабатываться одинаково в браузерах, написанных в соответствии со стандартом ЕСМА-262, при практической реализации атаки не гарантирован успешный результат работы вектора в разных браузерах. Под вектором понимается направление действия атаки, использующей для вызова кода JavaScript одинаковую структуру, но различные события. Вопрос исполнения векторов межсайтового выполнения сценариев на стороне браузера при условии успешного проведения атаки на стороне сервера не исследован.

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

В настоящее время активно развивается рынок мобильных устройств. Такие устройства обладают собственной операционной системой, а также программным обеспечением, в том числе для отображения содержимого веб страниц. Браузеры мобильных устройств либо пишутся с использованием общего ядра, так называемого движка, либо переносятся посредством портирования кода (Kostadin, 2012). Созданные приложения для ARM архитектуры мобильных устройств несовместимы с устоявшейся архитектурой платформ х86 и х86-64. Имеющаяся возможность переноса х86 приложений требует перекомпиляции имеющихся библиотек. Это возможно, если в коде нет функций, работающих только с х86 архитектурой (Larry, Bastian, 2012). При портировании приложений появляются существенные отличия в коде мобильных программ, следствием чего являются различия при обработке получаемых данных мобильными устройствами (Kostadin, 2012).

Наиболее изученными на данный момент являются механизмы фильтрации пользовательского ввода на стороне сервера (Shar, Tan, 2012; Reis et al., 2006; Yu et al., 2007). Используемые на стороне клиента средства защиты позволяют предотвратить атаки полным или частичным отключением сценариев JavaScript. Механизмов защиты для браузеров мобильных устройств, а также механизмов исследования получаемого браузером кода в настоящее время не разработано. Главной рекомендацией при защите от межсайтового выполнения сценариев в браузерах мобильных устройств является отключение поддержки JavaScript в браузере (Rafail, 2001). Данное решение проблемы не теряет актуальности, но лишает большинство веб приложений необходимого функционала. Изучение исполнения векторов межсайтового выполнения сценариев и получение данных о подверженности браузеров мобильных приложений атаке межсайтовое выполнение сценариев позволяет разработать методы для защиты конечного пользователя. Необходимость проведения анализа реализуемых векторов атак межсайтового выполнения сценариев в браузерах мобильных устройств, классификации существующих векторов атаки, разработки модели нарушителя, а также создание программного средства защиты для совместного использования на практике определяют актуальность настоящей работы.

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

Научная новизна результатов диссертации:

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

2. Предложена модель исполнения атаки межсайтовое выполнение сценариев как результата уязвимости браузера.

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

4. Разработана модель сетевого иммунитета мобильного сегмента сети на основе автоматической классификации векторов атаки методом кластерного анализа.

Практическая значимость диссертации:

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

2. Экспериментально показано расхождение в обработке векторов межсайтового выполнения сценариев браузерами мобильных устройств.

3. Получены количественные оценки безопасности браузеров мобильной операционной системы Android.

4. Выявлено различное поведение браузеров написанных на одном движке, а также браузеров, использующих интерпретаторы JavaScript, соответствующих единому стандарту обработки данных ЕСМА-262 в третьем издании.

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

На защиту выносятся следующие основные результаты:

1. Модель исполнения атаки межсайтовое выполнение сценариев, как результат уязвимости браузера.

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

3. Модель кластеризации векторов атак.

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

5. Программная реализация прокси-сервера для защиты браузеров операционной системы Android на основе предложенного метода. Апробация работы. Основные положения диссертационной работы были

представлены на ежегодной научной университетской конференции "Февральские чтения" (г. Сыктывкар, 2010); I Всероссийской научно-практической конференции молодых учёных и студентов Сыктывкарского филиала Санкт-Петербургского государственного университета сервиса и

экономики "Социально-экономическое развитие сферы сервиса в регионе" (г. Сыктывкар, 2010), в рамках международной научно-практической конференции "Наука и образование в XXI веке" (г. Тамбов, 2013).

Публикации. По теме диссертации опубликовано 5 научных работ, в том числе 2 в изданиях из перечня ВАК.

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

Объем и структура диссертации. Работа состоит из введения, пяти глав, заключения и списка литературы. Общий объем диссертации составляет 159 страниц. Список литературы включает 146 источников.

СОДЕРЖАНИЕ РАБОТЫ

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

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

Интерпретация JavaScript кода не может быть различной и происходит совершенно одинаково во всех приложениях, поддерживающих стандарт Европейской Ассоциации Производителей Компьютеров (ЕСМА). ЕСМА-262 в третьем издании был первым полноценным стандартом и содержал обновление обработки строковых параметров, определение ошибок и работу с выводом числовых значений, также в него была добавлена поддержка регулярных выражений и новые управляющие операторы.

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

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

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

Техника использования таких нарушений получила название уязвимость межсайтового выполнения сценариев (Fogie et al., 2009). Под уязвимостью в данном случае понимается слабость, которая позволяет злоумышленнику понизить уровень защищенности информационной системы (Kumar et al., 2012).

По механизму исполнения атаки межсайтового выполнения сценариев условно разделяются на три категории: отраженные, устойчивые и основанные на DOM. Отраженные XSS подразумевают, что скрипт не хранится на сервере уязвимого сайта, либо он не может автоматически выполниться в браузере жертвы. При устойчивых XSS вредоносный скрипт хранится на сервере и срабатывает в браузере жертвы при открытии страницы заражённого сайта. При атаке через DOM признаком уязвимого сайта может служить наличие HTML страницы, использующей данные из document.location, document.URL или других объектов, на которые небезопасным способом может влиять атакующий.

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

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

появляются ошибки:

1. Несоответствия типов данных при выравнивании памяти.

2. Произведения вычислений с плавающей запятой.

3. Неверное переназначение функций.

4. Неправильная политика записи устройств.

5. Редактирование текстовых областей в IFRAME, расположенных позади непрозрачных изображений.

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

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

Нападающий

Браузер

Внедрение сценария )

Исполнение атаки

и

Запрос атакующегоО

Внедренный сценарии сохраняется на

TJ

cepaege()|

1}-

Запрос пользователяО

Утечка данных() ;

Ответ сервера пользователе)

Рисунок 1. Устойчивый тип межсайтового выполнения сценариев

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

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

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

Рисунок 2. Предложенная модель атаки Для практической реализации модели атаки межсайтового выполнения сценариев, использованы 80 векторов предложенных фондом The Open Web Application Security Project. К одному вектору отнесены атаки одинаковой структуры, использующие для вызова JavaScript различные события. Для проведения исследования уязвимости браузеров разработана классификация, предполагающая группировку векторов по общему признаку, которым является семантика местонахождения уязвимости (Рисунок 3).

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

л

Векторы, приведенные OWASP

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

/ / / / / /

Qmim uros CuftiSm стилей Сшибки рамгеткп Сшибки tnrwnre

Разбор конментариев

Ошибки SVG Обработка кавычек

Отпеки атр^бутор Ошибки XML Обработка слешей

Включение событий Ошибки тега STYLE Ошибки XLink Обработка Кодировок

Вложенные тегн / Стили внутри тегов / Ошибки MathML / Обработка символор /

Рисунок 3. Классификация векторов атаки

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

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

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

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

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

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

утверждать о подверженности браузера атаке. Фактором влияния обработчиков данных на стороне сервера можно пренебречь. При обработке кода браузером в случае неправильной интерпретации полученных данных сценарий передается обработчику JavaScript, исполняющему внедренный сценарий. В случае успешного исполнения внедренного сценария отображается результат обработки глобального метода Alert. В исследовании показано влияние векторов атаки на браузеры трех различных по назначению устройств. На каждое устройство с магазина Google Play загружено 13 исследуемых браузеров, с помощью которых осуществлялся доступ к созданным страницам, моделируя проведение атаки (Рисунок 4). Каждый вектор атаки подробно описан, показан результат исполнения векторов в исследуемых браузерах.

Векторы OWA5P

Страница с вектором

[ниш ш и......

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

^ Lenovo А789 ^ ^ Ainol Fire ^ ^ Google TV ^

...........>

из браудоров!

V

®

Рисунок 4. Исследование подверженности браузеров атакам

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

Получены сводные данные об уязвимости браузеров, атакованных межсайтовым выполнением сценариев. Выявлены различия при обработке векторов атак браузерами, получены данные количества успешных атак (Рисунок 5).

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

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

Браузеры / Количество атак

ВЙ2Ш

(Ш2ЕПГП7

22

Рисунок 5. Подсчет успешно выполненных атак в браузерах.

Основываясь на разработанной классификации, более половины успешных атак приходится на ошибки при обработке атрибутов и событий в HTML тегах (134 из 251 вектора). Второе место в группе риска занимают векторы, использующие расширения языков разметки (93 из 251 вектора). Третьей по успешности исполнения атак является группа, использующая стилевую информацию в качестве субъекта атаки (39 из 251 вектора).

Векторы, приведенные 0WASP

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

OUlröffl ТФГРР

Всего атак 429

ОцибкиСТПЛОЙ

Всего атак ИЗ

Успешно 39

Ошибки РМПСТКИ

Всего атак 312

Успешно 93

Ршибмиинмл»

Всего атак 156

Успешно 0

Рисунок 6. Распределение векторов атак.

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

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

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

- Наличие сценария JavaScript в событии тега

- Наличие сценария JavaScript в атрибуте тега

- Наличие тега внутри первого тега

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

Ко второй группе отнесены векторы, обладающие следующими признаками:

- Наличие сценария JavaScript в теге STYLE

- Наличие сценария JavaScript в произвольном теге в качестве стилевой информации

К третьей группе отнесены векторы, обладающие следующими признаками:

- Наличие символов комментирования

- Наличие тегов начала расширенных языков разметки (на основании классификатора W3C)

К четвертой группе отнесены векторы, обладающие следующими признаками:

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

- Наличие тега " <МЕТА charset", говорящее об использовании сторонней кодировки

- Наличие нескольких неразделенных символов, отличных от чисел, букв и символов, используемых при написании тега "<" ">" "/". Непосредственно при кластеризации происходит объединение нескольких

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

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

Формальная постановка задачи кластеризации сводится к заданию X— множества объектов, У— множество номеров кластеров. Задана функция расстояния между объектами Р(хIх'). Имеется конечная обучающая выборка

•уТП __--Г

объектов — {Х1Г ■ -^т] Л Необходимо разделить выборку на

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

_ уГП

Каждому объекту хх приписывается номер кластера Алгоритмом кластеризации является функция а: X —► У такая, что любому объекту -Уставится в соответствие номер кластера Множество У в данном

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

Зададим множество объектов как множество векторов атаки

С. "V"

межсайтового скриптинга и возьмем в качестве значений признаки

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

Таблица 1. Таблица признаков векторов атак.

1 2 3 4 5 6 7 8 9 10

0 0 0 0 0 0 0 0 0 0

или или или или или или или или или или

1 1 1 1 1 1 1 1 1 1

Для создания работоспособной модели кластеризации векторов применена парадигма адаптивной резонансной теории АРТ-1, разработанная для обработки двоичных данных входных векторов. Сеть APT являет собой векторный классификатор, входящий вектор которого относится к некоторому кластеру в зависимости от того, на какой из множества запомненных векторов он похож (Рисунок 7).

Реализация функционирующего алгоритма APT включает в себя пять фаз: инициализацию, распознавание, сравнение, поиск и обучение. В стадии инициализации, перед началом процесса обучения сети все весовые векторы Bj и Tj, а также коэффициент соответствия S, должны быть установлены в начальные значения. Веса векторов Bj все инициализируются в одинаковые

малые значения и должны удовлетворять условию:

Ч) ,- для всех 1, з,

Из—\\?г

где т - количество компонент входного вектора, Ь - константа, большая 1 (обычно Ь = 2).

Рисунок 7. Схема сети APT.

Появление на входе сети входного вектора X инициализирует модуль распознавания. Так как вначале выходной вектор модуля распознавания отсутствует, сигнал G1 устанавливается в 1 функцией ИЛИ вектора X, обеспечивая все элементы модуля сравнения одним из двух входов. Распознавание реализуется вычислением таблицы для каждого элемента модуля распознавания, определяемой следующим выражением:

NETj = (Bj • С),

где Bj - весовой вектор, соответствующий элементу j в слое распознавания; С -выходной вектор элементов модуля сравнения. В этот момент С равно X; NETj - изменение элемента j в модуле распознавания. F является пороговой функцией где Т представляет собой порог, определяемой следующим образом:

OUTj = 1, если NETj>T, OUTj = 0 в противном случае.

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

В сбросе сравнивается вектор С и входной вектор X, вырабатывая сигнал сброса, когда их коэффициент сходства S ниже порога сходства. Следующая

процедура проводит требуемое вычисление сходства:

— Вычислить D - количество единиц в векторе X.

— Вычислить N - количество единиц в векторе С.

— Затем вычислить отношение S=N/D.

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

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

Пятая глава посвящена разработке модели сетевого иммунитета методом кластерного анализа. Разработана модель сетевого иммунитета, позволяющая реализовать защиту от исследованных векторов атаки межсайтового выполнения сценариев в операционной системе Android. Данная модель является универсальной и не зависит от используемого пользователем браузера или канала доступа в сеть Интернет. Реализация модели основана на возможности перехвата передаваемого пользователю трафика посредством локального прокси-сервера (Рисунок 8).

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

Напмотщий

Вредоносный сценарий

Успешно атакованный сервер

Передача необработанных данных

Данные переданные сервером

Рисунок 8. Модель сетевого иммунитета.

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

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

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

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

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

проведенного диссертационного исследования, определены перспективные направления дальнейших исследований.

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

1. Разработана модель злоумышленника для исполнения атаки межсайтовое выполнение сценариев. Созданная модель позволяет исследовать влияние векторов атак на браузер пользователя.

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

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

4. Разработана модель сетевого иммунитета для мобильного сегмента сети.

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

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ Статьи в рецензируемых научных изданиях:

1. Глабай, С.Н. Инновации исследования уязвимости современных мобильных платформ к атаке межсайтового выполнения сценариев на примере браузеров операционной системы Android / С.Н. Глабай // Инновации и инвестиции. - 2013. - № 5. - С. 46 - 48. - 0,5 п.л.

2. Глабай С.Н. Классификация векторов межсайтового выполнения сценариев для выявления успешного исполнения атак в браузерах операционной системы Android /С.Н. Глабай, Н.В. Богач// Инновации и инвестиции. - 2013. - №8. - С. 112 - 114. - 0,6 п.л.

Публикации в других изданиях:

3. Глабай С.Н. Межсайтовый скриптинг // Материалы I ежегодной научной университетской конференции "Февральские чтения", Сыктывкар, 2010. — С. 2.-0,1 п.л.

4. Глабай С.Н. Нелегальные способы размещения рекламы с использованием современных информационных технологий // Материалы I Всероссийской научно-практической конференции молодых ученых и студентов "Социально-экономическое развитие сферы сервиса в регионе", Сыктывкар, 2010 - С. 132-134. - 0,2 п.л.

5. Глабай С.Н. Уязвимость браузеров операционной системы Android к векторам атаки Cross Site Scripting. Международная заочная научно-практическая конференция Наука и образование в XXI веке, Тамбов, 2013 -С. 46-47.-0,1 п.л.

Формат 60x84/16 Бумага офслнаа. Печать офсетная. Усл. га. д. 1. Тираж 100 экз. Заказ № 961

ООО «Центр оперативной полиграфии» 167982, г. Сыктывкар, ул. Первомайская, 70 ИНН 1101132453, т. 24-46-57

15--22.70

2014357056