|
Что там ST учудил с защитой кода..... |
|
|
|
 |
Ответов
|
Jun 10 2015, 06:55
|
Профессионал
    
Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863

|
Цитата(mantech @ Jun 10 2015, 08:58)  Бутлодырь такой навороченный, что его нельзя нормально протестить? Честно говоря никогда таких проблем не было  Ребята, вы немного не зазнавайтесь там :-))) Помнится, я тут спрашивал, например, кто какой скорости работы по USB HS добился, в ответ молчок. То есть никто вообще USB HS не использует (а у меня бутлодырь именно через него), хотя я несколько месяцев с СТМ работаю, а некоторые якобы уже много лет, зато все уверяют что могут за скромное время (адекватное задаче) всё это абсолютно безглючно написать и протестить :-)))) Ну блажен кто верует :-)))) Цитата(adnega @ Jun 10 2015, 09:17)  Я же вводил условие, что прошивку нужно обезопасить от подделки, чтоб свой код врагу загрузить возможности не было. А второе условие, что алгоритм работы загрузчика закрыт. Как вы не поймёте, что единственная защита это неизвестность ключа АЕС Именно это и ТОЛЬКО это и можно подразумевать под "прошивку обезопасить от подделки" и "алгоритм работы закрыт", ну это же банальность, почему это приходится столько раз напоминать? Иначе ваше "условие" звучит так: у меня самый навороченный замок, главное чтобы никто не догадался что ключ всегда под ковриком. Цитата(adnega @ Jun 10 2015, 09:17)  Да, загрузчик можно написать самый простейший. Не понятно в чем сложность и как можно загубить партию? Вот русским языком же говорю третий раз что загрузчик написан (и не простейший, а нормальный по юсб), и что вариант необратимо убить жтаг допускается, но НЕ ПРИВЕТСТВУЕТСЯ. Вот и всё.
|
|
|
|
|
Jun 10 2015, 07:25
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(Dr.Alex @ Jun 10 2015, 09:55)  Как вы не поймёте, что единственная защита это неизвестность ключа АЕС Именно это и ТОЛЬКО это А для всех ли систем это справедливо? Если есть доступ через интерфейс отладчика, очевидно, что "неизвестности ключа" мало. У каждого правила есть рамки применимости (которые не во всех книжках указывают), а вы слишком категоричны. По теме: 1. В USB жесткие тайминги. Отладка будет сильно затруднена, т.к. интерфейс будет отваливаться на стороне хоста. Добавить условие, что прошивать можно только через 10 минут после "power on reset" и жизнь врага станет адом. 2. В режиме отладки стирание/запись во Flash не работает. Вы даже стирание страницы не сможете произвести. Да, одну страницу враг может и утянет. При чем тут ST и "чудачества"? Как по-вашему должен был бы работать идеальный Level 1? JTAG для одной команды Mass Erase что ли? PS. Создается впечатление, что вас на ST насильно пересадили)
|
|
|
|
|
Jun 10 2015, 07:35
|
Профессионал
    
Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863

|
Цитата(adnega @ Jun 10 2015, 10:25)  А для всех ли систем это справедливо? Если есть доступ через интерфейс отладчика, очевидно, что "неизвестности ключа" мало. В этом случае ключ быстро станет известным, а то и сами данные. Так что всё нормльно. Цитата(adnega @ Jun 10 2015, 10:25)  По теме: ... ... При чем тут ST и "чудачества"? Как по-вашему должен был бы работать идеальный Level 1? JTAG для одной команды Mass Erase что ли? PS. Создается впечатление, что вас на ST насильно пересадили) Мне пабарабану, какое создаётся впечатление, но всё это как раз не по теме. Если не нравится, как я написал заголовок, пожалуйтесь модератору, он переименует. Тема: какие режимы лично ВЫ используете, и каковы их особенности. Было бы лучше если бы левел2 был обратим. Ведь делается же массЕрасе при сбросе левела1!
|
|
|
|
|
Jun 10 2015, 07:52
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(Dr.Alex @ Jun 10 2015, 10:35)  Тема: какие режимы лично ВЫ используете, и каковы их особенности. Было бы лучше если бы левел2 был обратим. Ведь делается же массЕрасе при сбросе левела1! Насчет названия: Как правило темы, начинающиеся с "ST учудил", заканчиваются выводом "сам дурак". Помню единственное исключение, когда была опечатка в документации от ST (с кем не бывает?). По теме: Level_1 это обратимый Level_2 в вашей терминологии. Level_2 это способ сделать так, чтобы враг не смог стереть прошивку в принципе. Давайте попробуем виртуально повзламывать прошивку в Level_1 через отладчик? 0. Подключаемся по JTAG. 1. По USB приходит команда обновить прошивку. 2. Загрузчик пытается стереть/подготовить сектор и обламывается. Ибо Цитата Any attempted program/erase operation sets the PGERR flag of Flash status register (FLASH_SR). 3. Процесс обновления заканчивается с ошибкой. Разве не так?
|
|
|
|
|
Jun 14 2015, 06:49
|
Знающий
   
Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153

|
Цитата(adnega @ Jun 10 2015, 10:52)  Давайте попробуем виртуально повзламывать прошивку в Level_1 через отладчик? 0. Подключаемся по JTAG. 1. По USB приходит команда обновить прошивку. Гм. Когда вы подключаетесь через JTAG к залоченному процу, код из FLASH исполняться не будет. Вы можете подключиться житагом и загрузить свой собственный код из ОЗУ к примеру. Однако этот код не будет иметь доступа к FLASH Цитата No access (read, erase, program) to Flash memory or backup SRAM can be performed while the debug feature is connected or while booting from RAM or system memory bootloader. A bus error is generated in case of read request. Цитата(Dr.Alex @ Jun 10 2015, 10:59)  Да и потом, ведь не обязательно подключаться сначала. Можно и в процессе. И вынуть ключ прямо из регистров блока CRYP :-)))) Когда вы подключите житаг к работающему процу, произойдет сброс. Регистры блока крип при этом обнулятся. Ваш загрузчик из FLASH не сможет быть запущен при подключенном житаге и Level1 Т.е. максимум что вы получите - это содержимое ОЗУ на момент сброса. UPD Тут я похоже наврал, сброса не будет. Но регистры блока cryp - write-only. Кроме того, вам уже написали выше, что можно отключить ножки отладки - таким образом во время работы программы вы к процу подключиться не сможете - только после сброса. Цитата(Dr.Alex @ Jun 10 2015, 12:36)  Но всё равно просматриваются варианты изучить протокол юсб (соснифить работу загрузочного софта), написать свой муляж софта, и затем покопаться жтагом во всех доступных местах (недоступен-то только флеш) чтобы заставить бутлодырь сделать ошибку. И как вы предлагаете защититься от этого на уровне проца? Опять же, вам уже писали, за не слишком космическую денежку можно вычитать из проца вашу программу вместе со всеми ключами. Подозреваю это будет проще и дешевле предлагаемого вами
|
|
|
|
Сообщений в этой теме
Dr.Alex Что там ST учудил с защитой кода..... Jun 9 2015, 19:04 adnega Цитата(Dr.Alex @ Jun 9 2015, 22:04) Или я... Jun 9 2015, 19:46 Dr.Alex Цитата(adnega @ Jun 9 2015, 22:46) А како... Jun 9 2015, 20:05  adnega Цитата(Dr.Alex @ Jun 9 2015, 23:05) Если ... Jun 9 2015, 20:16   Dr.Alex Цитата(adnega @ Jun 9 2015, 23:16) Еще ка... Jun 9 2015, 20:21    adnega Цитата(Dr.Alex @ Jun 9 2015, 23:21) Да не... Jun 9 2015, 20:36     Aner QUOTE (adnega @ Jun 10 2015, 00:36) Если ... Jun 9 2015, 20:43     Dr.Alex Цитата(adnega @ Jun 9 2015, 23:36) Т.е. и... Jun 9 2015, 20:58      adnega Цитата(Dr.Alex @ Jun 9 2015, 23:58) Если ... Jun 10 2015, 06:17  mantech Цитата(Dr.Alex @ Jun 9 2015, 23:05) Может... Jun 10 2015, 05:58 Aner Зачем так делать? Пишите свой бутлодырь с закрываш... Jun 9 2015, 19:51 Golikov A. перестановочный шифр не взламываемый, потому что н... Jun 9 2015, 21:08 Dr.Alex Цитата(Golikov A. @ Jun 10 2015, 00:08)
... Jun 9 2015, 21:16 Golikov A. ПРОСТИТЕ прочитал вашу добавку после того как напи... Jun 9 2015, 21:24 mantech Цитата(Dr.Alex @ Jun 10 2015, 09:55) То е... Jun 10 2015, 07:03  Dr.Alex Цитата(mantech @ Jun 10 2015, 10:03) Може... Jun 10 2015, 07:20   mantech Цитата(Dr.Alex @ Jun 10 2015, 10:20) Верн... Jun 10 2015, 07:42    Dr.Alex Цитата(adnega @ Jun 10 2015, 10:52) Как п... Jun 10 2015, 07:59     adnega Цитата(Dr.Alex @ Jun 10 2015, 10:59) Это ... Jun 10 2015, 09:28      Dr.Alex Цитата(adnega @ Jun 10 2015, 12:28) Я бра... Jun 10 2015, 09:30     adnega Цитата(Dr.Alex @ Jun 10 2015, 10:59) Да и... Jun 10 2015, 09:30      Dr.Alex Цитата(adnega @ Jun 10 2015, 12:30) Доста... Jun 10 2015, 09:36       adnega Цитата(Dr.Alex @ Jun 10 2015, 12:36) Возм... Jun 12 2015, 05:11 sadat Цитата(Dr.Alex @ Jun 10 2015, 09:55) Ребя... Jun 11 2015, 16:24  Dr.Alex Цитата(sadat @ Jun 11 2015, 19:24) совсем... Jun 11 2015, 16:56 Golikov A. Я не очень понимаю смысл темы.
Вам говорят решени... Jun 10 2015, 07:08 Aner Непонятно, может у вас большой сноб уже в параною ... Jun 10 2015, 09:12 Dr.Alex Цитата(Aner @ Jun 10 2015, 12:12) не прощ... Jun 10 2015, 09:24 adnega Кста, посмотрел в модуль CRYP - регистр с ключами ... Jun 10 2015, 09:44 Aner QUOTE (adnega @ Jun 10 2015, 13:44) Кста,... Jun 10 2015, 11:18 pavel-pervomaysk Если прибор очень востребован, дорогой, актуальный... Jun 12 2015, 05:34 bugdesigner Я использую ROP=1 для защиты бутлоадера, обновлени... Jun 12 2015, 09:04 Dr.Alex Цитата(bugdesigner @ Jun 12 2015, 12:04) ... Jun 12 2015, 09:53  bugdesigner Цитата(Dr.Alex @ Jun 12 2015, 12:53) Я зн... Jun 12 2015, 11:49   Dr.Alex Цитата(bugdesigner @ Jun 12 2015, 14:49) ... Jun 12 2015, 12:15 ViKo Хочу уточнить вопрос. Задам защиту чтения Уровень ... Jun 12 2015, 11:54 bugdesigner Цитата(ViKo @ Jun 12 2015, 14:54) Должна ... Jun 12 2015, 12:11  ViKo Цитата(bugdesigner @ Jun 12 2015, 15:11) ... Jun 12 2015, 12:27   bugdesigner Цитата(ViKo @ Jun 12 2015, 15:27) Сбрасыв... Jun 12 2015, 14:34    Dr.Alex Цитата(bugdesigner @ Jun 12 2015, 17:34) ... Jun 12 2015, 19:27     bugdesigner Цитата(Dr.Alex @ Jun 12 2015, 22:27) Во-п... Jun 13 2015, 04:48      Dr.Alex Цитата(bugdesigner @ Jun 13 2015, 07:48) ... Jun 13 2015, 09:39       bugdesigner Цитата(Dr.Alex @ Jun 13 2015, 12:39) Не н... Jun 13 2015, 12:01        Dr.Alex Надоело повторять каждому одно и то же. Для начала... Jun 13 2015, 12:05 Golikov A. А через жтаг можно узнать текущую выполняемую кома... Jun 13 2015, 13:54 Dr.Alex Варианты навскидку:
1) прописывать PC, пытаясь пер... Jun 13 2015, 14:04 bugdesigner Даже если не отключать дебаг порт, можно и нужно н... Jun 13 2015, 14:23  Dr.Alex Цитата(bugdesigner @ Jun 13 2015, 17:23) ... Jun 13 2015, 19:11   Timmy Цитата(Dr.Alex @ Jun 13 2015, 22:11) Вы у... Jun 14 2015, 04:08 Golikov A. Цитатато в принципе невозможно. Как только Вы подк... Jun 13 2015, 15:51
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|