Аутентификация и другие
Это пост из канала @cybersecgameНесколько дней назад проскочила новость класса facepalm про то, что сбербанковского телефонного робота можно обмануть подменой номера телефона. Банки вообще последнее время полюбили модные и молодёжные способы удобной авторизации клиентов.
Имеем по этому поводу сказать нечто стратегически важное.
Начнём издалека.
Существует три способа удостоверить личность (аутентифицировать) человека. И пусть мы живём в освещённую цветными светодиодами эпоху киберпанка, все три способа пришли к нам из раннего неолита.
Первый способ: человек должен владеть секретом — виртуальным, хранящимся только в человеческой памяти, или техническим.
Часовой, проводящий аутентификацию, должен либо, в свою очередь, знать тот же секрет, либо иметь другой способ его проверить. Кроме очевидных паролей и механических ключей, к этому способу относятся криптографические ключи. Менее очевидно, но RFID-метки с криптографией — тоже тут.

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

Распознавание биометрического признака (в основном - лица) всегда было не самой надёжной штукой. Даже не страдающие медицински установленной прозопагнозией люди часто испытывают сложности в узнавании лиц (автор этих строк, например, больше привык ориентироваться на фигуру, походку и одежду). Люди часто бывают весьма похожи. Объем памяти часового ограничен, выучить можно ну десяток лиц, ну два. Да и то тех, которые ходят часто.
Чтобы упростить часовым жизнь, и придумали паспорта и пропуска с фотографиями, но, во-первых, прозопагнозия мешает и тут, а во-вторых, хоть бумагу обильно снабжали некими признаками, якобы сложными в кустарном производстве, особой проблемой подделать эти идентификаторы не было никогда. А уж про идентификаторы, которые передаются электронно — IP-адреса, MAC, телефоны и т.п., и говорить нечего.
Когда, наконец, наступила цифровая эпоха, её отцы-основатели радостно схватились за древние пароли, как за самый надёжный способ идентификации и тут-то выяснились дополнительные проблемы.
Оказалось, что надёжной эта штука является только при должном обращении - надо иметь множество сложных паролей к разным сервисам и относиться к ним ответственно, а иначе никакого смысла. Да и вообще, пользователям неудобно, сложно, они хотят, чтобы было без всего этого.
Тут же выяснилось, что теперь биометрические признаки человека (отпечатки пальцев, лицо, походку) теперь можно различать довольно простым способом: компьютер это делает не моргнув глазом и с высокой надёжностью отличает одного человека от другого. А главное, что пользователям это показалось чем-то довольно удобным и невероятно надёжным.
— Вот! — сказали маркетологи, выросшие из тех же пользователей, — Это то, что нам нужно, делайте вот так.
И все немедленно ухватились за биометрию — и те, кто отвечает за аутентификацию и злоумышленники. Потому, что с одной стороны компьютер теперь умеет надёжно распознавать всё на свете. А с другой стороны, если у считывателя или камеры не стоит всё тот же пришедший к нам из древних веков часовой с копьём и в набедренной повязке, то у злоумышленников есть возможность подсовывать фотографии, силиконовые маски или силиконовые пальцы, дипфэйки, запись голоса и т.п. Даже для распознавания походки уже придумывают кое-какие решения.

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

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