реклама на сайте
подробности

 
 
> Bootloader для LPC2364
Step_ARM
сообщение Jul 11 2008, 09:25
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870



Добрый день...
Нигде не нашел описания как программируется флэш на низком уровне. Везде используются функции заводского загрузчика. Идея такова -- надо написать свой загрузчик вместо заводского в ту же область памяти(заменить). Есть ли у кого информация по этому вопросу?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
navy2000
сообщение Jul 17 2008, 13:08
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 203
Регистрация: 17-07-06
Пользователь №: 18 874



Еще одна идея.
Исходим из того, что серийники в целевых платах менять не могут.
Програмируется устройство аппаратной железякой. Железяка кроме интерфейса с програмируемым процом имеет еще и свой интерфейс с серийником.
Железяка читает серийник платы. Сравнивае, не работала ли она ранее с этим серийником.
Вставляет его (или функцию от него) в нешифрованный загрузчик.
Грузит его в проц и закрывает флешь от чтения.
Загрузчик в проце запускается, читает серийник с платы и если он совпадает готова к прошивке целевой программы.
Железяка шифрует программу и загружает ее в проц. загрузчик расшифровывает ее серийником (или функцией от серийника) и прошивает его во флешь, сам стирается и закрывает флешь от чтения.
Целевая прога стартует, сравнивает серийник на плате и если он тот, то стартует.
Железяка инкрементирует счетчик.
Когда счетчик вышел, отправляйте железяку разработчикам или покупайте новую.
Понимаю, дыра есть, но покритикуйте сложность взлома.
Go to the top of the page
 
+Quote Post
Step_ARM
сообщение Jul 18 2008, 09:34
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870



Цитата(navy2000 @ Jul 17 2008, 17:08) *
Еще одна идея.
Исходим из того, что серийники в целевых платах менять не могут.
Програмируется устройство аппаратной железякой. Железяка кроме интерфейса с програмируемым процом имеет еще и свой интерфейс с серийником.
Железяка читает серийник платы. Сравнивае, не работала ли она ранее с этим серийником.
Вставляет его (или функцию от него) в нешифрованный загрузчик.
Грузит его в проц и закрывает флешь от чтения.
Загрузчик в проце запускается, читает серийник с платы и если он совпадает готова к прошивке целевой программы.
Железяка шифрует программу и загружает ее в проц. загрузчик расшифровывает ее серийником (или функцией от серийника) и прошивает его во флешь, сам стирается и закрывает флешь от чтения.
Целевая прога стартует, сравнивает серийник на плате и если он тот, то стартует.
Железяка инкрементирует счетчик.
Когда счетчик вышел, отправляйте железяку разработчикам или покупайте новую.
Понимаю, дыра есть, но покритикуйте сложность взлома.

Я всегда делал проще. Программой кодером кодировал часть файла через XOR со сдвигом. В загрузчике на камне декодировал и записывал. Об это зубы обломать можно запросто. Хотя и ломается я думаю. Но времени уйму убъешь. В интернет выкладывал кодированную прошивку и все. Новая версия вышла или какой баг обнаружился пользователь перешивает. А у AVR вон код AES выложен -- посложнее будет сломать, только вот ни к чему так заморачиваться.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jul 18 2008, 12:28
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Step_ARM @ Jul 18 2008, 12:34) *
кодировал часть файла через XOR со сдвигом. В загрузчике на камне декодировал и записывал. Об это зубы обломать можно запросто. Хотя и ломается я думаю. Но времени уйму убъешь.
Ломается элементарно. Поверхностное описание методики взлома было, кажется, у Скляра в "Цифровой связи".


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 18 2008, 13:18
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Сергей Борщ @ Jul 18 2008, 14:28) *
...описание методики взлома было..

Да со минимальным знанием конкретики (таблица векторов, их контрольная сумма в ней, известное содержимое 0x1FC) такое и просто в лоб (а если еще и hiew/qview подобную утилитку вместо клочка бумаги smile.gif.... )ломается и без всяких правильных методик на 1-2-3.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
meister
сообщение Jul 18 2008, 13:29
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 219
Регистрация: 20-11-07
Пользователь №: 32 484



Цитата(zltigo @ Jul 18 2008, 17:18) *
Да со минимальным знанием конкретики (таблица векторов, их контрольная сумма в ней, известное содержимое 0x1FC) такое и просто в лоб (а если еще и hiew/qview подобную утилитку вместо клочка бумаги smile.gif .... )ломается и без всяких правильных методик на 1-2-3.


Загрузчик-то нешифрованный smile.gif)) и, например, моя прога, которая шифрует обновление прошивки, загрузчик вообще откусывает, потому как он лишний в этом файле.

Я шифрую с помощью tiny encryption algorithm, читал, что он довольно стойкий для одного абзаца кода.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Step_ARM   Bootloader для LPC2364   Jul 11 2008, 09:25
- - meister   Цитата(Step_ARM @ Jul 11 2008, 13:25) Доб...   Jul 11 2008, 10:32
- - Step_ARM   1. NXP в свое время закрывала загрузчик и на RD2.....   Jul 12 2008, 08:32
|- - zltigo   Цитата(Step_ARM @ Jul 12 2008, 10:32) 3. ...   Jul 12 2008, 09:26
- - HARMHARM   Цитата(Step_ARM @ Jul 11 2008, 12:25) ......   Jul 12 2008, 17:52
|- - zltigo   Цитата(HARMHARM @ Jul 12 2008, 19:52) Зам...   Jul 12 2008, 17:57
|- - KRS   Цитата(zltigo @ Jul 12 2008, 21:57) Раньш...   Jul 12 2008, 18:14
|- - zltigo   Цитата(KRS @ Jul 12 2008, 20:14) А что за...   Jul 12 2008, 18:23
- - navy2000   В ту же тему. Есть ли возможность защитить изделие...   Jul 13 2008, 10:43
|- - zltigo   Цитата(navy2000 @ Jul 13 2008, 12:43) Ест...   Jul 13 2008, 11:03
|- - navy2000   Цитата(zltigo @ Jul 13 2008, 18:03) В опи...   Jul 14 2008, 13:31
|- - zltigo   Цитата(navy2000 @ Jul 14 2008, 15:31) Я з...   Jul 14 2008, 15:24
|- - navy2000   Цитата(zltigo @ Jul 14 2008, 22:24) Я каж...   Jul 16 2008, 02:43
|- - meister   Цитата(navy2000 @ Jul 16 2008, 06:43) хот...   Jul 16 2008, 05:29
||- - MrYuran   Цитата(meister @ Jul 16 2008, 08:29) Тогд...   Jul 16 2008, 06:53
||- - navy2000   Цитата(MrYuran @ Jul 16 2008, 13:53) Кста...   Jul 16 2008, 12:44
||- - zltigo   Цитата(navy2000 @ Jul 16 2008, 14:44) Нас...   Jul 16 2008, 13:11
||- - navy2000   Цитата(zltigo @ Jul 16 2008, 20:11) Легко...   Jul 16 2008, 13:37
||- - zltigo   Цитата(navy2000 @ Jul 16 2008, 15:37) Или...   Jul 16 2008, 14:07
|- - zltigo   Цитата(navy2000 @ Jul 16 2008, 04:43) Вот...   Jul 16 2008, 08:02
- - Step_ARM   Цитата(zltigo @ Jul 12 2008, 13:26) Это В...   Jul 14 2008, 04:45
|- - meister   Цитата(Step_ARM @ Jul 14 2008, 08:45) Упо...   Jul 14 2008, 05:38
||- - Step_ARM   Цитата(meister @ Jul 14 2008, 09:38) Вы х...   Jul 14 2008, 07:31
||- - meister   Цитата(Step_ARM @ Jul 14 2008, 11:31) 8kB...   Jul 14 2008, 11:25
|- - zltigo   Цитата(Step_ARM @ Jul 14 2008, 06:45) Кто...   Jul 14 2008, 07:55
||- - Step_ARM   Цитата(zltigo @ Jul 14 2008, 11:55) Кто В...   Jul 14 2008, 18:11
||- - zltigo   Цитата(Step_ARM @ Jul 14 2008, 20:11) 1. ...   Jul 14 2008, 18:28
||- - Step_ARM   Когда кто-то чем-то не владеет, то сразу начинает ...   Jul 15 2008, 07:51
||- - zltigo   Цитата(Step_ARM @ Jul 15 2008, 09:51) Вам...   Jul 15 2008, 10:11
|- - shahr   Цитата(Step_ARM @ Jul 14 2008, 07:45) Вы ...   Jul 15 2008, 12:31
|- - Step_ARM   Цитата(shahr @ Jul 15 2008, 16:31) Арифме...   Jul 15 2008, 19:09
|- - zltigo   Цитата(Step_ARM @ Jul 15 2008, 21:09) А н...   Jul 15 2008, 20:19
|- - Step_ARM   Цитата(zltigo @ Jul 16 2008, 00:19) Угу.....   Jul 16 2008, 06:40
|- - meister   Цитата(Step_ARM @ Jul 16 2008, 10:40) в д...   Jul 16 2008, 07:12
|- - Step_ARM   Цитата(meister @ Jul 16 2008, 11:12) UM10...   Jul 16 2008, 08:06
|- - shahr   Цитата(Step_ARM @ Jul 16 2008, 11:06) Это...   Jul 21 2008, 08:43
- - АДИКМ   я Вам больше скажу, lpc2364/66/68 - это один и тот...   Jul 15 2008, 20:46
- - navy2000   Конечно, загрузчики можно шить у себя, но блин как...   Jul 17 2008, 06:00
|- - MrYuran   Цитата(navy2000 @ Jul 17 2008, 09:00) Поэ...   Jul 17 2008, 06:14
|- - zltigo   Цитата(MrYuran @ Jul 17 2008, 08:14) Имее...   Jul 17 2008, 07:06
|- - zltigo   Цитата(navy2000 @ Jul 17 2008, 15:08) Еще...   Jul 17 2008, 13:52
|- - navy2000   Цитата(Step_ARM @ Jul 18 2008, 16:34) Я в...   Jul 18 2008, 10:30
|- - zltigo   Цитата(meister @ Jul 18 2008, 15:29) Загр...   Jul 18 2008, 13:53
|- - Step_ARM   Цитата(zltigo @ Jul 18 2008, 17:53) Не пр...   Jul 19 2008, 05:52
|- - zltigo   Цитата(Step_ARM @ Jul 19 2008, 07:52) Но ...   Jul 19 2008, 08:04
|- - Step_ARM   Цитата(zltigo @ Jul 19 2008, 12:04) Отнюд...   Jul 19 2008, 19:20
|- - HARMHARM   Цитата(zltigo @ Jul 19 2008, 11:04) ... П...   Jul 25 2008, 07:50
|- - zltigo   Цитата(HARMHARM @ Jul 25 2008, 09:50) Зад...   Jul 25 2008, 08:07
- - zltigo   Moderator: Часть ветки перенесена в оффтопик. http...   Jul 21 2008, 17:42


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th June 2025 - 07:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.01459 секунд с 7
ELECTRONIX ©2004-2016