|
Как защитить ATmega16 от взлома? |
|
|
|
 |
Ответов
(15 - 29)
Guest_Цыкетчик_*
|
Sep 24 2008, 14:35
|
Guests

|
Цитата(defunct @ Sep 24 2008, 18:28)  Я на втором курсе сломал 1C бухгалтерию за день. У Вас были исходники? Или просто так быстро разобрались в 1 Гиговом листинге, который выдал дизассемблер ? Цитата(defunct @ Sep 24 2008, 18:28)  А чего так долго-то?  Я тугодум Цитата(defunct @ Sep 24 2008, 18:28)  А чего так долго-то?  Я на втором курсе сломал 1C бухгалтерию за день. А почему не за 5 минут?
Сообщение отредактировал Цыкетчик - Sep 24 2008, 14:36
|
|
|
|
Guest_Цыкетчик_*
|
Sep 24 2008, 15:32
|
Guests

|
Цитата(defunct @ Sep 24 2008, 19:24)  Был только дистрибутив и trial key. Листингом не страдал. Запустил под отладкой, посмотрел ветвления после проверки ключа, и поставил jmp на ветку где принимается ключ полной версии. Вот и все дела.
Потом проверял вся ли функциональность сохранилась - сохранилась вся. Это просто видать програмисты дураки были. В нормальных прогах всегда есть защита от запуска под отладчиком. Например установка тайм-аута. Если кусок кода выполняется дольше чем нада - стираем нах всю прогу
|
|
|
|
|
Sep 24 2008, 16:09
|
Частый гость
 
Группа: Новичок
Сообщений: 83
Регистрация: 25-08-08
Пользователь №: 39 801

|
Цитата(defunct @ Sep 24 2008, 19:24)  поставил jmp на ветку где принимается ключ полной версии. Вот и все дела. "Это просто видать програмисты дураки были."(с) Потому что в нормальных прогах в нескольких местах проверяется CRC программы. И если Вы измените хоть один байт кода или что-то добавите, то CRC меняется и программа сразу это обнаружит и выведет на экран мессадж:"Обнаружено нарушение лицензионной защиты. Я работать отказываюс"
Сообщение отредактировал Боинг749 - Sep 24 2008, 16:10
|
|
|
|
|
Sep 24 2008, 16:24
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(Боинг749 @ Sep 24 2008, 19:09)  "Это просто видать програмисты дураки были."(с)
Потому что в нормальных прогах в нескольких местах проверяется CRC программы. И если Вы измените хоть один байт кода или что-то добавите, то CRC меняется и программа сразу это обнаружит и выведет на экран мессадж:"Обнаружено нарушение лицензионной защиты. Я работать отказываюс" 1. Ломался дистрибутив собсно сам инсталлер который раздает CRC.  2. Вы вероятно сталкивались только с одной стороной медали - придумавали способы защиты, и никогда не пытались сломать свое же творчество. Вот скажите что мешает, добравшись отладчиком до злосчастной таблички установить причину ее возникновения? Ну а дальше ведь дело техники - поменять JE на JNE; - поменять функцию расчета CRC на MOV EAX, 0 RET - замазать CALL CRC NOP'ами; - куча других вариантов
|
|
|
|
|
Sep 24 2008, 16:35
|
дятел
    
Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065

|
Цитата(Боинг749 @ Sep 24 2008, 20:09)  "Это просто видать програмисты дураки были."(с) Потому что в нормальных прогах в нескольких местах проверяется CRC программы. И если Вы измените хоть один байт кода или что-то добавите, то CRC меняется и программа сразу это обнаружит и выведет на экран мессадж:"Обнаружено нарушение лицензионной защиты. Я работать отказываюс" Вот ерунду Вы написали, а CRC подделать это что задача ? а подставить "павильное" значение на измененном куске это тож очень сложно ? А просто обойти проверку CRC для простоты ? Видимо Вы просто НИКОГДА в реальности не ломали чужого софта.... З.Ы. Никогда не ломал(ну точнее ломал но не получал прямой прибыли...) чужого софта...
|
|
|
|
|
Sep 24 2008, 17:37
|

nofb
  
Группа: Свой
Сообщений: 430
Регистрация: 18-05-06
Из: Москва, Зеленоград
Пользователь №: 17 218

