Александр, вас беспокоят из службы поддержки ЗверьБанка!
Александр, вас беспокоят из службы поддержки ЗверьБанка!

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

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

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

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

Качество аудио и версия синтеза речи

Голос делался на старой версии нашего синтеза речи, которая еще имела ряд ярких детских "болячек".

Также важно сказать, что:

  • Записано было около пары часов в относительно хороший микрофон (сейчас достаточно даже 15 минут речи);

  • Обладатель голоса - не диктор, просто условно случайный сотрудник с яркими артефактами дикции (системный администратор);

  • Микрофон был хорошим, но на фоне немного гудел кондиционер;

Результаты

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

100 реальных аудио человека сравниваются со 100 разными сгенерированными примерами (включая пример с таким же текстом), созданными на основе текстов этих же 100 реальных аудио.

На картинке ниже вы можете увидеть сравнение 100 реальных аудио со 100 сгенерированными аудио и скоры системы (помечено цветом). Зеленым цветом (скор менее 1) помечено, что система "считает" эту пару записей одним человеком. Красным - это "разные" люди (скор более 1.1). Желтый - это пограничные значения (скор между 1 и 1.1).

Если взять среднее значение по точке отсечения 1.1 (порог установлен заказчиком), то получается, что в среднем НЕ УДАЛОСЬ обмануть систему где-то в 10% случаев. То есть в 90% случаев систему обмануть УДАЛОСЬ.

По общей "матрице" также видно, что "плохие" (или "хорошие", тут как смотреть) примеры сгруппированы. По отзывам заказчика, основные ошибки относились скорее к недостаткам именно старой системы синтеза:

  • Нестабильная работа;

  • Нестабильность на более длинных аудио и на совсем коротких аудио;

  • Система не принимала более 140 символов на вход;

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

Вывод

Кажется, что нужно начинать паниковать, ведь люди заморочились, заказали модель, провели пен-тест какой-то супер-коммерческой системы и оказалось, что в 90% случаев её можно обмануть! Ужас! Но на самом деле конечно никакого повода для паники нет.

Мы записывали аудио на качественный микрофон в относительной тишине. Мы приложили максимум усилий для обработки и чистки аудио и вложили некоторое количество вычислительных ресурсов (нетривиальное, но и не десятки тысяч GPU-дней).

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

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

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

Комментарии (13)


  1. SADKO
    29.06.2022 12:25

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

    Джо, не уловим, пока его никто не ловит, но по мере развития биометрической идентификации, интерес к ней будет возрастать и с учётом того, что в былые годы у криминала хватало ума и средств на решение куда более сложных задач хватало.


    1. snakers4 Автор
      29.06.2022 12:36
      +1

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

      К нам пришел заказчик, мы сделали свою работу, система идентификации, очевидно, на вход принимала просто 2 аудио и сравнивала их.

      Очевидно, что в реальной жизни делать такую систему основным ключом - бред.


      1. SADKO
        29.06.2022 15:14

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

        То есть, если кого припрёт серьёзно подделывать биометрию, он может пойти коротким путём.


        1. snakers4 Автор
          30.06.2022 10:05

          А еще можно просто подойти на улице (под видом журналиста, например) или просто спрятать микрофон под майку и спросить что-то. Или найти аудио-книгу. Или еще что-то.

          Мой основной посыл - качественный синтез на 1 фразе от речи неотличим, что для человека, что для биометрической системы, но полезным для атак НЕ является.


        1. dizatorr
          30.06.2022 14:08

          Ещё один вектор опасности биометрических систем подобного рода - отказ в обслуживании. Это когда система не может признать носителя биометрии, из за повреждения оной. Простыл чел или в морду ему дали.


      1. Kotsusamu
        29.06.2022 15:16

        Очевидно, что в реальной жизни делать такую систему основным ключом - бред

        ой не факт, совсем не факт. Маркетинг рулит многими проектами.


  1. Zoraccer
    29.06.2022 13:16
    +1

    Для получения в изобилии отличных семплов публичной фигуры и даже простого гражданина достаточно пригласить его на интервью.. ой?


    1. snakers4 Автор
      29.06.2022 13:20

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

      А для простого человека - никто заморачиваться не будет, посыл моей статьи, что мошенничество работает, потому что фиксированные расходы на 1 пользователя равны нулю. Условно для каждой бабки - скрипт одинаковый.


      1. igand
        30.06.2022 08:55
        +2

        Например, многие преподаватели во время пандемии записывали дистанционные лекции на хороший микрофон и выкладывали в открытый доступ


      1. Bedal
        30.06.2022 09:57
        +1

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


        1. snakers4 Автор
          30.06.2022 10:03

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

          Моя основная задача показать - что синтез или клонирование речи опасности не представляют, потому что или качество будет не очень, несмотря на все оптимизации, или всегда будут более простые способы через социальный инжиниринг.

          Опять же, полная неотличимость в рамках одного предложения синтезированной речи от реальной нужна только для каких-то супер high-profile атак.


          1. Bedal
            30.06.2022 10:14
            +1

            разница в объёме. «Тупо сказанное любое слово» — мало. А десяток минут речи — уже нет. Причём то, какие слова будут сказаны, с высокой вероятностью задаёт тема разговора, а тему — звонящий.


  1. snakers4 Автор
    29.06.2022 14:02

    Да, важная ремарка.

    Заказчик дал нам табличку, где значения менее 1 были покрашены как зеленые, от 1 до 1.1 как желтые, более 1.1 как красные.

    Если желтые посчитать как "не обманули", то процент обмана будет 65%.

    Но повторюсь, большая часть проблем из-за которых оно "не работало", были артефактами синтеза.