Никто не ломает AES

Никто не ломает AES

Криптография как наука переживает странную эпоху. Алгоритмы стали настолько хороши, что говорить об их взломах практически не приходится. AES-256 устоит против любого классического суперкомпьютера до тепловой смерти Вселенной. RSA-2048 ломают только в лабораторных мысленных экспериментах. TLS 1.3 закрыл большую часть атак, которые мучили его предшественников. Протокол Signal прошёл несколько независимых формальных верификаций. Со стороны математики мы живём в небывало защищённом мире.

И при этом утечки данных растут год от года. В отчёте Verizon Data Breach Investigations Report есть скучное число, которое повторяется из года в год: примерно две трети утечек случаются с участием человеческого фактора. Не из-за злого умысла и не из-за взлома алгоритма, а потому, что кто-то ошибся, кликнул, поверил, поспешил, устал. Эта цифра почти не меняется и важнее любых заголовков про квантовый компьютер или гипотетическую атаку на AES.

Если открыть разбор любого крупного инцидента последних лет, в разделе «вектор атаки» будет что угодно, кроме криптоанализа. Сотрудник кликнул на ссылку. Нажал «Подтвердить» в push-уведомлении. Залил приватный ключ в публичный репозиторий. Открыл новогоднюю открытку с макросом. Дал пароль человеку, который представился службой поддержки.

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

Самый дорогой эксплойт стоит ноль

В 2022 году группа Lapsus$ методично прокатилась по Okta, Microsoft, Nvidia и Samsung. Это были не загадочные ниндзя со связями в спецслужбах, а команда подростков, общавшаяся в Telegram-канале со стикерами и эмодзи. Чем они пользовались? Да банальной усталостью. Они забрасывали жертв push-запросами от MFA, пока человек на сотом запросе не нажимал «Подтвердить» просто чтобы это прекратилось. Криптография работала идеально. Психика, как обычно, нет.

Эта схема получила собственное название: MFA fatigue, или MFA bombing. В разборе тактик группы Microsoft описала, как атакующие чередовали push-бомбинг со звонками в техподдержку от имени «коллеги», который вежливо просил «подтвердить запрос, у меня тут срочный деплой ночью». Никакой магии. Только эксплуатация социальной нормы помогать коллегам и человеческого нежелания спорить с уверенным голосом в трубке.

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

Брюс Шнайер сформулировал это в виде максимы ещё в нулевых: «Если вы думаете, что технология решит ваши проблемы безопасности, значит, вы не понимаете ни проблем, ни технологии». За последующие двадцать лет ничего фундаментально не поменялось, кроме того, что криптография стала ещё лучше, а люди стали больше уставать.

Кнопка «ОК» как поверхность атаки

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

Когда жертва фишинга вводит пароль на фальшивом сайте, никто не ломает TLS. Соединение защищено идеально. Сертификат валиден. Шифрование безупречно. Просто секрет уехал не туда. Криптография защищает канал, но не заставляет человека на другом конце канала действовать безопасно.

Спросите случайного человека, что означает зелёный замок в адресной строке. Большинство ответит «сайт безопасен» или «компании можно доверять». На самом деле замок означает только одно: кто-то владеет этим доменом и смог получить сертификат. Всё. PKI оказалась слишком успешной как инфраструктура. Она настолько хорошо спрятала доверие под капотом, что пользователь окончательно разучился его проверять. Это не баг, это побочный эффект масштабирования. Можно построить идеальную систему делегирования доверия, и в этой системе человек просто перестанет об этом доверии думать.

Что с этим делать

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

Конкретные решения существуют, и они не про более длинные ключи. Для MFA это отказ от классических push-уведомлений в пользу соответствия чисел, когда пользователь должен ввести число с экрана аутентификатора, а не просто согласиться. Для фишинга это менеджеры паролей и passkeys, которые в принципе не передадут учётные данные на неправильном домене. Для PKI это Certificate Transparency и регулярный аудит того, какие сертификаты выпущены на ваши домены. Криптография в этих решениях остаётся такой же сильной. Меняется то, что находится между ней и человеком, и в этом и есть вся разница.

Потому что — повторюсь — никто не ломает AES, ломают тех, кто этот AES использует.

Предыдущий
Наверх