Перейти к содержанию
    

Как защититься от подделки устройства?

24 minutes ago, makc said:

Темы такой не помню.

Тему видел и, мне кажется, не на Электрониксе. Про ключи понятно. В той защите всех сводило с ума, то, что между МК и ПЛИС идут просто одинаковые импульсы без каких-либо признаков информации, и при этом ПЛИС обнаруживает подмену программы МК. Блокировка работы происходила через случайное довольно большое время, что тоже добавляло головной боли.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 минут назад, AlexG сказал:

В той защите всех сводило с ума, то, что между МК и ПЛИС идут просто одинаковые импульсы без каких-либо признаков информации

А вы прямь все импульсы проверяли, может там один на 1000 немного другой и все, на глазок никогда не увидите...

4 часа назад, arhiv6 сказал:

С демо-прошивкой устройство работало минут 10, с полной версией - неограниченное время.

Как-то надо было сделать что-то подобное, но я решил, что просто отключать через N минут не интересно, тут сразу есть за что зацепиться при реверсе, сделал "случайные" глюки прошивки, типа гарантированно работает 1 час, потом случайным образом через какое-то время начинает глючить (что-то отваливается, начинает тормозить, или перезагружается), так было прикольнее)))

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 минут назад, AlexG сказал:

Тему видел и, мне кажется, не на Электрониксе.

Точно, похоже другой форум был: https://www.radiokot.ru/forum/viewtopic.php?f=60&t=77157

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Меня в теме смутило, что диссасемблировать прошивку молодой разраб так и не попытался.

Пенсионер должен был оставить компании прошивки, не сам же он шил платы. Ну это не считая недавно показанной возможности Vcc-glitch-атаки, которой судя по прайсам взломщиков avr отлично читается. 

Парень потратил судя по описанию не меньше нескольких недель на реверс, а открыть прошивку малюсенького Tiny в IDA так и не удосужился.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 минут назад, a123-flex сказал:

судя по прайсам взломщиков avr отлично читается.

Цены какие-то жуткие, у китайцев авр давно в районе 200-300 евро.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 часов назад, Vasily_ сказал:

Цены какие-то жуткие, у китайцев авр давно в районе 200-300 евро.

Да черт с ворами

В описании написано что прошивки нет...господа, как такое может быть ? Штатный в прошлом электроник компании разрабатывает устройство и не оставляет прошивок ? Я вот не могу представить себе такой конторы...

Эта тема не троллинг случаем ?

Чуваку в обмен на головоломку описали годную схему с обменом открытыми ключами.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 часа назад, mantech сказал:

Как-то надо было сделать что-то подобное, но я решил, что просто отключать через N минут не интересно, тут сразу есть за что зацепиться при реверсе, сделал "случайные" глюки прошивки, типа гарантированно работает 1 час, потом случайным образом через какое-то время начинает глючить (что-то отваливается, начинает тормозить, или перезагружается), так было прикольнее)))

Дада так круто)))

У меня в свое время на аппаратах был семисегментный индикатор.

И клиенты мои, которые точно должны были забыть заплатить, таки забыли. Они были немало удивлены, когда аппарат остановился и на ломаном семисегментником английском написал: "I need the money". Сразу все вспомнили, деньги приехали))

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Похожая система реализована в iPhone. Обмен между приложением и кабелем, а через него и телефоном, зашифрован. В кабеле есть микросхема с ключами. Apple запрещает кабели с левыми фишками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 hours ago, mantech said:

я решил, что просто отключать через N минут не интересно

 

Давным-давно в Fido читал про какое-то очень силовое устройство, в котором ПЛИС в определенных случаях открывала одновременно верхний и нижний ключ и устраивала таким образом самоликвидацию.

 

4 hours ago, a123-flex said:

Эта тема не троллинг случаем ?

Непропаи и КЗ это не меньше 30 бит, + код, по скромному ну еще 4-5 бит. Итого не меньше 30 секунд на передачу данных, а он пишет - в первые секунды.

Чуваку в обмен на головоломку описали годную схему с обменом открытыми ключами.

 

Это начинает быть похоже на рассказ "Уровень шума" Джоунса Рэймонда.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

18 часов назад, AlexG сказал:

Это начинает быть похоже на рассказ "Уровень шума" Джоунса Рэймонда.

Хороший рассказ)

По правде говоря, в описанной системе двухсторонний обмен, и если в одну сторону особых проблем не видно, то во вторую все сильно сложнее(

Труда человек немало потратил чтобы всё это заставить работать стабильно - там неспроста такие большие паузы на принятие решения( Часть тиньки кстати самая сложная в проекте)

И главное, к чему были все мучения, если обмен ключами защита надёжная, а у описанной - криптостойкость равна нулю.

Пенсионер не зря не сказал ни слова - это схема с неизвестным алгоритмом, была видимо разработана когда криптография с открытым ключом ещё не была известна.

Mcs51 и первые ПЛИС были с 1980, а открытые материалы по криптографии с открытым ключом - с 2001) Добавим 5 лет на трансфер знаний/технологий в ru - по времени все сходится. Статья в коте 2010 года.

 "Что нашим отцам было по плечу, нам по бую"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, AlexG сказал:

