Вот вам идея для эксперимента: в заполненном автобусе громко произнесите: «Привет, Сири! Напиши смс маме: я беременна!». После этого расслабьтесь и наблюдайте за перфомансом. Наверняка поймаете чьи-то испуганные взгляды, когда их айфоны проснутся в сумках/карманах, и владельцы полезут за ними отменять вашу команду. (С)
Но что если бы существовал способ разговаривать со смартфонами не словами, а непонятными человеку звуками? Если гаджеты не запрашивают подтверждений у владельцев, а те не сообразят вовремя и не вмешаются, то даже и не поймут, что кому-то что-то написали.
Похоже, люди и компьютеры принимают за человеческую речь звуки разного характера. Прошлым летом группа исследователей разработала способ создания голосовых команд, которые парсятся компьютером, но при этом для человека звучат как бессмысленный шум. Авторы назвали их «скрытыми голосовыми командами». С их помощью можно управлять Android-смартфонами с активированным Google Assistant. И звучит это как всплески грубого статичного шума.
Чтобы такая атака сработала, источник звука должен находиться на расстоянии не больше 3,5 м от атакуемых смартфонов. При этом вовсе не обязательно находиться рядом с атакуемым — звуковую последовательность можно внедрить в звуковую дорожку популярного YouTube-ролика, или передать по радио или телевидению.
Недавно в новостях сообщили о случае, когда шестилетняя девочка заказала себе через Amazon Echo кукольный домик и килограмм печенья, просто попросив гаджет о них. Самое забавное, что когда об этом рассказали в новостном выпуске по ТВ и прозвучала фраза «I love the little girl, saying ‘Alexa ordered me a dollhouse’», то были отмечены случаи размещения в интернете заказов такими же устройствами, которые услышали сказанное по телевизору.
Касание — главный способ взаимодействия со смартфонами. Поэтому мы блокируем экраны, вводим защиту по паролю или отпечатку пальца. Но голос тоже становится всё более важным способом взаимодействия, наши гаджеты превращаются в постоянно слушающих нас помощников, готовых выполнить наши просьбы. Вставьте в уши новые беспроводные наушники Apple, и Сири становится посредником во взаимодействии со смартфоном, вам даже не нужно доставать его из кармана или сумки.
Чем больше всевозможных датчиков получают наши гаджеты, тем больше появляется способов управления ими. В безопасности есть даже такой термин — «increased attack surface». Ради маркетинговых исследований уже научились воздействовать через микрофоны с помощью ультразвуковых сигналов. С помощью быстро мерцающих световых сигналов можно передавать через камеры сообщения, используемые для наблюдения и установления связи, а также для отключения или изменения функций телефона.
Большинство электронных помощников оснащены защитой от исполнения случайно подслушанных или вредоносных команд. Например, в предложенном в начале статьи эксперименте смартфоны наверняка запросят подтверждение на отправку SMS. Сири прочитает текст сообщения вслух, прежде чем отправить его. Но целеустремлённый злоумышленник может и обойти защиту подтверждением. Достаточно успеть сказать «да» до того, как владелец устройства сообразит, что происходит, и скажет «нет».
Скрытые голосовые команды могут нанести ещё больше вреда, чем просто отправка поддельных или глупых текстовых сообщений. Например, если владелец iPhone привязал свою Сири к аккаунту на сервисе Venmo, то он может пересылать деньги посредством голосовых инструкций. Или голосовая команда может заставить устройство посетить сайт, с которого автоматически скачается зловредное приложение.
Исследователи разработали два разных набора скрытых команд, предназначенных для двух типов жертв. Один набор нацелен на Google Assistant: команды вводят его в заблуждение, потому что Google не раскрывает подробности распознавания речи. Сначала исследователи сгенерировали с помощью речевого синтезатора голосовые команды, а затем с помощью специальных алгоритмов сделали их малоразборчивыми для человеческого уха, но всё ещё понятными для цифровых помощников. После нескольких итераций команды стали звучать так, что люди вообще их не понимали, а гаджеты распознавали их в вполне уверенно.
Получившиеся скрытые команды не звучат бредово. Скорее, они похожи на речь демона, а не человека.
Если вы знаете, что сейчас услышите замаскированную голосовую команду, то, вероятно, поднапрягшись, сможете её понять. Чтобы избежать этого прайминг-эффекта, разработчики через Mechanical Turk, сервис Amazon для найма работников в небольшие проекты, привлекли испытуемых, которым давали прослушивать исходные и искажённые команды, а те записывали, что, как им кажется, они слышали.
Лучше всего разница между машиной и человеком была заметна на простой команде «Okay, Google!». Когда её произносили нормально, люди и гаджеты понимали её примерно в 90% случаев. Но когда команда была обработана, люди понимали её в 20% случаев, а Google Assistant — в 95%. С командой «Turn on airplane mode» всё было не так трагично: люди понимали её в 24-69% случаев, а устройства — 45-75%.
Когда мы с коллегами испытали сделанные исследователями записи на своих Android-смартфонах и айфонах с запущенным приложением Google, то добились некоторого успеха. «Okay, Google» срабатывала чаще других скрытых команд, а в ответ на «What is my current location» мы получали всё, что угодно, от «rate my current location» до «Frank Ocean». Возможно, отчасти это следствие того, что мы прокручивали YouTube-запись с ноутбука, что внесло определённые искажения.
Также разработчики создали набор команд для атаки на open-source приложение для распознавания речи, чей код можно было заранее изучить, чтобы эффективнее замаскировать голосовые команды, но при этом оставить их понятными для алгоритма. Получившиеся записи звучат не так демонически. Некоторые вообще не разобрать, даже если знаешь, что сейчас услышишь. Ни один из нанятых испытуемых не смог распознать даже половину слов из этого набора.
А если вы не знаете, что слушаете голосовые команды, то даже и не поймёте, что происходит. Когда разработчики вставили скрытую фразу между двумя обычными фразами, сказанными человеком, и попросили испытуемых записать всё, что они услышали, то лишь четверть из них вообще попыталась транскрибировать среднюю фразу.
Затем разработчики занялись созданием способов защиты от подобных голосовых атак. Простого уведомления недостаточно, потому что его можно проигнорировать или заглушить другими звуками. Подтверждение чуть надёжнее, но его можно преодолеть с помощью другой скрытой команды. А функция реагирования только на те команды, что произнесены владельцем, зачастую оказывается неэффективна, да к тому же требует «обучения» гаджета.
Разработчики пришли к мнению, что лучше всего применять решения на базе машинного обучения, анализирующие речь и пытающиеся определить, что с ними говорит именно человек, либо прогоняющие каждую команду через процесс постепенного ухудшения качества поступающих инструкций. В последнем случае уже обработанные «скрытые» команды станут слишком зашумлёнными для распознавания, но человеческая речь всё ещё будет оставаться понятной.
Но если фильтры даже слегка затруднят понимание гаджетами людей, то производители вряд ли будут их внедрять. У тех пользователей, чья речь часто непонятна для цифровых помощников, ухудшение качества распознавания может привести к нежеланию вообще покупать этот гаджет.
Прежде чем допускать цифровых помощников ко всё более важным операциям — например, банковским переводам, или даже публикации фотоснимков в сети — их нужно сделать более искусными в отражении атак. Иначе сатанинский голос из YouTube-видео сможет нанести гораздо больше вреда, чем громкая команда в переполненном автобусе.
Комментарии (38)
impetus
25.04.2017 19:08+3И научить этим скрытым командам попугаев. Или, лучше — городских ворон и скворцов (они обучаемы). Во потеха настанет.
«Будущее наступило»
ardin
25.04.2017 19:15«Привет, Сири» работает автоматически только на зарядке?
DnV
25.04.2017 21:36В новых устройствах работает всегда, но отзывается только на голос хозяина.
motpac
25.04.2017 23:33в Семерке айфон написано, что работает только при зарядке. Может не там смотрел?
Staltec
26.04.2017 05:50но отзывается только на голос хозяина
А вот хрен-то там. У меня на 7-ке, на голос хозяина срабатывает активация «привет Сири!», а дальше команду может продолжить кто угодно. Да и активация по голосу хозяина очень условна. У меня жена умудряется подобрать интонацию и активировать Сири на моём телефоне, хотя голоса у нас мягко говоря сильно разные. Точно также всё это работает и с Ябло-часами (проверял на второй серии).
sgrogov
26.04.2017 12:00На 7, 6s и SE работает постоянно, если не подключены наушники. Про предыдущие модели не могу сказать. Правда это "Привет, Siri" срабатывает примерно в одном случае из четырёх.
kolemik
25.04.2017 19:40+6откомментирую эпиграф
Что характерно, так это наличие айфонов у большинства пассажиров переполненного автобуса :)nckma
26.04.2017 10:23Анекдот же. Или Москва.
ContentProvider
26.04.2017 11:30Я живу не в Москве, у половины пассажиров маршрутки айфоны.
braineater
26.04.2017 15:495s стоят в районе 20 тысяч. Не самый дешевый вариант но вполне сравнимо с андроидом.
EviGL
25.04.2017 22:29Надеялся что сэмплы будут более впечатляющими.
Как в той статье о нейросетях, где учёные так модифицировали картинку, что нейронная сеть переставала распознавать на ней объект, а для человека модификации были незаметны вовсе.
Вот и тут думал будет шуршание, в котором телефон слышит слова. А по факту многие команды слышны ухом, особенно ok, google (да, прайминг-эффект, но всё же).sumanai
25.04.2017 22:43Так тут наоборот задача. Думаю, модифицировать человеческую речь так, что она не будет распознаваться программой, а для человека будет прекрасно слышна, намного проще.
EviGL
25.04.2017 22:45Ну, я и имел в виду обратную задачу. Надеялся что будет нечто, распознаваемое смартфоном как команда, а для человека слышимое как равномерный шум.
Хотя на закрытых алгоритмах такую задачу решить в разы сложнее, конечно.
Antelle
25.04.2017 23:41Что-то про google glass похожее было:
https://habrahabr.ru/post/167479/#comment_5922341
muon
26.04.2017 07:00-1Баловство это голосовое управление, поиграемся и забудем. Именно по причине, описанной в первом абзаце. Не зайдёт.
Erelecano
26.04.2017 07:25-1> Баловство это голосовое управление
Давайте посмотрим, как вы повторите свою глупость про баловство, когда вам оторвет руки, ну или хотя бы парализует их.muon
26.04.2017 08:14+4И голову отрежет девушка-комсомолка.
В топике речь про массового потребителя с функционирующими руками, вообще-то.
nckma
26.04.2017 10:27А у меня случай проще.
Я в командировке и на телефоне андроид внезапно перестал работать экран.
Сам телефон работает, я слышу приходящие смс или входящие звонки. Только не могу отреагировать — прочитать или даже снять трубку в слепую (хотя понимаю, что тач работает). Не знаю уровень заряда батареи или не знаю включен ли сейчас wifi или 4g.
Что делать? Есть ли способ запустить какое-то ПО на телефоне вслепую, чтобы пользоваться голосовым управлением?p_fox
26.04.2017 12:01Что значит "что делать"?
Сдать телефон в ремонт.nckma
26.04.2017 12:08Я в командировке: домой попаду через неделю, и еще впереди 4 самолета. Если бы можно было бы установить через USB кабель ПО для слепых, возможно оно бы мне помогло.
Maccimo
26.04.2017 12:58+2Так в чём проблема?
Купите в ближайшем ларьке самый дешёвый китайский мобильник и пользуйтесь, пока не почините.
menelion_elensule
26.04.2017 16:13Попробуйте на экране блокировки расставить два пальца и подержать в таком положении. Должен включиться TalkBack, программа экранного доступа для слепых. Если включится, сможете пользоваться как обычно, правда, есть некоторые особенности: для однопальцевых жестов (прокрутка, ответ на звонок) придётся добавить ещё один палец; для выбора ярлыка на экране нужно коснуться два раза. В общем, если будут вопросы, задавайте, отвечу.
Gorodnya
26.04.2017 17:01Попробуйте установить удалённо на него, например, AndroidLost (TeamViewer не предлагаю, так как там нужно вводить цифры с экрана, а он у Вас не работает).
И с того устройства, откуда установили, можете через бразуер кое-как управлять. Вот обзор на Хабре.
cleaner_it
26.04.2017 07:24Проверяли на что реагирует голосовое управление — на текст, или голос. На Андроиде подобрал с десятого раза фразу "Окей, гугл", голосом сестры. Было забавно пробовать, а разблокировку голосом она сразу убрала) Подбирал длительностью и частотой звучания.
kgbplus
26.04.2017 12:01Не знаю… У меня Google Nexus 5X не одну из этих команд не понял. Хотя мой голос (по английски) понимает прекрасно
Farxial
27.04.2017 07:57Может, оффтоп, но…
Было бы логично иметь возможность переименовывать Сири. Почему её вообще зовут Сири — только потому что, назвав это слово, ты спалишь, что у тебя айфон, и это будет выгодно Apple? Это — часть ключевого слова (хотя остальную тоже можно было бы сделать изменяемой), и возможность его изменения упростила бы процесс аутентификации пользователя.
spc
28.04.2017 22:16Ну не знаю. Наверное, вы в чем-то правы по поводу демонических голосов. Один такой у меня в голове сейчас задает пару вопросов: — что я только что сейчас прочитал?! и — почему это на Хабре?!
sumanai
Вот почему голосовое управление- зло. Ведь даже люди ошибаются поразительно часто.