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