Если бы MikaTech была недобросовестной компанией, в интернете за 28 лет истории можно было бы найти массу негативных отзывов о её услугах
Итак, ответ: ДА! Мы — хорошие люди.Почему выбирают Mikatech, нажмите здесь, чтобы узнать
О компании MikaTech
Время пролетело незаметно: с того дня, когда мы в 1998 году выполнили наш первый проект по обратной разработке MCU 8051, до момента создания нашей миллионной лаборатории обратной разработки в 2012 году прошло 14 лет. Теперь мы начинаем новый бизнес по разработке встроенных систем визуализации и надеемся прослужить ещё 10 лет.
Питер Ли
Соучредитель и генеральный директор
ATmega88 является широко популярным 8-битным AVR-микроконтроллером, предназначенным для недорогих встраиваемых систем. Он оснащён 8 КБ внутренней флэш-памяти, 512 байтами выделенной энергонезависимой EEPROM и 512 байтами быстрой SRAM для хранения переменных во время выполнения. Этот МК обеспечивает прямое синхронизированное взаимодействие с внешней периферией, что является ключевым архитектурным отличием от более старых семейств микроконтроллеров Microchip PIC, которые мы подробно разбирали в предыдущих статьях по обратной разработке. Каждая аппаратная функция внутри ATmega88 связана с критическими компонентами безопасности, включая регистры блокировки и программируемые перемычки, на которые злоумышленники нацеливаются во время операций декапсуляции для разблокировки защищённых областей памяти и выполнения полного дампа флэш для извлечения прошивки и создания дублирующего оборудования.
Прежде чем углубляться в анализ кремния на уровне кристалла, важно прояснить риск несанкционированных атак считывания на защищённые банки памяти ATmega88. Если разработчик не настроит должным образом параметры блокировки и безопасности перемычек на этом микроконтроллере, злоумышленники с оборудованием для FIB-лабораторий могут удалить металлические слои, подключиться к внутренним сигнальным дорожкам и извлечь полный программный код, хранящийся во флэш-памяти, без нарушения стандартных программных защитных барьеров. Многие любители упускают активацию блокировки во время тестирования прототипов, оставляя свою проприетарную логику датчиков и управляющий код открытыми для лёгкого дампа и восстановления после простого физического зондирования кремния.
Этот чип производится по зрелому 350-нанометровому (нм) КМОП-техпроцессу с использованием трёхслойной металлизации для маршрутизации питания, тактовых и сигнальных цепей по кремниевой подложке. С точки зрения полупроводникового анализа, компоновка кристалла ATmega88 исключительно аккуратна и организована, что делает его идеальным образцом для изучения аппаратной обратной разработки, методов декапсуляции и картографирования схем безопасности МК. Наша лабораторная команда полностью декапсулировала оригинальный образец ATmega88, последовательно удаляя металлические слои с помощью контролируемой химической обработки, и сделала снимки высокого разрешения для создания этого подробного разбора для всех, кто изучает уязвимости кремниевой безопасности и методы обхода перемычек для разблокировки AVR-памяти.

Собственный 0,35-микрометровый (мкм) техпроцесс Atmel обеспечивает стабильное, повторяемое построение слоёв кремния, что упрощает контролируемое удаление слоёв для лабораторного анализа, нацеленного на цепи перемычек и блокировки. На фотографии выше показан полный кристалл ATmega88 под оптическим микроскопом с 200-кратным увеличением, раскрывающий основные функциональные блоки: массивы флэш-памяти, блоки EEPROM, аналоговую периферию АЦП и область ядра ЦП. Каждый сегментированный блок содержит уникальные цепи, управляющие разрешениями доступа к памяти, определёнными набором защитных перемычек микросхемы, которые определяют, могут ли внешние отладочные инструменты выполнять команды считывания памяти.
Мы применили разбавленную плавиковую кислоту (HF) в точно выверенных временных интервалах для частичного растворения и удаления внешнего верхнего металлического слоя, обозначенного как M3 в стеке ATmega88. Частичное травление было выбрано намеренно, а не полное удаление, так как оставшиеся металлические дорожки служат визуальными ориентирами для трассировки сигнальных путей к нижним слоям M2 и M1, а также к нижележащим поликремниевым затворам. Эта техника частичного удаления слоёв является стандартным методом в любой профессиональной лаборатории FIB для взлома, специализирующейся на обратной разработке микроконтроллеров и исследовании внутренних цепей перемычек без полного уничтожения критических ориентиров кристалла, необходимых для картографирования логики разблокировки.
Новички в декапсуляции микросхем часто совершают ошибку, полностью удаляя все верхние металлические слои одной агрессивной кислотной обработкой, что стирает критические метки выравнивания и скрытые сигнальные шины, соединяющие выходы блокировки с вентилями управления доступом к флэш-памяти. Наш постепенный метод травления HF позволяет избежать этой распространённой ошибки, сохраняя частичные дорожки M3, которые мы перекрёстно сверяем на разных увеличениях для трассировки того, как логика перемычек блокирует или разрешает полные операции дампа на флэш-массиве МК во время связи с внешним программатором.

Теперь, когда верхний металлический слой M3 частично удалён, ранее скрытые основные функциональные модули на кремниевом кристалле становятся полностью различимыми для нашей камеры микроскопа и аналитического ПО. Большой прямоугольный блок SRAM занимает заметную часть компоновки микросхемы, рядом с выделенным банком 32 рабочих регистров ЦП общего назначения, которые МК использует для временного хранения данных во время выполнения программы и циклов считывания датчиков. Эти банки регистров хранят промежуточные значения перед записью в EEPROM или флэш, что делает их второстепенными целями для злоумышленников, выполняющих перехват сигналов в реальном времени после декапсуляции для восстановления частичного кода на ранних этапах извлечения прошивки.
Каждый байт, хранящийся в SRAM, является энергозависимым и теряется при отключении питания, в отличие от энергонезависимых массивов EEPROM и флэш, которые сохраняют данные длительное время даже без питания. Это ключевое различие памяти влияет на то, как злоумышленники строят свои рабочие процессы дампа: они должны захватывать сигнальные дорожки SRAM, пока микросхема находится под напряжением, в то время как данные флэш и EEPROM могут быть извлечены офлайн после успешного обхода защитных перемычек и разблокировки разрешений доступа к памяти.
Ранее в нашем анализе мы описывали 350-нм производственный процесс Atmel словом «потрясающий» — мнение, разделяемое аппаратными хакерами и исследователями полупроводников в сообществе клуба мастеров вместе, которые регулярно разбирают микросхемы в образовательных целях. Упорядоченное слоистое построение кристалла ATmega88 позволяет контролируемое частичное травление металла, оставляющее слабые контуры металла в диэлектрических траншеях из диоксида кремния, которые остаются видимыми при регулировке фокуса микроскопа без полного удаления следов маршрутизации слоя. Эта тонкая особенность видимости значительно упрощает трассировку длинных сигнальных шин, проходящих между банком конфигурационных перемычек и логикой безопасности блокировки, отвечающей за ограничение несанкционированных запросов дампа и считывания.
Этот производственный нюанс — гораздо больше, чем косметическая деталь для аналитиков кремниевой безопасности. При попытке картографирования электрического пути от плавающего затвора каждой перемычки к вентилям И/ИЛИ, обеспечивающим состояние блокировки памяти, остаточные металлические дорожки M3 служат постоянными визуальными ориентирами, предотвращающими дезориентацию при переключении между увеличениями 200x, 500x и даже 1000x во время сеансов анализа декапсуляции, нацеленных на уязвимости обхода перемычек.