|
Цитата(Alex_Pol @ Mar 14 2008, 17:38)  например, в " http://termorect.narod.ru/ ", которые делают задачу 100% защиты нерешаемой вообще. Никакой связи с защитой кода в AVR не вижу. А деятели, которые предлагают услуги по выжиганию защитных битов лазером довольно распространены в сети. Вопрос в том, на сколько это кидалово, и стоит ли игра тех самых свеч?Повторить можно все что угодно - вопрос в том, какую цену Вы готовы за это заплатить. Имхо услуги хакеров, которые предоставят вам бинарник чужой разработки стоят гораздо дороже, чем повторение алгоритма того же кода квалифицированным программистом.
--------------------
Это не то что вы подумали ...
|
|
|
|
|
Sep 24 2008, 19:31
|
Участник

Группа: Участник
Сообщений: 55
Регистрация: 17-04-08
Пользователь №: 36 850

|
Цитата(Ivan_Petrov @ Mar 14 2008, 12:17)  [attachment=18812:attachment] Видимо эта мега, об фьюзах не знала =) Чем это её так  ? Вроде при изготовлении корпусов используется термореактивная пластмасса... Цитата(SasaVitebsk @ Mar 14 2008, 14:35)  Сообщество AVR щиков уже весьма велико, и пока никто не жаловался на нанесение ущерба путём вскрытия кода. Я не видел ни одного сообщения. На фирме где работаю было... И по моим( так, в стороне) подсчетам не на одну сотню куе убытка... И вроде как не без помощи Цитата(sseett @ Mar 14 2008, 12:14)  Некая прибалтийская фирма периодически предлагает свои услуги.... за килобаксы. Цитата(Cyber_RAT @ Mar 14 2008, 15:35)  по моему проще написать заново, чем пытаться считывать залоченный кристалл. Если алгоритм известен и AVR - это основной процессор, то да. А если это часть разработки, с закрытым протоколом, да ещё установленная для защиты всего изделия от копирования? И что бы " написать заново" надо написать гораздо больше чем n кб AVR'овского кода? Цитата(west329_ @ Sep 24 2008, 16:23)  А кокова вероятность взлома если программа защищина програмно ? Все зависит от того, что значит " защищина програмно". Самое главное в таком случае - надо как-то определять, что это копия. А бредовые замечания по взлому прог на компе, которые ещё и системное сообщение выводят на которые можно брекпоинт поставить - посылать в сад. Цитата(singlskv @ Sep 24 2008, 19:35)  Вот ерунду Вы написали, а CRC подделать это что задача ? а подставить "правильное" значение на измененном куске это тож очень сложно ? А просто обойти проверку CRC для простоты ? Сначала это место нужно найти. Если это под Win с выводом MessageBox это одно. А если, допустим, это софт типа MathCad и никакого сообщения не будет, а будет с какой-либо вероятностью не совсем верно считаться результат? Перепроверите всю бизнес логику? Найти такую " засаду" будет в разы сложнее.
|
|
|
|
|
Sep 24 2008, 21:03
|
Профессионал
    
Группа: Свой
Сообщений: 1 526
Регистрация: 8-04-05
Пользователь №: 3 960

|
Цитата(Nick_Shl @ Sep 24 2008, 23:31)  Чем это её так  ? Вроде при А бредовые замечания по взлому прог на компе, которые ещё и системное сообщение выводят на которые можно брекпоинт поставить - посылать в сад. Сначала это место нужно найти. Скажите, Вы сами когда-нибудь что-то достаточно сложное "ломали"? Если нет - то не надо спорить с теми, кто это делал. Прочесс слома - это творческий процесс, и никто не ломает программу там, где его как раз ждут. Задача найти слабость или оплошность в защите и этим воспользоваться.
|
|
|
|
|
Sep 25 2008, 07:26
|

4 синих кубика
   
Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326

|
Можно отломать ногу MOSI у контроллера  , хотя это жестоко и просто усложнит подключение. Можно привязывать прошивку к внешнему железу с уникальным номером, например, к DALLASовскому датчику температуры с 1-wire интерфейсом, у которых уникальные номера 48 бит никогда не повторяются. Конечно датчик этот можно эмулировать, но это может быть невыгодно или неудобно. Между процедурами можно вставлять бредовый код со множеством переходов, который в программе никогда не будет выполняться и при дизассемблинге запутает чтение программы. Естественно, если есть для этого место.
--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|