Изучение уязвимостей электронных систем.
 
key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

Вернуться   Изучение уязвимостей электронных систем > В помощь фрикеру > Лаборатория

Лаборатория Технологии, методики, программаторы и отладчики, среда разработки.

Ответ
 
Опции темы
Старый 09.08.2010, 10:18   #1
skimerok
Заблокирован
 
Регистрация: 24.04.2010
Сообщений: 31
Поблагодарил: 3
Поблагодарили 0 раз в 0 сообщениях
skimerok стоит на развилке
По умолчанию Прошивка и криптография в ней.

Смотрю исходник прошивки и обнаружил такой код
Код:
uint8_t asic_crypto_str[8] PROGMEM = {0x0f, 0xf0, 0xa5, 0x5a, 0xc3, 0x3c, 0x00, 0xff}; // "crypto" string (шифрующая" строка) 
 
register uint8_t asic_crypto_cnt asm("r9"); // "crypto" counter (счетчик "шифрующей" строки)
собственно вопрос для тех кто в танке может распишите значение этих строк что за шифрование используется и можно ли их поменять на свои дабы изменить шифр для проги чтобы чел имеющий такую же прогу не мог открыть данные.
skimerok вне форума   Ответить с цитированием
Старый 09.08.2010, 11:15   #2
huy
участник
 
Аватар для huy
 
Регистрация: 17.03.2010
Адрес: Космас
Сообщений: 360
Поблагодарил: 1
Поблагодарили 103 раз в 53 сообщениях
huy стоит на развилке
По умолчанию

не показан сам алгоритм шифрования, но подозреваю что там ничего особенного, какойнить ксор.
в твоих строках просто задается ключ для шифровки и больше ничего. если расшифровка предусмотрена в проге то ничего сложного - просто измени код в прошивке, а затем когда будешь сливать дампы введи этот же код в своей проге.
huy вне форума   Ответить с цитированием
Старый 09.08.2010, 11:18   #3
skimerok
Заблокирован
 
Регистрация: 24.04.2010
Сообщений: 31
Поблагодарил: 3
Поблагодарили 0 раз в 0 сообщениях
skimerok стоит на развилке
По умолчанию

Цитата:
Сообщение от huy Посмотреть сообщение
не показан сам алгоритм шифрования, но подозреваю что там ничего особенного, какойнить ксор.
в твоих строках просто задается ключ для шифровки и больше ничего. если расшифровка предусмотрена в проге то ничего сложного - просто измени код в прошивке, а затем когда будешь сливать дампы введи этот же код в своей проге.

Код:
uint8_t asic_crypto_str[8] PROGMEM = {0x0f, 0xf0, 0xa5, 0x5a, 0xc3, 0x3c, 0x00, 0xff};
этот код вроде как отвечает за яйчейки памяти в eeprom или я ошибаюсь? его можно поменять от фоноря чтоли? на любые значения?
skimerok вне форума   Ответить с цитированием
Старый 09.08.2010, 12:47   #4
huy
участник
 
Аватар для huy
 
Регистрация: 17.03.2010
Адрес: Космас
Сообщений: 360
Поблагодарил: 1
Поблагодарили 103 раз в 53 сообщениях
huy стоит на развилке
По умолчанию

да во внутренней еепром МК. менять можно на свой, только если он не вшит в прогу для декодировки т.е его там самому задавать надо.
huy вне форума   Ответить с цитированием
Старый 10.08.2010, 06:08   #5
skimerok
Заблокирован
 
Регистрация: 24.04.2010
Сообщений: 31
Поблагодарил: 3
Поблагодарили 0 раз в 0 сообщениях
skimerok стоит на развилке
По умолчанию

спасибо хотелось бы ещё услышать коменты, может кто с этой фунькой работал при написании прошивки. интересно что скажет стая про PROGMEM ведь на всём форуме не разу не упоменули про данную феню для eeprom
skimerok вне форума   Ответить с цитированием
Старый 10.08.2010, 07:44   #6
huy
участник
 
