Я уже предвижу как все высказывают своё ФЕ... Мол тема избитая, но мысль моя, мне не дает покоя. Так вот к теме... В ночном кошмаре приснилось мне, что снял я прошивку с залоченого проца ЗАРАЗИВ ЕГО САМОЗАГРУЖАЕМЫМ ВИРУСОМ И в принципе по утру мысль мне не показалась бредовой, и даже после недели обдумывания... Вот собственно аргументы за: - архитектура проца не имеет особого значения, если работает один из режимов приема передачи данных (SPI, USAR и тд) - как и любая инфа в проце храниться в цифре - написать и скормить процу через интерфейс исполнительную компактную программу (в цыфре), которая (после включения проца) выгрузит по очереди его SRAM, EEPROM и/или снимет lock bit (как вариант слабенький) - Написал - перечитал БРЕД!!!! Однозначно, но как и везде есть доля истины, а теперь ругайте..
_________________ идейный борец за ден. знаки всего мира
В теории такое было бы возможно при помощи дозаписи некоторого загрузчика в МК. Однако чтоб что-то записать надо еще что-то стереть. И с вероятностью 99.9% вы затрете часть прошивки
Чтобы что-то записать или стереть, нужно эти самые lock bits отключить... Если нет загрузчика, то вообще без вариантов, а если и есть, то действительно, как минимум начало прошивки затрется при подмене кода, это еще при условии что SPM/LPM (если речь о AVR) разрешены защитой.
Да, подход возможен, именно так обновляются прошивки через бутлоадер, но лок-биты и снятие прошивки тут не при чем, если защита есть, то так ее не обойти.
Да очень смахивает на "День независимости". Но опять же принятые байты складываются в зависимости от желания программера который писал программу. Принял и принял и лежат они себе на "полочке". Как стартануть с этих самых байтов вот вопрос... они же не в loader сложены собсно
_________________ идейный борец за ден. знаки всего мира
В авр насколько я помню лок биты стираются после стирания прошивки ) Так что прошить что либо без полного стирания кристалла действительно не получится
Да про lock bit я знаю, но они нас интересую второстепенно. Главное начать процесс. Тоесть принял байты программы сложил их...ГДЕ? Там где под них выделил место разработчик. Перезапустить проц, что бы потом можно было с этих принятых стартануть. А они принятые байты (программа) передает по адресно весь SRAM и EEPROM/
_________________ идейный борец за ден. знаки всего мира
Вообще то топик задумывался по не деструктивному снятия прошивки, пока на уровне гипотетической возможности и наиболее оптимальных путей реализации может быть и сторонними средствами
_________________ идейный борец за ден. знаки всего мира
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения