Ну, вот, настал момент, которого я ждал. Как всегда, интересное, познавательное видео, кстати. Большое спасибо за Ваш труд, надеюсь, не бесплатный. Мое знакомство с каналом началось с видео про микроконтроллеры (а может и нет, не помню точно), и сразу мне эта тема запала в душу. Отдельное спасибо харизматичному автору за это. В общем, это стало моим хобби. Естественно, пришлось прикупить кое-что: паяльник (Pinecil v1), макетные платы с проводами, программатор (EasyPro EZP2023+), тестер и "прочие иные предметы". Вдоволь наигравшись со всем этим добром, я уж было решил, что на этом все и закончится, но не тут то было... Был (и есть) у меня некий, весьма популярный, дешевый китайский принтер. Pantum P2200 называется. Картрижди у него с чипами, конечно же. И, вот, надоело мне чипы эти покупать при каждой новой заправке. Решил прошить принтер на бесконечность. Сделал кирпич, естественно. Прошивал по USB и, в процессе, комп завис. Оказалось, что оживить его можно, но только прошивкой микроконтроллера. Вот тут-то мне и пригодились все те, казавшиеся уже бесполезными, вещи. Процедура эта оказалась совсем не из легких, но тем интереснее же. Микросхема оказалась в SOIC исполнении, что меня сразу сильно напугало, потому что, капец, всё мелкое и компактно упакованное на плате. Выпаял, трясущимися руками, с пинцетом это чудо инженерной мысли и выдохнул с облегчением. Если бы я только знал что мне эту процедуру придётся повторить ещё раз пять, я бы, наверное, и не начинал. Ну, выпаял, а дальше что? Как в программатор её пихать? Вспомнил, что в комплекте к нему ещё что-то в пакетике болталось. Оказалось- точно, переходник. Но, на него микросхему нужно напаивать... В общем, мелкую моторику я потренировал знатно. Но, это оказалось не самым интересным приключением. Самое интересное было найти рабочий дамп именно для моей микросхемы моей модели принтера с моей версией платы. Оказалось, что, несмотря на то, что модель китайская и популярная, дампом делиться никто не хочет. Очень долго рыскал по форумам и прочим злачным местам. В итоге, мне помог человек, который торгует прошивками для принтеров (античип). Он дал ссылку на рабочий дамп. Но, перед этим я неоднократно прошивал не тот дамп и припаивал/выпаивал эту бедную микросхему. Счастью моему не было предела, когда я смог распечатать пробную страницу на принтере, который я своими руками сломал, а затем починил. Мораль: дурная голова рукам покоя не даёт (да, да, ногам, но и рукам тоже).
Да❗🤔 Но ведь сегодня, спустя 4,5 млрд. лет после Большого взрыва🎉 все принтеры стоят дешевле листка бумаги формата А4, на которых печатают всякую фигню, которую спустя некоторое время отправят на свалку.
А мне наоборот всё ясно. Нефиг тырить чужой труд.😂 Шутка. На самом деле бывают случаи когда разработчик или программист покинул наш мир и очень жаль что пропадает хорошая программка хотя копия по любому у кого то есть. А вообще лучше писать самому кто может так чтобы потом можно было и переделать/добавить или наоборот удалить некие команды.
я первый раз смотрел на телефоне - мелкое не успел разобрать, но примерно подумал, что он написал именно то, что я подумал :)) отмотал, увеличил - точно :))
Молодец мужик! Разжевал всё для школьников. Ну а я получил массу удовольствия. Правда ещё один способ не указал - таблицы, но на это надо тоже огромная масса времени, а если таблицы более, чем двухмерные, то ещё и масса удачи.
Триколор, как я помню, dre cript, первые приемники не имели карт, а обновление ключей происходило по воздуху, обычно по умолчанию в 3 часа ночи, как у всех других. Привязка шла к железу. Даже сейчас есть, пару приемников с картами, телекарта, рикор ТВ. Но смысл в том, разблокировка опять происходит по звонку, оплате и диктованию серийного номера приемника. Это тоже самое, если друг дал логин и пароль от кабельного инета, сейчас идет привязка к MAC, чтобы инет заработал, нужно еще просить MAC, чтобы вписать его в настройках. ПО спутниковых приемников от оператора, даже не имеет эмулятора BISS ключей, хотя в глобальной версии прошивки, он имеется. Теоретически, если собрать свою прошивку, если приемник работает на ОС линукс, написать эмулятор железа, для удобства функцию переборщик серийников, если серийник невозможно достать у соседа, с помощью C++ используя кроссплатформенный gcc компилятор, набрав toolchain именно под свой процессор. Можно скомпилировать прошивку, которая будет сама, к примеру за ночь, находить рабочий серийник. Карты достать не сложно, у многих они валяются, так как многие побросали спутниковое ТВ. Другое дело банковские карты, но и здесь достаточно, обычного портативного бесконтактного терминала и пройтись в битком набитом автобусе.
Мой первый программатор как раз мог работать вообще без компа. ))) На обычных выключателях, просто перебираете адреса в ручную, и записываете туда информацию какую ни будь, и еще одна кнопка прожиг. ))))) Классный видос мужик, я подписался, лайк тебе. )
Я раньше тоже так считал пока мне на глаза не попалась книжка "Реверс-инжиниринг встраиваемых систем [2023] Усанов А.Е.". Оказывается возможностей для взлома гораздо больше. Не читал но бегло просмотрел
Ура! Я почти достиг 90-го уровня!!! =)))))))) Да, это видео для "самых маленьких", некоторые вещи кажутся нам вполне себе очевидными, но ведь есть люди, которые в первый раз столкнулись с таким вопросом =)
И можно ли с помощью программатора перезаписывать ПЗУ? И как его записывают вообще? И является ли "флешка" аналогом ППЗУ? И благодаря чему данные можно перезаписывать неоднократно?
здравствуйте, я, к сожалению, мало сведущ в делах сиих высокогорних, а посему хочу к вам обратиться за помощью. Появилась нужда в программировании ПР 114 Овен, для чего требуется использовать специальный комплект для программирования ПР-КП20, соответственно, для подключения к компьютеру. Можно ли применить для этой цели преобразователь (программатор) UART в USB, или без оригинального никак? С уважением, Владимир.
Здравствуйте! К сожалению не знаком с этим умным реле, хотя согласно документации, его "хвостик" (тот самый ПР-КП20) похож на USB-COM адаптер. Да вот единственное, что вариантов реализации пруд-пруди, и не все они совместимы меж собой, и необязательно, что на стороне УАПП - 5в ТТЛ, там может быть что угодно, от 3,3В до +/-15В. Остальное все мелочи. Я бы не рекомендовал играться, лучше приобрести рекомендуемый производителем "хвостик" =)
@@Gnevistj да, когда я пытался разобраться в этом, то обратил внимание на то, что уровни U другие, на стандартных 3,3 и 5 В, а на овеновском 5 и 12 В. Ну, хорошо, благодарю за ответ, буду тогда кумекать, где заказать родненький. Для одного раза отдавать больше 4 к₽ не очень хотелось бы.
Видео было многообещающим и даже местами интересным 😁. Но интереснее было бы узнать что делать с считанным набором машинным команд чтобы перевести их в более человеческий язык, а с этим на сколько я понял как раз беда. Или есть таки способы если дело касается контролеров для которых программы для их программирования в свободном доступе?
Насколько знаю, в даташытах на авр описано, как записываются команды в память. Также есть коды команд Сам не делал, но возможно на каком-нибудь питоне, если прям прижмёт, можно сделать декодер на ассемблер, только смысл есть ли хз🤔🤔🤔
Доброго здравия. Для avr есть такой, Reavr называется. Дизассемблер. Но потом всё равно требуется много ручной работы. Которую как раз и можно автоматизировать с помощью питона. Ибо Reavr выдаёт следующий формат: адрес команды в памяти; сама ассемблерная команда и операнды (регистры). Если команда перехода, то там вместо метки будет стоять адрес. Удачи
Большую программу запаришься дизассемблировать сидеть, а маленькую проще самому написать с нуля.. Для починки какого-то прибора к примеру не надо ничего разбирать в коде, просто прошить дамп заново.. Для разработки устройства проще программу по кускам из библиотек собирать по форумам..
Понятно, что ответ для самых начинающих, но рассказано и объяснено всё хорошо! Как именно работает лок-бит на физическом уровне, кстати, не знал. Благодарю!
такой вопросик, можно ли на закрытом от чтения прошивки микроконтроллере сменить маленькую часть прошивки на свою, которая прочитает оставшуюся прошивку и выдаст её на одной из ног? или это зависит от микроконтроллера? (если да, и если иметь два контроллера с одинаковой прошивкой, то можно записать в два разных места, прочитать обе прошивки и восстановить недостающие блоки)
привет тебе от ассемблериста пикиста ))) сколько я раз хотел вскрыть чип и прочитать именно таким образом - благо доступ был к машинке уз-сварки TPT-HB05 но всеравно написать свое и лучше бывало в разы быстрее. на старых версиях типа pic16f877 бит лок был на верхнем уровне литографии. Сейчас уже вышли версии данного кристалла 877a со спрятанным на 4-5 слоев в глубь кристалла также и 887 версия тоже далеко глубоко запрятали линию эту - там суть лазером просто выжигалась полоска от элемента и все чип был с вечно снятой защитой.
Парни,стоит в блоке комфорта m38747mct. По поиску находится как Mitsubishi Electric Semiconductor. Даташит на процессор есть.Чем его можно прочитать ? Какой софт и каким программатором ?
Вообще-то во многих микроконтроллерах есть недокументированные команды, используемые для отладки, они позволяют "поиграть" с битами флагов, отвечающими за защиту от считывания, банально сдвигая указатель при записи данных на контроллер на необходимый адрес.
Выпуск интересный несомненно Лайк 👍 Но в вопросе считывания заЩишенной прошивки, в корне не соглашусь, есть группа программаторов которые отлично вычитывают из защищенных камней их прошивку : Xprog , Orange, Xhorse VVDI Prog и другие...
А ещё можно, поломать логику микроконтроллера используя ненадежное питание (voltage glitch) или играя с частотой кварцевого резонатора (clock glitch) тем самым заставив ещё совершить ошибку в коде программы или ошибку в логическом элементе схемы. Метод называется Glitching. В ряде случаев это довольно успешный способ считать прошивку защищенного контроллера. Например если контроллер работает с USB, то подавая команду на чтение описания USB устройства (DeviceDescriptor) и указывая в пакете длину возвращаемого сообщения больше максимальной которую может вернут контроллер. В логике прошивки контроллера происходит сравнение длины возвращаемого сообщения с максимальной, если в момент проверки произойдет ошибка то контроллер может вернуть данные которые записаны после DeviceDescriptor то есть часть данных хранящихся рядом. Не всегда работает но и не требует растворять чип и "подпаиваться" к кристаллу кремния.
СПАСИБО у Вас есть уникальная способность обяснять сложные вещи так чоб и медвежонок понял. Но давате следуещее видео про два путя как из этой битной каши читаемый код получить чтоб понять как там все устроено
Интересно. Футболка навеяла некие мысли. Атакующим может быть совсем не нужен код программы. В машинном коде, в виде байт, ими будут найдены ключи шифрования, например. А сама программа будет потом переписана под другой микроконтроллер.
Думаю уже скоро появятся переводчики из машинного кода в с++ или что там еще может быть. Даже не представляю сколько времени займет обучение такой нейронки, но оно того стоит.
Кстати, идея супер! Идея на миллион, не шучу! Беритесь за реализацию =))))))))) Хотя в целом, я такие эксперименты не одобряю, но об этом будет отдельный выпуск =)
@@user-gt5xn3gu3v , да, есть переводчики обратно в си, но конечный перевод подчас настолько примитивен и "тяжел" для восприятия, что проще читать асм =))) Но это всего лишь мое имхо, как известно мнение редакции не всегда соответствует мнению читателей =)))) ПЛИС же вообще несколько другой мир, там, на мой взгляд, без дохренаканального анализатора логики нечего ловить =))))))) Хотя дела имел мало с ними, могу ошибаться =)
@@Gnevistj В реверсе программ есть нюанс. Если изначально прога была написана, например, на С и декомпилируют ее в С, то результат получается очень хороший, если же декомпилируют на язык, отличный от того, на котором изначально написали прогу, то результат может быть очень плохой. Про ПЛИСЫ. Написал программу. Скомпилировал. Поменял одну цифру в данных. Снова скомпилировал. Результат - разница в 81 байт!!!
Спасибо!Интересный маатериал.Понятно,что с компилированного hex. файла ничего не получится выяснить.Проще новую программу написать (или скачать готовую).Ещё ходят слухи,что ИИ gpt chat пишет всё что попросиш.Я попросил программу на с+ для регулировки частоты трёхфазного двигателя -он мне чтото бессвязное написал (наверное обматерил,на своем машинном языке).😀
Скорее всего ты просто задал "неполноценный вопрос", т.е. не указал на детали реализации (модель контроллера, двигателя, задействованные пины и т.п. ересь) 🤔 Только что потестил аналогичный запрос на гугловском _Bard_ и он со второй попытки выдал мне неплохой каркас для приложения. После первой попытки (я бы тоже назвал её "бессвязной") попросил его написать аналогичную программу, но с учётом добавленных деталей и получилось весьма неплохо. IMHO, если умеешь читать чужой код и сходу понимать логику, то даже текущие версии чат-ботов могут быть чрезвычайно полезны 👍 p.s.: прямо сейчас несколько крупных игроков на рынке разработки ПО -вливают тонны бабла- тренируют большие языковые модели, рассчитанные только на кодинг. Вполне может быть, что уже через пару лет, если не раньше, они релизнут что-то действительно крутое.
@@deniskhakimov Да,вы правы,я действительно не дал ему много параметров и скорее всего получил такой ответ.Но программиррвать уметь необходимо.Во первых ,чтобы понимать процесс и навеерное ,более важно-чтобы отдалить процесс умственной деградации (мозг должен упражняться).Иначе он заскучает🙂
у современных контроллеров не один бит защиты а много, на каждый участок памяти свой бит,и ячейки этих битов спрятаны внутренним слоем, под основным кристалом
Помню, для древнего языка Clipper была программная приблуда, позволявшая получить "дизассемблированную" программу, то есть почти исходную программу на языке Clipper с той только разницей, что имена переменных были не те что использовал программист, а условные. Но можно было разобраться, изменить логику и снова скомпилировать. Возможно есть что-то подобное для микроконтроллеров, чтобы переводить из машинных кодов на ассемблер? А ролику и спикеру зачет и подписка.
Да, дизассемблирование возможно, и программ для него пруд пруди, начиная от официальной среды разработки. Проблема в невозможности возврата к языку высокого уровня, а большие программы мало кто, точнее практически никто не пишет на асме =))))) И уж разобраться в этой на первый взгляд бессмысленной куче пересылок и перекладок из одного регистра в другой - мое почтение, трэшовая работа, проводил такое =))))))
@@Gnevistj ну, так то ghidra существует... да и hexrays для арма справится. возможно этот выхлоп будет даже читабельнее оригинального кода на с++ (если там был он, а не сишка).
@@v61kz настолько простые защиты встречаются разве что в нубских крякмисах или в винраре каком. а так да, трассировать и искать, чо где к чему относится и зачем в эту память лезет. в эмбеде еще попроще, там особо лютые варианты со всякими виртуалками (кхе-кхе, denuvo/vmprotect) не в моде еще. хотя вон, у cypress'овских cortex m0 уже гипервизор есть и используется. правда не столько для защиты, сколько для скрытия реализации флеш-контроллера- он там полусофтовый.
@@Gnevistj можно как то узнать язык на котором писалась программа из прошивки микроконтоллера?) в частности у меня есть прошивка от акпп , эбу бош, очень нужно ее разобрать, инфы нигде нет( удивительно но было маленькое тюнинг ателье в США которые под них прошивки писали, но они их уже не продают(
Насчёт отправки на "свалку истории" спец программаторов , автор конечно жжёт !)) Да и тема с обходом защиты не раскрыта, а тема в общем интересная и разнообразная , в силу разнообразия способов обхода. Несколько раз приходилось придумывать и реализовывать обход защиты на конкретных устройствах с процами вполне успешно. И ещё, - вот не понял я , в чём проблема дамп в асм "превратить" ?! ))
С айфонами дела не имел, ибо я нищеброд, и у меня гнусмаС на андроиде =))) Но вдруг мой андроидный способ поможет и вам? Ловите лайфхак - после запуска игры отключаете вайфай и мобильные данные, проще говоря - включаете режим полета. Игра тыкается на сервант, связи нет - рекламы нет =))))) Работает конечно не со всеми (некоторые без рекламы не запускаются вовсе), но большая часть становится играбельными =)))))
А если это микроконтроллер от советского калькулятора, то только изучая его под микроскопом можно понять принцип его работы? И как электрический разряд портит память микроконтроллера и мог ли я таким образом его повредить от разряда электрозажигалки на батарейках (в детстве экспериментировал так)?
Очень классная подача. Мотоциклисты часто обладают харизмой и способностью терпеливо учить. Пожалуйста не бросайте это Ваше полезное дело!
Ну, вот, настал момент, которого я ждал. Как всегда, интересное, познавательное видео, кстати. Большое спасибо за Ваш труд, надеюсь, не бесплатный. Мое знакомство с каналом началось с видео про микроконтроллеры (а может и нет, не помню точно), и сразу мне эта тема запала в душу. Отдельное спасибо харизматичному автору за это. В общем, это стало моим хобби. Естественно, пришлось прикупить кое-что: паяльник (Pinecil v1), макетные платы с проводами, программатор (EasyPro EZP2023+), тестер и "прочие иные предметы". Вдоволь наигравшись со всем этим добром, я уж было решил, что на этом все и закончится, но не тут то было... Был (и есть) у меня некий, весьма популярный, дешевый китайский принтер. Pantum P2200 называется. Картрижди у него с чипами, конечно же. И, вот, надоело мне чипы эти покупать при каждой новой заправке. Решил прошить принтер на бесконечность. Сделал кирпич, естественно. Прошивал по USB и, в процессе, комп завис. Оказалось, что оживить его можно, но только прошивкой микроконтроллера. Вот тут-то мне и пригодились все те, казавшиеся уже бесполезными, вещи. Процедура эта оказалась совсем не из легких, но тем интереснее же. Микросхема оказалась в SOIC исполнении, что меня сразу сильно напугало, потому что, капец, всё мелкое и компактно упакованное на плате. Выпаял, трясущимися руками, с пинцетом это чудо инженерной мысли и выдохнул с облегчением. Если бы я только знал что мне эту процедуру придётся повторить ещё раз пять, я бы, наверное, и не начинал. Ну, выпаял, а дальше что? Как в программатор её пихать? Вспомнил, что в комплекте к нему ещё что-то в пакетике болталось. Оказалось- точно, переходник. Но, на него микросхему нужно напаивать... В общем, мелкую моторику я потренировал знатно. Но, это оказалось не самым интересным приключением. Самое интересное было найти рабочий дамп именно для моей микросхемы моей модели принтера с моей версией платы. Оказалось, что, несмотря на то, что модель китайская и популярная, дампом делиться никто не хочет. Очень долго рыскал по форумам и прочим злачным местам. В итоге, мне помог человек, который торгует прошивками для принтеров (античип). Он дал ссылку на рабочий дамп. Но, перед этим я неоднократно прошивал не тот дамп и припаивал/выпаивал эту бедную микросхему. Счастью моему не было предела, когда я смог распечатать пробную страницу на принтере, который я своими руками сломал, а затем починил. Мораль: дурная голова рукам покоя не даёт (да, да, ногам, но и рукам тоже).
Да❗🤔
Но ведь сегодня, спустя 4,5 млрд. лет после Большого взрыва🎉 все принтеры стоят дешевле листка бумаги формата А4, на которых печатают всякую фигню, которую спустя некоторое время отправят на свалку.
Хорошее видео для базового изучения. Лайк однозначно.
очень интересная информация, а подача просто превосходная) благодарю!)
Спасибо за ещё один урок из жизни электроники, жаль вопросов меньше от этого не стало 😅.
А мне наоборот всё ясно. Нефиг тырить чужой труд.😂 Шутка.
На самом деле бывают случаи когда разработчик или программист покинул наш мир и очень жаль что пропадает хорошая программка хотя копия по любому у кого то есть. А вообще лучше писать самому кто может так чтобы потом можно было и переделать/добавить или наоборот удалить некие команды.
@@BioTech81 совершенно верно!
@@BioTech81 Разраб покинул, а ГитХаб остался..
@@BioTech81 Тырить? Там институты работают. Очень много кабинетов, специалистов... Гораздо интереснее, сходить в институт и получить образование.
@@Palladln
Ну если программу не надо дорабатывать и гифт не зашифрован то возможно.
Спасибо. Как всегда, доступно, объёмно и очень оригинально.
Браво! Прикольный стиль объяснения 😂
Больше всего мне понравился момент на 3:45 с именем файла слитой прошивки )
Название слитой прошивки - топ!
я первый раз смотрел на телефоне - мелкое не успел разобрать, но примерно подумал, что он написал именно то, что я подумал :)) отмотал, увеличил - точно :))
Большое спасибо за Ваш труд.
Хорошее видео-жизнь показывает что чаще дешевле новый купить чем воскрешать прошивку старого!
Красавчик!
И по делу, и с юмором!
Благодарю за интересный обзор!
коротко ясно понятно ,большое спасибо
Сегодня будем учиться писать. Для этого вам понадобится: ручка, тетрадь, стул, стол, руки и как ни странно голова....
Молодец мужик! Разжевал всё для школьников. Ну а я получил массу удовольствия. Правда ещё один способ не указал - таблицы, но на это надо тоже огромная масса времени, а если таблицы более, чем двухмерные, то ещё и масса удачи.
интересная подача инфы для зрителя, доступно коротко и понятна для формата канала.
Konechno polezno i dohodchivo! Spasibo za horoshij jumor!
Ролику зачет! 👍Любопытно было бы узнать как происходит кодирование карт тв доступа, триколор, телекарта...
Триколор, как я помню, dre cript, первые приемники не имели карт, а обновление ключей происходило по воздуху, обычно по умолчанию в 3 часа ночи, как у всех других. Привязка шла к железу. Даже сейчас есть, пару приемников с картами, телекарта, рикор ТВ. Но смысл в том, разблокировка опять происходит по звонку, оплате и диктованию серийного номера приемника. Это тоже самое, если друг дал логин и пароль от кабельного инета, сейчас идет привязка к MAC, чтобы инет заработал, нужно еще просить MAC, чтобы вписать его в настройках. ПО спутниковых приемников от оператора, даже не имеет эмулятора BISS ключей, хотя в глобальной версии прошивки, он имеется. Теоретически, если собрать свою прошивку, если приемник работает на ОС линукс, написать эмулятор железа, для удобства функцию переборщик серийников, если серийник невозможно достать у соседа, с помощью C++ используя кроссплатформенный gcc компилятор, набрав toolchain именно под свой процессор. Можно скомпилировать прошивку, которая будет сама, к примеру за ночь, находить рабочий серийник. Карты достать не сложно, у многих они валяются, так как многие побросали спутниковое ТВ. Другое дело банковские карты, но и здесь достаточно, обычного портативного бесконтактного терминала и пройтись в битком набитом автобусе.
Неужели в 7531-ом году сохранились питекантропы, которым до сих пор нужен телевизор❓❗🎃
Мой первый программатор как раз мог работать вообще без компа. ))) На обычных выключателях, просто перебираете адреса в ручную, и записываете туда информацию какую ни будь, и еще одна кнопка прожиг.
))))) Классный видос мужик, я подписался, лайк тебе. )
Благодарю за урок
оооо мужик, давно таких каналов не встречал, где даже наверное и дилетант понял бы что и зачем. пожалуй подпишусь.
заждался чесслово! Спасибо ! 👍
Классный контент! Давай больше!!!
афигенный у тебя стайл, друже.🕺 безтревожное проживание при СССР вспоминаю.
Браво, огонь 😊🎉
Всегда знал, что надо стоять у истоков, а не пытаться очистить сточные 😂😂
Здравствуйте, а как можно эту прошивку потом перевести в си код например для правок ?
Я раньше тоже так считал пока мне на глаза не попалась книжка "Реверс-инжиниринг встраиваемых систем [2023] Усанов А.Е.". Оказывается возможностей для взлома гораздо больше. Не читал но бегло просмотрел
Благодарю за инфо! Скачал, уже осилил вступление😂
Столько воды про два фьюза защиты от копирования? 88-й уровень! Браво!
Ура! Я почти достиг 90-го уровня!!! =))))))))
Да, это видео для "самых маленьких", некоторые вещи кажутся нам вполне себе очевидными, но ведь есть люди, которые в первый раз столкнулись с таким вопросом =)
Я такой. Мне было очень интересно.
Лучше уж в мелочах изучать что либо изучаемое
@@Gnevistj видишь ли, если ты это объясняешь для какого-то экскурсовода, из третьяковки, есть подозрения, что прошивка ему всё равно не нужна)))
790 людей оценили лайком.
+1 мой
👍😀+5 За подачу материала
Всё чётко объяснено !
Спасибо завидео, уж заждался чесслово!
И можно ли с помощью программатора перезаписывать ПЗУ? И как его записывают вообще?
И является ли "флешка" аналогом ППЗУ? И благодаря чему данные можно перезаписывать неоднократно?
😂 окончание порадовало :) прям в точку
Теперь я знаю!!! Спасибочки! Лайкос!!
здравствуйте, я, к сожалению, мало сведущ в делах сиих высокогорних, а посему хочу к вам обратиться за помощью. Появилась нужда в программировании ПР 114 Овен, для чего требуется использовать специальный комплект для программирования ПР-КП20, соответственно, для подключения к компьютеру. Можно ли применить для этой цели преобразователь (программатор) UART в USB, или без оригинального никак?
С уважением, Владимир.
Здравствуйте! К сожалению не знаком с этим умным реле, хотя согласно документации, его "хвостик" (тот самый ПР-КП20) похож на USB-COM адаптер. Да вот единственное, что вариантов реализации пруд-пруди, и не все они совместимы меж собой, и необязательно, что на стороне УАПП - 5в ТТЛ, там может быть что угодно, от 3,3В до +/-15В. Остальное все мелочи.
Я бы не рекомендовал играться, лучше приобрести рекомендуемый производителем "хвостик" =)
@@Gnevistj да, когда я пытался разобраться в этом, то обратил внимание на то, что уровни U другие, на стандартных 3,3 и 5 В, а на овеновском 5 и 12 В. Ну, хорошо, благодарю за ответ, буду тогда кумекать, где заказать родненький. Для одного раза отдавать больше 4 к₽ не очень хотелось бы.
Видео было многообещающим и даже местами интересным 😁. Но интереснее было бы узнать что делать с считанным набором машинным команд чтобы перевести их в более человеческий язык, а с этим на сколько я понял как раз беда. Или есть таки способы если дело касается контролеров для которых программы для их программирования в свободном доступе?
Насколько знаю, в даташытах на авр описано, как записываются команды в память. Также есть коды команд
Сам не делал, но возможно на каком-нибудь питоне, если прям прижмёт, можно сделать декодер на ассемблер, только смысл есть ли хз🤔🤔🤔
Доброго здравия. Для avr есть такой, Reavr называется. Дизассемблер. Но потом всё равно требуется много ручной работы. Которую как раз и можно автоматизировать с помощью питона. Ибо Reavr выдаёт следующий формат: адрес команды в памяти; сама ассемблерная команда и операнды (регистры). Если команда перехода, то там вместо метки будет стоять адрес. Удачи
Большую программу запаришься дизассемблировать сидеть, а маленькую проще самому написать с нуля..
Для починки какого-то прибора к примеру не надо ничего разбирать в коде, просто прошить дамп заново..
Для разработки устройства проще программу по кускам из библиотек собирать по форумам..
Дизассемблер IDA. Для пиков, авр и других.
@@v61kz прям таки на питоне?
Понятно, что ответ для самых начинающих, но рассказано и объяснено всё хорошо! Как именно работает лок-бит на физическом уровне, кстати, не знал. Благодарю!
такой вопросик, можно ли на закрытом от чтения прошивки микроконтроллере сменить маленькую часть прошивки на свою, которая прочитает оставшуюся прошивку и выдаст её на одной из ног? или это зависит от микроконтроллера? (если да, и если иметь два контроллера с одинаковой прошивкой, то можно записать в два разных места, прочитать обе прошивки и восстановить недостающие блоки)
Я так понимаю на WIN11 нельзя установить дрова для AVR программ. Есть ли варианты совместимости? Или берем старый добрый WIN7?
Хорошее видео!
привет тебе от ассемблериста пикиста ))) сколько я раз хотел вскрыть чип и прочитать именно таким образом - благо доступ был к машинке уз-сварки TPT-HB05 но всеравно написать свое и лучше бывало в разы быстрее.
на старых версиях типа pic16f877 бит лок был на верхнем уровне литографии. Сейчас уже вышли версии данного кристалла 877a со спрятанным на 4-5 слоев в глубь кристалла также и 887 версия тоже далеко глубоко запрятали линию эту - там суть лазером просто выжигалась полоска от элемента и все чип был с вечно снятой защитой.
Можно залить программу длиной 1 байт?
The Pirate Bay лайк однозначно сходу))
русобляди любят халяву
Парни,стоит в блоке комфорта m38747mct. По поиску находится как Mitsubishi Electric Semiconductor. Даташит на процессор есть.Чем его можно прочитать ? Какой софт и каким программатором ?
Майка зачётная! ;)
Воо. Это дело. Спасибо. 😊
😁😁😁Спасибо ! 👍
По началу думал че за нафиг, потом понял, что человек просто все компилирует на простолюдина, годный контент, красава ))
"Прищепка, для пополнения китайских кошельков" - 😂👍выпуск- супер.
Вообще-то во многих микроконтроллерах есть недокументированные команды, используемые для отладки, они позволяют "поиграть" с битами флагов, отвечающими за защиту от считывания, банально сдвигая указатель при записи данных на контроллер на необходимый адрес.
Это как? Можно подробнее чуть-чуть?
Выпуск интересный несомненно Лайк 👍 Но в вопросе считывания заЩишенной прошивки, в корне не соглашусь, есть группа программаторов которые отлично вычитывают из защищенных камней их прошивку : Xprog , Orange, Xhorse VVDI Prog и другие...
А ещё можно, поломать логику микроконтроллера используя ненадежное питание (voltage glitch) или играя с частотой кварцевого резонатора (clock glitch) тем самым заставив ещё совершить ошибку в коде программы или ошибку в логическом элементе схемы. Метод называется Glitching. В ряде случаев это довольно успешный способ считать прошивку защищенного контроллера. Например если контроллер работает с USB, то подавая команду на чтение описания USB устройства (DeviceDescriptor) и указывая в пакете длину возвращаемого сообщения больше максимальной которую может вернут контроллер. В логике прошивки контроллера происходит сравнение длины возвращаемого сообщения с максимальной, если в момент проверки произойдет ошибка то контроллер может вернуть данные которые записаны после DeviceDescriptor то есть часть данных хранящихся рядом. Не всегда работает но и не требует растворять чип и "подпаиваться" к кристаллу кремния.
А играться с частотой кварцевого резонатора можно вскрыв его корпус ( в неочень стерильном помещении 😂) и воздействовать на кристалл парами йода.
Круть!!!
СПАСИБО у Вас есть уникальная способность обяснять сложные вещи так чоб и медвежонок понял. Но давате следуещее видео про два путя как из этой битной каши читаемый код получить чтоб понять как там все устроено
IDA дизассемблер в помощь
@@zorrozorro2839 А кино про это чтоб и медвежонок понял?
@@ernisesama1636Не каждый программист разбирается в ассемблере. А тут речь идёт о дизассемблере!
Здравствуйте. подскажите. как узнать к какому микроконтроллеру какой программатор нужен?
Интересно. Футболка навеяла некие мысли. Атакующим может быть совсем не нужен код программы. В машинном коде, в виде байт, ими будут найдены ключи шифрования, например. А сама программа будет потом переписана под другой микроконтроллер.
Думаю уже скоро появятся переводчики из машинного кода в с++ или что там еще может быть. Даже не представляю сколько времени займет обучение такой нейронки, но оно того стоит.
Кстати, идея супер! Идея на миллион, не шучу! Беритесь за реализацию =)))))))))
Хотя в целом, я такие эксперименты не одобряю, но об этом будет отдельный выпуск =)
Из машинных кодов в С или подобных уже давно есть и много. А вот в HDL, VHDL или AHDL нет и не будет.
@@user-gt5xn3gu3v , да, есть переводчики обратно в си, но конечный перевод подчас настолько примитивен и "тяжел" для восприятия, что проще читать асм =)))
Но это всего лишь мое имхо, как известно мнение редакции не всегда соответствует мнению читателей =))))
ПЛИС же вообще несколько другой мир, там, на мой взгляд, без дохренаканального анализатора логики нечего ловить =))))))) Хотя дела имел мало с ними, могу ошибаться =)
@@Gnevistj В реверсе программ есть нюанс. Если изначально прога была написана, например, на С и декомпилируют ее в С, то результат получается очень хороший, если же декомпилируют на язык, отличный от того, на котором изначально написали прогу, то результат может быть очень плохой.
Про ПЛИСЫ. Написал программу. Скомпилировал. Поменял одну цифру в данных. Снова скомпилировал. Результат - разница в 81 байт!!!
@@user-gt5xn3gu3v там же уже во время компиляции проходит несколько переводов между внутренними форматами?🤔
А можно заменить микросхему памяти одного производителя микросхемой с таким же объемом и распиновкой другого производителя?
Нужно было упомянуть о ChipWhisperer и как он работает.
Круто! Круто!!
Спасибо!Интересный маатериал.Понятно,что с компилированного hex. файла ничего не получится выяснить.Проще новую программу написать (или скачать готовую).Ещё ходят слухи,что ИИ gpt chat пишет всё что попросиш.Я попросил программу на с+ для регулировки частоты трёхфазного двигателя -он мне чтото бессвязное написал (наверное обматерил,на своем машинном языке).😀
Скорее всего ты просто задал "неполноценный вопрос", т.е. не указал на детали реализации (модель контроллера, двигателя, задействованные пины и т.п. ересь) 🤔
Только что потестил аналогичный запрос на гугловском _Bard_ и он со второй попытки выдал мне неплохой каркас для приложения. После первой попытки (я бы тоже назвал её "бессвязной") попросил его написать аналогичную программу, но с учётом добавленных деталей и получилось весьма неплохо.
IMHO, если умеешь читать чужой код и сходу понимать логику, то даже текущие версии чат-ботов могут быть чрезвычайно полезны 👍
p.s.: прямо сейчас несколько крупных игроков на рынке разработки ПО -вливают тонны бабла- тренируют большие языковые модели, рассчитанные только на кодинг. Вполне может быть, что уже через пару лет, если не раньше, они релизнут что-то действительно крутое.
@@deniskhakimov Да,вы правы,я действительно не дал ему много параметров и скорее всего получил такой ответ.Но программиррвать уметь необходимо.Во первых ,чтобы понимать процесс и навеерное ,более важно-чтобы отдалить процесс умственной деградации (мозг должен упражняться).Иначе он заскучает🙂
Спасибо
за футболку отдельный респект )))
Раскажите, пожалуйста про ПИД регулирование в GCBasic
Хы хы, вся правда о пиратстве) надо своему начальнику на работе показать😂
Прочесть прошивку в любом случае не получится? можно только копировать ее. А так, чтобы достать сам код, который можно посмотреть?
добрый день, а что значит слово - "гневисть"?
День добрый! Это отсылка к роману Станислава Лема - "Эдем" =)
Из esp8266 можно прочитать?
а я так надеялся увидеть чудо чудесное
Здравствуйте. Как можно с Вами связаться?
у современных контроллеров не один бит защиты а много, на каждый участок памяти свой бит,и ячейки этих битов спрятаны внутренним слоем, под основным кристалом
Потому, что контроллеров великое множество, а ты у мамы такой один. 😁
Красава!
Классно и интересно , но всё таки очень хотелось бы узнать ещё какой нибудь способ взлома !!! Конечно ЛАЙК !
Помню, для древнего языка Clipper была программная приблуда, позволявшая получить "дизассемблированную" программу, то есть почти исходную программу на языке Clipper с той только разницей, что имена переменных были не те что использовал программист, а условные. Но можно было разобраться, изменить логику и снова скомпилировать. Возможно есть что-то подобное для микроконтроллеров, чтобы переводить из машинных кодов на ассемблер? А ролику и спикеру зачет и подписка.
Да, дизассемблирование возможно, и программ для него пруд пруди, начиная от официальной среды разработки. Проблема в невозможности возврата к языку высокого уровня, а большие программы мало кто, точнее практически никто не пишет на асме =))))) И уж разобраться в этой на первый взгляд бессмысленной куче пересылок и перекладок из одного регистра в другой - мое почтение, трэшовая работа, проводил такое =))))))
@@Gnevistj ну, так то ghidra существует... да и hexrays для арма справится. возможно этот выхлоп будет даже читабельнее оригинального кода на с++ (если там был он, а не сишка).
@@Stedmiel а всякие защиты по наверное так и обходят? Меняют какой-нибудь адрес перехода функции и всё, нету модуля защиты🧐
@@v61kz настолько простые защиты встречаются разве что в нубских крякмисах или в винраре каком.
а так да, трассировать и искать, чо где к чему относится и зачем в эту память лезет. в эмбеде еще попроще, там особо лютые варианты со всякими виртуалками (кхе-кхе, denuvo/vmprotect) не в моде еще. хотя вон, у cypress'овских cortex m0 уже гипервизор есть и используется. правда не столько для защиты, сколько для скрытия реализации флеш-контроллера- он там полусофтовый.
@@Gnevistj можно как то узнать язык на котором писалась программа из прошивки микроконтоллера?) в частности у меня есть прошивка от акпп , эбу бош, очень нужно ее разобрать, инфы нигде нет( удивительно но было маленькое тюнинг ателье в США которые под них прошивки писали, но они их уже не продают(
да всеми согласен специалньо включил звонок чтобы не пропустить новый видео, вот бы так в универе объясняли клаассссссссс!!!!!!!
жесткий чел.. сразу же отпало желание читать контроллеры после просмотра))))
Занимательно ...но не до конца...😊.а вот теперь до конца...😊
Обещали показать в предедущем уроке про линейность значений чтоб показания не дергались
Уважуха!
а если прочитал, с этим буфером можно чтото сделать? ато эти циферки и буковки не похожи на код который можно править :)
Я имею введу урок про шкалирования там значения постоянно изменялись вы общали показать как это можно исправить програмно спасибо за ваши видео 👍
ну почему так мало и так редко мы видим этого многоуважаемого товарища?
Мну испытывает потребность извиниться за нерегулярность выхода новых выпусков, каюсь - завален другой работой по самое "не могу" =)))))))))))
В конце видева не хватает рекламы собственных курсов "по реверсу и ассемблеру для жаждущих обрести бинарное просветление"
😅
То есть если скачать прошивку с контроллера и редактировать ее не получится??
не подскажете по virtio? 🧐
Отличное видео! Как с Вами связаться?
Добра всем!!! Поведайте, Atmega 16, в ней установлены LockBit-ы. Их точно нельзя вылечить не портя основной дамп? Ведь есть Fuse Doctor же....
Насчёт отправки на "свалку истории" спец программаторов , автор конечно жжёт !)) Да и тема с обходом защиты не раскрыта, а тема в общем интересная и разнообразная , в силу разнообразия способов обхода. Несколько раз приходилось придумывать и реализовывать обход защиты на конкретных устройствах с процами вполне успешно.
И ещё, - вот не понял я , в чём проблема дамп в асм "превратить" ?! ))
Привет, как разобрать игры для айфона, чтоб отключить рекламы?))
С айфонами дела не имел, ибо я нищеброд, и у меня гнусмаС на андроиде =))) Но вдруг мой андроидный способ поможет и вам? Ловите лайфхак - после запуска игры отключаете вайфай и мобильные данные, проще говоря - включаете режим полета. Игра тыкается на сервант, связи нет - рекламы нет =)))))
Работает конечно не со всеми (некоторые без рекламы не запускаются вовсе), но большая часть становится играбельными =)))))
12:48 И всё таки интересно было бы увидеть этот список.
Может и соберусь как-нибудь =))))
А если это микроконтроллер от советского калькулятора, то только изучая его под микроскопом можно понять принцип его работы?
И как электрический разряд портит память микроконтроллера и мог ли я таким образом его повредить от разряда электрозажигалки на батарейках (в детстве экспериментировал так)?
ДВА ПУТЯ! 👍 😀 А ОН ОДИН В ЖИЗНИ, ТОЛЬКО В ПЕРЁД ! УСЁ БУДЕТ ДОБРА! 🤣
Супер, до конца ролика думал ждал дешевый метод обойти фьюзы, но увы. Хотя знаю что никак, но вдруг, может быть, как нибудь.....
ниче не понял, но посмотрел с удовольтсвием, лайк!
Эдди на дверях - это эпик! Up The Irons!
Есть ещё один способ взлома микроконтроллера - терморектальным дешефрированием
Терморектальный дешифратор -это вообще универсальное средство для извлечения информации из секретных источников)
А как же "Voltage Glitch" вполне себе способ. Есть ещё bus pirate. Или это и есть те самые "бытовые методы"?
О, Хэтфилд в молодости.😅👍