Сейчас на форуме: Dart Raiden, Alf, bedop66938 (+6 невидимых)

 eXeL@B —› Электроника —› Вскрытие гост
Посл.ответ Сообщение

Ранг: 6.0 (гость), 1thx
Активность: 0.050
Статус: Участник

Создано: 26 ноября 2015 14:22
· Личное сообщение · #1

Есть железка, в которой реализован алгоритм криптографии ГОСТ. Как извлечь ключи из прошивки ? Есть ли какие-нибудь туторы на эту тему ?



Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 26 ноября 2015 15:15
· Личное сообщение · #2

Туторы? По железякам? Ггг.. Боюсь тебя огорчить, но 99% что вряд ли что-то получится.

-----
старый пень





Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 26 ноября 2015 15:40
· Личное сообщение · #3

mazaxak пишет:
Есть ли какие-нибудь туторы на эту тему ?

Главный тутор - жизненный опыт!

-----
IZ.RU


| Сообщение посчитали полезным: TLN


Ранг: 150.3 (ветеран), 175thx
Активность: 0.160.07
Статус: Участник

Создано: 26 ноября 2015 16:14
· Личное сообщение · #4

первое - надо извлечь саму прошивку
потом определиться с процессором и, соответственно, дизассемблером
далее найти непосредственно в прошивке саму реализацию алгоритма и отследить обращения




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 26 ноября 2015 18:27
· Личное сообщение · #5

Трико чтоль изучаешь?



Ранг: 6.0 (гость), 1thx
Активность: 0.050
Статус: Участник

Создано: 27 ноября 2015 00:27
· Личное сообщение · #6

-=AkaBOSS=-, прошивка на руках, проц знаю. Ида чет дизасмит, если ей указать этот проц.
А вот как искать реализацию алгоритма в самой прошивке было бы интересно узнать. Может есть какие ключевые моменты, типа как в мд5 ищут по мд5инит процедуре с константами.




Ранг: 150.3 (ветеран), 175thx
Активность: 0.160.07
Статус: Участник

Создано: 27 ноября 2015 00:46
· Личное сообщение · #7

mazaxak, ну так алго в гугле, изучаем и ищем.
Если не находится по s-boxам, тогда надо просматривать код около мест, где это крипто должно применяться.

https://www.schneier.com/sccd/GOST-KOC.ZIP
https://www.schneier.com/sccd/GOST-PLU.ZIP



Ранг: 6.0 (гость), 1thx
Активность: 0.050
Статус: Участник

Создано: 28 ноября 2015 22:35
· Личное сообщение · #8

-=AkaBOSS=-, а возможно ли устроить что-то вроде отладки этой железки, просто мертвую прошивку труднее изучать. Нашел в прошивке, где вписан мастер-ключ, но чтобы поймать место, где туда прога обращается на чтение его, хорошо бы в отладчике подобное провернуть.

А вот чисто в дизасме как такое найти, что посоветуешь ? Ключ к примеру лежит по смещение 102030, как найти туда обращение просто в иде ?
Поиск константы этой по коду, но этот метод провалился.



Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 28 ноября 2015 22:54
· Личное сообщение · #9

mazaxak
Я думал что у тебя прошивки нет. Если прошивка есть - СДК под микруху. Там может быть как софтовый отладчик прям на железе, либо через виртуализацию, либо hardware debugger.

-----
старый пень




Ранг: 1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 01 декабря 2015 00:22
· Личное сообщение · #10

Я собственно тот, у кого эта железка. Она собрана на Motorolla MC68332. К ней приделаны несколько ОЗУ и ПЗУ для программы. Прошивку вытащил по интерфейсу BDM.
Там лежат зашифрованные ключи. Сначала они расшифровываются по мастер-ключу и мастер-таблице, потом по этим ключам и другой таблице рассчитывается иммитовставка ГОСТ16-3.
Мастер-ключ достал из другого места и нашел в прошивке. Ключи тоже нашел. Вся проблема - таблицы.



Ранг: 6.0 (гость), 1thx
Активность: 0.050
Статус: Участник

Создано: 31 января 2016 11:10
· Личное сообщение · #11

-=AkaBOSS=- пишет:
Если не находится по s-boxам

Получилось дизасм получить прошивки. Но дело в том, что там используют свои s-блоки для усиления алгоритма. Поэтому как найти алгоритм в таком случае ? Может у кого есть опыт поиска по графам в иде среди функций ?



Ранг: 60.6 (постоянный), 87thx
Активность: 0.060
Статус: Участник

Создано: 31 января 2016 12:18
· Личное сообщение · #12

Если опираться на реализацию в openssl http://osxr.org:8080/openssl/source/engines/ccgost/gost89.c#0117
То подозреваю и в прошивке можно найти схожий цикл с операциями сдвига.



Ранг: 6.0 (гость), 1thx
Активность: 0.050
Статус: Участник

Создано: 31 января 2016 12:52 · Поправил: mazaxak
· Личное сообщение · #13

Kaimi, а примеры для поиска можешь предложить, какие поискать команды по коду дизассемблированному.
А есть ли софт, чтобы скопилить тот код под моторолу ? Хочу их сравнить, думаю так поизучать.


 eXeL@B —› Электроника —› Вскрытие гост
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати