Нужна помощь по MEGA328PU за вознаграждение!!!

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
Just_Fluffy
Вымогатель припоя
Сообщения: 532
Зарегистрирован: Ср июн 29, 2022 16:25:45

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение Just_Fluffy »

Глупый вопрос - а в фузах вход в бут включен?
Белая и Пушистая
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15553
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение BOB51 »

А АВРка может без внешнего программатора сама себе набор фуз-бит перезаписать?
(Вариант самоблокировки после загрузки через бутлоадер.)
8)
Аватара пользователя
Starichok51
Модератор
Сообщения: 19046
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение Starichok51 »

да, может.
загрузчик может читать все фьюзы и локи, а записывать может только локи.
всё это легко находится и читается в даташите.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
OKF
Это не хвост, это антенна
Сообщения: 1389
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение OKF »

Читать можно откуда хош.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15553
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение BOB51 »

[uquote="Starichok51",url="/forum/viewtopic.php?p=4560792#p4560792"]да, может.
загрузчик может читать все фьюзы и локи, а записывать может только локи.
всё это легко находится и читается в даташите.[/uquote]
Но вход в таблицу векторов, ее размещение и распределение ПЗУ это не локи - перезапись из бутлоадера вряд ли возможна.
Т. Е. Речь о самоблокировке доступа к бутлоадеру.
Разве что перезапись самой целевой программой области векторов(после ее запуска) - но тогда в самой целевой программе должна быть соответствующая секция -"вредитель", отключаемая после исполнения. И фузы для такого варианта трогать там совсем не потребуется.
8)
Аватара пользователя
Starichok51
Модератор
Сообщения: 19046
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение Starichok51 »

работу загрузчика, как таковую, запретить нельзя.
комбинации битов BLB12, BLB11 запрещают работу команды SPM в области загрузчика.
комбинации битов BLB02, BLB01 запрещают работу команды SPM в области приложения.
то есть, загрузчик запустится, но ничего записать не сможет.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15553
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение BOB51 »

Если область векторов останется доступной для spm (самого загрузчика или программы пользователя) то достаточно только перезаписать вектор сброса.
Это ежли автор не поставил "вторичную" таблицу векторов в произвольной области ПЗУ, которую можно в любом случае достать из spm. Некоторая потеря скорости выполнения при входе в обработчик прерывания конечно будет, но для того же ресета по включению питания... Не столь существенна ( команда перехода на следующий переход уже к исполняемому фрагменту). Да это и типовое решение у МК без аппаратной поддержки перепланировки таблицы векторов.
8)
Аватара пользователя
Starichok51
Модератор
Сообщения: 19046
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение Starichok51 »

к слову о таблице векторов прерываний.
сделал я себе загрузчик.
сначала попробовал перенос таблицы в загрузочную область.
но прерывания по приемнику и передатчику не заработали. пришлось переделать на программный анализ флагов готовности приема и готовности передачи.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
OKF
Это не хвост, это антенна
Сообщения: 1389
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение OKF »

Я что то не пойму идею, которую тут некоторые втемяшивают. Загрузчик изменил код в программе, и чо?
Аватара пользователя
Just_Fluffy
Вымогатель припоя
Сообщения: 532
Зарегистрирован: Ср июн 29, 2022 16:25:45

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение Just_Fluffy »

OKF, Обсуждают возможность программной реализации защиты от клонирования изделия силами бутлоадера...
Белая и Пушистая
OKF
Это не хвост, это антенна
Сообщения: 1389
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение OKF »

[uquote="Just_Fluffy",url="/forum/viewtopic.php?p=4561189#p4561189"]OKF, Обсуждают возможность программной реализации защиты от клонирования изделия силами бутлоадера...[/uquote]
Да. Тема об этом. Только непонятно каким образом можно защититься с помощью бутлоадера. Предложите механизм. А не просто бессвязный набор, как у некоторых.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15553
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение BOB51 »

Тут скорее не прямое клонирование, а защита от обновления программы после клонирования актуальна.
Т.е. клонировать текущую версию удается, а вот загрузить дальше вариант обновления софтины не получается.
Starichok51
Достаточно иметь доступ от SPM в рабочую область векторов.
Первичная запись бутлоадера одновременно и эту таблицу заполняет.
Только в ней не переходы на исполнительные программы, а передача управления расположенным также в области доступной SPM второй таблички с командами перехода. Эта область уже в "общедоступной области" (в любом на свое усмотрение месте).
Бутлоадер запустился по исходно прошитому переходу с ресета на промежуточный "ресет", загрузил нужную софтинку и... переписал вторичный вектор (в дубль-таблице). Кто тот вектор перепишет - фрагмент бута при своей работе или запускаемый из бута фрагмент основной софтины (или комбинация этих фрагментов) - это уже "изврат сочинителя".
Дальше выключаем устройство...
При повторном запуске ресет также адресует вторичную табличку, а в ней то уже другой вектор прописан - и обход бутлоадера гарантирован. Или проще ежли вектор ресета в общедоступной области переписан - но то "слишком заметно" может быть.
Ну и огромадное количество вариаций на ту же тему (в каком месте апендикс перезаписи расположен, где "маскирующая табличка" и как взаимодействие софтинок взаимосвязано).
У меня так работает биос бутлоадера/котиос котуинки при подгрузке целевых программ - там правда кросс-таблица в ОЗУ (совмещенная память программ/данных mcs51), но принцип практически одинаков (если свободная перезапись содержимого флеш выполняется).
8)
Аватара пользователя
Starichok51
Модератор
Сообщения: 19046
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение Starichok51 »

BOB51 писал(а):Достаточно иметь доступ от SPM в рабочую область векторов.
Первичная запись бутлоадера одновременно и эту таблицу заполняет.
причем тут команда SPM доступа к флеши? эта команда ничего не знает о положении таблицы векторов прерываний.
и только установлением фьюзов на старт в загрузочной области еще не переносит таблицу в загрузочную область.
при написании своего загрузчика я сначала прерывания от приемника и передатчика оставил на своем месте - по таблице с нулевого адреса. и прием и передача из загрузчика работали.
в АТмега8 есть регистр GICR, и в нем есть бит IVSEL, отвечающий за расположение таблицы векторов.при записи в этот бит "1" таблица векторов перемещается (должна переместиться) в загрузочную область.
я потом в своем загрузчике сделал такое перемещение. но у меня прерывания по приемнику и по передатчику почему-то не заработали.
а чтобы куда-то в произвольное место назначить таблицу векторов - в даташите я такого не видел вообще.
если тебя не затруднит, объясни мне подробно про перенос таблицы в разные места. и почему у меня не заработали прерывания после переноса таблицы?
можно и лучше в личке, чтобы не загружать эту тему.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15553
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение BOB51 »

Ответ перенес в соответствующую тему:
https://radiokot.ru/forum/viewtopic.php ... 0#p4561440
:beer:
OKF
Это не хвост, это антенна
Сообщения: 1389
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Нужна помощь по MEGA328PU за вознаграждение!!!

Сообщение OKF »

Боб, извини, то ты своим пиздежом просто засоряешь темы. Бла-бла-бла шоу получается. Даже отвечать не хочется.(
Ответить

Вернуться в «AVR»