Как мы боролись со взломами корпоративных компьютеров. Безопасность, анти-спуфинг и распознавание лиц.

визуализация пользовательского интерфейса
визуализация пользовательского интерфейса

«Хочешь сделать хорошо – сделай это сам» – этого принципа мы придерживаемся в работе. Так что теперь мы можем взломать почти любую систему распознавания лиц. Навык приобрели вынуждено, пока работали над ровно обратным: улучшали систему безопасности на корпоративных компьютерах для израильского клиента.

Меня зовут Алексей, я руковожу компанией, которая занимается разработкой с применением ИИ-технологий. Сам я тоже погружен в разработку, но больше доверяю это своей команде – нам удалось собрать команду классных профи. Истории из нашей совместной работы я и планирую рассказывать в своем блоге.

Задача

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

<i>Spoofing</i> <i>В контексте распознавания лиц спуфинг означает попытку обмануть или обойти систему распознавания лиц, представив ей поддельное или сфальсифицированное изображение лица. Это можно сделать несколькими способами, например, с помощью физических фото жертвы, при помощи дисплея телефона с цифровым фото жертвы. Помимо этого, злоумышленники могут попытаться использовать маски или deepfake-технологии </i>

Анти-спуфинг

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

Главное преимущество нашей системы — возможность работы в скрытом режиме. Она не требует записи и анализа видео, работает с одним единственным фото и не заставляет пользователя показывать какие-то особые выражения лица. При этом система совместима с любыми камерами, без необходимости использовать 3D-камеры или специальные датчики, как Face ID на iPhone.

Решение

Сначала мы изучили, что нужно клиенту: как должны быть установлены камеры, как работает система в целом, а также учли требования к скорости работы алгоритма и уже имеющееся оборудование. Мы понимали, что спуфинг может быть разным — от простой фотографии до сложных методов вроде 3D-масок или видеозаписей. Поэтому наша система должна была эффективно противостоять этим угрозам, обеспечивая высокую точность распознавания.

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

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

Процесс внедрения

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

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

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

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

В итоге

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

Все три модели достигают точности более 99,9% и оптимизированы для разных платформ. Они работают с минимальной задержкой, позволяя одновременно обрабатывать до пяти потоков с 30 кадрами в секунду даже на недорогом оборудовании.

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

Снижение числа инцидентов безопасности. Внедрение анти-спуфинга существенно сократило количество попыток несанкционированного доступа с использованием поддельных лицевых данных. Клиент смог внедрить систему на всех этапах работы: от физического доступа к рабочему месту до авторизации в веб-портале и мобильном приложении.

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

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

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

Что сейчас

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

Где еще можно применять анти-спуфинг?

Да, основная задача анти-спуфинга – повышение точности распознавания лиц, что, в первую очередь, говорит о повышении безопасности. И это всё? В целом — да. Но безопасность не ограничивается корпоративными компьютерами.
Банковский и финансовый сектор

Использование: Анти-спуфинг применяется для защиты от мошенничества при дистанционном открытии счетов, подтверждении транзакций и других финансовых операциях. Это предотвращает использование поддельных лицевых данных для доступа к финансовым ресурсам.

Польза:

  • Увеличение доверия клиентов: Клиенты чувствуют себя защищенными, зная, что их средства защищены.
  • Снижение потерь от мошенничества: Технологии анти-спуфинга предотвращают незаконные операции, что сокращает финансовые потери.

Электронная коммерция и онлайн-платформы

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

Польза:

  • Улучшение безопасности: Снижение рисков взлома учетных записей и мошенничества.
  • Повышение доверия: Клиенты охотнее пользуются платформами, которые обеспечивают безопасность их личных данных и транзакций.

Ритейл и маркетинг

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

Польза:

  • Персонализированные предложения: Точная идентификация позволяет анализировать покупательское поведение и предлагать персонализированные скидки и акции.
  • Снижение мошенничества: Защита программ лояльности от злоупотреблений.

Здравоохранение

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

Польза:

  • Снижение числа медицинских ошибок: Обеспечивает точную идентификацию пациентов.
  • Улучшение безопасности: Защищает конфиденциальную медицинскую информацию от несанкционированного доступа.

Развлекательная индустрия и мероприятия

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

Польза:

  • Повышение безопасности: Снижение риска мошенничества и улучшение контроля доступа.
  • Улучшение клиентского опыта: Упрощает и ускоряет процесс входа для посетителей, улучшая их впечатления.

Образование

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

Польза:

  • Обеспечение академической честности: Предотвращает попытки мошенничества при сдаче экзаменов и выполнении учебных заданий.
  • Упрощение административных процессов: Автоматизация контроля посещаемости и аутентификации учащихся.

Заключение

Если после прочтения статьи вы задумались, а не нужен ли вам анти-спуфинг – что ж, цель статьи достигнута)) Велкам в комментарии! Всегда готов обсудить запрос. Уверен, мы найдем оптимальное решение вашей задачи. Для более детальных обсуждений пишите сразу в телеграм: t.me/studio2up

2 комментария