| Посл.ответ | Сообщение | 
| 
 Ранг: 6.0 (гость), 1thx Активность: 0.05↘0
 Статус: Участник
 
 | Создано: 26 ноября 2015 14:22 · Личное сообщение ·  #1
 
Есть железка, в которой реализован алгоритм криптографии ГОСТ. Как извлечь ключи из прошивки ? Есть ли какие-нибудь туторы на эту тему ?
  | Сообщение посчитали полезным: | 
|  | 
| 
 Ранг: 590.4 (!), 408thx Активность: 0.36↘0.18
 Статус: Модератор
 
 | Создано: 26 ноября 2015 15:15 · Личное сообщение ·  #2
 
Туторы? По железякам? Ггг.. Боюсь тебя огорчить, но 99% что вряд ли что-то получится.
----- старый пень
  | Сообщение посчитали полезным: | 
| 
  Ранг: 324.3 (мудрец), 221thx Активность: 0.48↘0.37
 Статус: Участник
 
 | Создано: 26 ноября 2015 15:40 · Личное сообщение ·  #3
 
mazaxak пишет:Есть ли какие-нибудь туторы на эту тему ?
 Главный тутор - жизненный опыт!
----- IZ.RU
  | Сообщение посчитали полезным: TLN | 
| 
  Ранг: 150.3 (ветеран), 175thx Активность: 0.16↘0.07
 Статус: Участник
 
 | Создано: 26 ноября 2015 16:14 · Личное сообщение ·  #4
 
первое - надо извлечь саму прошивку потом определиться с процессором и, соответственно, дизассемблером далее найти непосредственно в прошивке саму реализацию алгоритма и отследить обращения
  | Сообщение посчитали полезным: | 
| 
  Ранг: 241.9 (наставник), 107thx Активность: 0.14↘0.01
 Статус: Участник
 
 | Создано: 26 ноября 2015 18:27 · Личное сообщение ·  #5
 
Трико чтоль изучаешь?
  | Сообщение посчитали полезным: | 
| 
 Ранг: 6.0 (гость), 1thx Активность: 0.05↘0
 Статус: Участник
 
 | Создано: 27 ноября 2015 00:27 · Личное сообщение ·  #6
 
-=AkaBOSS=-, прошивка на руках, проц знаю. Ида чет дизасмит, если ей указать этот проц.  А вот как искать реализацию алгоритма в самой прошивке было бы интересно узнать. Может есть какие ключевые моменты, типа как в мд5 ищут по мд5инит процедуре с константами.
  | Сообщение посчитали полезным: | 
| 
  Ранг: 150.3 (ветеран), 175thx Активность: 0.16↘0.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.05↘0
 Статус: Участник
 
 | Создано: 28 ноября 2015 22:35 · Личное сообщение ·  #8
 
-=AkaBOSS=-, а возможно ли устроить что-то вроде отладки этой железки, просто мертвую прошивку труднее изучать. Нашел в прошивке, где вписан мастер-ключ, но чтобы поймать место, где туда прога обращается на чтение его, хорошо бы в отладчике подобное провернуть.  А вот чисто в дизасме как такое найти, что посоветуешь ? Ключ к примеру лежит по смещение 102030, как найти туда обращение просто в иде ? Поиск константы этой по коду, но этот метод провалился.
  | Сообщение посчитали полезным: | 
| 
 Ранг: 590.4 (!), 408thx Активность: 0.36↘0.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.05↘0
 Статус: Участник
 
 | Создано: 31 января 2016 11:10 · Личное сообщение ·  #11
 
-=AkaBOSS=- пишет:Если не находится по s-boxам
 Получилось дизасм получить прошивки. Но дело в том, что там используют свои s-блоки для усиления алгоритма. Поэтому как найти алгоритм в таком случае ? Может у кого есть опыт поиска по графам в иде среди функций ?
  | Сообщение посчитали полезным: | 
| 
 Ранг: 60.6 (постоянный), 87thx Активность: 0.06↘0
 Статус: Участник
 
 | Создано: 31 января 2016 12:18 · Личное сообщение ·  #12
 
Если опираться на реализацию в openssl http://osxr.org:8080/openssl/source/engines/ccgost/gost89.c#0117 То подозреваю и в прошивке можно найти схожий цикл с операциями сдвига.
  | Сообщение посчитали полезным: | 
| 
 Ранг: 6.0 (гость), 1thx Активность: 0.05↘0
 Статус: Участник
 
 | Создано: 31 января 2016 12:52 · Поправил: mazaxak · Личное сообщение ·  #13
 
Kaimi, а примеры для поиска можешь предложить, какие поискать команды по коду дизассемблированному. А есть ли софт, чтобы скопилить тот код под моторолу ? Хочу их сравнить, думаю так поизучать.
  | Сообщение посчитали полезным: |