
Обзор аппаратных бэкдоров на базе микросхем и их обнаружения
---
title: Обзор аппаратных закладок на базе чипов: Понимание, обнаружение и смягчение
keywords: аппаратные закладки на базе чипов, обнаружение аппаратных закладок, аппаратный троян, безопасность полупроводников, аппаратная безопасность, кибербезопасность, атаки через закладки
description: Этот технический пост в блоге предоставляет исчерпывающий обзор аппаратных закладок на базе чипов, изучая их определения, примеры из реального мира, векторы атак, методы обнаружения и углубленное обсуждение методов смягчения, включая примеры кода для сканирования и анализа.
---
# Обзор аппаратных закладок на базе чипов: От основ до продвинутого обнаружения
*Последнее обновление: 2024-06-15*
---
## Содержание
- [Введение](#введение)
- [Что такое аппаратная закладка?](#что-такое-аппаратная-закладка)
- [Ключевые характеристики аппаратных закладок](#ключевые-характеристики-аппаратных-закладок)
- [Как работают закладки на базе чипов](#как-работают-закладки-на-базе-чипов)
- [Векторы атаки: проектирование, производство и цепочка поставок](#векторы-атаки-проектирование-производство-и-цепочка-поставок)
- [Типы аппаратных закладок](#типы-аппаратных-закладок)
- [Значимые примеры из реального мира](#значимые-примеры-из-реального-мира)
- [Кейс: Предполагаемая закладка на материнской плате](#кейс-предполагаемая-закладка-на-материнской-плате)
- [Академические демонстрации аппаратных троянов](#академические-демонстрации-аппаратных-троянов)
- [Как аппаратные закладки используются в кибератаках](#как-аппаратные-закладки-используются-в-кибератаках)
- [Влияние на уровне сети](#влияние-на-уровне-сети)
- [Последствия на уровне устройства](#последствия-на-уровне-устройства)
- [Обнаружение аппаратных закладок: возможно ли 100% обнаружение?](#обнаружение-аппаратных-закладок-возможно-ли-100-обнаружение)
- [Техники физического осмотра](#техники-физического-осмотра)
- [Анализ функционального поведения](#анализ-функционального-поведения)
- [Анализ по побочным каналам](#анализ-по-побочным-каналам)
- [Примеры кода: Сканирование аппаратных средств и обработка данных](#примеры-кода-сканирование-аппаратных-средств-и-обработка-данных)
- [Стратегии смягчения последствий аппаратных закладок](#стратегии-смягчения-последствий-аппаратных-закладок)
- [Доверие и управление цепочкой поставок](#доверие-и-управление-цепочкой-поставок)
- [Технические меры по смягчению](#технические-меры-по-смягчению)
- [Заключение](#заключение)
- [Источники](#источники)
---
## Введение
Возрастающая интеграция вычислительных устройств во все аспекты современной жизни — от персональной электроники до критически важной инфраструктуры — сделала безопасность полупроводников приоритетной задачей. В то время как много внимания уделяется уязвимостям в программном обеспечении и эксплуатации, более коварная угроза скрывается под поверхностью: **аппаратные закладки на базе чипов**.
Аппаратная закладка, особенно на уровне чипа или интегральной схемы (ИС), предоставляет **непреднамеренный, скрытый вход** для злоумышленников. Такие закладки глубоко встроены в физическую структуру кремниевых чипов, что зачастую делает их крайне сложными для обнаружения или устранения.
В этом исчерпывающем обзоре мы стремимся:
- Разъяснить, что такое аппаратные закладки, как они создаются и почему они опасны.
- Привести примеры из реального мира и академические примеры аппаратных закладок.
- Обсудить, как эти закладки эксплуатируются в области кибербезопасности.
- Предложить пути анализа от начального уровня до продвинутого, включая **стратегии обнаружения**, обсуждение возможности 100% обнаружения и практические примеры кода для сканирования и анализа.
- Предложить стратегии смягчения.
Будь вы новичок в кибербезопасности, инженер по аппаратному обеспечению или заинтересованный читатель, это руководство поможет вам понять технический ландшафт безопасности аппаратных средств на базе чипов.
---
## Что такое аппаратная закладка?
**Определение:**
Аппаратная закладка — это *преднамеренное или случайное изменение* на аппаратном уровне (часто внутри полупроводникового устройства или ИС), которое предоставляет **скрытые пути доступа, переопределения или управления** вне рамок запланированных или документированных функций, позволяя злоумышленникам обходить нормальные границы доверия устройства.
> "Аппаратная закладка — это не просто функция доступа, это преднамеренный обход, переопределение или скрытый путь управления, встроенные ниже обычной границы доверия."
> — Источник: [nhimg.org/glossary/hardware-backdoor](https://nhimg.org/glossary/hardware-backdoor/)
### Ключевые характеристики аппаратных закладок
- **Уровень работы:** Работает ниже уровня программного обеспечения, микропрограммного обеспечения и, потенциально, ниже корня доверия системы.
- **Скрытность:** Разработаны для обхода обнаружения с помощью обычных методов работы, отладки или диагностики.
- **Постоянство:** Часто изготовлены непосредственно в кремнии, что делает их физически стойкими.
- **Механизм срабатывания:** Может срабатывать по определенным последовательностям ввода, условиям работы или удаленно.
- **Цель:** Может быть вставлена умышленно (злоумышленно/мошеннически) или случайно (из-за ошибки или непредвиденных взаимодействий).
**Примеры включают:**
- Недокументированные тестовые или отладочные режимы в процессорах.
- Злонамеренная логика, вставленная в процессе проектирования или производства чипа.
- Скрытые наборы команд.
- Аппаратные трояны (например, измененная функциональность цепей при определенных триггерах).
---
## Как работают закладки на базе чипов
### Векторы атаки: проектирование, производство и цепочка поставок
Аппаратные закладки могут быть введены на различных этапах жизненного цикла чипа:
1. **Этап проектирования:**
- *Манипуляции с спецификациями:* Злонамеренные изменения в коде HDL (язык описания аппаратуры), например, VHDL/Verilog файлы.
- *Сторонние IP-блоки:* Недоверенные проприетарные блоки, используемые без полного обзора исходников.
2. **Этап изготовления или производства:**
- *Подделка на уровне завода:* Злоумышленники на контрактных заводах могут тонко изменить фотошаблоны или слои чипов.
- *Подделка или замена компонентов* в цепочке поставок полупроводников.
3. **После изготовления/сборки:**
- *Злонамеренное прошивание микропрограммного обеспечения.*
- *Замена чипов* на готовых платах.
### Типы аппаратных закладок
Закладки на базе чипов (часто называемые и **аппаратными троянами**) могут быть классифицированы по *функции,* *расположению* и *механизму срабатывания*:
#### По функции
- **Утечка информации:** Например, кража криптографических ключей.
- **Изменение функциональности:** Например, снижение энтропии генератора случайных чисел, обход аутентификации.
- **Отказ в обслуживании (DoS):** Например, вывод чипа из строя при заданном триггере.
#### По механизму срабатывания
- **Всегда активные закладки:** Закладка всегда активна.
- **Триггерные закладки:** Активируются только при заранее определённых условиях (например, по специфической последовательности ввода или сигналу).
- **Удаленно активируемые закладки:** Активируются посредством внешних сигналов или сетевых пакетов.
#### По расположению
- **Цифровая логика:** Добавленные ворота, альтернативные пути, изменённые логические схемы.
- **Аналоговые/физические:** Изменения аналоговых свойств (например, пороги напряжения), редко обнаруживаются с помощью стандартных тестов цифровой логики.
---
## Значимые примеры из реального мира
### Кейс: Предполагаемая закладка на материнской плате
Одним из самых широко освещавшихся инцидентов был отчет Bloomberg в 2018 году («Большая хакерская атака»), предполагающий, что китайские подрядчики вставили в материнские платы Supermicro крошечную микрочиповую закладку, поставляемую крупным американским компаниям. Несмотря на последующее отрицание всех сторон и отсутствие убедительных доказательств, представленных публично, история подчеркнула правдоподобие и ужасающую скрытность закладок на уровне чипов.
- **Вектор атаки:** Введение в цепочку поставок во время производства.
- **Воздействие:** Потенциальный удаленный доступ, эксфильтрация данных.
**Источник:**
- [Bloomberg Supermicro Chip Story](https://www.bloomberg.com/news/features/2018-10-04/the-big-hack-how-china-used-a-tiny-chip-to-infiltrate-america-s-top-companies)
### Академические демонстрации аппаратных троянов
#### Троян “AES Key Leakage”
Исследователи продемонстрировали небольшие изменения в аппаратуре криптографических ускорителей, вызывающие утечку ключей шифрования через кеши сторонних каналов или каналы мощности.
#### Троян “Remote Control”
На конференции [Black Hat 2013](https://www.blackhat.com/us-13/briefings.html#Shwartz) эксперты по безопасности представили, как *недокументированные тестовые/отладочные функции* в некоторых распространённых микроконтроллерах могут быть использованы для получения доступа уровня root.
#### Красные команды Агентства передовых оборонных исследовательских проектов (DARPA)
Программа [DARPA "Trust in ICs"](https://www.darpa.mil/program/trust-in-integrated-circuits) показала, что даже доверенные заводы могут пропустить искусно вставленные закладки при стандартных тестах после изготовления.
---
## Как аппаратные закладки используются в кибератаках
Хотя закладки на базе чипов встречаются реже, чем их программные аналоги, успешные случаи могут иметь разрушительные последствия.
### Влияние на уровне сети
- **Эксфильтрация данных:** Встроенные закладки могут переадресовывать конфиденциальные данные (ключи шифрования, пароли) через сетевые соединения, которые обходят обычный мониторинг или, например, используют электромагнитное излучение.
- **Команда и управление:** Чипы с режимами "прослушивания" закладок могут получать внешние сигналы (сетевые пакеты, RF и т.д.), которые запускают злонамеренное поведение (ретрансляция, саботаж, повышение привилегий).
### Последствия на уровне устройства
- **Обход безопасной загрузки или аутентификации:** Атакующие могут обойти проверки уровней микропрограммного обеспечения или ОС, выполнив недокументированные аппаратные команды.
- **Повышение привилегий:** Злоумышленники могут повысить привилегии кода до уровня root/system с помощью злонамеренных инструкций или логики, даже при наличии гипервизоров.
- **Постоянный отказ в обслуживании:** Чипы могут "самоуничтожиться" или стать непригодными для использования при срабатывании.
#### Пример: 100% обнаруживаемые атаки через закладки в сети
В [обсуждении Stack Exchange по безопасности](https://security.stackexchange.com/questions/200578/100-detectable-backdoor-attacks-on-network), эксперты отмечают, что некоторые атаки через аппаратные закладки обнаруживаются только тогда, когда атакующий пытается использовать закладку через сеть (например, аномальный трафик, нарушения протокола). Однако многие закладки на чипах могут оставаться в спящем режиме и быть невидимыми годами.
---
## Обнаружение аппаратных закладок: возможно ли 100% обнаружение?
Обнаружение аппаратных закладок представляет собой значительную открытую задачу, особенно тех, которые спроектированы для скрытности. Вот разбор методов обнаружения, их сильных и слабых сторон.
### Техники физического осмотра
- **Изображение и обратное проектирование:**
- **Декапсуляция:** Удаление упаковки чипа для доступа к кристаллу.
- **Сканирующая электронная микроскопия (СЭМ):** Используется для получения изображений и сравнения макетов кристаллов с известными хорошими эталонными чипами.
- **Рентгеновская визуализация:** Используется для неинвазивного анализа.
- **Ограничения:**
- Расходы, время и техническая сложность.
- Непригодно для массового внедрения или коммерческих потоков продукции.
### Анализ функционального поведения
- **Встроенный самотест (BIST):** Некоторые чипы выполняют самотесты при загрузке. BIST редко охватывают всю логику и могут не сработать на спящие трояны.
- **Тестирование с эталонной моделью:** Сравните выходы подозрительного чипа с "золотым" (доверенным) чипом для тех же входов.
- **Ограничение:** Может пропустить закладки, срабатывающие при редких/специфических условиях.
### Анализ по побочным каналам
- **Профилирование потребления энергии:**
Различия в профилях потребления энергии чипом во время работы могут указывать на скрытую логику, особенно при активации или срабатывании закладки.
- **Анализ времени:**
Поиск увеличенного/уменьшенного времени обработки по определенным шаблонам ввода.
- **Электромагнитный анализ:**
Обнаружение аномалий излучения, соответствующих скрытым функциям связи.
### Примеры кода: Сканирование аппаратных средств и обработка данных
**Хотя физические методы и методы на основе осциллографов являются ключевыми, некоторые поведенческие аномалии могут быть обнаружены с помощью ** инструментов на стороне программного обеспечения** в рамках продвинутых рутин обеспечения аппаратной безопасности (например, в Linux, BSD, Windows):**
#### 1. Перечислите подключенные устройства и проанализируйте идентификаторы производителей/моделей
**Bash: Сканирование устройств PCI (пример для Linux)**
```bash
# Перечислите все устройства PCI и их идентификаторы производителей/моделей (чаще всего для обнаружения подозрительной или неизвестной аппаратуры)
lspci -nn | grep -v "known-vendor-string"
- Замените "known-vendor-string" на Intel, AMD и т.д.
2. Используйте Python для выполнения парсинга и флагирования неизвестных устройств
import subprocess
KNOWN_VENDORS = {"8086", "10de", "1002"} # Пример идентификаторов поставщиков PCI для Intel, NVIDIA, AMD
def get_pci_devices():
output = subprocess.check_output(['lspci', '-nn']).decode()
devices = []
for line in output.splitlines():
if "[" in line and "]" in line:
vendor = line.split("[")[-1].split(":")[0]
devices.append((line, vendor))
return devices
def find_unknown_devices():
devices = get_pci_devices()
unknown = [dev for dev, vendor in devices if vendor not in KNOWN_VENDORS]
return unknown
if __name__ == "__main__":
unknown_devs = find_unknown_devices()
if unknown_devs:
print("Обнаружены неизвестные устройства PCI!")
for dev in unknown_devs:
print(dev)
else:
print("Все устройства PCI распознаны.")
3. Поведенческое тестирование через I/O и задержку
Сценарий Bash: Тестирование задержки устройства для обнаружения аномалий
#!/bin/bash
for device in /dev/sd*; do
echo "Тестирование $device"
time dd if=$device of=/dev/null bs=1M count=10 conv=sync
done
- Проверьте наличие необычных задержек или ошибок при доступе к не системным дискам или периферийным устройствам.
4. Захват по побочному каналу (продвинутая: Требуется оборудование)
- Анализ мощности: Требуется внешние зонды и осциллографы.
- Мониторинг USB/Serial: Используйте
usbmonв Linux:
sudo modprobe usbmon
sudo cat /sys/kernel/debug/usb/usbmon/0u > usb_traffic.log
# Отфильтруйте не имеющиеся в белом списке устройства в журнале с помощью grep или Python
Стратегии смягчения последствий аппаратных закладок
Доверие и управление цепочкой поставок
- Доверенные цепочки поставок: Источники чипов только от проверенных, проверенных источников; запрос документов на изготовление и обработку.
- Физические аудиты: Случайный отбор чипов и сторонняя проверка кристаллов.
- Упаковка с индикаторами вмешательства: Защита от внедрения после производства.
Технические меры по смягчению
- Избыточное проектирование: Тройная модульная избыточность (TMR) для предотвращения отказа модуля с трояном.
- Аттестация чипов во время работы: Чипы аутентифицируют себя к корневому компоненту доверия во время запуска.
- Мониторинг боковых каналов: Мониторинг мощности, излучения или ввода/вывода во время работыз аномальными паттернами.
- Ограничение доступа к тестовым/отладочным функциям: Однократно программируемые (OTP) предохранители, отключающие тестовые режимы после изготовления.
- Сквозное шифрование на межсоединениях: Предотвращает внутреннее прослушивание или утечку данных через аппаратные средства.
Заключение
Закладки на базе чипов представляют собой одни из самых опасных и тонких угроз в мире кибербезопасности и аппаратного инжиниринга. В отличие от программных закладок, которые часто могут быть исправлены с помощью обновлений, аппаратные закладки обычно не подлежат исправлению после вывода устройства на рынок.
Основные выводы
- Обнаружение сложно: Нет известного метода, гарантирующего 100% обнаружение, хотя многослойные стратегии помогают.
- Лучше предотвратить: Безопасные цепочки поставок, сторонние аудиты и защита от вскрытия более эффективны, чем обнаружение в поле.
- Будьте бдительны: Если вы работаете с критическими системами, рассматривайте аппаратные средства из неизвестных источников как недоверенные.
Что дальше?
- Ожидайте развития исследований в области аттестации чипов, водяных знаков аппаратуры и обнаружения аномалий на основе ИИ.
- По мере того, как злоумышленники становятся более изощренными, должны быть и наши методы защиты.
Источники
- Обзор аппаратных закладок на базе чипов (Takshashila)
- Аппаратные закладки - определение и примеры (Nhimg.org)
- 100% обнаруживаемые атаки через закладки в сети (Security Stack Exchange)
- Отчет Bloomberg о материнской плате Supermicro
- DARPA - Trust in Integrated Circuits (Архив)
- Black Hat 2013 - Взлом встроенных микроконтроллеров
- Документация по утилите Linux lspci
- USBMon (документация ядра Linux)
- IEEE Статья: Обнаружение аппаратных троянов
- Wikipedia: Аппаратные трояны
Добавьте это руководство в закладки для регулярных обновлений или подпишитесь на детальные публикации по пересечению кибербезопасности и проектирования аппаратуры!
Поднимите свою карьеру в кибербезопасности на новый уровень
Если вы нашли этот контент ценным, представьте, чего вы могли бы достичь с нашей комплексной 47-недельной элитной обучающей программой. Присоединяйтесь к более чем 1200 студентам, которые изменили свою карьеру с помощью техник Подразделения 8200.
