Введение 5
1. Социоинженерные атаки: защищённость информационной системы 9
1.1. Определения терминов сферы социоинженерных атак 9
1.2. Существующий подход к построению профиля уязвимостей 9
2. Используемые средства 11
2.1. Используемые определения и понятия 11
2.2. Используемые теоретические методы 12
2.2.1. Метод опорных векторов 12
2.2.2. Показатель tf-idf 14
2.3. Используемые программные инструменты 14
3. Построение классификатора текстовых записей 16
3.1. Описание задачи 16
3.2. Сбор данных для обучения 18
3.3. Препроцессинг текста 19
3.4. Обучение моделей 20
3.5. Результаты 21
4. Разработка модуля для анализа страниц социальной сети «ВКонтакте» 26
4.1. Описание внешнего интерфейса модуля 26
4.2. Схема взаимодействия с API социальной сети «ВКонтакте» 26
4.3. Процесс анализа текстовых записей 28
4.4. Описание дистрибутива модуля 28
4.5. Использование модуля в программном комплексе «критичные документы — информационная система — персонал — злоумышленник» 29
Заключение 33
Список литературы 36
Приложение A 40
А.1. Графики зависимости показателей эффективности от изменяемых параметров 40
Актуальность темы исследования. Широкое распространение информационных технологий сегодня актуализирует проблемы информационной безопасности. При этом для защиты от программно-технических атак разрабатывается большое количество различных средств, существенная часть исследований посвящена этой области [3,6,11]. В то же время пользователь информационной системы является одним из её наиболее уязвимых мест [1,13,27,28]. Атаки на информационную систему, использующие не программно-технические уязвимости, а уязвимости пользователей, называются социоинженерными. В основе таких атак лежат манипулятивные воздействия на пользователя. Общая цель направления исследования заключается в построении оценки защищённости персонала информационных систем от социоинженерных атак.
На сегодняшний день разработаны модели комплекса «критичные документы — информационная система — персонал — злоумышленник» [27]. На основе этого комплекса разработаны алгоритмы, имитирующие атаку злоумышленника через деревья атак и производящие оценку защищённости пользователей. Одним из основных компонентов комплекса является модель пользователя, ключевой элемент которой — это профиль уязвимостей пользователя. Профиль уязвимостей пользователя представляет собой набор пар «уязвимость» — «выраженность уязвимости». Сейчас эти данные задаются экспертом на основе анкетирования пользователей. Но если в анализируемой компании работает достаточно большое количество сотрудников, то занесение информации о них в программу становится трудоёмко. В то же время данные, полученные из анкет, не всегда являются достоверными.
Данная работа посвящена подходу к автоматизации построения профиля уязвимостей пользователя. В работе представлено описание построения модуля, предназначенного для выявления ряда психологических особенностей пользователя на основе текстовой информации. В свою очередь, текстовая информация получена со страниц пользователей в социальной сети «ВКонтакте». По разным оценкам эта социальная сеть является одной из самых популярных и распространённых в России [4,5,40]. Однако предложенный подход можно распространить и на другие источники текстовой информации — компонент, анализирующий текст, не зависит от источника обучающей выборки.
Постановка целей и задач. Данная выпускная квалификационная работа выполнялась в рамках общей проектной работы. Цель проекта заключается в автоматизации сбора, структурирования и анализа информации о сотрудниках компании, а также связей между ними на основе данных социальной сети «ВКонтакте».
Цель данной работы заключается в автоматизации оценки психологических особенностей пользователя информационной системы на основе анализа текстовой информации его профиля в социальной сети «ВКонтакте».
Для достижения данной цели были решены следующие задачи:
1. Разработать метод сбора и анализа текстовой информации.
2. Собрать данные для модели анализа текстовых данных (так называемые обучающую и тестовую выборки).
3. Построить модель классификации текстовых записей по степени выраженности той или иной характеристики.
4. Реализовать программный модуль для анализа профиля пользователя в социальной сети «ВКонтакте».
5. Внедрить программный модуль в разработанный ранее программный комплекс.
Теоретическая и практическая значимость исследования.
Научная новизна работы заключается в получении моделей, которые позволяют построить профиль психологических характеристик пользователя на основе анализа текстовой информации с его персональной страницы в социальной сети «ВКонтакте». Представленные в работе результаты содержат оценки эффективности построенных моделей. Кроме того, было разработано программное решение, позволяющее применить полученные результаты для задачи оценки защищённости информационной системы. Представленное решение состоит из программной библиотеки, реализованной на платформе .NET [15]. Данный модуль внедрён в существующий комплекс «критичные документы — информационная система — персонал — злоумышленник». Для использования функций разработанного решения в комплекс также добавлена возможность получить информацию о психологических характеристиках выбранного пользователя социальной сети «ВКонтакте».
Структура и объём работы. Работа состоит из введения, четырёх глав, заключения, списка литературы, включающего в себя 40 наименований, и приложения.
Глава 1 носит обзорный характер и освещает результаты предыдущих исследований в области социоинженерных атак. Эта глава состоит из 2 разделов. В разделе 1 даны определения основных терминов описываемой области. В разделе 2 рассмотрен существующий подход к построению профиля уязвимостей и оценке психологического профиля пользователя.
В главе 2 описаны средства, которые были применены в ходе исследования. Глава 2 состоит из трёх разделов. В первом разделе вводятся определения, использующиеся в работе. Второй раздел посвящён описанию применённых теоретических методов. Он включает в себя два подраздела: описание метода опорных векторов и описание показателя tf-idf. Наконец, третий раздел содержит описание используемых программных компонентов (среды разработки, библиотек и т. п.).
Глава 3 содержит подробное описание построенных моделей. Данная глава состоит из 5 разделов. Во втором разделе описывается процесс сбора данных для обучения модели. В третьем разделе освещаются механизмы предварительной обработки текстовых данных. В четвёртом разделе описывается процесс обучения моделей. Пятый раздел содержит результаты, полученные в ходе построения классификатора.
Глава 4 описывает разработку программного модуля, основанного на результатах данного исследования. Глава 4 также состоит из 5 разделов. В разделе 1 приводится описание внешнего интерфейса модуля. Во втором разделе описывается схема взаимодействия модуля с социальной сетью «ВКонтакте». В третьем разделе раскрывается схема анализа текстовых записей с помощью построенной модели. Четвёртый раздел описывает дистрибутив модуля, предназначенный для распространения. Наконец, в пятом разделе приводятся примеры использования модуля в программном комплексе «критичные документы — информационная система — персонал — злоумышленник».
В ходе работы были получены следующие результаты:
1. Разработан метод сбора и анализа текстовой информации.
2. Собраны данные для модели анализа текстовых данных.
3. Построены модели классификации текстовых записей по степени выраженности той или иной характеристики.
4. Реализован программный модуль для анализа профиля пользователя в социальной сети «ВКонтакте».
5. Программный модуль внедрён в разработанный ранее программный комплекс.
Таким образом, все поставленные задачи выполнены, цель работы, которая заключалась в автоматизации оценки психологических особенностей пользователя информационной системы на основе анализа текстовой информации его профиля в социальной сети «ВКонтакте», достигнута.
Результаты работы были представлены на 3 конференциях:
1. Юбилейная XV Санкт-Петербургская международная конференция «Региональная информатика (РИ-2016)», Санкт-Петербург, 26-28 октября 2016 г.
2. Всероссийская научная конференция по проблемам информатики «СПИСОК-2017», Санкт-Петербург, 25-27 апреля 2017 г.
3. XX Международная конференция по мягким вычислениям и измерениям (XX International Conference on Soft Computing and Measurements, SCM 2017), Санкт-Петербург, 24-26 мая 2017 г.
По теме дипломного проекта было подготовлено 5 публикаций:
1. Багрецов Г.И. и др. Подход к построению профиля уязвимостей пользователя // Региональная информатика (РИ-2016). XV Санкт- Петербургская международная конференция «Региональная информатика (РИ-2016)» (Санкт-Петербург, 26-28 октября 2016 г.): Материалы конференции. СПб.: СПОИСУ, 2016, С. 514 (опубликована).
2. Багрецов Г.И., Шиндарев Н.А., Абрамов М.В., Тулупьева Т.В. Подходы к разработке моделей для анализа текстовой информации в профилях социальной сети в целях построения профиля уязвимостей пользователя // XX Международная конференция по мягким вычислениям и измерениям, Санкт-Петербург, 24-26 мая 2017 г. (опубликована, индексация в РИНЦ)
3. Bagretsov G., Shindarev N., Abramov M., Tulupyeva T. Approaches to development of models for text analysis of information in social network profiles in order to evaluate user’s vulnerabilities profile // XX International Conference on Soft Computing and Measurements (SCM 2017), May 24, 2017 - May 26, 2017 (принята к печати, индексация в Scopus).
4. Shindarev N., Bagretsov G., Abramov M., Tulupyeva T. Constructing an intellectual system for social network’s user’s profile analysis aimed at structuring user’s vulnerabilities profile // 2nd International Scientific Conference «Intelligent Information Technologies for Industry» (IITI), Sep 14, 2017 - Sep 16, 2017 (поданы материалы, индексация в Scopus).
5. Багрецов Г.И., Тулупьева Т.В. Классификация текстовых записей по степени выраженности психологических особенностей // Всероссийская научная конференция по проблемам информатики «СПИСОК-2017», Санкт-Петербург, 25-27 апреля 2017 года (принята к печати, индексация в РИНЦ).
Также подана заявка на получение свидетельства о государственной регистрации программы для ЭВМ в Федеральной службе по интеллектуальной собственности (Роспатент).
Данная выпускная квалификационная работа бакалавра содержит материалы исследований, частично поддержанных грантом РФФИ 16-31-00373 — «Методы идентификации параметров социальных процессов по неполной информации на основе вероятностных графических моделей».
[1] Abramov M.V., Azarov A.A. Social engineering attack modeling with the use of Bayesian networks //Soft Computing and Measurements (SCM), 2016 XIX IEEE International Conference on. - IEEE, 2016. - С. 58-60.
[2] Andrew A.M. An Introduction to Support Vector Machines and Other Kernel-Based Learning Methods by Nello Christianini and John Shawe- Taylor, Cambridge University Press, Cambridge, 2000, xiii+ 189 pp., ISBN 0-521-78019-5 (hbk,£ 27.50). - 2000.
[3] Beckers K. et al. A pattern-based method for establishing a cloud-specific information security management system //Requirements Engineering. - 2013. - Т. 18. - №. 4. - С. 343-395.
[4] Brand Analytics. Социальные сети в России, зима 2015-2016. Цифры, тренды, прогнозы. URL: https://blog.br-analytics.ru/ socialnye-seti-v-rossii-zima-2015-2016-cifry-trendy-prog- nozy/.
[5] Digital. Социальные сети в России, осень 2016. Цифры, тренды, прогнозы. URL: https://adindex.ru/publication/analitics/ 100380/2016/12/8/156545.phtml.
[6] Distefano S., Puliafito A. Information dependability in distributed systems: The dependable distributed storage system //Integrated Computer-Aided Engineering. - 2014. - Т. 21. - №. 1. - С. 3-18.
[7] Fielding R.T., Taylor R.N. Architectural styles and the design of network-based software architectures. - Doctoral dissertation : University of California, Irvine, 2000. - С. 151.
[8] Friedman J., Hastie T., Tibshirani R. The elements of statistical learning. - Springer, Berlin : Springer series in statistics, 2001. - Т. 1.
[9] Gamma E, Helm R., Johnson R., Vlissides J. Design Patterns: elements of Reusable Object-Oriented Software. — Addison-Wesley, 1994. — 395 с.
[10] Hsieh C.J. et al. A dual coordinate descent method for large-scale linear SVM //Proceedings of the 25th international conference on Machine learning. - ACM, 2008. - С. 408-415.
[11] Jianye Z. et al. Information security risk assessment of smart grid based on absorbing Markov Chain and SPA //International Journal of Emerging Electric Power Systems. - 2014. - Т. 15. - №. 6. - С. 527-532.
[12] Koshiba Y., Abe S. Comparison of L1 and L2 support vector machines //Neural networks, 2003. Proceedings of the International Joint Conference on. - IEEE, 2003. - Т. 3. - С. 2054-2059.
[13] Mitnick K.D., Simon W.L. The art of deception: Controlling the human element of security. - John Wiley & Sons, 2011.
[14] Model evaluation: quantifying the quality of predictions. URL: http: //scikit-learn.org/stable/modules/model_evaluation.html.
[15] .NET Framework. URL: https://www.microsoft.com/net.
...