Ложка дегтя в бочке GSM
АрхивИзраильские математики-криптографы отыскали серьезнейшую, неведомую прежде слабость в системе защиты GSM и показали, что эту брешь можно весьма эффективно эксплуатировать для проведения самых разных атак — от тривиального прослушивания разговоров до подделки SMS или динамического клонирования телефонов жертв.
Странные вещи творятся в мире. То есть странно не то, ЧТО происходит, а КАК это преподносится. Вот, скажем, недавняя новость с очередным взломом системы мобильной связи GSM.
Что произошло? Израильские математики-криптографы1 из института Technion (г. Хайфа) Элад Баркан, Эли Бихам и Натан Келлер отыскали серьезнейшую, неведомую прежде слабость в системе защиты GSM и показали, что эту брешь можно весьма эффективно эксплуатировать для проведения самых разных атак — от тривиального прослушивания разговоров до подделки SMS или динамического клонирования телефонов жертв.
А вот КАК эта новость стала известна миру (где в настоящее время, кстати, используется почти 900 миллионов телефонов GSM — чуть больше 70% от всех аппаратов сотовой связи). Ну, прежде всего, публично эта работа была представлена еще в середине августа, на международной криптографической конференции CRYPTO 2003 в Санта-Барбаре. Есть информация, что профессионалы-криптографы прореагировали на доклад с огромным интересом (по словам ветерана Бихама, «были удивление, шок, потом поздравления» в связи с получением неожиданного результата). А в прессе при этом — ничего. То есть вообще ни слова. Я сам, уже давно питая слабость к данной теме, увидев в программе конференции новую работу о вскрытии GSM (да еще только по шифртексту), несколько дней обшаривал Интернет в поисках хоть какой-то дополнительной информации. Абсолютно безуспешно.
И лишь много позже, спустя почти две недели, известие все же прошло в локальной израильской прессе, а затем его донесли миру Reuters и все остальные. В самом кратком (и довольно мутном, надо сказать) изложении новостных агентств суть работы выглядела так. Профессор Эли Бихам и аспиранты Элад Баркан и Натан Келлер обнаружили слабость в системе шифрования сетей GSM. По свидетельству Бихама, новая атака позволяет злоумышленнику подключаться к разговору в тот момент, когда соединение только еще устанавливается, а на приемной стороне звучит звонок. После чего разговор может быть подслушан.
К обсуждению произошедшего тут же подключились представители Ассоциации GSM, которые в официальном заявлении сдержанно признали, что новый метод взлома действительно «идет дальше предыдущих академических статей, однако не содержит в себе ничего нового или удивительного для сообщества GSM; Ассоциация GSM полагает, что практические следствия данной статьи ограничены, а недавний апгрейд криптоалгоритма A5/2, доступный с июля 2002 года, направлен на то, чтобы закрыть брешь в безопасности, выявленную израильскими учеными».
Сами же израильские ученые, в частности Бихам, надо сказать, категорически не согласны с выводами Ассоциации. Однако, чтобы стала яснее суть расхождений, следует вспомнить предысторию того, как тщательно оберегавшаяся схема защиты GSM (официально, похоже, не раскрытая по сию пору) многие годы текла-текла, а к 1999 году протекла в Интернет окончательно. Тогда американский хакер Марк Брисено, более известный в Сети как Lucky Green, сделал полную обратную инженерную разработку криптоалгоритмов защиты GSM A3/А8 (аутентификация) и A5 (cобственно шифрование). Приглашенные Лаки Грином криптографы Дэвид Вагнер и Иэн Голдберг очень быстро выявили в криптосхемах кучу слабостей, внесенных явно искусственно на этапе разработки для (по выражению Брисено) «избыточной компрометации» системы. Было показано, что «подпорчены» не только откровенно слабый «экспортный» вариант A5/2 (который теоретически можно вскрывать, что называется влет), но и предположительно сильный A5/1, в котором принудительно обнуляются биты ключа, понижая общую стойкость шифра.
Чуть позже в том же 1999 году израилькие криптографы Шамир и Бирюков показали, что даже не принимая в расчет обнуленные биты ключа, алгоритм A5/1 можно вскрывать, если известна, правда, начальная часть разговора. Впрочем, такая атака справедливо была сочтена нереалистичной, да и вся дискуссия происходила не в большой прессе, а в интернет-форумах. Короче, поднявшийся было шум кое-как замяли — жизнь пошла дальше. Ну и вообще, речь-то ведь шла только о несанкционированном властями прослушивании, поскольку шифрование GSM идет лишь в эфире — между телефоном и базовой станцией, а дальше сигнал идет через сеть в расшифрованном виде. Так что имея ордер на прослушивание, компетентные органы всегда могут спокойно подсоединяться непосредственно у операторов связи (но это такая морока, как говорил один киноперсонаж). Всю эту историю «Компьютерра» освещала подробно в начале 2000 года (см. «КТ» #331, www.computerra.ru/offline/2000/331/2857).
В целом же можно говорить, что за прошедшие с той поры годы практически никаких сколько-нибудь серьезных результатов в области компрометации GSM более не публиковалось. Видимо, поэтому теперь в дискуссионных интернет-форумах первая реакция людей, не слишком осведомленных о сути новой работы, была по преимуществу ироничной: «Ах, как мило видеть — кто-то вновь повторяет открытия, давным-давно уже сделанные Лаки Грином»... Однако в действительности все обстоит совершенно не так.
На самом деле, по словам калифорнийского криптографа Дэвида Вагнера, прекрасно знакомого с предметом «изнутри», нынешнее исследование — это совершенно новая работа, очень серьезно отличающаяся от того, что было сделано раньше, и продемонстрировавшая выдающийся анализ.
1(назад) Elad Barkan, Eli Biham, Nathan Keller: «Instant Ciphertext-Only Cryptanalysis of GSM Encrypted Communications», Advances in Cryptology — CRYPTO 2003, Lecture Notes in Computer Science — 2729, Springer.
Если совсем вкратце, то Баркан, Бихам и Келлер получили два основных результата:
- Алгоритм A5/2 легко может быть вскрыт в реальном масштабе времени на основе лишь пассивного прослушивания, просто по шифртексту. Это возможно по той причине, что в GSM исправляющий ошибки код применяется к сигналу до зашифрования. Но код защиты от возможных ошибок и искажений вносит в сигнал большую избыточность, а значит определенная часть входных данных, поступающих на шифрование, становится известна атакующей стороне заранее, еще до начала собственно телефонных разговоров. Говоря иначе, ключ можно вскрывать уже на этапе вызова.
- Все другие шифрованные звонки по GSM (включая применение более сильных алгоритмов A5/1 или A5/3) можно вскрывать, применяя активную атаку. Здесь используется дефект в протоколе: процесс генерации сеансового ключа не зависит от того, какой выбран алгоритм засекречивания, сильный или слабый. Поэтому становится возможным сначала организовать атаку с вынуждением жертвы применить слабый шифр A5/2, узнать благодаря этому внутренний секретный ключ телефона, а впоследствии этот же самый ключ будет применяться в шифрованных звонках с сильным криптоалгоритмом A5/1 или A5/3. Т.е. более сильные и трудоемкие с точки зрения вскрытия алгоритмы здесь вообще не анализируются.
Сами израильские криптографы, понимая всю серьезность полученных ими результатов, задолго до публикации известили консорциум GSM и по сию пору на веб-страничках исследователей нет ни малейшего упоминания о данной работе. Правда, нарочито равнодушная реакция Ассоциации GSM, судя по всему, оказалась для Бихама и его коллег полной неожиданностью.
Ну а почему же новость о нынешнем взломе все-таки прорвалась в центральные средства массовой информации после двух недель полного молчания? Этого, естественно, не объяснил никто, но кое-какие разумные соображения на данный счет все же выдвинуты. С подачи агентства Reuters, первым запустившего шар, практически всякое новостное сообщение об исследовательской работе израильтян заканчивалось примерно такими словами: «И Эли Бихам, и Ассоциация GSM говорят, что выявленная проблема никак не касается мобильных телефонов третьего поколения, поскольку в системе 3G разработчики радикально сменили алгоритм шифрования и протоколы безопасности». Следовательно — появился замечательный стимул к переходу на новую, более продвинутую (и дорогую) систему. Денег-то вбуханы миллиарды, а публика окупать их что-то совсем не торопится.
Бизнес, конечно, дело хорошее. Да и новые технологии — вещь замечательная. Вот только вранья б еще было поменьше...
Подробности об активной атаке на GSM По классификации кембриджского профессора Росса Андерсона, занимавшегося систематизацией всевозможного рода атак, нынешний взлом GSM является ярким примером «атаки через API», то есть через плохо реализованный интерфейс приложений системы. Работает данный метод примерно следующим образом. Когда пользователь включает мобильник, тот отправляет свой серийный номер ближайшей базовой станции и получает в ответ некоторую случайную последовательность RAND. Тогда телефон использует свой ключ Ki, хранящийся в SIM-карте, для шифрования этого случайного вектора RAND, результатом чего становятся SRES и Kc — ключ ответа и сеансовый коммуникационный ключ, соответственно. Базовая станция диктует телефону, какой из криптоалгоритмов использовать для шифрования разговора — A5/1 (или A5/3 в новых аппаратах, короче, сложный для взлома) либо A5/2 (легкий). Но для атакующего самое важное, что в любом случае будет использован один и тот же ключ Kc, который полностью определяется как функция числа RAND и долговременного ключа пользователя Ki. Это и есть серьезнейшая брешь. Атака через нее проходит так. Злоумышленник записывает разговор, представляющий для него интерес, а затем включает ложную базовую станцию рядом с телефоном жертвы. Телефон ловит более сильный сигнал и пытается зарегистрироваться на ложной станции. Та отправляет ему ту же последовательность RAND, которая была ранее перехвачена. Тогда телефон вычисляет те же самые SRES и Kc, что и в прошлом сеансе, однако теперь станция велит использовать A5/2. Телефон послушно исполняет приказ (иначе он не может работать). Злоумышленник практически мгновенно восстанавливает Kc криптоаналитическим методом (A5/2 очень слабый шифр), а затем использует вскрытый ключ для расшифровки записанного ранее разговора. Все, дело сделано, а жертва даже не заметит, чем занимался втихаря мобильник. Можно ли залатать эту дыру каким-нибудь программным патчем? Как говорят специалисты, для некоторых телефонов кое-что сделать, видимо, можно. Например, в аппаратах вроде Nokia 3650, где имеется полный программный доступ к протоколам GSM, можно сделать подпрограммку, которая будет проверять, не встречалось ли ей конкретное значение RAND раньше. В качестве альтернативного решения можно вообще отказаться от использования A5/2, и всякий раз, когда базовая станция хочет применять A5/2, не использовать шифрование, а говорить в открытую. Правда, есть подозрение, что вывести на дисплей конкретную разновидность избранного для сеанса криптоалгоритма удастся заставить далеко не все находящиеся в обращении телефоны. Определенно можно сказать лишь одно. Данная история — ярчайший пример того, насколько длинный хвост порой отрастает у слабостей, когда-то преднамеренно внесенных правительственными структурами в GSM. Ведь если бы заведомо слабый алгоритм A5/2 не встраивался во все продаваемые на рынке телефоны, то не было бы и описанных возможностей для атак на сильные A5/1 и A5/3. |
Интернет-ресурсы:
[1] Статья Баркана, Бихама, Келлера «Мгновенное вскрытие защищенных коммуникаций GSM только по шифртексту»: cryptome.org/gsm-crack-bbk.pdf.
[2] Сайт, посвященный защите GSM: gsmsecurity.com.
[3] Большая обзорная статья о безопасности GSM (полная версия текста, с сокращениями опубликованного в «КТ»): kiwibyrd.chat.ru/ gsm/gsm-pap.htm.