[Информационная безопасность, Машинное обучение] Атаки на компьютерное зрение
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Привет, хабровчане. В рамках набора учащихся на курс «Компьютерное зрение» подготовили для вас интересную статью, автор — Александр Колесников.
Данная статья — попытка собрать известные теоретические и практические атаки на алгоритмы компьютерного зрения и реализовать атаку на практике. Материал будет полезен специалистам, которые занимаются построением систем распознавания и классификации объектов.Компьютерное зрение — направление в области анализа данных. Системы, которые оснащаются этой технологией, могут отвечать за очень важные процессы. Для примера можно взять автомобиль Tesla, "Yandex Self-Driving Car", медицинские системы анализов, видеокамеры и т.д. Подобные системы должны проектироваться с заложенными в них системами защиты, причем эти системы не должны защищать только от «типичных» угроз для информационных систем вроде эксплойтов, вредоносного ПО или Ddos атак. Чтобы проще было понимать, что делает та или иная атака, давайте разберемся, как работает Компьютерное зрение.Общую архитектуру устройств или программного обеспечения, которые реализуют компьютерное зрение, можно поделить на следующие элементы:
- Обучающий алгоритм;
- Нейронная сеть;
- Устройство для запуска алгоритма сети;
- Сенсоры ввода/вывода данных;
- Набор данных для классификации и обучения.
Компьютерное зрение является таким мощным инструментом для распознавания данных и их классификации благодаря нейронной сети, лежащей в его основе. Она может иметь большое количество конфигураций, но нас интересует хотя бы одно представление. Пример можно увидеть ниже на рисунке. Нейронная сеть обычно программируется или имплементируется в виде устройства. Сеть не умеет думать и может не знать ничего о тех данных, с которыми работает. Поэтому, чтобы она могла ориентироваться, сеть «обучают», то есть подают тестовые данные на "input" ноды и она показывает результат на "output" нодах.
Помимо самой сети Компьютерное зрение так же включает в себя сенсоры, которые будут регистрировать данные для распознавания. Также в нем могут быть сенсоры для выполнения операций, для которых была создана сеть, например, для управления автомобилем.УязвимостиКогда говорят о Компьютерном зрении, в большинстве случаев опускают тот факт, что это по-прежнему приложение или устройство, и у него могут быть уязвимости, которые не находятся в алгоритме. Поверхность атаки для таких систем становится намного больше. Условно атаки можно разделить на 3 группы:
- Атаки на алгоритм обучения и/или классификации
- Атаки на приложение
- Атаки на сенсоры
Атаки на алгоритм обучения и/или классификацииСостязательные атакиГруппа атак, которая получила описание после 2014 года, когда было опубликовано исследование о возможности ввести в заблуждение системы искусственного интеллекта. Сами атаки предсталяют собой искажения, которые заставляют систему сомневаться в результате и выдавать заведомо не верный результат. Бэкдор атакиДанный вид атак может производиться на процедуру обучения, основное отличие от состязательных атак заключается в том, что атака не нарушает работу сети. Она даже наоборот может способствовать лучшему обучению сети, но при таком обучении закладываются примеры, которые в дальнейшем должны позволить управлять нейронной сетью. Ниже приведен пример атаки, которая использует метод добавления Отражения и метод добавления фэйковых пикселей. Представленные ниже картинки созданы искусственно.
Ниже можно найти примеры из реальной жизни. Зеленая метка — то, что предполагалось распознать, а красная — то, что было распознано.
Атаки на приложениеВредоносное программное обеспечение может принести довольно серьезные проблемы для обучения сети и работы алгоритма в целом. ВПО может модифицировать ОС и оперативную память приложения, которое выполняет основные операции обработки данных. В самой атаке нет ничего особенного и нового, просто ВПО может подменять данные налету.ЗакладкиНейронные сети, которые используются для работы компьютерного зрения, представляют собой весьма сложные структуры, поведение которых иногда достаточно сложно предсказать. На написание собственного алгоритма работы сети может уйти большое количество времени, которого для решения задачи всегда в обрез. Сегодня для решения этой проблемы есть специализированные библиотеки и даже готовые сети, которые нужно только обучить на своих данных. А что, если в такую сеть будет заложено определенное поведение, если ей будет предложено распознать определенную картинку? В рамках сети подобная «закладка» не сделает ничего плохого, просто заставит сеть проставить на вывод ожидаемое значение. Но что, если это значение будет влиять на поворот руля в автомобиле? Или распознание лица с камеры наблюдения? Получается достаточно большое количество сценариев. К сожалению, этот тип атак существует и его очень легко реализовать. Кстати, пример такой атаки можно найти здесь.Кража моделиАтака, которая скорее всего будет затрагивать непосредственно создателя алгоритма — потеря репутации, появление аналогичных продуктов на рынке. В зависимости от имплементации модели существует 2 вида кражи:
- онлайн — анализ приложения с использованием реверсивного прокси
- офлайн — анализ проводится над приложением или устройством с применением подходов обратной разработкиПочему это актуально? Если обратиться к языкам программирования, которые используются для построения сетей, то допустим, Java без дополнительной защиты может предоставить вот такой листинг после декодирования:
Даже если нет ни малейшего представления, как писать приложения с нейронными сетями, из полученного листинга можно понять всё.Так как процесс обратной разработки — это практически всегда частично угадывание алгоритма и контекста для которого используются данные. Просмотр даже в сыром виде может подсказать что это и как работает:
Как видно из примеров выше, исследования офлайн модели это достаточно тривиальный процесс. Гораздо более сложный процесс происходит при краже онлайн модели. Отличие этой атаки заключается в том, что атакующему нужно воспроизвести саму сеть на основании входных и выходных данных. Задача сродни решению кубика-рубика: нужно перебирать конфигурацию сетей и математические примитивы, которые будут использоваться для сети.Атаки на сенсорыКласс атак, который предполагает физические повреждения или искажение данных, которые регистрируют сенсоры. Чтобы продемонстрировать, как такие атаки реализуются, представим несколько примеров:
Реализация атакВ качестве практики предлагаем читателям реализовать атаку на стандартные алгоритмы классификации изображений через «Состязательную атаку». Для этого можно использовать вот этот репозиторий. Репозиторий включает в себя несколько версий атак и позволяет очень просто их реализовывать. Пример атаки из репозитория:
import torchattacks
atk = torchattacks.PGD(model, eps=8/255, alpha=2/255, steps=4)
adversarial_images = atk(images, labels)
Узнать больше о курсе «Компьютерное зрение».
Приглашаем также всех желающих принять участие в вебинаре «Компьютерное зрение в спортивной аналитике». На этом демо-занятии:
1. Рассмотрим задачи, которые ставит бизнес в сфере спортивной видеоаналитики.
2. Узнаем об основных подходах и моделях для решения подобных задача.
3. Поговорим о детекции и трекинге игроков, реконструкции геометрии сцены, а также о распознавании активности игроков на видео.
===========
Источник:
habr.com
===========
Похожие новости:
- [Машинное обучение, Искусственный интеллект] Google научила нейросеть генерировать рецепты
- [Информационная безопасность, Node.JS, GitHub] В популярной NPM-библиотеке netmask обнаружена критическая уязвимость
- [Информационная безопасность] Как отличать объекты друг от друга и при чем тут хеш-функции
- [Информационная безопасность, Криптография, Финансы в IT] «Ростелеком» предложил защитить биометрию россиян с помощью криптографического модуля
- [Информационная безопасность] Не только лишь удаленка: как атаковали киберпреступники в 2020 году
- [Машинное обучение, Искусственный интеллект] Исследование МТИ нашло «систематические» ошибки в датасетах для обучения нейросетей
- [Сетевые технологии, Карьера в IT-индустрии] CCIE #13: Как сдать экзамен “Designing Cisco Enterprise Networks” (300-420 ENSLD) (перевод)
- [Информационная безопасность] Security Week 13: сбор данных для атак на бизнес
- [Умный дом, Интернет вещей] Что такое IoT и что о нем следует знать
- [Информационная безопасность, PHP] Пресечена попытка встроить бэкдор в репозиторий PHP
Теги для поиска: #_informatsionnaja_bezopasnost (Информационная безопасность), #_mashinnoe_obuchenie (Машинное обучение), #_mashinnoe_obuchenie (машинное обучение), #_kompjuternoe_zrenie (компьютерное зрение), #_ujazvimosti (уязвимости), #_videoanalitika (видеоаналитика), #_blog_kompanii_otus (
Блог компании OTUS
), #_informatsionnaja_bezopasnost (
Информационная безопасность
), #_mashinnoe_obuchenie (
Машинное обучение
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 23:01
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Привет, хабровчане. В рамках набора учащихся на курс «Компьютерное зрение» подготовили для вас интересную статью, автор — Александр Колесников.
Данная статья — попытка собрать известные теоретические и практические атаки на алгоритмы компьютерного зрения и реализовать атаку на практике. Материал будет полезен специалистам, которые занимаются построением систем распознавания и классификации объектов.Компьютерное зрение — направление в области анализа данных. Системы, которые оснащаются этой технологией, могут отвечать за очень важные процессы. Для примера можно взять автомобиль Tesla, "Yandex Self-Driving Car", медицинские системы анализов, видеокамеры и т.д. Подобные системы должны проектироваться с заложенными в них системами защиты, причем эти системы не должны защищать только от «типичных» угроз для информационных систем вроде эксплойтов, вредоносного ПО или Ddos атак. Чтобы проще было понимать, что делает та или иная атака, давайте разберемся, как работает Компьютерное зрение.Общую архитектуру устройств или программного обеспечения, которые реализуют компьютерное зрение, можно поделить на следующие элементы:
Помимо самой сети Компьютерное зрение так же включает в себя сенсоры, которые будут регистрировать данные для распознавания. Также в нем могут быть сенсоры для выполнения операций, для которых была создана сеть, например, для управления автомобилем.УязвимостиКогда говорят о Компьютерном зрении, в большинстве случаев опускают тот факт, что это по-прежнему приложение или устройство, и у него могут быть уязвимости, которые не находятся в алгоритме. Поверхность атаки для таких систем становится намного больше. Условно атаки можно разделить на 3 группы:
Ниже можно найти примеры из реальной жизни. Зеленая метка — то, что предполагалось распознать, а красная — то, что было распознано. Атаки на приложениеВредоносное программное обеспечение может принести довольно серьезные проблемы для обучения сети и работы алгоритма в целом. ВПО может модифицировать ОС и оперативную память приложения, которое выполняет основные операции обработки данных. В самой атаке нет ничего особенного и нового, просто ВПО может подменять данные налету.ЗакладкиНейронные сети, которые используются для работы компьютерного зрения, представляют собой весьма сложные структуры, поведение которых иногда достаточно сложно предсказать. На написание собственного алгоритма работы сети может уйти большое количество времени, которого для решения задачи всегда в обрез. Сегодня для решения этой проблемы есть специализированные библиотеки и даже готовые сети, которые нужно только обучить на своих данных. А что, если в такую сеть будет заложено определенное поведение, если ей будет предложено распознать определенную картинку? В рамках сети подобная «закладка» не сделает ничего плохого, просто заставит сеть проставить на вывод ожидаемое значение. Но что, если это значение будет влиять на поворот руля в автомобиле? Или распознание лица с камеры наблюдения? Получается достаточно большое количество сценариев. К сожалению, этот тип атак существует и его очень легко реализовать. Кстати, пример такой атаки можно найти здесь.Кража моделиАтака, которая скорее всего будет затрагивать непосредственно создателя алгоритма — потеря репутации, появление аналогичных продуктов на рынке. В зависимости от имплементации модели существует 2 вида кражи:
Даже если нет ни малейшего представления, как писать приложения с нейронными сетями, из полученного листинга можно понять всё.Так как процесс обратной разработки — это практически всегда частично угадывание алгоритма и контекста для которого используются данные. Просмотр даже в сыром виде может подсказать что это и как работает: Как видно из примеров выше, исследования офлайн модели это достаточно тривиальный процесс. Гораздо более сложный процесс происходит при краже онлайн модели. Отличие этой атаки заключается в том, что атакующему нужно воспроизвести саму сеть на основании входных и выходных данных. Задача сродни решению кубика-рубика: нужно перебирать конфигурацию сетей и математические примитивы, которые будут использоваться для сети.Атаки на сенсорыКласс атак, который предполагает физические повреждения или искажение данных, которые регистрируют сенсоры. Чтобы продемонстрировать, как такие атаки реализуются, представим несколько примеров: Реализация атакВ качестве практики предлагаем читателям реализовать атаку на стандартные алгоритмы классификации изображений через «Состязательную атаку». Для этого можно использовать вот этот репозиторий. Репозиторий включает в себя несколько версий атак и позволяет очень просто их реализовывать. Пример атаки из репозитория: import torchattacks
atk = torchattacks.PGD(model, eps=8/255, alpha=2/255, steps=4) adversarial_images = atk(images, labels) Узнать больше о курсе «Компьютерное зрение».
Приглашаем также всех желающих принять участие в вебинаре «Компьютерное зрение в спортивной аналитике». На этом демо-занятии: 1. Рассмотрим задачи, которые ставит бизнес в сфере спортивной видеоаналитики. 2. Узнаем об основных подходах и моделях для решения подобных задача. 3. Поговорим о детекции и трекинге игроков, реконструкции геометрии сцены, а также о распознавании активности игроков на видео. =========== Источник: habr.com =========== Похожие новости:
Блог компании OTUS ), #_informatsionnaja_bezopasnost ( Информационная безопасность ), #_mashinnoe_obuchenie ( Машинное обучение ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 23:01
Часовой пояс: UTC + 5