Железный занавес. Как производители мешают взламывать гаджеты

Возможно, ты в детстве разбирал всякие вещи, чтобы узнать, как они сделаны, — за что тебе наверняка влетало. Взрослым дядькам такое развлечение тоже не чуждо, и называется оно «реверс-инжиниринг», или «обратная разработка». О реверсе софта мы в «Хакере» периодически пишем, но реверс железа ничуть не менее интересен. Из этой статьи ты узнаешь об актуальных способах реверсинга печатных плат и о том, как ему противодействуют разработчики.

Формальное определение реверс-инжиниринга звучит так: это процесс восстановления схемы и идентификации компонентов при отсутствии полного комплекта документации. Зачем это нужно, если тебе не восемь лет и перед тобой не разобранный отцовский ноутбук? Как правило — чтобы своровать схемотехнику приглянувшегося устройства и продать ее какому-нибудь производителю либо выдать за свое. Реже — усовершенствовать и наладить выпуск аналога.

Также реверс-инжиниринг позволяет выявить ключевые элементы схемы, которые откроют доступ, например, к цепям JTAG, загрузочной ПЗУ или ОЗУ. Или же целью может быть внедрение аппаратных троянов, которые изменяют функции устройства, — чтобы, например, превратить внешний накопитель во флешку-убийцу, а кабель HDMI — в средство анализа выводимого на экран содержимого.

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

 

Основы аппаратного реверс-инжиниринга

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

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

 

Вскрытие покажет

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

А вот при разборе может встретиться много разных препятствий — от хитроумных защелок и винтов с нестандартными шлицами (например, Torx) до совсем уж низкопробных заводских пакостей вроде заливки платы и компонентов клеями и компаундами. Бывает и так, что приходится столкнуться с результатами ультразвуковой сварки.

Специалисты обычно имеют под рукой солидный набор инструментов. В качестве примера можешь посмотреть продукцию iFixit, а «Алиэкспресс» завален более дешевыми аналогами. В самых крайних случаях специальные инструменты изготавливаются при помощи 3D-печати.

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

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

Слева — вскрытие корпуса Xbox One, по центру — набор бит для вскрытия электронной техники, справа — использование термофена для демонтажа
 

Идентификация компонентов

Как ни странно, несмотря на огромное разнообразие выпускаемых современной промышленностью компонентов, понять их назначение — не самая сложная задача. Если на плате присутствует маркировка, можно по названию определить тип компонента (чип-резистор, чип-конденсатор, чип-индуктивность, диод и так далее) и попробовать оценить его номинал.

Источник: xakep.ru

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *