DES уязвимость SIM-карт. Есть ли повод для опасений?


Вчера на хабре была опубликована статья под названием «750 миллионов мобильных телефонов уязвимы для злоумышленников из-за недостаточно защищенных SIM карт». Хабр был одним из многих сетевых ресурсов, которые опубликовали информацию про уязвимость найденную в SIM-картах. Новость разлетелась молниеносно. По запросу «750 млн SIM-карт» google предлагает 159 000 результатов. В статье я более подробно постараюсь описать, чем грозит эта уязвимость и есть ли повод для опасения.

Взломано 750 миллионов мобильников. Неужели?


Моя работа довольно тесно связана с SIM-картами, поэтому за вчерашний день от коллег/друзей/знакомых я получил более десятка ссылок на различные статьи, которые затрагивали данную проблему. К сожалению, когда журналисты пишут статьи на подобные темы, они «незначительно» искажают суть. Происходит это или же случайно (из-за малого количества специалистов в данной области, которые могли бы дать экспертную оценку) или умышленно (в погоне за высокими рейтингами), но некоторые статьи написаны настолько угрожающе, что у любого пользователя мобильного телефона просто не может не возникнуть поводов для опасения.

Пример №1
Кричащий заголовок utro.ru сообщает, что уже взломано 750 млн. мобильников.


Пример №2
vesti.ru сообщает, что каждую четвертую SIM-карту можно заразить вирусом.


Пример №3
750 млн SIM-карт легко взломать при помощи SMS — очень сомневаюсь, что найдется много таких умельцев, для которых это будет действительно легко.


В действительности проблема не настолько страшная, как нам об этом пытаются рассказать журналисты уважаемых изданий.

Немножко технических деталей


Речь не идет о вирусе, который заражает SIM-карты. Вирус, в первую очередь, умеет самостоятельно размножаться. В данном случае, при использовании уязвимости, одна SIM-карта не может получить удаленный доступ к другой SIM-карте, поэтому речь идет не о вирусе, а о удаленной атаке на SIM-карту.

Удаленная атака возможна только на те карты, которые одновременно соответствуют следующим условиям:
  1. Поддержка OTA (Over-the-air) — технология, которая позволяет удаленно управлять SIM-картой с помощью отправки на нее специальных бинарных сообщений. С помощью таких сообщений операторы могут
    • изменять SIM-меню и записывать на карту новые предложения контент провайдеров
    • изменять название сети, которое отображается на экране телефона (некоторые операторы использовали этот трюк во время ребрендинга)
    • записывать на карту перечень сетей для приоритетной регистрации в роуминге и т.д.
  2. SIM-карта поддерживает функцию PoR. PoR (proof of receipt) — функция, которая в ответ на OTA сообщение посылает результат выполнения команды. На практике такую функцию поддерживают не все SIM-карты.
  3. OTA-сообщение шифруется с помощью DES-алгоритма

Чтение SMS, отправка SMS или совершение звонков с SIM-карты жертвы возможно только в том случае, если карта поддерживает java card. Java card это — специальный язык программирования, который позволяет создавать стандартные приложения для SIM-карт.

Стоимость SIM-карт с поддержкой Java немного выше, чем стоимость SIM-карт с аналогичным объемом памяти, но без поддержки java. Именно поэтому многие операторы не покупают java карты.

Насколько велика опасность и возможно ли избежать взлома?


Возможно применить три способа защиты от данной атаки:
  1. Зловредные ОТА-сообщения можно фильтровать на уровне сети. Применяется некий аналог Firewall, который при прохождении сообщений через SMS-центр позволяет отсекать SMS с характерными признаками. Таким образом зловредные сообщения просто не будут доставлены на номер (SIM-карту) жертвы.
  2. Обновить SIM-карты с помощью OTA-сообщений. В зависимости от типа карты оператор может удаленно на вашей SIM-карте сменить алгоритм DES на 3DES, заблокировать возможность установки java-аплетов на SIM и т.д.
  3. Физическая замена SIM-карты на более новую SIM, которая не может быть подвергнута описанной атаке.

К счастью многих обладателей SIM-карт, Карстен Нол является так называемым «белым хакером». После того, как уязвимость была обнаружена (около 3-х месяцев назад), мистер Нолан сообщил о ней в GSM-ассоциацию, а та в свою очередь оповестила операторов мобильной связи. Таким образом, у операторов было достаточно времени, чтобы проанализировать возможную угрозу и принять меры для ее предотвращения.
Share post

Similar posts

AdBlock has stolen the banner, but banners are not teeth — they will be back

More
Ads

