Авторы Баттиста Биджио и Маттео Маури
Первоначально опубликовано в «Pluribus One Blog»

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

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

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

Революция ИИ в современных приложениях

Это часть продолжающихся исследований, которые наша группа и многие другие по всему миру проводят в течение последних лет (в рамках части проекта ALOHA, финансируемого Европейским Программа исследований и инноваций Union Horizon 2020, соглашение о предоставлении гранта №780788, в котором мы отвечаем за оценку устойчивости глубоких нейронных сетей к наихудшим входным возмущениям [1]).

ИИ определяется как «новое электричество». Эндрю Нг, адъюнкт-профессор Стэнфордского университета, соучредитель Coursera и бывший главный научный сотрудник Baidu, наряду со многими другими экспертами, утверждает, что алгоритмы ИИ прокладывают путь к новой промышленной революции.

ИИ и глубокое обучение

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

Этап распознавания

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

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

Этап обучения

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

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

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

Сверхчеловеческие возможности

Учитывая огромную доступность данных, которые можно собрать сегодня, и впечатляющую вычислительную мощность новых компьютеров и облачных архитектур, в некоторых конкретных сценариях приложений глубокое обучение даже превосходит человеческие способности. Очень популярный пример, когда алгоритмы превзошли человеческую производительность, представлен ImageNet. ImageNet — это база данных, содержащая более 14 миллионов изображений, которая уже несколько лет используется в качестве основы для конкурса ImageNet Large Scale Visual Recognition Challenge (ILSVRC). В этом соревновании разные алгоритмы соревнуются за правильное распознавание объектов, принадлежащих к 1000 различным классам. На рис. 2 показана динамика доли неверных распознаваний в этом соревновании с годами. Легко заметить, что в 2015 году лучший алгоритм конкурса достиг более высокой точности, чем средний алгоритм, о котором сообщают люди для решения той же задачи.

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

Однако случай с ImageNet не единственный, в котором зафиксирован успех ИИ. Еще один показательный и, возможно, даже более популярный случай — это видеоигры и стратегические игры. Алгоритмы искусственного интеллекта уже давно доказали свою лучшую игру в шахматы, чем люди; но в последнее время они доказывают превосходство даже в гораздо более сложных играх и видеоиграх, включая шутеры от первого лица. Недавно DeepMind продемонстрировала, что их алгоритм ИИ может самостоятельно учиться побеждать высококвалифицированных игроков-людей в сложной видеоигре, такой как StarCraft II [2]. И здесь сила их алгоритма, называемого AlphaStar, заключается в возможности наблюдения большого количества (помеченных) данных. В частности, алгоритм потенциально может играть в бесконечные игры и постоянно анализировать их результаты. Таким образом, с помощью обучения с подкреплением можно обучить алгоритм ИИ, чтобы он улучшал свою работу ошибка за ошибкой и игра за игрой.

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

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

Учитывая то, что мы обсудили до сих пор, может показаться, что ИИ и, в частности, глубинные алгоритмы обучения — это новое Эльдорадо, панацея от всех бед. Но все мы знаем, что не все то золото, что блестит

Можно ли обмануть ИИ?

На самом деле, некоторые манипуляции с входными данными для этих алгоритмов могут привести их в замешательство, в некоторых случаях даже явно. Самый яркий и популярный состязательныйпример — это, пожалуй, тот, о котором сообщается в статье «Интригующие свойства нейронных сетей», опубликованной исследователями Google Brain в 2013. В этом примере показано, как изображение, представляющее школьный автобус, измененное с помощью враждебного возмущения, незаметного для человеческого глаза, ошибочно распознается как страус одним из этих алгоритмов искусственного интеллекта который записал сверхчеловеческое выступление на ImageNet.

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

Как уже было сказано, 2013 год был важным годом для этой области исследований. Однако, по правде говоря, проблема (не)защищенности алгоритмов ИИ была широко известна исследователям в области компьютерной безопасности и раньше. В частности, с самого начала было понятно, что алгоритмы ИИ, развернутые в условиях, чувствительных к безопасности, рано или поздно должны будут столкнуться с умными и адаптивными злоумышленниками, тем более что последние имеют четкую мотивацию и/или финансовый стимул для их обмана. . Еще в 2004 году было известно, что алгоритмы искусственного интеллекта для обнаружения спама в электронной почте уязвимы для состязательных атак, атак, при которых спамеры манипулируют содержанием спам-сообщений, чтобы обойти обнаружение, не ставя под угрозу читабельность спам-сообщений для людей. . А совсем недавно (2012–2013 гг.) уже успешно работали алгоритмы атаки на нейронные сети [5]. В частности, описанный выше сценарий идентифицирует только конкретную уязвимость алгоритмов ИИ. Этот сценарий, также известный как уклонение, заключается в манипулировании входными данными с целью их неправильной классификации с помощью предварительно обученного (и развернутого) алгоритма.

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

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

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

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

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

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

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

Тогда как мы должны моделировать атаки, чтобы упреждающе повысить безопасность систем ИИ? Как мы должны интегрировать эти модели в процесс обучения, чтобы сделать его более безопасным? Это по-прежнему сложные проблемы, и поэтому проблема остается открытой. Некоторые исследователи предполагают, что в будущем алгоритмы ИИ будут конкурировать друг с другом, эмулируя военную игру между нападающим и защитником; другие утверждают, что ИИ не будет иметь достаточной автономии и что опыт человека-эксперта останется необходимым для реального повышения безопасности таких систем. Ответ, как это обычно бывает, может заключаться в том, что бесплатных обедов не бывает — скорее всего, общего решения проблемы нет, но придется изучать разные решения и приспосабливать их к разным контексты приложения.

Авторы Баттиста Биджио и Маттео Маури
Pluribus One Sr.l. и Университет Кальяри. безопасно»

[1] Подробнее см. www.aloha-h2020.eu. В рамках проекта ALOHA мы разработали веб-демонстрацию, которая позволяет пользователю оценить уровень безопасности нейронной сети при наихудшем входном возмущении:https://www.pluribus-one.it/research /sec-ml/демо

[2] https://deepmind.com/blog/alphastar-mastering-real-time-strategy-game-starcraft-ii

[3] Пример показан на видео по этой ссылке: https://www.youtube.com/watch?v=dYVH3p-RuPQ

[4] Некоторые примеры доступны здесь: https://nicholas.carlini.com/code/audio_adversarial_examples

[5] Подробнее читайте в нашей статье Дикие шаблоны: десять лет после появления состязательного машинного обучения», опубликованной в 2018 году.