Компания RSA оказалась
жертвой "невероятно сложной и хорошо спланированной" атаки, которая привела
к утечке закрытых данных, объявил Арт Ковиелло, исполнительный директор RSA в
открытом письме, опубликованном вчера. Компания также опубликовала рекомендации,
предупреждающие о возможном риске в связи с произошедшим. С 2006 года компания
RSA является частью корпорации EMC.
Часть похищенной информации имеет отношение к аппаратному обеспечению
компании – аппаратной системе защиты (SecurID security token) и его программному
эквиваленту для смартфонов. Токены SecurID используются в двухфакторных системах
аутентификации. Для подтверждения подлинности пользователь вводит как свой
пароль, так и код, сгенерированный кодировщиком паролей - токеном. Каждый токен
создаёт последовательность шестизначных псевдослучайных чисел, генерируя новый
код каждые 60 секунд. Код, вводимый пользователем, должен совпасть с кодом,
заданным на сервере аутентификации, что позволяет серверу подтвердить не только
знание пользователем пароля, но и владение токеном. Каждый токен обладает
уникальным 128-битным генератором случайных чисел для создания
последовательности цифр. Каждая учетная запись пользователя на сервере
аутентификации взаимосвязана с генератором случайных чисел соответствующего
токена, что позволяет серверу узнать, какие случайные числа ожидать.
Заявление RSA не предоставило конкретной информации, и какое точно значение
это имеет для безопасной аутентификации пока не ясно. В наиболее вероятном
плохом варианте может быть определено распределение токенов между 25 000
покупателями-пользователями SecurID. Для взломщиков систем, основанных и
зависящих от генераторов паролей SecurID, в таком случае может оказаться
сравнительно легко обмануть систему авторизацию. Им лишь потребуется перехватить
сообщение – единичную попытку аутентификации (чтобы определить на каком этапе
последовательности находится определённый токен), и с этого момента они будут
способны генерировать пароли по своему усмотрению.
Это может основательно подорвать безопасность SecurID в системах
пользователя, но может значительно упростить исправление (с несущественными
затратами): просто выдать новые токены всем пользователям.
Ещё более ужасный, но скорее всего менее вероятный, вариант - RSA внутренне
документально зафиксирует проблемы и уязвимости в алгоритме генерации случайных
чисел (например, какой-либо эффективный механизм предсказания датчика случайных
чисел токена путём получения лишь нескольких сгенерированных чисел). Это даст
нарушителям ту же возможность - генерировать числа без обладания самим токеном -
что будет также значить, что не только каждый действующий генератор паролей
может быть взломан, но и любая возможная замена будет точно так же взломана. Это
неизбежно повлекло бы за собой создание полностью новой системы, с совершенно
новым алгоритмом генерации. Такие атаки уже возможны, но в данный момент они
требуют от нарушителя знания огромного количества чисел ещё до того, как
последовательность будет создана заново.
Более благоприятные результаты также возможны. Например, произошла утечка
официального алгоритма, используемого для генерации чисел. Хотя этот алгоритм
предполагалось хранить в тайне (с тем, чтобы пользователям пришлось покупать у
RSA железо, вместо того, чтобы просто использовать программное обеспечение для
безопасной аутентификации), он уже был успешно реверсирован - и разоблачение уже
никак не может навредить безопасности системы.
Публикация RSA подчеркивает уверенность компании в том, что украденная
информация не обеспечивает возможности "прямой атаки" на систему безопасной
аутентификации SecurID, и склоняется к исключению возможности
перепрограммирования датчика случайных чисел и подобных атак, но предупреждает,
что это может быть использовано в целях "уменьшения эффективность системы".