Просмотр полной версии : Перебор Ki
Уважаемые Гуру !
Подскажите чайнику, почему нельзя реализовать такой алгоритм подбора Ki:
1. Задаем симке RAND
2. Читаем SRES
3. На вход эмулятора А3А8 даем тот-же RAND а Ki в цикле от 0 до 2^16.
При этом каждый раз проверяем, совпадает ли полученный от эмулятора SRES с тем, что выдала карточка. По идее, если совпали, то Ki правильный ?
2^16 не так уж и много )))
А вот возможных вариантов Ки действительно очень много ....
2^16 не так уж и много )))
А вот возможных вариантов Ки действительно очень много ....
Ошибочка вышла, не 2^16 а 2^256.
Но это ж не карту гонять, а комп, он справится.
Сегодня если найду алгоритм А3А8 на паскале и проверочную тройку
RAND - SRES - Ki то посмотрю сколько времени займет цикл перебора.
Кстати узнал у одного знакомого оператора GSM, одинаковый ли алгоритм шифровки - одинаковый, а вот защита от копирования - как у кого.
(У UMC при частом обращении к алгоритму карточка намеренно выдает неправильные SRES. Частоту обращения не знаю - тайна компании)
Ну посмотри, оптимист ты наш... Мой (оптимизированный на асме) WtS подбирает 2 пары (4 байта) на Amd64 - 4 часа. На такой же машинке но со 128 процами (кластер вычислительный) - за 1 минуту (задача легко распараллеливается). А теперь прикинь - чтобы подобрать весь Ki надо 2^96 (оставшиеся байты) минут работы такого кластера. Это около 1.5*10^23 лет!!!
sasha_borsh
05.10.2007, 12:04
Будем надеятся что с ростом прогресса, появятся "домашние ПК", которые осилят данную задачу по быстрей )))
Sergey_Od
05.10.2007, 14:37
Ошибочка вышла, не 2^16 а 2^256.
Но это ж не карту гонять, а комп, он справится.
Сегодня если найду алгоритм А3А8 на паскале и проверочную тройку
RAND - SRES - Ki то посмотрю сколько времени займет цикл перебора.
Кстати узнал у одного знакомого оператора GSM, одинаковый ли алгоритм шифровки - одинаковый, а вот защита от копирования - как у кого.
(У UMC при частом обращении к алгоритму карточка намеренно выдает неправильные SRES. Частоту обращения не знаю - тайна компании)
А можно ли поподробнее об этом?
И ворос к Ворону: Если то, что тут написано правда, то можно ли переписать Ворон0скан так, чтоб поле каждого запроса к карте был перерыв 1 минута?
Пусть долго, но зато результативно.
И вообще следовательно из вышесказанного, алго не изменился, а изменилась только защита.
А можно ли поподробнее об этом?
И ворос к Ворону: Если то, что тут написано правда, то можно ли переписать Ворон0скан так, чтоб поле каждого запроса к карте был перерыв 1 минута?
Пусть долго, но зато результативно.
И вообще следовательно из вышесказанного, алго не изменился, а изменилась только защита.
и что выйдет? 10 000 запросов за 7 дней.
10000за неделю,не так много,при положительном результате. Две недели,и готово!
Sergey_Od
06.10.2007, 02:41
10000за неделю,не так много,при положительном результате. Две недели,и готово!
Но это же лучше, чем невозможность склонить вообще.
Раньше на фруме звучали такие фразы типа: ".....2 в какой-то степени... .жизни не хватит....."
тут просто подождать 2-4 недели и готово. Разница ощумипа. "месяц" и "жизни не хватит"
А вообще, задержку нужно ставить между 2-мя запросами.
А почему выше указано задержка минута,зачем большая такая пауза? На какой минимальной скорости пробовали сканить?
Sergey_Od
06.10.2007, 15:28
А почему выше указано задержка минута,зачем большая такая пауза? На какой минимальной скорости пробовали сканить?
Ну может и меньше. Это можно проверить так: через какое-то время посылать запрос на проверку счета (юмс, джинс т.к. при каждом обращении к сети у этого оператора идет смена ТМСИ, т.е. полный цикл авторизации, а вот у КС такое не получиться. у них ТМСИ держится несколько суток, а потом проходит полный цикл авторизации) . дело в том, что карта при частом обращении начнет давать неправильные ответы. можно будет выяснить через сколько запросов она заткнется и потеряет сеть, а если не заткнеся, то поставить такой же интервал на программе сканирования.
SergT,
не надо думать, что вы первый :)))
Брутфорс НЕ возможен. Забудьте об этой наивной идее. О ней подумали за вас. Те, кто дали ключу Ки длину 256 бит.
>И ворос к Ворону: Если то, что тут написано правда, то можно ли переписать Ворон0скан так, чтоб поле каждого запроса к карте был перерыв 1 минута?
Паузу жмеш, на сколько надо, паузу отжимаеш.
записуеш макрос. он повторяет до усрачки
можно пару отвлекающих финтов типа пин, пук, чтение адрески
левый ранд или вообще ресет карты, вплоть до физического,(но это ручками)
SergT,
не надо думать, что вы первый :)))
Брутфорс НЕ возможен. Забудьте об этой наивной идее. О ней подумали за вас. Те, кто дали ключу Ки длину 256 бит.
Длина ключа KI - 128 бит (16 байт)... Но все равно - много!
А можно ли поподробнее об этом?
И ворос к Ворону: Если то, что тут написано правда, то можно ли переписать Ворон0скан так, чтоб поле каждого запроса к карте был перерыв 1 минута?
Пусть долго, но зато результативно.
И вообще следовательно из вышесказанного, алго не изменился, а изменилась только защита.
Поподробнее тут трудно.
Тот кто рассказал не программист а менеджер.
Знания основаны на том, что услышал, и на том что он занимается роумингом. Насколько я понял код компании оператора заложен в IMSI, а алгоритм ключа у всех один, так как иначе роуминг был бы невозможен. Телефон с одной карточкой в другой сети выдавал бы ошибку регистрации. А защита стоит на самой карте. Оператору важно чтобы не было проблем с ЕГО абонентами, и защищает он СВОИ карточки. На чужие в режиме роуминга ему .... По крайней мере когда я поинтересовался "А что, нельзя несколько алгоритмов шифровки, в зависимости от оператора" народ только удивился: программное обеспечение их серверов находится под надзором производителя (нет ну конечно можно, только стоить будет такая переделка, это ведь гарантия производителя должна быть, а то кто ж захочет проблем). Так что они там работают на уровне тех возможностей (даже в смысле определения местонахождения телефона) которые заложил производитель.
Длина ключа KI - 128 бит (16 байт)... Но все равно - много!
Убедили !!! Выход только в копании в самой карте.
Насколько я понял код компании оператора заложен в IMSI, а алгоритм ключа у всех один, так как иначе роуминг был бы невозможен.
Да ты че! А мужики-то не знают! Ты вообще знаешь, КАК телефон авторизируется в чужой сети? Гостевая сеть просто связывается с домашней сетью абонента и передает туды данные на авторизацию, а домашняя сеть говорит - можно пустить такого абонента или нет. И все. И абсолютно все равно какие у кого алгоритмы шифрования. Общий у операторов только межоператорский IPSec ;)))
Для подтверждения моих слов можно проделать следующий эксперимент. Берем симку одного оператора (например МТС) с балансом около 0. Едем в роуминг к другому оператору (например, Tele 2). Звоним оттуда... Как только баланс падает до 0, разговор обрывается и больше не позвонишь... Как это реализовано, надуюсь понятно...
SergT,
ти бы не хотел почитать документацию по GSM?
Wert,
спасибо, ошиблась капельку :)
Насколько я понял код компании оператора заложен в IMSI, а алгоритм ключа у всех один, так как иначе роуминг был бы невозможен
Очень даже возможен. Будете в Турции с МТС, Турция попросит у вашего МТС триплеты для авторизации, и ваш МТС их даст. Турции не нужно знать, что у вас за алго в МТС.
Wert,
спасибо, ошиблась капельку :)
Очень даже возможен. Будете в Турции с МТС, Турция попросит у вашего МТС триплеты для авторизации, и ваш МТС их даст. Турции не нужно знать, что у вас за алго в МТС.
Ну запинали, я-же когда открывал тему честно написал что чайник :)
А насчет того, что писал, сразу то же сказал, что информация не от программиста, который понимает суть, а от менеджера, да еще под .... ну в общем после третьего стакана, когда я с ним спорить начал, о он "аргументированно" опровергать.
То: Наталья
Что то я не совсем понял. Триплет это Ki, RAND, SRES ?
Тогда достаточно послать только RAND & SRES.
Можно подробнее ?
SergT Найди на форуме ник Lestat,зайди на его сайт,у него в библиотеке что то есть почитать.
Триплет это Ki, RAND, SRES ?
Щазз прям... Кто ж отдаст Ки... Если память не изменяет, это Rand, Sres, Kc (ключ шифрования эфира).