Как стать автором
Обновить

Комментарии 16

Из личной практики занятий реверсом, скажу, что подход вполне себе рабочий. Особенно в области UART. Разве что там может быть не обязательно центральный процессор, слать в УАПП может всё что угодно, микроконтроллер, процессор, просто периферийная железяка. И утверждать, что это именно ЦП — не совсем корректно.

Если глянуть мои статьи, например про добавление консоли к Transcend WiFi SDHC, то там я точно также добавлял UART к падам на плате, но это действо было сильно хитрее.

image

Для ЛЛ: Правильно ли я понял, что наличие хоть даже какого то вывода/лога на пинах UART (как впрочем даже уже одно то, что они разведены), можно расценивать как подарок от производителя?

Совершенно не обязательно. Лога может и не быть, наличие УАПП уже подарок.

Не всегда понятно, для чего предназначается контакт Vcc.

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

например, для питания подключаемого к этим контактам устройства, если это, например, не ПК (например, чтобы логические уровни совпадали), а то, увидев, что автор написал "от 3.3 до 12 вольт", сразу стало понятно, что это переводная статья ))
...но вообще дети могут начитаться, вдохновиться полученным "знанием" и что-нибудь сжечь

например, для питания подключаемого к этим контактам устройства, если это, например, не ПК

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

Вы говорите об обратной задаче: это когда UART питается от USB-порта, а USB-порт находится на хосте.

Если устройство использует загрузчик U-Boot, то можно заставить оборудование перебросить вас в интерактивную оболочку загрузчика. По умолчанию, если U-Boot не может считать образ прошивки из флэш-памяти в ОЗУ, то он вызовет панику и переключится в режим интерактивной оболочки восстановления. Чтобы вызвать эту панику (прости, U-Boot), на короткое время заземлите линию данных ввода-вывода флэш-чипа во время запуска. В этом вам помогут технические описания (даташиты) производителя!

Спасибо, не знал, буду пробовать.

Быстро нажимать CTRL+C при запуске. Это странный трюк, но в нескольких случаях он срсработал.

Ещё попадались ESC и Enter.

Или быстро напечатать "tpl" (актуально для роутеров TP-Link).

А еще желательно чтобы TTL-USB конвертер имел те же уровни сигналов что и девайс (не везде есть защита). Недавно сжег девайс подключив 5v TTL-USB к 1v8 девайсу.

Ну, все это сработает если производитель не сильно хотел защитить свое устройство.

Uboot можно построить так, что он будет просто игнорировать любые символы из uart.

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

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

А может и скрипты не сможете свои запустить - их тоже можно проверить а запуск скриптового кода через опцию командной строки удалить.

Это если консоль не выломали, конечно.

Тогда ломать придется как ломали XBox 360 - кстати очень интересная история, советую почитать.

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

Всё решаемо, но занимает больше времени.

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

Основной вопрос тут - целесообразность и имеющиеся в распоряжении ресурсы/время.

Защита подобных устройств часто ставит своей целью сделать подобный взлом экономически неоправданным.

Консоли ломают потому что очень много и на этом можно заработать: модчипы не бесплатны.

Военщину ломают потому что там есть любые ресурсы и нужен результат любой ценой.

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

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

Ещё U-Boot может быть запаролен, а переменные окружения зашифрованы. Как вы правильно заметили, если производитель хочет защитить устройство, то загрузчик — одно из простых звеньев.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий