Атаки на системы машинного обучения -общие проблемы и методы
Е.А. Ильюшин, Д.Е. Намиот, И.В. Чижов
Аннотация— В работе рассматривается проблема атак на системы машинного обучения. Под такими атаками понимаются специальные воздействия на элементы конвейера машинного обучения (тренировочные данные, собственно модель, тестовые данные) с целью либо добиться желаемого поведения системы, либо воспрепятствовать ее корректной работе. В целом, эта проблема является следствием принципиального момента для всех систем машинного обучения - данные на этапе тестирования (эксплуатации) отличаются от таковых же данных, на которых система обучалась. Соответственно, нарушение работы системы машинного обучения возможно и без целенаправленных действий, просто потому, что мы столкнулись на этапе эксплуатации с данными, для которых генерализация, достигнутая на этапе обучения, не работает. Атака на систему машинного обучения - это, фактически, целенаправленное выведение системы в область данных, на которых система не тренировалась. На сегодняшний день, эта проблема, которая, в общем случае, связана с устойчивостью работы систем машинного обучения, является главным препятствием для использования машинного обучения в критических приложениях.
Ключевые слова— состязательные атаки, кибербезопасность систем машинного обучения
I. ВВЕДЕНИЕ
Эта статья представляет собой расширенное изложение доклада на конференции MSU AI [1]. Статья является продолжением серии публикаций, посвященных устойчивым моделям машинного обучения [2, 3, 4]. Она подготовлена в рамках проекта кафедры Информационной безопасности факультета ВМК МГУ имени М.В. Ломоносова по созданию и развитию магистерской программы "Искусственный интеллект в кибербезопасности" [5].
Машинное обучение стало важным компонентом многих IT-систем. На сегодняшний день машинное обучение является практическим синонимом термина Искусственный Интеллект, программы развития которого являются уже национальными программами во
Статья получена 12 января 2022. Исследование выполнено при поддержке Междисциплинарной научно-образовательной школы Московского университета «Мозг, когнитивные системы, искусственный интеллект»
Д.Е. Намиот - МГУ имени М.В. Ломоносова (email: dnamiot@gmail .com)
Е.А. Ильюшин - МГУ имени М.В. Ломоносова (email: [email protected])
И.В. Чижов - МГУ имени М.В. Ломоносова (email: [email protected]).
многих странах. Добавлять в приложения возможности машинного обучения становится все проще. Многие библиотеки машинного обучения и онлайн-сервисы уже не требуют глубоких знаний в области машинного обучения.
Однако даже у простых в использовании систем машинного обучения есть свои проблемы. Среди них -угроза состязательных атак, которая стала одной из важных проблем приложений машинного обучения. Под этим понимается специальное воздействие на элементы конвейера (пайплайна) системы машинного обучения (то есть, воздействию могут подвергаться тренировочные данные, тестовые данные или даже сами модели), призванные вызвать желаемое поведение работающей системы. Таковым поведением может быть, например, неверная работа классификатора. Но существуют и атаки, которые направлены на выяснение параметров работы системы. Эта информация поможет атакующему создать обманывающие систему примеры. Существуют атаки, которые позволяют проверить, например, принадлежность определенных данных к тренировочному набору и, возможно, раскрыть тем самым конфиденциальную информацию.
Воздействие здесь - это специальный подбор тренировочных или тестовых данных, скрытая модификация модели, специальная организация опроса системы и т.д.
II. Атаки на системы машинного обучения
Термин "состязательные" (или "опровергающие") и нужно понимать в смысле противодействия работе системы машинного обучения (нейронной сети) [4].
Состязательные атаки отличаются от других типов угроз безопасности (атак на ИТ-системы). Поэтому первым шагом к противодействию им является их классификация, понимание их типов, равно как и мест приложения (того, где и атакуются системы машинного обучения).
Природа атак на системы машинного обучения и глубокого обучения отличается от других киберугроз. Состязательные атаки опираются на сложность глубоких нейронных сетей и их статистический характер, чтобы найти способы их использования и изменения их поведения. Нет возможности обнаружить злоумышленные действия с помощью классических инструментов, используемых для защиты программного обеспечения от киберугроз.
Состязательные атаки манипулируют поведением
моделей машинного обучения. Большая часть примеров относится к работе с изображениями, но в реальности есть примеры атак на системы анализа текстов, классификации аудио-данных (распознавание речи), анализа временных рядов. В целом, их можно рассматривать как некоторый универсальный риск для моделей машинного обучения (глубинного обучения) [6].
Есть разные попытки объяснить природу их существования. По одним гипотезам, состязательные атаки существуют из-за нелинейного характера систем, что ведет к существованию некоторых неохваченных алгоритмом генерализации областей данных. По другим
Рис. 1. Классификация состязательных атак
Теперь формализуем понятие состязательной атаки. Для этого необходимо дать формальное определение модели угроз на примере задачи классификации, которая заключается в том, что имея исходный набор данных X и конечное множество меток классов У необходимо найти отображение /: X ^ У . Тогда отображение / уязвимо для состязательных атак тогда, когда существует отображение А такое, что для любого х 6 X найдется х = А(х), для которого/( х ) Ф у при том, что/(х) = у.
Теперь мы можем формально определить состязательную атаку следующим образом:
пусть х 6 Я принадлежит классу у, тогда состязательная атака - это отображение А : Я ^ такое что ~ = А( х) и /( ~ ) Ф у.
Среди всевозможных видов состязательных атак можно выделить подмножество аддитивных состязательных атак, которые определяются так:
небольшие отклонения от тренировочного набора данных обрабатываются неверно.
Термин состязательная атака часто используется в широком смысле для обозначения различных типов злонамеренных действий против моделей машинного обучения. Но состязательные атаки различаются в зависимости от того, на какую часть конвейера машинного обучения они нацелены, от эффекта, которого они добиваются, и от знания об атакуемой системе (черный и белый ящик). На рисунке 1 представлен пример классификации атак
пусть х 6 Я принадлежит классу у, тогда аддитивная состязательная атака - это добавление некоторого шума ц ЕКа к х, так что X = х + ц и /(X ) = у1 ,где у1Ф у
Стоит отметить ряд важных свойств аддитивных атак, а именно то, что такие атаки гарантируют неизменность входного пространства и они интерпретируемы. Большинство существующих состязательных атак именно этого типа.
Аддитивные атаки в свою очередь можно разделить, как минимум, на три типа. Для того что бы перейти к формализации указанных типов, давайте рассмотрим задачу нарушения работы классификатора в следующем виде. Дано множество классов {у1, у2, у3, . . . , ук}. Границы классов заданы дискриминирующими функциями ^1(0, я2(-), . . . , Бк(-)}. Задача состоит в нарушении работы классификатора так, чтобы / сопоставлял х класс у, для этого необходимо чтобы:
gt(х ) >х ), для всех I Ф t
- это наоборот переобучение системы, когда даже
Атака Место атаки Затрагиваемые параметры
Adversarial Attack использование Входные данные
Backdoor Attack тренировка Параметры сети
Data poisoning тренировка, использование Входные данные
IP stealing использование Отклик системы
Neural-level trojan тренировка Отклик системы
Hardware trojan аппаратное пр о ектнр ов ани е Отклик системы
Side-channel Attack использование Отклик системы
Тогда значение gt(x) должно быть большим, чем значение любой другой g(■) или:
&( ~) > шах^. )} ^ max{gг )} - gt ) < 0
ш ш
Последнее неравенство накладывает ограничение на множество атакующих х . Для того чтобы величина искажения п было как можно меньше, X должен быть как можно ближе к х. Раз у нас появился такой критерий, то мы можем формализовать три типа аддитивных атак:
1) Атака минимизирующая функцию расстояния, где ||| - любая функция расстояния
шт||х - ~||, при условии тах^г. (~)} - gt (~) < 0
х
2) Атака максимизирующая функцию расстояния, где |||
любая функция расстояния, а X > 0 - задает верхнюю границу для атаки:
штшах^ (~)} - gt (~) при условии ||~ - х|| < Л
х г^
3) Атака на основе регуляризации, где ||| - любая функция расстояния, а а > 0 - параметр регуляризации: шт|| х - х| + а (тах^г. (~)} - gt (~) )
х г^
Основной проблемой в части борьбы с атаками является отсутствие универсальных методов их предотвращения. Все развитие в этой области до сих пор следует бесконечному циклу: появление новой атаки -модификация алгоритма и/или модели для ее предотвращения (смягчения последствий) - появление новой атаки преодолевающей защиту и т.д.
Это были примеры атак, которые воздействуют на входные данные. Другой пример - атаки, которые пытаются воздействовать на тренировочные данные. Отравление - это как раз пример таких атак. Отравление может быть разным, как и уклонение. Такие атаки также могут быть целевыми и нецелевыми. Далее такие атаки могут различаться по допустимым (возможным) воздействиям на тренировочные данные. Например, можно ли добавлять новые размеченные данные или только менять метки у существующих данных и т.п.
В [7] отмечено четыре общих стратегии атак отравлением:
• Модификация меток: эти атаки позволяют злоумышленнику изменять только метки в наборах данных контролируемого обучения, но для произвольных точек данных. Как правило, с учетом ограничения на общую стоимость модификации.
• Внедрение данных: злоумышленник не имеет никакого доступа к обучающим данным, а также к алгоритму обучения, но имеет возможность добавлять новые данные в обучающий набор. Можно испортить целевую модель, вставив состязательные образцы в набор обучающих данных.
• Модификация данных: злоумышленник не имеет доступа к алгоритму обучения, но имеет полный доступ к обучающим данным. Обучающие данные могут быть отравлены напрямую путем изменения данных перед их использованием для обучения целевой модели.
• Логическое искажение: злоумышленник имеет возможность вмешиваться в алгоритм обучения. Эти атаки называются повреждением логики.
На рисунке 2 проиллюстрирована атака отравлением на классификатор на базе SVM. Отравление - это не изменение входных данных, а изменение самой гиперплоскости классификатора. Отравляющие атаки меняют границу классификации, а состязательные атаки меняют входной пример.
Есть также два других типа атак, таких как бэкдоры и трояны, технически они очень похожи на атаки отравления. Разница заключается в том, какие данные доступны атакующему.
Атаки, направленные на кражу интеллектуальной собственности призваны выявить существенные факты о тренировочных наборах, самой модели или ее параметрах. Например, атаки выведения (они же -инференс атаки, в оригинале - Membership Inference атаки) - призваны проверить, находится ли конкретный экземпляр данных в обучающем наборе. Базовая идея -модель ведет себя по-разному на входных данных, которые были в обучающем наборе или не были в нем. В классической работе [8] строится ряд теневых моделей (моделей, подобных исходной) на которых оцениваются искусственно созданные датасеты, включающие интересующие нас данные.
Classical adversarial attack: directly modifying the testing sample
Data poisoning: modifying training samples intelligently
Adversarial example Data poisoning
Pros simple way to bypass a defense allows more types of attacks
Cons requires owning the testing data requires owning the training data
Рис. 2. Сравнение атак [7]
Атаки инверсией модели (атаки извлечения данных) пытаются фактически извлечь данные из тренировочного набора. Например, при работе с изображениями можно попытаться извлечь определенное изображение из набора данных [9]. Отметим, что такие атаки связаны, естественным образом, с множественными запросами к модели и оценкой ее ответов. Трудно предположить, что модели для критических применений будут иметь какой-то
1, Upload training dataset
3. Steal the hype грата meter
4 upload emu? training dataset & Specify the Sealed hype г parameter
Б. Evaluate the testing da laset
открытый интерфейс, позволяющий сторонние запросы. Так что такие атаки относятся, скорее, к каким-то публичным сервисам (MLaaS - machine learning as service [12]).
Вывод параметров или извлечение модели - еще одна атака, целью которой является восстановление точной модели или даже ее гиперпараметров [10]. Идея о том, как это может быть сделано, представлена на рисунке 3 [11]. Датасет обрабатывается порциями, для того, чтобы понять структуру модели.
2. Leam hype rpara meters & model parameters
Ifta
ffjpiamazon
M web services
S. Re-learn model parameters
Рис. 3 Извлечение модели [11]
Для критических применений остро стоит вопрос сертификации систем, моделей и наборов данных, подобно тому, как это делается для традиционных систем программного обеспечения, используемых в таких приложениях. Важно также, что состязательные атаки вызывают проблемы с доверием к алгоритмам машинного обучения, особенно к глубоким нейронным сетям. Дискуссии об этике систем искусственного интеллекта связаны, в том числе, и с состязательными атаками.
Благодарности Мы благодарны сотрудникам кафедры Информационной безопасности факультета
Вычислительной математики и кибернетики МГУ имени М.В. Ломоносова за ценные обсуждения данной работы.
Библиография
[1] MSU AI https://event.msu.ru/aiconference Retrieved: Mar, 2022
[2] Намиот Д.Е., Ильюшин Е.А., Чижов И.В. Текущие академические и индустриальные проекты, посвященные устойчивому машинному обучению //International Journal of Open Information Technologies. - 2021. - Т. 9. - No. 10. - С. 35-46.
[3] Намиот Д. Е., Ильюшин Е. А., Чижов И. В. ВОЕННЫЕ ПРИМЕНЕНИЯ МАШИННОГО ОБУЧЕНИЯ //International Journal of Open Information Technologies. - 2022. - Т. 10. - №. 1. -С. 69-76.
[4] Намиот Д. Е., Ильюшин Е. А., Чижов И. В. Основания для работ по устойчивому машинному обучению //International Journal of Open Information Technologies. - 2021. - Т. 9. - №. 11. - С. 68-74.
[5] Artificial Intelligence in Cybersecurity. http://master.cmc.msu.ru/?q=ru/node/3496 (in Russian) Retrieved: Dec, 2021
[6] Yuan X. et al. Adversarial examples: Attacks and defenses for deep learning //IEEE transactions on neural networks and learning systems. - 2019. - Т. 30. - №. 9. - С. 2805-2824.
[7] How to attack Machine Learning ( Evasion, Poisoning, Inference, Trojans, Backdoors) https://towardsdatascience.com/how-to-attack-machine-learning-evasion-poisoning-inference-trojans-backdoors-a7cb5832595c Retrieved: Mar, 2022
[8] Shokri, Reza, et al. "Membership inference attacks against machine learning models." 2017 IEEE symposium on security and privacy (SP). IEEE, 2017.
[9] Nasr, Milad, Reza Shokri, and Amir Houmansadr. "Comprehensive privacy analysis of deep learning." Proceedings of the 2019 IEEE Symposium on Security and Privacy (SP). 2018.
[10] Yan, Haonan, et al. "Monitoring-based differential privacy mechanism against query flooding-based model extraction attack." IEEE Transactions on Dependable and Secure Computing (2021).
[11] Wang, Binghui, and Neil Zhenqiang Gong. "Stealing hyperparameters in machine learning." 2018 IEEE Symposium on Security and Privacy (SP). IEEE, 2018.
[12] Ribeiro, Mauro, Katarina Grolinger, and Miriam AM Capretz. "Mlaas: Machine learning as a service." 2015 IEEE 14th International Conference on Machine Learning and Applications (ICMLA). IEEE, 2015.
Attacks on machine learning systems - common
problems and methods
Eugene Ilyushin, Dmitry Namiot, Ivan Chizhov
Abstract— The paper deals with the problem of adversarial attacks on machine learning systems. Such attacks are understood as special actions on the elements of the machine learning pipeline (training data, the model itself, test data) in order to either achieve the desired behavior of the system or prevent it from working correctly. In general, this problem is a consequence of a fundamental moment for all machine learning systems - the data at the testing (operation) stage differs from the same data on which the system was trained. Accordingly, a violation of the machine learning system is possible without targeted actions, simply because we encountered data at the operational stage for which the generalization achieved at the training stage does not work. An attack on a machine learning system is, in fact, a targeted introduction of the system into the data area on which the system was not trained. Today, this problem, which is generally associated with the stability of machine learning systems, is the main obstacle to the use of machine learning in critical applications.
Keywords— machine learning, cyberattacks, adversarial examples
References
[1] MSU AI https://event.msu.ru/aiconference Retrieved: Mar, 2022
[2] Namiot D.E., Il'jushin E.A., Chizhov I.V. Tekushhie akademicheskie i industrial'nye proekty, posvjashhennye ustojchivomu mashinnomu obucheniju //International Journal of Open Information Technologies. -2021. - T. 9. - No. 10. - S. 35-46.
[3]Namiot D. E., Il'jushin E. A., Chizhov I. V. VOENNYE PRIMENENIJa MAShINNOGO OBUChENIJa //International Journal of Open Information Technologies. - 2022. - T. 10. - #. 1. - S. 69-76.
[4]Namiot D. E., Il'jushin E. A., Chizhov I. V. Osnovanija dlja rabot po ustojchivomu mashinnomu obucheniju //International Journal of Open Information Technologies. - 2021. - T. 9. - #. 11. - S. 68-74.
[5]Artificial Intelligence in Cybersecurity. http://master.cmc.msu.ru/?q=ru/node/3496 (in Russian) Retrieved: Dec, 2021
[6]Yuan X. et al. Adversarial examples: Attacks and defenses for deep learning //IEEE transactions on neural networks and learning systems. -2019. - T. 30. - #. 9. - S. 2805-2824.
[7]How to attack Machine Learning ( Evasion, Poisoning, Inference, Trojans, Backdoors) https://towardsdatascience.com/how-to-attack-machine-learning-evasion-poisoning-inference-trojans-backdoors-a7cb5832595c Retrieved: Mar, 2022
[8]Shokri, Reza, et al. "Membership inference attacks against machine learning models." 2017 IEEE symposium on security and privacy (SP). IEEE, 2017.
[9]Nasr, Milad, Reza Shokri, and Amir Houmansadr. "Comprehensive privacy analysis of deep learning." Proceedings of the 2019 IEEE Symposium on Security and Privacy (SP). 2018.
[10] Yan, Haonan, et al. "Monitoring-based differential privacy mechanism against query flooding-based model extraction attack." IEEE Transactions on Dependable and Secure Computing (2021).
[11] Wang, Binghui, and Neil Zhenqiang Gong. "Stealing hyperparameters in machine learning." 2018 IEEE Symposium on Security and Privacy (SP). IEEE, 2018.
[12] Ribeiro, Mauro, Katarina Grolinger, and Miriam AM Capretz. "Mlaas: Machine learning as a service." 2015 IEEE 14th International Conference on Machine Learning and Applications (ICMLA). IEEE, 2015.