
Быстрое принятие дизайнов на основе чиплетов революционизирует индустрию полупроводников, обеспечивая более высокую производительность, гибкость и эффективность. Однако этот новый подход приносит с собой развивающийся ряд проблем с безопасностью, особенно в отношении атак побочными каналами (SCA) и микроархитектурных уязвимостей.
В этой статье мы исследуем пересечение аппаратного проектирования, чиплетов и безопасности. Мы разберём атаки побочными каналами — от основ до продвинутых угроз, обсудим избыточные межсоединения как стратегию безопасности, предоставим примеры реальных атак и защит, а также представим практические примеры кода для обнаружения и анализа угроз. Это руководство подходит как для новичков, так и для опытных профессионалов.
Чиплеты — это модульные строительные блоки из кремния. Вместо того, чтобы создавать все функции системы на одном большом монолитном кристалле (что дорого и подвержено проблемам с выходом), дизайнеры создают меньшие функциональные блоки — чиплеты, которые индивидуально производятся, а затем собираются в пакет с использованием продвинутых межсоединений.
Пример:
Современный процессорный пакет может содержать отдельные чиплеты для вычислительных ядер, кэш-памяти, ввода/вывода, контроллеров памяти и ИИ ускорителей.
Основные технологии:
Хотя чиплеты предлагают явные экономические и технологические преимущества, они вносят новые риски безопасности и надежности:
Атаки побочными каналами (SCAs) используют информацию, утекшую через косвенные средства, такие как потребление энергии, вариации времени, электромагнитные излучения и изменения состояния кэша/TLB, чтобы извлечь секреты, такие как криптографические ключи или личные данные.
Побочные каналы не разрушают алгоритм — они разрушают реализацию.
Общие побочные каналы:
Атака "бинокль" [1, 2] демонстрирует, как микроархитектурные побочные каналы могут открыть новые векторы атаки.
Механизм:
Переводы страниц — как процессор переводит виртуальную память в физическую — могут замедляться или ускоряться в зависимости от состояния памяти других чиплетов или ядер. Измеряя эти временные вариации, злоумышленник может извлечь чувствительные операции, происходящие в другом месте на чипе или в пакете.
Влияние на системы на базе чиплетов:
Поскольку операции памяти охватывают несколько чиплетов и интерфейсов, существует больше мест для этих утечек. Кросс-чиплетный кэш, переводы страниц или TLB активность увеличивают риск.
Rowhammer — это знаменитая атака, которая вызывает сбой битов, нацеливаясь на DRAM ячейки путем быстрого открывания и закрывания соседних строк. В системах на базе чиплетов, если контроллеры памяти отделены от процессоров или интегрированы как собственные чиплеты, чувствительность к Rowhammer может увеличиться из-за кросс-чиплетного шума и временных колебаний.
# Пример: Использование rowhammer-test (Утилита для Linux)
sudo apt-get install rowhammer-test
sudo rowhammer-test
# Мониторинг вывода на наличие битовых сбоев
Внимание: Запускайте этот тест только на неответственном оборудовании!
Spectre и Meltdown используют спекулятивное выполнение — ключевую функцию производительности в процессорах. Атакающие могут использовать различия во времени доступа к кэшу, чтобы извлекать секретную информацию (например, пароли) из других программ.
Пример измерения времени доступа к кэшу:
// Псевдокод для измерения времени доступа к кэшу
start = rdtsc();
access_memory(address);
end = rdtsc();
printf("Время: %d\n", end - start);
Атакующие вытесняют линии кэша и зондируют время для извлечения данных.
Межсоединение — провода, трассы, протоколы, соединяющие чиплеты — это как основа, так и наиболее подверженная часть пакетов чиплетов. Безопасность здесь столь же важна, как и в вычислительных блоках.
Избыточные межсоединения означают добавление параллельных путей данных (основной путь данных + боковой/безопасный путь). Их цели:
Пример конструкции:
Боковой путь можно использовать для:

Изображение: Пример избыточных данных и боковых каналов мониторинга состояния в межсоединениях чиплетов.
Современные платформы предоставляют доступ к аппаратным счетчикам, журналам следования и другой телеметрии, которые могут выявлять аномальную активность, связанную с побочными каналами.
Популярные инструменты:
perf (Инструмент для мониторинга производительности в Linux)perf в Linux# Список доступных событий оборудования
perf list
# Мониторинг промахов кэша L1 для процесса с PID 1234:
sudo perf stat -e L1-dcache-load-misses -p 1234 sleep 10
# Мониторинг промахов TLB для всех процессоров в течение 30 секунд
sudo perf stat -e dTLB-load-misses -a sleep 30
Предположим, у вас есть IPMI или встроенные датчики для мониторинга энергопотребления процессора или пакета чиплетов.
import time
import subprocess
def read_power():
# Замените на команду реального считывания IPMI или датчиков
output = subprocess.getoutput('ipmitool sensor | grep "CPU Power"')
# Пример анализа вывода
try:
return float(output.split('|')[1].strip().split(' ')[0])
except:
return None
while True:
power = read_power()
if power and power > 120: # порог в ваттах
print(f"ВНИМАНИЕ: Обнаружено высокое энергопотребление: {power}W")
time.sleep(1)
#!/bin/bash
perf stat -e L1-dcache-load-misses -a sleep 10 2>&1 | grep "L1-dcache-load-misses"
Этот скрипт выводит краткое резюме активности промахов кэша в системе каждые 10 секунд. Если вы видите внезапный необъяснимый всплеск, это может потребовать более глубокого расследования.
Счетчики производительности не являются инструментами безопасности сами по себе, но необычные шаблоны могут выявлять активность побочных каналов:
Продвинутое использование: Профилирование трафика межсоединений на энтропию может выявить скрытые каналы.
Поскольку революция чиплетов ускоряется, аппаратная безопасность переходит из разряда второстепенных вопросов в бизнес-императив. Поверхность атаки изменяется: модульность увеличивает как возможности, так и риски.
Эффективная защита потребует синергии аппаратного обеспечения, микропрограммного обеспечения и оперативного мониторинга. Полупроводниковые компании, системные интеграторы и специалисты по безопасности должны работать вместе, чтобы обеспечить безопасность не только логики внутри каждого чиплета, но и "ткани", связывающей их вместе.
Принимая избыточные межсоединения, используя мониторинг состояния путем обходных путей и используя современные инструменты обнаружения, мы можем укрепить системы на базе чиплетов против атак побочными каналами и микроархитектурных атак — защищая всё, от суперкомпьютеров с ИИ до критически важных транспортных средств.
perf в LinuxИнтересуют специфические симуляции атак, разборы кода или архитектурные схемы? Оставляйте свои запросы в комментариях!
Если вы нашли этот контент ценным, представьте, чего вы могли бы достичь с нашей комплексной 47-недельной элитной обучающей программой. Присоединяйтесь к более чем 1200 студентам, которые изменили свою карьеру с помощью техник Подразделения 8200.