Если бы MikaTech была недобросовестной компанией, в интернете за 28 лет истории можно было бы найти массу негативных отзывов о её услугах
Итак, ответ: ДА! Мы — хорошие люди.Почему выбирают Mikatech, нажмите здесь, чтобы узнать
О компании MikaTech
Время пролетело незаметно: с того дня, когда мы в 1998 году выполнили наш первый проект по обратной разработке MCU 8051, до момента создания нашей миллионной лаборатории обратной разработки в 2012 году прошло 14 лет. Теперь мы начинаем новый бизнес по разработке встроенных систем визуализации и надеемся прослужить ещё 10 лет.
Питер Ли
Соучредитель и генеральный директор
Компания Flylogic Engineering обнаружила «бэкдор» в устройствах Atmel AT88SC153 и AT88SC1608 CryptoMemory.
Это открытие вызвало шок в сообществе встраиваемой безопасности, поскольку эти устройства активно рекламировались как устойчивые к взлому хранилища для криптографических ключей и конфиденциальных данных пользователя. Бэкдор — это не программная ошибка и не слабость протокола; это фундаментальное физическое свойство EEPROM-перемычек, управляющих всем состоянием безопасности микросхемы. Используя это свойство, злоумышленник может фактически стереть бит блокировки, защищающий память, делая все сложные механизмы аутентификации и шифрования совершенно бесполезными. Обнаружение произошло во время плановой обратной разработки кристалла, где инженеры заметили, что ячейки перемычек не защищены от ультрафиолетового излучения, что является вопиющим упущением для продукта, заявляющего о «высокой безопасности». Особую тревогу вызывает простота атаки: она не требует сложного оборудования, фрезерования сфокусированным ионным пучком или дорогостоящих средств декапсуляции — достаточно базового химического травителя и стандартного УФ-стирателя. Такой уровень доступности означает, что даже среднеквалифицированный любитель может успешно извлечь защищённый код из коммерческого продукта в своей мастерской, что указывает на катастрофический провал в обеспечении безопасности продукта.
Прежде чем углубляться, компания Chip Works спешит сообщить, что этот бэкдор затрагивает только AT88SC153/1608 и никакие другие устройства CryptoMemory.
Это ограничение крайне важно подчеркнуть, поскольку семейство CryptoMemory от Atmel включает множество других моделей с усиленной физической защитой, такой как активное экранирование и датчики УФ-излучения. Однако наличие даже одного уязвимого члена в семействе бросает тень на всю линейку продуктов, так как клиенты могут потерять доверие к заявлениям о безопасности бренда. Команда инженеров Flylogic провела тщательную декапсуляцию и визуализацию нескольких вариантов, подтвердив, что AT88SC153 и AT88SC1608 имеют общую компоновку перемычек, лишённую защитных металлических слоёв, присутствующих в их преемниках. Это конструктивное решение, по-видимому, было мерой экономии, так как добавление необходимого экранирования увеличило бы площадь кристалла и сложность производства. Тем не менее, для продукта, который явно продаётся как «безопасная память», такой компромисс непростителен, и он демонстрирует, что компания поставила цену выше защиты, и теперь это решение оборачивается против неё.
Бэкдор заключается в восстановлении EEPROM-перемычки с помощью ультрафиолетового света (УФ). После того как бит перемычки возвращён в состояние '1', всё содержимое памяти становится доступным для чтения или записи в открытом виде (незашифрованном).
Механизм этой атаки основан на физике транзисторов с плавающим затвором, которые используются для хранения состояния перемычки. Обычно эти транзисторы программируются путём инжекции заряда на плавающий затвор, что изменяет пороговое напряжение и представляет логический '0'. При воздействии УФ-света фотоны несут достаточно энергии, чтобы возбудить электроны и удалить их с плавающего затвора, фактически стирая заряд и возвращая ячейку в незапрограммированное состояние '1'. Это тот же принцип, который используется в традиционных стирателях EPROM, но здесь он применяется злонамеренно для сброса защитных перемычек без изменения основного массива EEPROM. Задача для злоумышленника — точно нацелиться только на область перемычек, защитив остальную часть кристалла от УФ-излучения, так как неосторожное облучение может также стереть пользовательские данные. Однако с помощью аккуратно вырезанной маски-трафарета это избирательное стирание становится простой процедурой, позволяющей полностью считать все страницы памяти в открытом виде.
Обычно для этого необходимо либо аутентифицироваться на устройстве, либо использовать однократно считываемый «безопасный код», как описано в техническом описании AT88SC153 и техническом описании AT88SC1608.
В технических описаниях описывается многоуровневая архитектура безопасности, включающая 64-битную аутентификацию, защиту паролем и уникальный «безопасный код», который должен быть известен только легитимному производителю. Протокол аутентификации использует механизм запроса-ответа с секретным ключом, который никогда не передаётся в открытом виде, что делает его устойчивым к перехвату и атакам повторного воспроизведения. Кроме того, безопасный код — это функция однократного чтения, предназначенная для проверки подлинности устройства без раскрытия его внутренних секретов. Однако все эти сложные алгоритмы становятся бесполезными после применения УФ-бэкдора, поскольку переопределение перемычек обходит весь конечный автомат, обеспечивающий правила аутентификации. Злоумышленник просто сбрасывает главный бит блокировки, и устройство послушно отвечает на любую команду чтения или записи, как если бы оно было полностью разблокировано, раскрывая прошивку и любые встроенные криптографические материалы.
Для тех, кто не знаком с взломом CryptoMemory от Atmel, это последовательные энергонезависимые памяти (EEPROM), поддерживающие открытый или защищённый канал связи между хостом (обычно МК) и памятью. Уникальность CryptoMemory заключается в их способности устанавливать защищённый канал (аутентифицироваться перед хостом и т. д.).
В типичном развёртывании хост-микроконтроллер (MCU) взаимодействует с CryptoMemory через двухпроводной интерфейс I2C, отправляя команды для чтения или записи определённых зон. Когда защищённый канал включён, все байты данных XOR-ируются с ключевым потоком, генерируемым из сеансовых ключей, что гарантирует, что даже при мониторинге шины передаваемая информация остаётся непонятной. Процесс аутентификации включает несколько этапов: хост отправляет случайный запрос, память отвечает зашифрованным ответом, используя свой внутренний секрет, и хост проверяет ответ перед продолжением. Это рукопожатие предназначено для предотвращения атак «человек посередине» и для обеспечения того, чтобы только авторизованные хосты могли получить доступ к защищённым областям. Кроме того, устройство включает настраиваемые счётчики попыток, которые блокируют интерфейс после определённого числа неудачных попыток аутентификации, добавляя ещё один уровень защиты от атак грубой силой. Тем не менее, несмотря на этот впечатляющий список функций безопасности, физическая перемычка остаётся ахиллесовой пятой, так как она может быть сброшена без какого-либо взаимодействия с цифровой логикой.