Микрофотография, показанная выше, вместе со вторым снимком области перемычек, захватывает ту же самую область кремния ATmega88, но с одним критическим отличием: на нижнем изображении проведено более глубокое травление HF для полного удаления слоя M3, однако вытравленные канавки в изолирующем слое диоксида кремния всё ещё отмечают исходные позиции маршрутизации, где верхний металл ранее лежал на поликремниевых дорожках банка перемычек. Эти вытравленные углубления создают постоянные опорные линии, которые мы используем для перекрёстной проверки сигнальных соединений, питающих каждую отдельную конфигурационную перемычку на МК.
Atmel интегрировала более тридцати различных конфигурационных перемычек в компоновку ATmega88, каждая из которых назначена для уникальной аппаратной функции: от выбора тактовой частоты, флагов включения аналоговой периферии, порогов отключения по напряжению до критических перемычек блокировки, блокирующих внешний доступ к флэш и EEPROM. В совокупности эти перемычки образуют основную аппаратную границу безопасности, предназначенную для предотвращения инициирования полного дампа флэш и завершения извлечения прошивки для создания дублирующих устройств без официального лицензирования.
Легко понять, почему аналитики полупроводниковой безопасности высоко ценят стабильный 350-нм производственный процесс Atmel после сравнения таких пар протравленных слоёв. Мы успешно удалили непрозрачный верхний металлический слой M3, блокировавший обзор нижележащих поликремниевых структур перемычек, но при этом сохранили чёткие позиционные маркеры того, где ранее проходили шины питания и сигналов через эту чувствительную область схемы безопасности. Без этих вытравленных ориентиров трассировка логической цепи от каждой перемычки к управляющим вентилям блокировки памяти потребовала бы значительно более длительных сеансов FIB-резки и зондирования при обратной разработке на основе декапсуляции.
Эти два крупноплановых снимка демонстрируют два отдельных элемента перемычек из полного набора более чем тридцати конфигурационных перемычек, интегрированных в кремний микроконтроллера ATmega88. Одно конструктивное решение вызывает горячие дискуссии в сообществе аппаратного взлома, сфокусированном на безопасности МК: Atmel разместила сплошную металлическую экранирующую пластину непосредственно над структурой плавающего затвора верхнего элемента перемычки, видимого в кадре, — защитная мера, предназначенная для блокировки УФ-стирания и атак лазерным зондированием, подробно описанных в технических руководствах по вскрытию кремния от snaileye.
Инженеры Atmel добавили этот экранирующий слой в попытке защитить плавающий затвор перемычек от простых трюков с УФ-декапсуляцией, которые успешно стирают состояния блокировки на старых семействах PIC-микроконтроллеров. Несмотря на эту контрмеру, современное оборудование FIB и лазерной резки, доступное в профессиональных лабораториях обратной разработки, всё ещё может прорезать тонкую металлическую пластину для прямого контакта с нижележащим плавающим затвором, позволяя злоумышленникам вручную изменять логические уровни перемычек для разблокировки защищённых банков флэш и EEPROM для неограниченного считывания и полного восстановления встроенного программного кода.
Мы нарисовали тонкие красные сигнальные дорожки на каждом элементе перемычек, видимых на этих парных микрофотографиях, чтобы отследить выделенные входные и выходные шины, соединяющие цепи плавающего затвора каждой перемычки с центральным блоком логики безопасности, содержащим управляющие вентили блокировки ATmega88. Теперь мы ставим открытый аналитический вопрос читателям, изучающим аппаратную безопасность микроконтроллеров: какую функциональную цель выполняют эти выделенные красные поликремниевые и металлические сигнальные дорожки в общей схеме защиты доступа к памяти, встроенной в этот AVR МК?
Чтобы расширить этот анализ для новичков в обратной разработке кремния: каждая выделенная дорожка несёт двоичный логический сигнал, генерируемый состоянием заряда, хранящимся на плавающем затворе перемычки. Эти сигналы сходятся в многоходовых логических вентилях, которые оценивают комбинированное состояние всех защитных перемычек и регистров блокировки. Если комбинация вентилей соответствует условию «заблокировано», определённому конструкцией ЦП Atmel, все внешние коммуникационные интерфейсы блокируют каждый запрос считывания и дампа, отправляемый программаторами, защищая проприетарный код, хранящийся во флэш-массиве, от несанкционированного извлечения прошивки, используемого для производства нелицензионных дублирующих устройств.
Многие начинающие энтузиасты декапсуляции недооценивают, насколько взаимосвязаны эти сигнальные шины перемычек. Один разрез или короткое замыкание на одной выделенной дорожке может изменить комбинированный логический выход блока блокировки, создавая постоянный аппаратный обход, игнорирующий состояние блокировки перемычек и предоставляющий неограниченный доступ ко всему содержимому флэш и EEPROM без изменения каждого отдельного элемента перемычек на кристалле МК. Эта уязвимость единой точки является основной целью продвинутых команд обратной разработки, пытающихся избежать длительных операций модификации перемычек во время своих рабочих процессов дампа и восстановления кода.
Ещё один важный образовательный вывод из изучения этих экранированных структур перемычек — понимание ограничений пассивного металлического экранирования как контрмеры безопасности. Хотя металлическая пластина M3 блокирует дешёвые попытки УФ-стирания, она не выдерживает точного фрезерования сфокусированным ионным пучком или импульсной лазерной абляции, используемых в профессиональных лабораториях декапсуляции. После удаления металлического экрана плавающий затвор становится полностью доступным для электрического зондирования, позволяя злоумышленникам манипулировать зарядовыми состояниями перемычек для отключения защиты и разблокировки массивов памяти микроконтроллера для полного дампа флэш и восстановления прошивки.
Мы также хотим прояснить разницу между конфигурационными перемычками и перемычками блокировки для читателей, новых в архитектуре AVR. Конфигурационные перемычки управляют настройками периферии, тактовыми источниками и параметрами питания, в то время как выделенные перемычки блокировки существуют исключительно для обеспечения ограничений доступа к памяти. Оба типа перемычек передают сигналы по выделенным красным дорожкам, отмеченным на микрофотографиях, объединяясь внутри общих логических вентилей, которые принимают окончательное решение о разрешении доступа для всех внешних операций считывания и дампа, нацеленных на флэш и EEPROM.
При выполнении полной обратной разработки ATmega88 для создания дублирующих устройств хакеры в первую очередь картографируют эти выделенные дорожки перемычек во время анализа декапсуляции. Идентифицируя шины, которые напрямую питают логику оценки блокировки, они могут спроектировать минимальные лазерные или FIB-разрезы, которые навсегда отключают блокировку памяти без необходимости декодировать или изменять каждую отдельную конфигурационную перемычку, разбросанную по кремниевому кристаллу, что значительно ускоряет весь процесс извлечения прошивки и восстановления кода после успешной разблокировки защищённых разделов памяти МК. аппаратная безопасность исследования направлены на улучшение общей безопасности
Почему выбирают Mikatech, нажмите здесь, чтобы узнать
У разных производителей чипов разные номера деталей, но внутреннее ядро может быть выполнено по одной технологии. Было бы невозможно перечислить все номера деталей, к которым применима наша технология, такие как MYSON, STK, FEELING, ANALOG, FUJITSU, NOVATEK, LG/HYNDAI.
Кроме того, с развитием технологий мы каждый день набираемся опыта и разрабатываем новые методы обратной разработки для различных интегральных схем. Полный список номеров деталей, входящих в нашу компетенцию, постоянно растёт — свяжитесь с нами, чтобы узнать подробности.
Mikatech Innovative Limited понимает важность конфиденциальности своих клиентов. В момент вашего обращения к Mikatech ваша личная информация будет защищена в соответствии с нашими внутренними регламентами, разработанными за годы практики. Mikatech использует эти данные для индивидуализации обслуживания и никогда не раскрывает их третьим лицам по каким-либо причинам.
По каждому проекту мы удаляем все данные, материалы и коды через 60 дней после передачи файлов — это защищает нас и вашу конфиденциальность.
Да, это абсолютно законно.
Mikatech предоставляет услуги обратной разработки исключительно в образовательных целях. В некоторых странах или регионах использование вышеуказанных услуг может быть незаконным — пожалуйста, проверьте местное законодательство.
Mikatech не несёт ответственности за использование услуг, которое может быть признано незаконным.