Защита программируемых пользователем вентильных массивов от атак



Если вы разговаривали по мобильному телефону, просматривали Интернет или смотрели шоу по телевизору с разрешением 4K, вы получили выгоду от программируемых вентильных матриц (FPGA). Другие примеры работы ПЛИС включают поисковые алгоритмы Google, быстро возвращающие результаты, и беспилотные автомобили, которые различают лежачих полицейских и мусор на дороге. Эти интегральные схемы, предназначенные для обработки больших объемов данных, будут важны для будущих технологий, таких как беспилотные автомобили, аэрокосмическая промышленность, высокопроизводительные вычисления, медицинские системы и искусственный интеллект/машинное обучение. По мере того, как обработка данных смещается от периферии к ядру, требования к производительности и безопасности ПЛИС возрастают.

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

ПЛИС должны быть универсальными, настраиваемыми и мощными, но это может быть палкой о двух концах. Поскольку битовые потоки могут получить доступ к низкоуровневым функциям, если злоумышленник сможет успешно взломать чип, он может установить лазейки для последующего доступа, изменить работу FPGA или физически саботировать систему. Примером этого в дикой природе является уязвимость Starbleed 2020 года, затрагивающая устройства Xilinx 7-й серии, которая позволяла злоумышленникам загружать свой собственный вредоносный код на уязвимые устройства.

Хотя ПЛИС обычно не были объектом широкомасштабных атак, современный ландшафт угроз быстро меняется, требуя, чтобы эти устройства были универсальными и обеспечивали безопасность, эквивалентную их платформенным аналогам. Учитывая, что FPGA могут быть частью физических систем в аэрокосмической, медицинской или промышленной областях, любое нарушение безопасности может быть потенциально серьезным. Атакуемый битовый поток потенциально может привести к внедрению бэкдоров и неожиданной функциональности, что, в зависимости от устройства, может привести к физическому повреждению системы, пользователей или инфраструктуры.

Как защитить оборудование FPGA
К счастью, современные ПЛИС включают в себя хорошо известные в отрасли функции безопасности, такие как шифрование битового потока, многофакторная аутентификация, аттестация платформы и хранение ключей. Здесь я сосредоточусь на трех менее известных функциях: защите от атак по сторонним каналам, защите от несанкционированного доступа и защите от клонирования.

  • Защита от атак по сторонним каналам: Традиционные атаки по сторонним каналам — это пассивные атаки, при которых происходит утечка секретов путем наблюдения за функциональностью системы. В ПЛИС используются различные методы для ограничения утечек по боковым каналам и поверхностей атак. Например, некоторые функции способны защитить ключевые и конфиденциальные данные от неинтрузивных атак.
  • Технология защиты от взлома: Эксплуатация оборудования часто требует физической атаки. В идеале ПЛИС должна уметь обнаруживать атаку и каким-то образом защищать себя — например, сбросом чувствительных ключей. Технология защиты от взлома отслеживает характеристики системы, такие как напряжение, температура и внутренние часы. Эти измерения можно использовать для определения того, была ли система потенциально скомпрометирована или работает непредвиденным образом. После обнаружения потенциального события несанкционированного доступа система может отреагировать на него, перезагрузив устройство, отключив определенные функции или очистив конфиденциальные криптографические активы.
  • Физически неклонируемые функции (PUF): PUF генерируют уникальный для устройства неклонируемый ключ, который разработчики могут использовать для аутентификации устройства и упаковки ключей. Он используется в процессе настройки для защиты ключа и создания материала ключа или для идентификации устройства. Технология PUF традиционно основана на уникальном неклонируемом шаблоне инициализации SRAM. Он основан на выделенных аппаратных источниках энтропии, но также имеет программно-обновляемый алгоритмический компонент для устранения изменений и исправлений, возникающих в результате действий по определению характеристик с более длительным сроком службы. Технология PUF предоставляет методологию на основе встроенного программного обеспечения для алгоритмической настройки и оптимизации по мере того, как становится доступным больше данных о характеристиках.

    Смысл PUF состоит в том, чтобы извлечь уникальные кремниевые отпечатки пальцев из присущих устройству вариаций процесса. Эти вариации трудно воспроизвести или клонировать. Даже производитель не может их воспроизвести. Однако на физическом уровне они демонстрируют очень последовательное и уникальное поведение. Эти уникальные кремниевые отпечатки пальцев затем используются в качестве источника энтропии для создания криптографического корневого ключа чипов.

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

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

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

https://cyberxhack.org/