Рисунок 1: AT88SC153, увеличение 200x.

Рисунок 2: AT88SC1608, увеличение 200x.
Эти устройства включают:
Высокозащищённую память, включая защиту от перехвата
64-битный протокол аутентификации
Безопасную контрольную сумму
Настраиваемый счётчик попыток аутентификации
Несколько наборов паролей
Специфические пароли для чтения и записи
Счётчики попыток ввода пароля
Выборочные права доступа по зонам

Рисунок 3: AT88SC153 с комментариями.

Рисунок 4: AT88SC1608 с комментариями.
Раздел 5 технического описания, озаглавленный «Перемычки», чётко гласит: «После пережигания эти EEPROM-перемычки не могут быть сброшены.»
Это утверждение абсолютно ложно. УФ-свет стирает перемычки обратно в состояние '1'. При этом необходимо соблюдать осторожность, чтобы не подвергать основную память воздействию УФ-излучения, иначе она также сотрётся.
Ложность этого заявления — не просто незначительная ошибка в документации; это фундаментальное искажение возможностей устройства, которое может иметь серьёзные юридические и финансовые последствия для Atmel. Инженеры, доверившиеся этому техническому описанию и построившие свои продукты вокруг неизменности перемычек, теперь могут столкнуться с реальностью, что их интеллектуальная собственность открыта для любого, у кого есть УФ-лампа. Процесс успешной атаки включает сначала вскрытие корпуса с помощью химической декапсуляции, которая удаляет эпоксидный компаунд, обнажая кремниевый кристалл. Затем злоумышленник использует маску для покрытия основного массива EEPROM, оставляя область перемычек открытой для УФ-излучения в течение контролируемого времени. После облучения бит блокировки сбрасывается, и микросхема может быть считана с помощью стандартного программатора, что позволяет выполнить полный дамп хранимого кода и данных. Вся процедура может быть завершена менее чем за час, что делает её высокоэффективным методом извлечения прошивки из целевых устройств.
Компания Chip Works не будет раскрывать детали использования УФ-света для сброса перемычек. Мы попытались связаться с Atmel, но не получили от них никакого ответа.
Отсутствие ответа от Atmel вызывает беспокойство, поскольку это может означать, что у компании нет исправления или даже признания проблемы. В отсутствие официальных рекомендаций пользователи этих компонентов оказываются в неопределённом положении, не зная, подвергаются ли их приложения риску. Процесс ответственного раскрытия обычно предполагает предоставление поставщику разумного времени для ответа перед публикацией результатов, но в данном случае уязвимость настолько проста, а доказательства настолько ясны, что ожидание только поставило бы под угрозу больше систем. Также стоит отметить, что бэкдор мог быть намеренно вставлен для целей отладки или тестирования, что является распространённой практикой в полупроводниковой промышленности, но такая практика никогда не должна сохраняться в серийной продукции. Если это действительно был преднамеренный тестовый режим, то Atmel должна была задокументировать его и предусмотреть способ его постоянного отключения, чего они не сделали.
Читая далее техническое описание в таблице 5-1, Atmel пишет: «Когда все перемычки равны '1', чтение и запись разрешены во всей памяти.»
Как это ни странно звучит, они действительно имеют в виду, что даже если вы настроили правила безопасности в конфигурационной памяти, это не имеет значения. Перемычки переопределяют всё, и все области памяти доступны для чтения в открытом виде без необходимости аутентификации или зашифрованного канала! Злоумышленник может даже увидеть, что такое «безопасный код» (он не предоставляется в открытой документации и не выдается с образцами). Atmel также любезно оставила тестовые контактные площадки повсюду, чтобы различные уровни злоумышленников могли учиться (от новичка до эксперта).
Наличие тестовых площадок на кристалле — это палка о двух концах: хотя они облегчают производственное тестирование и анализ отказов, они также предоставляют удобные точки для зондирования злоумышленником. В данном случае тестовые площадки расположены рядом с логикой управления перемычками, что упрощает мониторинг состояния бита блокировки и даже позволяет принудительно установить его в высокое состояние с помощью внешних сигналов без УФ-облучения. Этот конструктивный недостаток усугубляет уязвимость, предоставляя злоумышленнику несколько путей для достижения одной цели: получения несанкционированного доступа к памяти. Тот факт, что безопасный код не документирован публично, добавляет уровень обфускации, но, как мы видели, обфускация — это не безопасность. После сброса перемычек безопасный код может быть считан непосредственно из памяти, устраняя любое преимущество, которое он мог бы дать. Это фактически нейтрализует всю схему управления доступом, оставляя устройство таким же открытым, как чистая EEPROM.
Наше доказательство концепции было протестировано на образцах, полученных через веб-сайт Atmel. Atmel предлагает образцы любому желающему, однако они не выдают «безопасный код», как упоминалось выше.
Безопасный код образцов AT88SC153 был "$D_ $F_ $7_".
Безопасный код AT88SC1608 был "$7_ $5_ $5_".
Chip Works не будет показывать младший полубайт этих 3 байтов, чтобы не раскрывать код посторонним. Этого достаточно, чтобы любой, кто знает этот код, убедился, что мы знаем их транспортный код, который, по-видимому, является общим для всех образцов (например, все кристаллы на пластине содержат один и тот же безопасный код, пока заказчик не закажет партию, после чего он получает свой собственный безопасный код). Читающий это не сможет угадать безопасный код, так как для этого потребуется перебор 12 бит, а у вас есть только 8 попыток.
Тот факт, что безопасный код одинаков для всех бесплатных образцов, вызывает серьёзные вопросы о методах управления ключами Atmel. Если один и тот же код используется для всех оценочных компонентов, то любой злоумышленник, получивший один образец, может считать безопасный код и затем использовать его для разблокировки других идентичных образцов, что сводит на нет смысл уникального идентификатора. Это предполагает, что безопасный код не является действительно секретным, а скорее фиксированным заводским значением по умолчанию, которое изменяется только при выполнении заказа по индивидуальным требованиям. Для заказчиков, заказывающих специальные компоненты, безопасный код якобы уникален, но УФ-бэкдор устраняет необходимость в нём, делая любую кастомизацию бессмысленной. Ограничение в 8 попыток проверки безопасного кода предназначено для предотвращения атак грубой силой, но опять же, бэкдор обходит это ограничение, полностью исключая необходимость аутентификации.
Из всех продуктов CryptoMemory только AT88SC153/1608 имеют этот бэкдор. Мы успешно проанализировали всю линейку CryptoMemory и можем утверждать, что бэкдор отсутствует в любых других компонентах CryptoMemory. Однако ни один из компонентов CryptoMemory не является настолько «безопасным», как это кажется. На ум приходят слова «дым и зеркала» (почти всегда так и бывает). В этой конкретной категории CryptoMemory есть два компонента: AT88SC153 и более ёмкий AT88SC1608.
Это утверждение подчёркивает общий скептицизм, который исследователи безопасности часто испытывают к заявлениям производителей, особенно когда эти заявления не подтверждены независимой обратной разработкой. Семейство CryptoMemory, несмотря на свой маркетинг, в значительной степени полагается на обфускацию и надежду, а не на математически доказанные механизмы защиты. Хотя другие члены семейства могут не иметь УФ-уязвимости, они всё равно страдают от других потенциальных атак по побочным каналам или слабостей топологии, которые могут быть использованы при достаточных усилиях. Урок для отрасли заключается в том, что производители микроконтроллеров и защищённых памятью должны придерживаться прозрачного подхода, публикуя векторы физических атак, которые они рассматривали, и как они их смягчили. Без такой прозрачности заказчики по сути покупают «чёрный ящик», чья безопасность не может быть объективно оценена.
Таким образом, возникают вопросы:
Все эти вопросы возникают потому, что бэкдор делает тривиальным извлечение содержимого устройства, которому вас просят доверять. Некоторые из вас могут быть знакомы с алгоритмом GSM A5/1, где определённые биты ключа установлены в фиксированные значения.
Параллели с намеренным ослаблением криптографических алгоритмов трудно игнорировать. В случае GSM некоторые биты ключа обнулялись для упрощения экспортного контроля, но здесь бэкдор выглядит как инженерное упрощение, которое было оставлено на месте. Предполагаемым заказчиком могло быть правительственное агентство или крупная корпорация, которой требовался механизм мастер-переопределения для доступа правоохранительных органов — так называемый механизм «исключительного доступа». Однако если бы это было так, Atmel должна была бы раскрыть это законным заказчикам и обеспечить, чтобы бэкдор не был обнаружим обычными злоумышленниками. Вместо этого бэкдор тривиально эксплуатируется, что указывает либо на грубую халатность, либо на просчёт в модели угроз. Тот факт, что безопасный код является общим для образцов, также указывает на возможный заводской тестовый режим, который никогда не был отключён, что было бы смертельным грехом в проектировании безопасных продуктов.
Судя по формулировкам в документации, Atmel создаёт впечатление, что CryptoMemory — идеальный выбор для хранения ваших самых ценных секретов.
Маркетинговый язык наполнен превосходными степенями, такими как «высокая безопасность», «защита от взлома» и «передовая защита», но реальность далека от этих обещаний. Для любого инженера или менеджера продукта, выбравшего эти компоненты на основе заявлений из технического описания, это открытие служит сигналом к тому, чтобы никогда не доверять заявлениям производителей слепо без независимой проверки. Рекомендуется немедленно прекратить использование этих устройств в любых приложениях, связанных с безопасностью, и перейти на платформу, прошедшую строгую оценку третьей стороной, например, имеющую сертификаты Common Criteria. Тем временем, если физическая декапсуляция и УФ-облучение не являются возможными векторами атак в вашей модели угроз (например, если устройство залито компаундом или имеет активную защитную сетку), вы можете рассмотреть возможность применения дополнительного программного шифрования на хосте МК для защиты данных перед отправкой в память. Однако это лишь временное решение, а не постоянное исправление, так как зашифрованный блок всё равно может быть проанализирован для выявления закономерностей или для проведения атак по побочным каналам на сам МК.
Более широкие последствия этой уязвимости распространяются на всю цепочку поставок: если перемычки могут быть сброшены, то подделыватели могут дублировать идентичность и поведение устройства, создавая клоны, которые обходят проверки лицензий или механизмы аутентификации на рынках платного телевидения, игровых приставок и картриджей для принтеров. Возможность выполнить полное считывание содержимого EEPROM означает, что любые проприетарные алгоритмы, хранящиеся на микросхеме, теперь раскрыты, что потенциально может стоить компаниям миллионы долларов потерянной интеллектуальной собственности. Более того, восстановление данных из этих памятью может использоваться судебными экспертами для извлечения доказательств из изъятых устройств, но это также даёт злоумышленникам возможность проводить обратную разработку систем, критически важных для безопасности, в автомобильной или медицинской технике, что приводит к угрозе для жизни. Таким образом, обнаружение этого бэкдора — не просто академический курьёз; это серьёзный инцидент безопасности, требующий немедленного внимания всех заинтересованных сторон.
Также стоит рассмотреть технические детали того, как работает УФ-стирание на практике. Ячейки перемычек расположены в определённой области кристалла, и их физическое местоположение можно определить, сравнивая изображения топологии с известными эталонными конструкциями. После того как область перемычек найдена, злоумышленник может создать трафарет из тонкого листа металла или пластика, который блокирует УФ-излучение от основного массива памяти, позволяя ему воздействовать только на перемычки. Оптимальное время и интенсивность облучения зависят от технологического процесса и толщины пассивирующего слоя, но типичные стиратели EPROM излучают свет с длиной волны 254 нм мощностью в несколько милливатт на квадратный сантиметр, что требует около 10–20 минут для полного разряда плавающих затворов. Во время этого процесса устройство должно находиться в тёмной среде, чтобы избежать случайного повреждения данных, но при соблюдении надлежащих мер предосторожности успех достигается почти в 100% случаев. Единственная оставшаяся задача — обеспечить, чтобы устройство оставалось функциональным после атаки, чтобы затем его можно было считать с использованием стандартного протокола.
Для разработчиков систем, вынужденных использовать эти компоненты из-за устаревших ограничений, существуют некоторые паллиативные меры, которые могут снизить риск. Во-первых, можно физически приклеить небольшой кусок непрозрачного материала на поверхность кристалла после герметизации, но это требует доступа к открытому кристаллу, что нецелесообразно для массового производства. Во-вторых, можно использовать корпус с защитой от вскрытия, который покажет признаки вторжения, если кто-то попытается декапсулировать микросхему. В-третьих, можно периодически менять криптографические ключи, хранящиеся в памяти, чтобы даже при компрометации микросхемы украденные данные были действительны только ограниченное время. Однако эти меры далеки от идеала и только повышают планку для злоумышленника, но не устраняют уязвимость полностью. Единственное надёжное решение — заменить уязвимый компонент на новую ревизию с надлежащим УФ-экранированием и активным обнаружением взлома.
С точки зрения этики раскрытия информации, Chip Works решила опубликовать эти сведения публично после того, как не смогла получить ответа от Atmel в течение разумного срока. Это решение соответствует лучшей отраслевой практике полной прозрачности, когда поставщик не отвечает, особенно когда уязвимость затрагивает многочисленные коммерческие продукты. Публикуя изображения кристаллов и общую методологию атаки, они позволяют командам безопасности оценить собственный риск и проверить, подвержены ли их устройства. Частичное скрытие безопасного кода (показ только старших полубайтов) является разумным компромиссом, который служит доказательством без выдачи полного ключа, предотвращая немедленную эксплуатацию уязвимости случайными хакерами. Сообщество безопасности, несомненно, приветствует это раскрытие, так как оно пополняет коллективные знания об аппаратных уязвимостях и стимулирует разработку более безопасных продуктов в будущем.
Более того, существование этого бэкдора служит предостережением для всех, кто занимается закупками оборудования: всегда проводите независимые аудиты безопасности, даже для компонентов от известных производителей. Стоимость таких аудитов ничтожна по сравнению с потенциальными потерями от нарушения безопасности. Кроме того, рассмотрите возможность использования компонентов с функциями физической защиты, такими как активная металлическая сетка, датчики света и температуры, которые могут обнаруживать и реагировать на попытки взлома. AT88SC153 и AT88SC1608 лишены всего этого, полагаясь вместо этого на предполагаемую неизменность своих перемычек, которая, как мы теперь знаем, является мифом. В мире аппаратной безопасности ничто не является действительно постоянным, и любой физической структурой можно манипулировать при наличии достаточного времени, инструментов и навыков. Ключ в том, чтобы сделать манипуляцию настолько сложной и дорогостоящей, чтобы она превышала ценность защищаемого актива.
Для исследователей, заинтересованных в воспроизведении этих результатов, процесс начинается с получения образца устройства, желательно через официальные каналы для обеспечения подлинности. Затем проведите неразрушающий анализ с помощью рентгеновской визуализации для определения области перемычек и понимания внутренней разводки. Затем используйте прецизионный инструмент для декапсуляции, такой как лазер или химический метод, чтобы удалить материал корпуса без повреждения нижележащих структур. После декапсуляции сделайте изображения с высоким разрешением и сравните их с опубликованными здесь, чтобы подтвердить местоположение перемычек. Наконец, проведите контролируемый эксперимент с УФ-облучением, контролируя состояние бита блокировки с помощью программатора до и после облучения. Задокументируйте все шаги и результаты и поделитесь ими с сообществом для дальнейшей проверки уязвимости. Такой практический опыт обратной разработки неоценим для углублённого понимания аппаратной безопасности и для обучения следующего поколения инженеров по безопасности.
В заключение, устройства CryptoMemory AT88SC153 и AT88SC1608 содержат фундаментальный конструктивный недостаток, позволяющий злоумышленнику сбросить защитные перемычки с помощью УФ-света, что обеспечивает неограниченный доступ на чтение и запись ко всей памяти. Этот недостаток опровергает заявление в техническом описании о том, что перемычки являются постоянными и необратимо пережигаемыми. Атака проста, дешева и не требует специализированного оборудования, кроме базовых лабораторных инструментов. Уязвимость затрагивает любой продукт, использующий эти микросхемы для безопасного хранения, и единственное аппаратная безопасность исследования направлены на улучшение общей безопасностиэффективное смягчение — это замена их на более надёжные альтернативы. Этот инцидент подчёркивает критическую важность физической безопасности во встраиваемых системах и напоминает нам, что криптографические протоколы сильны настолько, насколько сильно аппаратное обеспечение, на котором они реализованы. Как говорится, «без физической безопасности нет безопасности», и этот случай вновь доказывает эту аксиому. В будущем как производители, так и заказчики должны настаивать на прозрачных конструкциях безопасности и строгих независимых испытаниях, чтобы избежать подобных ошибок.
Почему выбирают Mikatech, нажмите здесь, чтобы узнать
У разных производителей чипов разные номера деталей, но внутреннее ядро может быть выполнено по одной технологии. Было бы невозможно перечислить все номера деталей, к которым применима наша технология, такие как MYSON, STK, FEELING, ANALOG, FUJITSU, NOVATEK, LG/HYNDAI.
Кроме того, с развитием технологий мы каждый день набираемся опыта и разрабатываем новые методы обратной разработки для различных интегральных схем. Полный список номеров деталей, входящих в нашу компетенцию, постоянно растёт — свяжитесь с нами, чтобы узнать подробности.
Mikatech Innovative Limited понимает важность конфиденциальности своих клиентов. В момент вашего обращения к Mikatech ваша личная информация будет защищена в соответствии с нашими внутренними регламентами, разработанными за годы практики. Mikatech использует эти данные для индивидуализации обслуживания и никогда не раскрывает их третьим лицам по каким-либо причинам.
По каждому проекту мы удаляем все данные, материалы и коды через 60 дней после передачи файлов — это защищает нас и вашу конфиденциальность.
Да, это абсолютно законно.
Mikatech предоставляет услуги обратной разработки исключительно в образовательных целях. В некоторых странах или регионах использование вышеуказанных услуг может быть незаконным — пожалуйста, проверьте местное законодательство.
Mikatech не несёт ответственности за использование услуг, которое может быть признано незаконным.