SSL/TLS – основа безопасных интернет-соединений. Вместе с ними RC4, изобретенный Роном Ривестом в 1987 году, часто используется для шифрования. В настоящее время исследователи сталкиваются с атакой против алгоритма расшифровывания безопасной передачи. Атака пока более теоретическая, но ясно показывает, что некоторые задачи должны быть решены.
Огромное количество серверов используют RC4. Среди них сервера Google, Facebook и Microsoft. У этого метода есть ряд преимуществ – он очень быстр, а значит, серверам легче его обрабатывать, а также он неуязвим для новых атак на SSL/TLS, таких как BEAST и Lucky13. Поэтому зачастую рекомендуется как альтернатива. Но в то же время, RC4 стар и имеет свою долю проблем.
Алгоритм RC4 более известен как поточный шифр, с псевдослучайным генератором номеров, который выплевывает практически случайные номера. Затем эти номера используются для связки текстов, которые должны быть зашифрованы или расшифрованы с помощью XOR. Пароль определяет цель инициализации генератора, с той же целью заставляя генератор создавать тот же поток номеров. Если же номера и правда случайны, то этот метод, на самом деле, создаст невзламываемое шифрование, известное как Шифр Вернама. Но, как следует из названия, псевдослучайные номера едва лишь случайные, и Надем АльФардан, Дан Бернштайн, Кенни Паттерсон, Бертам Поэтринг и Джэйкоб Шульдт нашли способ использовать минимальные отклонения исключительно статистического распределения для взлома шифрования и расшифровать по крайней мере 220 байт соединения.
Им нужно большое число соединений, шифрующее тот же самый текст: 230, или около миллиарда. Но эта цифра не так ясна, как кажется. Когда огромное количество соединений может быть создано автоматически, например с помощью JavaScript, который помещён в обычную web-страницу и вызывает одну и ту же https-ссылку. Среди прочих данных, все эти соединения получают cookies действительного сеанса, которые пользователь либо атакующий, может использовать для захода в Google Mail без ввода пароля. Мэттью Грин объясняет проблему подробнее в его посте помощи в блоге: «Атака недели: RC4 как-то сломался в TLS».
Однако, атака ещё не может быть осуществлена на практике, но атаки все время улучшаются. Эти результаты должны рассматриваться как предупреждающий выстрел. Следовательно, те, кто использует шифрование RC4, должны начать искать альтернативу. Одна из рекомендаций исследователей – методы блочного шифра CBC, которые улучшили для блокировки BEAST и Lucky 13; другой вариант — TLS 1.2, который еще не широко используется, но предлагает варианты шифрования лучше.
Автор: ZiGR