Comments 40

    +8
    А в чем сама атака заключается? Опишите, пожалуйста, хотя бы кратко как это работает.
      +17
      Вам на симке удаленно создадут меню типа «хочу на шару потр@хаться». Вас естественно такое предложение может заинтересовать и вы выберите этот пункт, после чего вы реально имеете шанс потр@хаться со своим телефоном и оператором, пытаясь вернуть на свой баланс пропавшую сумму денег.
      +3
      Known-plaintext attack. DES весьма уязвима.
      webcourse.cs.technion.ac.il/236506/Winter2006-2007/ho/WCFiles/crypto-slides-05-bc-tutor.2x2.pdf

      Включается подтверждение выполнения; с шифрованием; отсылается команда; ответ на неё известен.
      Делаем несколько разных, получаем набор пар шифр<=>текст; выводим ключ.
        +2
        Честно говоря все равно не очень понятно. В новости говорится, что требуется пара минут. А по твоей ссылке написано, что нужно минимум 253 шифрований для взлома. И это для 5 раундов всего.
          0
          Вообще, 2^42 насколько знаю, для полного DESа.
          К тому же, у нас даже не Known-Plaintext а Chosen-Plaintext — то есть мы сами выбираем текст для шифровки.
            0
            2^42 тоже не мало. В общем, ждем 1 августа и раскрытия подробностей.
      +1
      Таким образом, у операторов было достаточно времени, чтобы проанализировать возможную угрозу и принять меры для ее предотвращения.


      Мало, логистика у операторов та еще, да и сами абоненты не побегут толпами менять симки.
        +1
        Не обязательно менять все сим-карты.
        В зависимости от типа карты оператор может удаленно на вашей DIM-карте сменить алгоритм DES на 3DES, заблокировать возможность установки java-аплетов на SIM и т.д
          0
          Сослаться на рекомендации gsma, etsi и 3gpp и описать решение можете?
            +1
            В публичном доступе рекомендаций не нашел. Поэтому сослаться не могу, извините.
            Решение по реализации атаки, по понятным причинам, описывать не буду. Решение по противостоянию атаке я уже описал в статье.
              0
              В общем. Пришлось порыться. Очередная «сенсация».
              Вот Security Letter от 2004 года где явно указана проблема использования DES в UICC.

              www.3gpp.org/ftp/tsg_sa/wg3_security/TSGS3_33_Beijing/Docs/PDF/S3-040242.pdf
              И рекомендации эти производители сим-карт применяют, т.к. от этого зависит их бизнес. Т.е.большой сенсации не будет.

              А мне интересно как средствами OTA можно сменить тип используемого алгоритма.
                0
                А мне интересно как средствами OTA можно сменить тип используемого алгоритма.

                Все очень индивидуально и зависит от поставщика SIM-карт, а так же от платформы (операционной системеы), на которой они реализованы.
                Обычно смена алгоритма DES на 3DES — это перезапись нескольких байт в определенном файле.
                Так же встречал случаи, когда на SIM-карте можно было через OTA (или CardWriter) сменить тип алгоритма A3A8, например comp128-1 на comp128-2. Для этого перезаписывался всего один файл на SIM-карте.
                  0
                  Ясно, то с чем работал — было в неперезаписываемом сегменте.
                +1
                Номерок рекомендации хоть подскажите?
          +22
          Можно ли самому проверить свою SIM-карту на наличие этой уязвимости?
            +1
            Только после Black Hat'a, когда будет доклад с техническими подробностями от автора (27 июля — 1 августа).
              +1
              Видимо да, когда готовый эксплоит уйдет в паблик. Главное быть внимательным и не ошибиться во всех цифрах номера ;)
                +9
                свою
                  0
                  Можно, но только опытным путем, зная полный алгоритм атаки.
                  +1
                  В действительности проблема не настолько страшная, как нам об этом пытаются рассказать журналисты уважаемых изданий.

                  Тонко :)
                  • UFO just landed and posted this here
                    –5
                    Как раз недавно задался вопросом,
                    а можно ли «переписать» номер на симке, чтоб выдавать себя за другого…
                    Вот и решение.
                      0
                      Нельзя, на симке если и хранится номер — то только для специального пункта меню в некоторых телефонах — «Мой номер».
                        +1
                        Все верно. Номер телефона (он же MSISDN) на SIM-карте не хранится. На SIM-карте в отдельном файле хранится текстовое значение номера. С помощью некоторых моделей телефонов это значение можно редактировать. Эта запись имеет чисто информативный характер и помогает некоторым абонентам вспомнить свой номер.
                        Номер телефона на уровне сети оператора привязан к IMSI (International Mobile Subscriber Identity). Значение IMSI хранится в отдельном файле на SIM-карте и перезаписать его без административного пароля невозможно.
                          0
                          У знающего человека спрошу, постараюсь как можно проще донести…
                          Кража телефона, блокировка номера, пришел в офис оператора, новую симку выдали минут за 5.

                          Мой номер привязали к некоему новому ID симки, (наверное) Все хорошо.
                          Вопрос — а если я наврал про кражу симки. А если я ее «перевыпустил» с помощью админа оператора — могу ли я получить две сим-карты, одинаково реагирующих на один и тот-же вызов? В обход стандартной процедуры замены SIM разумеется, но без вмешательства в процессинговую инфраструктуру оператора.

                          Заранее прошу прощения, если вопрос требует слишком объемного ответа, но я сам кодер, а не журналист, и можно сократить некоторые неспецифичные, но очевидные моменты.
                            +2
                            Нет. Выдают вам на замену новую сим-карту, с другим идентификатором, и MSISDN привязывается к новому. Старая становится пластиком.
                              +1
                              Немножко дополню. На каждой SIM-карте записано значение IMSI. Оно уникальное для каждой SIM-карты.
                              При замене SIM-карты ваш номер телефона привязывают к новому IMSI (новой SIM-карте). При этом от старой карты ваш номер телефона должны отвязать.
                              Возможны случаи, когда после замены работает и старая и новая SIM-карта. С обеих карт возможно совершать исходящие звонки. при этом определяется один и тот же номер. Такой фокус возникает из-за того, что информацию о старой SIM еще не успели удалить в базе оператора (таблицы на HLR). Знаю случаи, когда и старая и новая SIM-карта работали в течении суток. Потом база синхронизировалась и старая карта переставала работать. В нынешнее время у большинства операторов такая синхронизация происходит в реальном времени, хотя возможны исключения.
                                0
                                Поправьте, если ошибаюсь, но насколько я понимаю, вопрос здесь сводится к лени оператора внедрять новую услугу.

                                Потому что, скажем, в Германии вполне реально иметь 2-3 симки с одним номером, при этом все три будут рабочие.

                                (пруфлинк на немецком, увы).
                            0
                            клонировать то можно (особенно старые), но сеть работает по принципу, кто последний зарегистрировался, того и тапки.
                            так что и вызов и смс придет на тот телефон, который последний зарегистрировался.
                            если же менять — идентификатор сим карты будет другой и старая просто работать не будет вообще.
                              0
                              Я в январе спрашивал через тви у Большой тройки про две симки на один номер, похоже, что никто не планирует это делать в ближайшее время.
                        +1
                        Дырявость DES сильно преувеличена. В DES 16 раундов. Приведенная выше атака на полноценный DES работать не будет. Линейный криптоанализ требует 2^43 блоков открытых текстов. Защита от дифференциального криптоанализа разработана самой АНБ. Линейно-дифференциальный криптоанализ в открытых источниках есть только в теории. Потенциально слабые ключи хорошо описаны и любым уважающим себя пакетом шифрования должны проверяться при генерации. Брут-форс требует проверки 2^56 ключей. Так что, я слабо представляю, как описанную выше атаку можно применить на практике.
                          0
                          вроде, к 2^42 сводили
                          0
                          Какие-то сим-меню, апплеты… Разве у кого-то еще остались дамбфоны?
                            0
                            Так на самом деле не мало.
                              0
                              Так там столько функционала спрятать можно
                              Самые простые приммеры.
                              1) Управление регистрацией в роуминге, выбор сети с оптимальным тарифом
                              2) Подмена вызова на call-back в роуминге
                              3) Меню для самообслуживния.
                                0
                                Все сим функции игнорируются смартфонами. По крайней мере андроидом.
                                  0
                                  Пруф?
                              0
                              Сегодня один из ведущих российских производителей SIM-карт — «Ситроникс Смарт Технологии (ССТ)» выпустил сообщение по поводу этой уязвимости:

                              ===
                              Москва, 26 июля 2013 года, — ООО «ССТ», входящее в группу компаний «Микрон», сообщает, что ее SIM-карты надежно защищены от взлома.

                              Недавно в ряде СМИ (CNews.Ru, Plus и др.) появились сообщения о том, что немецкий криптограф Карстен Ноль разработал метод, позволяющий взламывать SIM-карты и устанавливать на них Java-апплеты, создавая возможность дистанционного управления картой. Взлом основан на вычислении OTA-ключей, использующих алгоритм шифрования DES.

                              Данная проблема была известна специалистам ССТ ранее, поэтому своевременно были приняты меры по ее решению. SIM-карты, выпускаемые ССТ, при получении неправильно зашифрованного OTA-сообщения в ответном сообщении выдают ошибку без передачи цифровой подписи. Таким образом, злоумышленник не получает данных, необходимых для вычисления OTA-ключа
                              ===
                              www.mikron.ru/press/news/6013/

                              Only users with full accounts can post comments. Log in, please.