в котором ПЛИС в определенных случаях открывала одновременно верхний и нижний ключ и устраивала таким образом самоликвидацию.

Нее, так жестко, тут могут еще и иск приписать за порчу изделия по вине производителя, тут по тонкой линии разработчики шли...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кто-нибудь делал магическую "разлочку" прошивки МК только на оригинальных платах, для которых предусматривалось это ПО? Сейчас поясню.

Допустим, есть МК, есть прошивка для него. Прошивку могут скоммуниздить, схема тоже не секрет - раздобыть можно. Гербера или проект альтиума - в целом, тоже. Исходников прошивки нет, или же есть, но люди, у которых она на руках, не в состоянии разобраться, что с ней делать. Однако не обделены интеллектом, чтобы, например, по известной схеме и уже имеющейся прошивке тупо развести свою плату под свое устройство (МК выполняет довольно стандартную функцию, он в роли "готового, проверенного решения реализации какой-то функции" - например, для простоты - UART-расширитель портов с защитой от "битых" управляющих посылок на уровне протокола обмена). Так вот, я бы хотел, чтобы даже скопировав схематик и залив прошивку в МК, она не заработала. Но при этом работала на оригинальной "моей" плате, под которую изначально я отлаживал ПО.

На ум приходят всякие потайные дорожки между GPIO (причем, электрически не соединенные). Одна настраивается на выход и генерирует меандр, другая (рядом с которой проходит эта "антенна") - настраивается на Hi-Z и через емкостную связь принимает и сравнивает сигнал-болтанку. Либо еще вариант: какая-то ножка АЦП при трассировке тупо разводится на "островок" маленького полигона, емкость которого будет затем измерена и взята за эталон. Можно несколько таких островков. Т.е. даже глядя на плату с первого (а также со второго, третьего и пятого) взгляда не должно быть очевидно, почему на моей все работает, а на скопипащенной - нет. Ну, разумеется, тут если потенциальные любители халявы каким-то случайным образом наразводят так, что все эти аппаратные закладки сработают - то да, выхода нет.

А кто-то знает еще более изобретательные способы выстрелить в ногу прохиндеям и при этом не зацепить себя?:on_the_quiet2: Внешние схемы для конкретно этой цели - сразу мимо, т.к. заранее вызовут подозрения.

P.S. Триггер типа АЦП или подобного, где характеристики "эталона" от образца к образцу оригинальной платы могут немного меняться (ну подумаешь, на пару микрон межслойное расстояние на плате изменилось) можно подкрепить записью некого кода в OTP-память МК. Т.е. если при первом включении МК все наши аппаратные закладки сработали - то пишем в OTP кодовое слово. Теперь при следующих перезагрузках МК не обязательно запускать процедуру проверки аппаратных закладок (мало ли со временем платам поплохеет слегка и все что МК намеряет там уже будет не в норме) - достаточно проверить кодовое слово в OTP. Чтение памяти МК программатором, разумеется, защищать покуда защищается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

18 минут назад, Arlleex сказал:

то пишем в OTP кодовое слово.

достаточно проверить кодовое слово в OTP

Вот эту проверку хацкеры найдут и заменят на jmp куда надо :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

17 минут назад, Freibier сказал:

Вот эту проверку хацкеры найдут и заменят на jmp куда надо

Хацкеры возьмут исходники и на этом все закончится, о чем я и написал в самом начале, так то. Более того, чтобы найти "jmp куда надо" надо сначала дизассемблировать модифицированный бинарник в МК (образ Flash + OTP), до которого условно не добраться, о чем я, кстати, тоже написал. Читаете между строк, почему-то. Я и говорю, не от крутых дядек защищаемся (ибо бесполезно это все даже с супернавороченными шифрованиями и божественными TrustZone). А от обычных зевак, которые "знают как намутить бабок", когда под рукой ЧиД, JLCPCB и чужой коммерческий проект, доступ к которому тем или иным путем открыт.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

30 минут назад, Arlleex сказал:

А кто-то знает еще более изобретательные способы выстрелить в ногу прохиндеям и при этом не зацепить себя?:on_the_quiet2: Внешние схемы для конкретно этой цели - сразу мимо, т.к. заранее вызовут подозрения.

А чем стандартный путь не устраивает: Свой загрузчик, который дешифрует и прошивает образ прошивки? Прошивку наружу кроме как в шифрованном виде не выпускать.

Все эти "паразитные ёмкости полигонов" и т.п. - хороший способ выстрелить в ногу и себе и своим заказчикам. У которых даже на "правильных" платах эти закладки будут иногда срабатывать потому как звёзды так сложились сырость в помещении + запылённый воздух + наводки внешних ЭМ-полей + старение материала платы + далее по списку... Если вообще испытания на ЭМС пройдёте с такими закладками...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...