Аватар для huy
 
Регистрация: 17.03.2010
Адрес: Космас
Сообщений: 360
Поблагодарил: 1
Поблагодарили 103 раз в 53 сообщениях
huy стоит на развилке
По умолчанию

а че про нее упоминать ? просто фишка языка программирования.

кстати я немного неверно выразился - переменная с етим PROGMEM хранится в памяти программ т.е во флеше, где сама прошивка. не в еепром, а именно во флеш.
huy вне форума   Ответить с цитированием
Старый 10.08.2010, 11:56   #7
skimerok
Заблокирован
 
Регистрация: 24.04.2010
Сообщений: 31
Поблагодарил: 3
Поблагодарили 0 раз в 0 сообщениях
skimerok стоит на развилке
По умолчанию

спасибо за не большой фаГ, но хотелось бы услышать больше по данным адресам байтов в еепром, что имено поменяется если я поменяю эти числа на свои, может они так специально упорядоченны чтобы занять меньше места в еепроме кстате епром 24Сххх в даташит нечего такого не нашёл может плохо искал, ткните носом если такое имеется
skimerok вне форума   Ответить с цитированием
Старый 10.08.2010, 14:34   #8
huy
участник
 
Аватар для huy
 
Регистрация: 17.03.2010
Адрес: Космас
Сообщений: 360
Поблагодарил: 1
Поблагодарили 103 раз в 53 сообщениях
huy стоит на развилке
По умолчанию

если ты их поменяешь - ничего не измениться, просто в тех местах прошивки где были старые - появятся новые байты. 24с это не при чем, шифрует мк перед записью в память.
huy вне форума   Ответить с цитированием
Старый 11.08.2010, 20:19   #9
skimerok
Заблокирован
 
Регистрация: 24.04.2010
Сообщений: 31
Поблагодарил: 3
Поблагодарили 0 раз в 0 сообщениях
skimerok стоит на развилке
По умолчанию

Цитата:
Сообщение от huy Посмотреть сообщение
если ты их поменяешь - ничего не измениться, просто в тех местах прошивки где были старые - появятся новые байты. 24с это не при чем, шифрует мк перед записью в память.

на память это не повлияет? тобиш места займёт не больше не меньше с новыми данными? и ещё почему именно такие значения стоять могут как вообще их вписывать какой алгоритм там используется как будет правильней изменить их просто я не догоняю не напишу же я скажем 8 значений из вида hdsah7, dfds,d sdfh6 и т.д и ещё функция такая как asic_crypto_str[8] что такое 8 в ней это я так понимаю восемь значений перечисленных через запитэ в виде {0x0f, 0xf0, 0xa5, 0x5a, 0xc3, 0x3c, 0x00, 0xff}; ?
skimerok вне форума   Ответить с цитированием
Старый 11.08.2010, 21:10   #10
huy
участник
 
Аватар для huy
 
Регистрация: 17.03.2010
Адрес: Космас
Сообщений: 360
Поблагодарил: 1
Поблагодарили 103 раз в 53 сообщениях
huy стоит на развилке
По умолчанию

да, 8 значение через запятую.
что попало как ты написал "hdsah7, dfds,d sdfh6" туда вставить нельзя, так как там должны быть шестнадцатеричные числа [Ссылки могут видеть только зарегистрированные пользователи. ]
хотя можно так же написать через запятую обычные числа от 0 до 255, не больше.

места в памяти займет столько же, ты же просто вместо старых на то же место новые запишешь. asic_crypto_str это не функция а просто массив из 8 чисел.

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


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
прошивка USB pashka536 Новички 1 12.12.2012 23:07
Криптография для новичков. oleg Новички 64 16.01.2011 11:17
Криптография(практическая и теория тоже...) Hryak Охранные системы 0 21.10.2010 00:48
прошивка zvuk Программирование микроконтроллеров 9 20.03.2009 21:50


Текущее время: 14:26. Часовой пояс GMT +4.


Перевод: zCarot