Как прочитать прошивку из микроконтроллера. Краткий ликбез.

Поділитися
Вставка
  • Опубліковано 22 гру 2024

КОМЕНТАРІ • 447

  • @GarryGarryson2022
    @GarryGarryson2022 Рік тому +58

    Очень классная подача. Мотоциклисты часто обладают харизмой и способностью терпеливо учить. Пожалуйста не бросайте это Ваше полезное дело!

  • @alexeiviktorovi4130
    @alexeiviktorovi4130 Рік тому +40

    Ну, вот, настал момент, которого я ждал. Как всегда, интересное, познавательное видео, кстати. Большое спасибо за Ваш труд, надеюсь, не бесплатный. Мое знакомство с каналом началось с видео про микроконтроллеры (а может и нет, не помню точно), и сразу мне эта тема запала в душу. Отдельное спасибо харизматичному автору за это. В общем, это стало моим хобби. Естественно, пришлось прикупить кое-что: паяльник (Pinecil v1), макетные платы с проводами, программатор (EasyPro EZP2023+), тестер и "прочие иные предметы". Вдоволь наигравшись со всем этим добром, я уж было решил, что на этом все и закончится, но не тут то было... Был (и есть) у меня некий, весьма популярный, дешевый китайский принтер. Pantum P2200 называется. Картрижди у него с чипами, конечно же. И, вот, надоело мне чипы эти покупать при каждой новой заправке. Решил прошить принтер на бесконечность. Сделал кирпич, естественно. Прошивал по USB и, в процессе, комп завис. Оказалось, что оживить его можно, но только прошивкой микроконтроллера. Вот тут-то мне и пригодились все те, казавшиеся уже бесполезными, вещи. Процедура эта оказалась совсем не из легких, но тем интереснее же. Микросхема оказалась в SOIC исполнении, что меня сразу сильно напугало, потому что, капец, всё мелкое и компактно упакованное на плате. Выпаял, трясущимися руками, с пинцетом это чудо инженерной мысли и выдохнул с облегчением. Если бы я только знал что мне эту процедуру придётся повторить ещё раз пять, я бы, наверное, и не начинал. Ну, выпаял, а дальше что? Как в программатор её пихать? Вспомнил, что в комплекте к нему ещё что-то в пакетике болталось. Оказалось- точно, переходник. Но, на него микросхему нужно напаивать... В общем, мелкую моторику я потренировал знатно. Но, это оказалось не самым интересным приключением. Самое интересное было найти рабочий дамп именно для моей микросхемы моей модели принтера с моей версией платы. Оказалось, что, несмотря на то, что модель китайская и популярная, дампом делиться никто не хочет. Очень долго рыскал по форумам и прочим злачным местам. В итоге, мне помог человек, который торгует прошивками для принтеров (античип). Он дал ссылку на рабочий дамп. Но, перед этим я неоднократно прошивал не тот дамп и припаивал/выпаивал эту бедную микросхему. Счастью моему не было предела, когда я смог распечатать пробную страницу на принтере, который я своими руками сломал, а затем починил. Мораль: дурная голова рукам покоя не даёт (да, да, ногам, но и рукам тоже).

    • @vladimirnaydyonov
      @vladimirnaydyonov Рік тому

      Да❗🤔
      Но ведь сегодня, спустя 4,5 млрд. лет после Большого взрыва🎉 все принтеры стоят дешевле листка бумаги формата А4, на которых печатают всякую фигню, которую спустя некоторое время отправят на свалку.

    • @vuazen1
      @vuazen1 7 місяців тому +2

      Доброе дело делается бескорыстно, иначе ему, грош цена.

    • @lifuhen9913
      @lifuhen9913 Місяць тому

      Смогли настроить принтер на бесконечность? 😊

    • @alexeiviktorovi4130
      @alexeiviktorovi4130 Місяць тому +1

      @lifuhen9913 Естественно ♾️

  • @Практик-п2м
    @Практик-п2м 10 місяців тому +1

    интересная подача инфы для зрителя, доступно коротко и понятна для формата канала.

  • @svar.master
    @svar.master Рік тому +35

    Спасибо за ещё один урок из жизни электроники, жаль вопросов меньше от этого не стало 😅.

    • @BioTech81
      @BioTech81 Рік тому +3

      А мне наоборот всё ясно. Нефиг тырить чужой труд.😂 Шутка.
      На самом деле бывают случаи когда разработчик или программист покинул наш мир и очень жаль что пропадает хорошая программка хотя копия по любому у кого то есть. А вообще лучше писать самому кто может так чтобы потом можно было и переделать/добавить или наоборот удалить некие команды.

    • @svar.master
      @svar.master Рік тому +2

      @@BioTech81 совершенно верно!

    • @Palladln
      @Palladln Рік тому +1

      @@BioTech81 Разраб покинул, а ГитХаб остался..

    • @ВладимирАксёнов-ь4и
      @ВладимирАксёнов-ь4и Рік тому

      @@BioTech81 Тырить? Там институты работают. Очень много кабинетов, специалистов... Гораздо интереснее, сходить в институт и получить образование.

    • @BioTech81
      @BioTech81 Рік тому

      @@Palladln
      Ну если программу не надо дорабатывать и гифт не зашифрован то возможно.

  • @intivi5277
    @intivi5277 Рік тому +20

    Больше всего мне понравился момент на 3:45 с именем файла слитой прошивки )

    • @MrRoman238
      @MrRoman238 Рік тому +2

      Название слитой прошивки - топ!

    • @KJIaBogaB
      @KJIaBogaB Рік тому

      я первый раз смотрел на телефоне - мелкое не успел разобрать, но примерно подумал, что он написал именно то, что я подумал :)) отмотал, увеличил - точно :))

    • @4embik1
      @4embik1 3 місяці тому

      😂

  • @СельскийКибертехник

    Мой первый программатор как раз мог работать вообще без компа. ))) На обычных выключателях, просто перебираете адреса в ручную, и записываете туда информацию какую ни будь, и еще одна кнопка прожиг.
    ))))) Классный видос мужик, я подписался, лайк тебе. )

  • @zed6891
    @zed6891 Рік тому +2

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

  • @vernnms78
    @vernnms78 Рік тому +18

    Хорошее видео для базового изучения. Лайк однозначно.

    • @shibkovumnij1977rb
      @shibkovumnij1977rb 6 місяців тому

      ну если ты настолько ноль, то да.

    • @today_not-yesterday
      @today_not-yesterday Місяць тому

      @@shibkovumnij1977rb Сходи ещё на уроки пятиклассников - там ты оторвёшься.

  • @4makin
    @4makin Рік тому +2

    афигенный у тебя стайл, друже.🕺 безтревожное проживание при СССР вспоминаю.

  • @dimvin3561
    @dimvin3561 Рік тому +3

    очень интересная информация, а подача просто превосходная) благодарю!)

  • @standycrow
    @standycrow Рік тому +89

    Столько воды про два фьюза защиты от копирования? 88-й уровень! Браво!

    • @Gnevistj
      @Gnevistj  Рік тому +46

      Ура! Я почти достиг 90-го уровня!!! =))))))))
      Да, это видео для "самых маленьких", некоторые вещи кажутся нам вполне себе очевидными, но ведь есть люди, которые в первый раз столкнулись с таким вопросом =)

    • @HappyKhant
      @HappyKhant Рік тому +22

      Я такой. Мне было очень интересно.

    • @ghjklfghk
      @ghjklfghk Рік тому +8

      Лучше уж в мелочах изучать что либо изучаемое

    • @denisgluk431
      @denisgluk431 Рік тому +6

      @@Gnevistj видишь ли, если ты это объясняешь для какого-то экскурсовода, из третьяковки, есть подозрения, что прошивка ему всё равно не нужна)))

    • @BioTech81
      @BioTech81 Рік тому +4

      790 людей оценили лайком.
      +1 мой

  • @freemen.
    @freemen. Рік тому +3

    Большое спасибо за Ваш труд.

  • @mixi3193
    @mixi3193 Рік тому +6

    Браво! Прикольный стиль объяснения 😂

  • @Rise-SunRise
    @Rise-SunRise Рік тому +26

    Понятно, что ответ для самых начинающих, но рассказано и объяснено всё хорошо! Как именно работает лок-бит на физическом уровне, кстати, не знал. Благодарю!

  • @kama05007
    @kama05007 Рік тому +12

    Сегодня будем учиться писать. Для этого вам понадобится: ручка, тетрадь, стул, стол, руки и как ни странно голова....

  • @ПолтораЗемлекопа-ф6в
    @ПолтораЗемлекопа-ф6в 5 місяців тому +1

    Подкину, так сказать, возможное направление куда копать:
    Шьём в контроллер последовательно 0xff, но только в момент прошития формируем короткий импульс понижения питания контроллера так чтобы нарушить работу встроенного повышающего преобразователя, но в тоже время не сбросить сам контроллер. В результате стирание происходит не всегда. Последним шьём слово конфигурации со снятой защитой в обычном режиме. Далее вычитываем содержимое контроллера, и повторяем весь процесс ещё с десяток раз со свежими контроллерами естественно. Путём сравнения прошивок находим верный код.
    Недостаток метода в потрошении кучи девайсов компенсируется их последующим восстановлением, при удачном исходе конечно.
    По крайней мере один раз с одной известной маркой контроллеров этот метод сработал.

  • @Test-bg3pe
    @Test-bg3pe Рік тому +1

    Здравствуйте, а как можно эту прошивку потом перевести в си код например для правок ?

  • @ІгорСорока-о6ю
    @ІгорСорока-о6ю Рік тому +1

    И можно ли с помощью программатора перезаписывать ПЗУ? И как его записывают вообще?
    И является ли "флешка" аналогом ППЗУ? И благодаря чему данные можно перезаписывать неоднократно?

  • @pavelivanov-hanin1282
    @pavelivanov-hanin1282 Рік тому +2

    Молодец мужик! Разжевал всё для школьников. Ну а я получил массу удовольствия. Правда ещё один способ не указал - таблицы, но на это надо тоже огромная масса времени, а если таблицы более, чем двухмерные, то ещё и масса удачи.

  • @НиколайБельмесов

    Благодарю за интересный обзор!

  • @photocanonn
    @photocanonn Рік тому +4

    привет тебе от ассемблериста пикиста ))) сколько я раз хотел вскрыть чип и прочитать именно таким образом - благо доступ был к машинке уз-сварки TPT-HB05 но всеравно написать свое и лучше бывало в разы быстрее.
    на старых версиях типа pic16f877 бит лок был на верхнем уровне литографии. Сейчас уже вышли версии данного кристалла 877a со спрятанным на 4-5 слоев в глубь кристалла также и 887 версия тоже далеко глубоко запрятали линию эту - там суть лазером просто выжигалась полоска от элемента и все чип был с вечно снятой защитой.

  • @ЕвгенийЧиняков-ц8я

    Хорошее видео-жизнь показывает что чаще дешевле новый купить чем воскрешать прошивку старого!

  • @trololp9724
    @trololp9724 Рік тому +6

    А ещё можно, поломать логику микроконтроллера используя ненадежное питание (voltage glitch) или играя с частотой кварцевого резонатора (clock glitch) тем самым заставив ещё совершить ошибку в коде программы или ошибку в логическом элементе схемы. Метод называется Glitching. В ряде случаев это довольно успешный способ считать прошивку защищенного контроллера. Например если контроллер работает с USB, то подавая команду на чтение описания USB устройства (DeviceDescriptor) и указывая в пакете длину возвращаемого сообщения больше максимальной которую может вернут контроллер. В логике прошивки контроллера происходит сравнение длины возвращаемого сообщения с максимальной, если в момент проверки произойдет ошибка то контроллер может вернуть данные которые записаны после DeviceDescriptor то есть часть данных хранящихся рядом. Не всегда работает но и не требует растворять чип и "подпаиваться" к кристаллу кремния.

    • @sovridder7429
      @sovridder7429 Рік тому +1

      А играться с частотой кварцевого резонатора можно вскрыв его корпус ( в неочень стерильном помещении 😂) и воздействовать на кристалл парами йода.

  • @Andreii93
    @Andreii93 Рік тому +16

    Видео было многообещающим и даже местами интересным 😁. Но интереснее было бы узнать что делать с считанным набором машинным команд чтобы перевести их в более человеческий язык, а с этим на сколько я понял как раз беда. Или есть таки способы если дело касается контролеров для которых программы для их программирования в свободном доступе?

    • @v61kz
      @v61kz Рік тому +1

      Насколько знаю, в даташытах на авр описано, как записываются команды в память. Также есть коды команд
      Сам не делал, но возможно на каком-нибудь питоне, если прям прижмёт, можно сделать декодер на ассемблер, только смысл есть ли хз🤔🤔🤔

    • @АлександрИванов-г6с3д
      @АлександрИванов-г6с3д Рік тому +3

      Доброго здравия. Для avr есть такой, Reavr называется. Дизассемблер. Но потом всё равно требуется много ручной работы. Которую как раз и можно автоматизировать с помощью питона. Ибо Reavr выдаёт следующий формат: адрес команды в памяти; сама ассемблерная команда и операнды (регистры). Если команда перехода, то там вместо метки будет стоять адрес. Удачи

    • @Palladln
      @Palladln Рік тому +3

      Большую программу запаришься дизассемблировать сидеть, а маленькую проще самому написать с нуля..
      Для починки какого-то прибора к примеру не надо ничего разбирать в коде, просто прошить дамп заново..
      Для разработки устройства проще программу по кускам из библиотек собирать по форумам..

    • @ПавелКарпов-т3ъ
      @ПавелКарпов-т3ъ Рік тому +1

      Дизассемблер IDA. Для пиков, авр и других.

    • @АлександрНазаров-ч9к
      @АлександрНазаров-ч9к Рік тому

      @@v61kz прям таки на питоне?

  • @ГригорийЛисовский-у7т

    А как же "Voltage Glitch" вполне себе способ. Есть ещё bus pirate. Или это и есть те самые "бытовые методы"?

  • @АртемРадиохимик
    @АртемРадиохимик 5 місяців тому

    Скажите пожалуйста а как свою программу защитить от копирования после прошивки ...что выставить надо в фьюзах ???

  • @Islam_urus
    @Islam_urus 5 місяців тому

    Здравствуйте. А можно сделать наоборот, залить адруиновскую прошивку в pic?

  • @veterok4556
    @veterok4556 Рік тому

    Здравствуйте. подскажите. как узнать к какому микроконтроллеру какой программатор нужен?

  • @atom-service4735
    @atom-service4735 Рік тому

    По началу думал че за нафиг, потом понял, что человек просто все компилирует на простолюдина, годный контент, красава ))

  • @evgens.8321
    @evgens.8321 10 місяців тому +1

    Интересная тема🤔 получается производители защитили от взлома и чтения прошивку ? И получается поэтому если с микрокантраллерами в бытовой технике чтото случается они плату полностью меняют ?? Но я знаю что и прошивками они занимаются . Получается не все микрокантроллеры защещины ?? В будущем наверное вобще не будет возможности прошивать микроконроллеры ..

  • @AleksandrUlyanovsk
    @AleksandrUlyanovsk Рік тому +1

    Я раньше тоже так считал пока мне на глаза не попалась книжка "Реверс-инжиниринг встраиваемых систем [2023] Усанов А.Е.". Оказывается возможностей для взлома гораздо больше. Не читал но бегло просмотрел

    • @Alexdghfgbfgbfg
      @Alexdghfgbfgbfg Рік тому +1

      Благодарю за инфо! Скачал, уже осилил вступление😂

  • @SerV4
    @SerV4 Рік тому +4

    Всегда знал, что надо стоять у истоков, а не пытаться очистить сточные 😂😂

  • @smaidssmaidigais6777
    @smaidssmaidigais6777 8 місяців тому

    Konechno polezno i dohodchivo! Spasibo za horoshij jumor!

  • @dmitryefimkin6550
    @dmitryefimkin6550 4 місяці тому

    Спасибо за труд. Очень полезный ролик.

  • @ISO_XXX
    @ISO_XXX 2 місяці тому

    Здравствуйте. Возможно ли извлечь прошивку из микроконтроллера с закороченными контактами по входному питанию 5 Вольт? stc 15w4k32s4 30i lqfp44

  • @АндрейБрыжак
    @АндрейБрыжак 8 місяців тому

    Я так понимаю на WIN11 нельзя установить дрова для AVR программ. Есть ли варианты совместимости? Или берем старый добрый WIN7?

  • @ФедорукМихаил
    @ФедорукМихаил 10 місяців тому

    Расскажите про шести польскую систему выпрямления более подробно особенно тпе 630 и про угол открывания тиристоров вы обещали про наши старые аналоговые тиристорники пожалуйста буду с нетерпением ждать ваш урок

  • @Victor16rus
    @Victor16rus 4 місяці тому +3

    Манера подачи навевает на мысль, что автор долго проработал воспитателем в детском садике...

  • @melowcwiin4779
    @melowcwiin4779 25 днів тому

    Так как обойти защиту?, выпаивать и вскрывать проц???,

  • @АндрейМолдованцев

    Добра всем!!! Поведайте, Atmega 16, в ней установлены LockBit-ы. Их точно нельзя вылечить не портя основной дамп? Ведь есть Fuse Doctor же....

  • @boris9189
    @boris9189 Рік тому

    такой вопросик, можно ли на закрытом от чтения прошивки микроконтроллере сменить маленькую часть прошивки на свою, которая прочитает оставшуюся прошивку и выдаст её на одной из ног? или это зависит от микроконтроллера? (если да, и если иметь два контроллера с одинаковой прошивкой, то можно записать в два разных места, прочитать обе прошивки и восстановить недостающие блоки)

  • @ІгорСорока-о6ю
    @ІгорСорока-о6ю Рік тому

    А если это микроконтроллер от советского калькулятора, то только изучая его под микроскопом можно понять принцип его работы?
    И как электрический разряд портит память микроконтроллера и мог ли я таким образом его повредить от разряда электрозажигалки на батарейках (в детстве экспериментировал так)?

  • @koteotake
    @koteotake Рік тому +1

    Интересно. Футболка навеяла некие мысли. Атакующим может быть совсем не нужен код программы. В машинном коде, в виде байт, ими будут найдены ключи шифрования, например. А сама программа будет потом переписана под другой микроконтроллер.

  • @gennady3558
    @gennady3558 Рік тому

    Классно и интересно , но всё таки очень хотелось бы узнать ещё какой нибудь способ взлома !!! Конечно ЛАЙК !

  • @Papik2003
    @Papik2003 4 місяці тому

    Классная подача. Я получил все что не знал собрал все в кучу и выбросил в мусор. А читаются большинство а те что не читаются уходят в мусор вместе с изделием. По простой причине не надо покупать то что нельзя отремонтировать

    • @СергейКудаев-в6ц
      @СергейКудаев-в6ц 18 днів тому

      Примите мои поздравления. Вся серийная бытовая электроника семимильными шагами движется производителеми (осознанно!) именно в этом направлении - чтобы нельзя было отремонтировать их девайс вне пределов их фирменных сервисных центров. А там ремонт производится методом замены на уровне блоков, опять-таки, поставляемых производителями в готовом виде. Так что, следуя вашей логике, вскоре нельзя будет покупать никакие электронный девайсы.

  • @madmax2872
    @madmax2872 Рік тому

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

  • @IBmusic_vector
    @IBmusic_vector Рік тому

    Привет, как разобрать игры для айфона, чтоб отключить рекламы?))

    • @Gnevistj
      @Gnevistj  Рік тому

      С айфонами дела не имел, ибо я нищеброд, и у меня гнусмаС на андроиде =))) Но вдруг мой андроидный способ поможет и вам? Ловите лайфхак - после запуска игры отключаете вайфай и мобильные данные, проще говоря - включаете режим полета. Игра тыкается на сервант, связи нет - рекламы нет =)))))
      Работает конечно не со всеми (некоторые без рекламы не запускаются вовсе), но большая часть становится играбельными =)))))

  • @ВячеславЛегеньков

    После фразы что микроконтроллер можно прочитать с помощью прищепки сразу понял уровень знаний этого мастера.))

    • @СергейКудаев-в6ц
      @СергейКудаев-в6ц 18 днів тому

      А до конца посмотреть, ну, хотя бы до следующей фразы автора - религия не позволила?

  • @ИгорьКонев-д8б
    @ИгорьКонев-д8б Рік тому +3

    Вскрыть корпус, подключиться к кристаллу, прочесть инфу -- совершенно рутинная операция на заводах по производству микросхем. Потому что им по работе этим надо заниматься.
    Для постороннего клиента это стоит около 10k$.
    Не так уж и много.
    Если это не какая-то секретная микруха, в которой есть архитектурная защита, сильно усложняющая такой взлом. Но это про военных.
    А с простыми МК, практически "дома на кухне", можно поступить так:
    Нужен немного усовершенствованный программатор, который может в нужный момент менять напряжение питания "пациента" прямо в процессе чтения.
    Нужна стиралка -- эквивалент ранешних УФ ламп -- но светящая мягким рентгеном, проходящим через корпус.
    Но не более 20 кэВ. Более жёсткий рентген повреждает кристалл.
    Цикл:
    Немножко стираем;
    Начинам чтение при самом высоком (допустимом) напряжении питания;
    В какой-то момент понижаем напряжение до минимального и читаем остальную память;
    Если получилась фигня, повторяем цикл.
    "Немножко стираем" -- немножко уменьшает заряды в ячейках памяти.
    Во всех, в том числе и в бите защиты.
    И в какой-то раз автомат чтения увидит, что бит защиты кода стёрт.
    И позволит инфе утечь во внешний мир.
    При высоком питании ячейкам памяти требуется больший заряд, чтоб прочесть "записано".
    А при низком питании требуется меньший заряд.
    Поэтому, когда бит защиты при высоком дотрётся до "можно читать", в остальных ячейках при низком питании зарядов хватит, чтоб прочесть правильную инфу.

  • @Djon475
    @Djon475 7 місяців тому

    Прочесть прошивку в любом случае не получится? можно только копировать ее. А так, чтобы достать сам код, который можно посмотреть?

  • @ИванШтифт
    @ИванШтифт Рік тому +1

    Спасибо. Как всегда, доступно, объёмно и очень оригинально.

  • @maxim6095
    @maxim6095 Рік тому

    Парни,стоит в блоке комфорта m38747mct. По поиску находится как Mitsubishi Electric Semiconductor. Даташит на процессор есть.Чем его можно прочитать ? Какой софт и каким программатором ?

  • @ICC_ECHR_Request_BY_VS
    @ICC_ECHR_Request_BY_VS Рік тому

    не подскажете по virtio? 🧐

  • @tree-service
    @tree-service Рік тому

    Из esp8266 можно прочитать?

  • @asdffewfew
    @asdffewfew Рік тому +1

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

  • @Арахнофоб-ъ3т
    @Арахнофоб-ъ3т Рік тому

    а если прочитал, с этим буфером можно чтото сделать? ато эти циферки и буковки не похожи на код который можно править :)

  • @Евгенийвырфквр

    Раскажите, пожалуйста про ПИД регулирование в GCBasic

  • @tehmontag
    @tehmontag Рік тому

    Красавчик!
    И по делу, и с юмором!

  • @МаксимПахвицевич

    Расскажите какие есть условные или косвенные признаки того что на неисправной плате вышел из строя именно тот или иной микроконтроллер а не какой-то транзистор или диод. А может есть и безусловные видимые признаки неисправности микроконтроллера. 💪🏼

    • @ИльяТитов-д2х
      @ИльяТитов-д2х Рік тому

      Именно по этому при необходимости микропрограмма добывается другими методами (убийство, шантаж, разбой, и тд...)

  • @АнатолийСыров-г2ц

    Можно залить программу длиной 1 байт?

  • @CAGGICAR007
    @CAGGICAR007 Рік тому +8

    Ролику зачет! 👍Любопытно было бы узнать как происходит кодирование карт тв доступа, триколор, телекарта...

    • @maksleonov1092
      @maksleonov1092 Рік тому

      Триколор, как я помню, dre cript, первые приемники не имели карт, а обновление ключей происходило по воздуху, обычно по умолчанию в 3 часа ночи, как у всех других. Привязка шла к железу. Даже сейчас есть, пару приемников с картами, телекарта, рикор ТВ. Но смысл в том, разблокировка опять происходит по звонку, оплате и диктованию серийного номера приемника. Это тоже самое, если друг дал логин и пароль от кабельного инета, сейчас идет привязка к MAC, чтобы инет заработал, нужно еще просить MAC, чтобы вписать его в настройках. ПО спутниковых приемников от оператора, даже не имеет эмулятора BISS ключей, хотя в глобальной версии прошивки, он имеется. Теоретически, если собрать свою прошивку, если приемник работает на ОС линукс, написать эмулятор железа, для удобства функцию переборщик серийников, если серийник невозможно достать у соседа, с помощью C++ используя кроссплатформенный gcc компилятор, набрав toolchain именно под свой процессор. Можно скомпилировать прошивку, которая будет сама, к примеру за ночь, находить рабочий серийник. Карты достать не сложно, у многих они валяются, так как многие побросали спутниковое ТВ. Другое дело банковские карты, но и здесь достаточно, обычного портативного бесконтактного терминала и пройтись в битком набитом автобусе.

    • @vladimirnaydyonov
      @vladimirnaydyonov Рік тому

      Неужели в 7531-ом году сохранились питекантропы, которым до сих пор нужен телевизор❓❗🎃

  • @СергейКудаев-в6ц
    @СергейКудаев-в6ц 18 днів тому

    Шикарно изложение. Тема раскрыта, лайк. Но закралось таки сомнение. Поручить (высококлассному) программисту написать другую программу по внешним особенностям поведения и известному предназначению девайса - это в тысячу раз дешевле аппаратно-программного реверс-инжиниринга - да, конечно. Спору нет. Но это совсем-совсем недешево для, скажем - кошелька обычного радиолюбителя или практикующего мастера по ремонту. Ну не станет мэтр программирования тратить свое время на какую-то не серийную работу не за дорого. Такой хардкор, скорее всего, будет стоить дороже приобретения нового девайса, аналогичному почившему в бозе. Я так думаю. А что скажет маршал Жюков? (И.В. Сталин).

  • @denchurikov210
    @denchurikov210 8 місяців тому

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

  • @Jromashin
    @Jromashin 2 місяці тому

    Очень годно, лайк, подписка

  • @svd911
    @svd911 Рік тому

    "Прищепка, для пополнения китайских кошельков" - 😂👍выпуск- супер.

  • @danil907
    @danil907 Рік тому

    Мой опыт с прошивкой (не считая телефонов) ограничивается изготовлением кабеля (из штекера com порта, пары резисторов и 4х крокодильчиков) для чтения и записи прошивок чипов картриджей мфу ксерокс.

    • @evgens.8321
      @evgens.8321 10 місяців тому

      У меня вот нет опыта и знаний в этом . Но я вот думал 🤔 главное как-то подключится к микрокантроллеру а прагромматор будет сам компьютер ..🤔 я так себе представляю

  • @micali4dmitryi487
    @micali4dmitryi487 Рік тому

    Отсюда вопрос? Если Вы попытались считать защищённую программу. У Вас вышли 00000 или подобное,- то микроконтроллер останется рабочим (со своей прошивкой)? Или он "потеряет" прошивку,- и будет годен только для записи новой прошивки???

  • @PavelYakovleff
    @PavelYakovleff Рік тому +5

    Помню, для древнего языка Clipper была программная приблуда, позволявшая получить "дизассемблированную" программу, то есть почти исходную программу на языке Clipper с той только разницей, что имена переменных были не те что использовал программист, а условные. Но можно было разобраться, изменить логику и снова скомпилировать. Возможно есть что-то подобное для микроконтроллеров, чтобы переводить из машинных кодов на ассемблер? А ролику и спикеру зачет и подписка.

    • @Gnevistj
      @Gnevistj  Рік тому +3

      Да, дизассемблирование возможно, и программ для него пруд пруди, начиная от официальной среды разработки. Проблема в невозможности возврата к языку высокого уровня, а большие программы мало кто, точнее практически никто не пишет на асме =))))) И уж разобраться в этой на первый взгляд бессмысленной куче пересылок и перекладок из одного регистра в другой - мое почтение, трэшовая работа, проводил такое =))))))

    • @Stedmiel
      @Stedmiel Рік тому +1

      @@Gnevistj ну, так то ghidra существует... да и hexrays для арма справится. возможно этот выхлоп будет даже читабельнее оригинального кода на с++ (если там был он, а не сишка).

    • @v61kz
      @v61kz Рік тому

      @@Stedmiel а всякие защиты по наверное так и обходят? Меняют какой-нибудь адрес перехода функции и всё, нету модуля защиты🧐

    • @Stedmiel
      @Stedmiel Рік тому +1

      ​@@v61kz настолько простые защиты встречаются разве что в нубских крякмисах или в винраре каком.
      а так да, трассировать и искать, чо где к чему относится и зачем в эту память лезет. в эмбеде еще попроще, там особо лютые варианты со всякими виртуалками (кхе-кхе, denuvo/vmprotect) не в моде еще. хотя вон, у cypress'овских cortex m0 уже гипервизор есть и используется. правда не столько для защиты, сколько для скрытия реализации флеш-контроллера- он там полусофтовый.

    • @sereogabattleumca3419
      @sereogabattleumca3419 Рік тому

      @@Gnevistj можно как то узнать язык на котором писалась программа из прошивки микроконтоллера?) в частности у меня есть прошивка от акпп , эбу бош, очень нужно ее разобрать, инфы нигде нет( удивительно но было маленькое тюнинг ателье в США которые под них прошивки писали, но они их уже не продают(

  • @AlexLipkovich
    @AlexLipkovich Рік тому +3

    у современных контроллеров не один бит защиты а много, на каждый участок памяти свой бит,и ячейки этих битов спрятаны внутренним слоем, под основным кристалом

  • @ЕвгенийНаточиев

    Здравствуйте. Как можно с Вами связаться?

  • @ОлегНиколаевич-ц1р

    То есть если скачать прошивку с контроллера и редактировать ее не получится??

  • @ВолодимирЮрчак-л4й

    Классный контент! Давай больше!!!

  • @AndrewShevchuk
    @AndrewShevchuk Рік тому +3

    Нужно было упомянуть о ChipWhisperer и как он работает.

  • @michaelwinner2016
    @michaelwinner2016 Рік тому

    А можно заменить микросхему памяти одного производителя микросхемой с таким же объемом и распиновкой другого производителя?

    • @a.1901
      @a.1901 3 дні тому

      В большинстве своём можно, если все совпадает.

  • @retankister2775
    @retankister2775 Рік тому

    добрый день, а что значит слово - "гневисть"?

    • @Gnevistj
      @Gnevistj  Рік тому +1

      День добрый! Это отсылка к роману Станислава Лема - "Эдем" =)

  • @br0600
    @br0600 Рік тому +3

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

    • @Gnevistj
      @Gnevistj  Рік тому +1

      Кстати, идея супер! Идея на миллион, не шучу! Беритесь за реализацию =)))))))))
      Хотя в целом, я такие эксперименты не одобряю, но об этом будет отдельный выпуск =)

    • @СергейЗ-ю4я
      @СергейЗ-ю4я Рік тому +1

      Из машинных кодов в С или подобных уже давно есть и много. А вот в HDL, VHDL или AHDL нет и не будет.

    • @Gnevistj
      @Gnevistj  Рік тому +1

      @@СергейЗ-ю4я , да, есть переводчики обратно в си, но конечный перевод подчас настолько примитивен и "тяжел" для восприятия, что проще читать асм =)))
      Но это всего лишь мое имхо, как известно мнение редакции не всегда соответствует мнению читателей =))))
      ПЛИС же вообще несколько другой мир, там, на мой взгляд, без дохренаканального анализатора логики нечего ловить =))))))) Хотя дела имел мало с ними, могу ошибаться =)

    • @СергейЗ-ю4я
      @СергейЗ-ю4я Рік тому +1

      @@Gnevistj В реверсе программ есть нюанс. Если изначально прога была написана, например, на С и декомпилируют ее в С, то результат получается очень хороший, если же декомпилируют на язык, отличный от того, на котором изначально написали прогу, то результат может быть очень плохой.
      Про ПЛИСЫ. Написал программу. Скомпилировал. Поменял одну цифру в данных. Снова скомпилировал. Результат - разница в 81 байт!!!

    • @v61kz
      @v61kz Рік тому +2

      @@СергейЗ-ю4я там же уже во время компиляции проходит несколько переводов между внутренними форматами?🤔

  • @MrValeriy81
    @MrValeriy81 8 місяців тому

    Супер, до конца ролика думал ждал дешевый метод обойти фьюзы, но увы. Хотя знаю что никак, но вдруг, может быть, как нибудь.....

  • @mirek0150
    @mirek0150 Рік тому

    Хы хы, вся правда о пиратстве) надо своему начальнику на работе показать😂

  • @syrengoogle
    @syrengoogle Рік тому

    сразу вопрос!! а нельзя ли вообще "заварить" вентиль так, чтобы контроллер нельзя было не считать не перезаписать. Под "не считать" имеется ввиду вообще ни как. даже в лаборатории. подустим ты делаешь сверхзащищенный продукт и контроллер идет как одноразовый без возможности апгрейда. Как заварить вентиль?? и возможно ли такое??

    • @АвтовахтёрАвтоматическоеоткрыв
      @АвтовахтёрАвтоматическоеоткрыв Рік тому

      Для таких случаев существует серия микроконтроллеров PIC с индексом "C" - одноразово программируемые контроллеры. Например 12С508 или 16C505 и прочие.

    • @syrengoogle
      @syrengoogle Рік тому

      @@АвтовахтёрАвтоматическоеоткрыв это сколько их придется сжечь пока будет готов прототип)) и стоят они дорого! одна ошибка и на свалку сразу(( ну тем не менее спасибо

    • @Московский_Колхозник
      @Московский_Колхозник Рік тому

      А какой в этом смысл? Прочитать все равно можно будет, добравшись до линий, по которым процессор общается с памятью. После чего приобретаются новые контроллеры и в них записывается спертая и модернизированная прошивка.

    • @syrengoogle
      @syrengoogle Рік тому

      @@Московский_Колхозник ну физически это сложно сделать же. а если тем более кристалл многослойный. во вторых инструкции с памяти не зациклены же на "от первой по последней" выполняться? а следовательно помимо чтения линии придется перебирать все возможные комбинации сигналов и отправлять их. и что если сделать один из таких сигналов как стереть память?? фантазии конечно! но на сколько реально??

  • @Loving_to_give_light
    @Loving_to_give_light Рік тому

    здравствуйте, я, к сожалению, мало сведущ в делах сиих высокогорних, а посему хочу к вам обратиться за помощью. Появилась нужда в программировании ПР 114 Овен, для чего требуется использовать специальный комплект для программирования ПР-КП20, соответственно, для подключения к компьютеру. Можно ли применить для этой цели преобразователь (программатор) UART в USB, или без оригинального никак?
    С уважением, Владимир.

    • @Gnevistj
      @Gnevistj  Рік тому

      Здравствуйте! К сожалению не знаком с этим умным реле, хотя согласно документации, его "хвостик" (тот самый ПР-КП20) похож на USB-COM адаптер. Да вот единственное, что вариантов реализации пруд-пруди, и не все они совместимы меж собой, и необязательно, что на стороне УАПП - 5в ТТЛ, там может быть что угодно, от 3,3В до +/-15В. Остальное все мелочи.
      Я бы не рекомендовал играться, лучше приобрести рекомендуемый производителем "хвостик" =)

    • @Loving_to_give_light
      @Loving_to_give_light Рік тому

      @@Gnevistj да, когда я пытался разобраться в этом, то обратил внимание на то, что уровни U другие, на стандартных 3,3 и 5 В, а на овеновском 5 и 12 В. Ну, хорошо, благодарю за ответ, буду тогда кумекать, где заказать родненький. Для одного раза отдавать больше 4 к₽ не очень хотелось бы.

  • @quest524
    @quest524 Рік тому +1

    коротко ясно понятно ,большое спасибо

  • @Сильвер-щ9ч
    @Сильвер-щ9ч Рік тому

    Как можно выпаять на 250ти градусах? Там же текстолит как радиатор часть тепла отводит... 🙄

    • @trololp9724
      @trololp9724 Рік тому +1

      Вроде можно используя легкоплавкие сплав разбавить заводской припой, но ИМХО про повреждение МК при температуре пайки больше 250 градусов полный бред.

    • @Сильвер-щ9ч
      @Сильвер-щ9ч Рік тому

      @@trololp9724 нy в принципе да, снять родной припой оплёткой можно, а потом сплавом Розе... Чёт я не подумал, спасибо!👍

  • @redured6762
    @redured6762 Рік тому

    фьюзы и конфигурационное слово (bit) расскажите подробней пожалуйста

  • @Rashadrus
    @Rashadrus Рік тому +7

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

  • @КоробейниковАлескей

    Есть ещё один способ: - "В жидком азоте, - считываются импульсы", но это жесть и ещё какая. Считывается куеву тучу раз, потом сигнал сводится и из аналога получается цифра, но нужен микроконтроллер с удалёной подложкой!😇 работает 100% если азот халявный то за неделю-две всё получится. (к слову корпус и подложка растворяется кислотами.)

  • @АлександрКрептолизаторщик

    Выпуск интересный несомненно Лайк 👍 Но в вопросе считывания заЩишенной прошивки, в корне не соглашусь, есть группа программаторов которые отлично вычитывают из защищенных камней их прошивку : Xprog , Orange, Xhorse VVDI Prog и другие...

  • @edwardmax.3249
    @edwardmax.3249 Рік тому

    А как на счёт сжигаемых дорожек для защиты от копирование, имеют место быть!?

    • @Gnevistj
      @Gnevistj  Рік тому +1

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

  • @yevgenylebedev9927
    @yevgenylebedev9927 Рік тому

    ...а как же дизассемблер? У меня был положительный опыт замены знакогенератора в прошивке при вынужденной замене 7-сегментного дисплея в устройстве на PIC без исходника... Я не знаю Ассемблер и действовал интуитивно. Все получилось т.к. в полученном ассемблерном коде регистры знакогенератора бросаются в глаза и их ни с чем не спутаешь, но если бы надо было поменять логику команд - я бы вряд ли справился. Надо бы эту тему осветить... если есть опыт и желание...

    • @Gnevistj
      @Gnevistj  Рік тому

      Я не говорил что дизассемблировать нельзя; я сказал что нельзя вернуть к языку высокого уровня =)
      А разбирать программу на чистом асме в сотню другую килобайт (100+ тысяч команд, грубо говоря) то еще удовольствие =))))))

    • @yevgenylebedev9927
      @yevgenylebedev9927 Рік тому

      @@Gnevistj Иногда, когда припрет, ассемблер, все же, лучше чем ничего (машинный код)... ;)

    • @zzzCyberzzz
      @zzzCyberzzz Рік тому

      @@Gnevistj декомпиляторы же есть

  • @ernisesama1636
    @ernisesama1636 Рік тому +2

    СПАСИБО у Вас есть уникальная способность обяснять сложные вещи так чоб и медвежонок понял. Но давате следуещее видео про два путя как из этой битной каши читаемый код получить чтоб понять как там все устроено

    • @zorrozorro2839
      @zorrozorro2839 Рік тому +1

      IDA дизассемблер в помощь

    • @ernisesama1636
      @ernisesama1636 Рік тому

      @@zorrozorro2839 А кино про это чтоб и медвежонок понял?

    • @ВладимирШевчук-ъ2г
      @ВладимирШевчук-ъ2г Рік тому

      ​@@ernisesama1636Не каждый программист разбирается в ассемблере. А тут речь идёт о дизассемблере!

  • @АртурЯнтурин-э9п

    Отличное видео! Как с Вами связаться?

  • @werew03
    @werew03 Рік тому

    заждался чесслово! Спасибо ! 👍

  • @vadimpotapov734
    @vadimpotapov734 Рік тому

    Всё чётко объяснено !

  • @Pcvetov
    @Pcvetov Рік тому

    Благодарю за урок

  • @АлексейФролов-щ2в
    @АлексейФролов-щ2в 11 місяців тому

    Помимо прочего, есть один вариант: никак. Например, в AVR есть так называемый бит защиты. Если его установить при прошивке - считать уже ничего не получится. Постоянно пользовался этой функцией, когда делал приборы на продажу.
    P.S. Ролик ещё не посмотрел.

  • @Sake-h3t
    @Sake-h3t 10 місяців тому

    да всеми согласен специалньо включил звонок чтобы не пропустить новый видео, вот бы так в универе объясняли клаассссссссс!!!!!!!

  • @evgens.8321
    @evgens.8321 10 місяців тому

    Мужик ты супер 👍👍👍👍👍👍

  • @antisoveticus
    @antisoveticus Рік тому +2

    12:48 И всё таки интересно было бы увидеть этот список.

    • @Gnevistj
      @Gnevistj  Рік тому

      Может и соберусь как-нибудь =))))

  • @ВестникПазнева-ъ2к

    Спасибо завидео, уж заждался чесслово!

  • @inventossencillos
    @inventossencillos Рік тому +1

    Спасибо!Интересный маатериал.Понятно,что с компилированного hex. файла ничего не получится выяснить.Проще новую программу написать (или скачать готовую).Ещё ходят слухи,что ИИ gpt chat пишет всё что попросиш.Я попросил программу на с+ для регулировки частоты трёхфазного двигателя -он мне чтото бессвязное написал (наверное обматерил,на своем машинном языке).😀

    • @deniskhakimov
      @deniskhakimov Рік тому +1

      Скорее всего ты просто задал "неполноценный вопрос", т.е. не указал на детали реализации (модель контроллера, двигателя, задействованные пины и т.п. ересь) 🤔
      Только что потестил аналогичный запрос на гугловском _Bard_ и он со второй попытки выдал мне неплохой каркас для приложения. После первой попытки (я бы тоже назвал её "бессвязной") попросил его написать аналогичную программу, но с учётом добавленных деталей и получилось весьма неплохо.
      IMHO, если умеешь читать чужой код и сходу понимать логику, то даже текущие версии чат-ботов могут быть чрезвычайно полезны 👍
      p.s.: прямо сейчас несколько крупных игроков на рынке разработки ПО -вливают тонны бабла- тренируют большие языковые модели, рассчитанные только на кодинг. Вполне может быть, что уже через пару лет, если не раньше, они релизнут что-то действительно крутое.

    • @inventossencillos
      @inventossencillos Рік тому +1

      @@deniskhakimov Да,вы правы,я действительно не дал ему много параметров и скорее всего получил такой ответ.Но программиррвать уметь необходимо.Во первых ,чтобы понимать процесс и навеерное ,более важно-чтобы отдалить процесс умственной деградации (мозг должен упражняться).Иначе он заскучает🙂

  • @usertyfoon
    @usertyfoon Рік тому

    Теперь я знаю!!! Спасибочки! Лайкос!!