Вступление Сегодня мы все в той или иной степени подвержены троянской угрозе.
Любое устройство, купленное в ближайшем магазине рядом с вашим домом, может служить не только вам потребителем, но и злоумышленником в своих целях.
Именно поэтому угрозу называют Троянской: в древнегреческой мифологии описан случай захвата с помощью дара целой крепости, который только на первый взгляд кажется таковым.
Что уж говорить о перехвате данных современных пользователей: паролей, реквизитов, личных сообщений.
Существует два основных типа троянов: программные и аппаратные.
Программный троян — это разновидность вредоносного ПО, которое маскируется под легальное программное обеспечение.
Как правило, это эмуляция бесплатного ПО или вложение в электронное письмо, а установка этой программы дает возможность выполнять ее скрытые истинные задачи: полный контроль над ПК, личными данными, транзакциями и т. д. Аппаратный троян также преследует примерно тех же целей, представляющих собой злонамеренное изменение электрических цепей в устройствах (чаще всего с целью кражи данных и паролей).
Допустим, вы покупаете в непроверенном магазине клавиатуру, а внутри этого устройства находится встроенная антенна (любой радиопередатчик), способная передать злоумышленнику введенные символы по радиосвязи.
Вообще, эта проблема часто возникает, когда компания проектирует интегральную схему (далее – ИС), но вынуждена обратиться к другой ненадежной компании для производства таких схем.
Звучит совсем небезопасно, правда? Сегодня существует множество способов защиты от программных троянских угроз и, что самое важное, они постоянно обновляются, поскольку как вредоносное ПО, так и аппаратное обеспечение «не спят», совершенствуясь с течением времени.
Самые простые рекомендации пользователю – регулярно обновлять программное обеспечение, пользоваться антивирусом и просто не переходить по непроверенным ссылкам в почте и Интернете.
Однако что делать с аппаратными угрозами? Оказывается, анализ угроз с использованием машинного обучения в последнее время становится все более популярным.
Именно об этом я и хотел поговорить сегодня.
Фундаментальные исследования
Исследователи из Университета Мэйдзё (Япония) предлагают анализировать сигналы энергопотребления при работе троянца и без него.Данные для решения такой задачи классификации предварительно обрабатываются для более точного анализа.
А именно, сигнал преобразуется с помощью дискретного преобразования Фурье (ДПФ) в частотную область, в которой можно обнаружить характерные частоты работы троянца.
Рисунок 1. Исследуемый сигнал энергопотребления
Рис.
2. Частотная область сигнала Далее на размеченных данных (где x — частота сигнала, а y — +-1 (с троянской угрозой или без нее)) обучается классификатор с помощью машины опорных векторов (SVM), что позволяет анализировать энергопотребление.
с хорошей точностью, чтобы вовремя выявить угрозу, сообщить об этом пользователю.
Стоит отметить, что эксперименты проводились на FPGA – достаточно популярной программируемой логической интегральной схеме.
Другой подход, более комплексный, был представлен в журнале Hardware and Systems Security в декабре 2018 года исследователями из Университета Флориды.
Дело в том, что существовавшие на тот момент подходы работали долго, с недостаточной точностью и лишь против небольшой части троянских угроз.
А основная идея этого нововведения заключается в следующем: микросхемы фотографируются с помощью сканирующего электронного микроскопа (СЭМ), а затем с помощью алгоритмов компьютерного зрения могут быть обнаружены даже незначительные изменения в схеме (как правило, анализируются транзисторы).
.
Подобные изменения указывают на наличие встроенной троянской угрозы.
Более детально анализируются две фотографии: первая — эталонная деталь микросхемы, а вторая — подозрительная деталь, которую мы хотим проверить на наличие трояна.
При этом мы знаем основные структурные особенности троянских угроз и, соответственно, по различиям фотографий можем определить местоположение и тип угрозы.
Этот подход, очевидно, гораздо менее энерго- и ресурсозатратен, в отличие от полной разборки ИП и ручного анализа на предмет поиска угрозы.
Теперь более подробно Аппаратные троянские угрозы классифицируются по следующим признакам:
- ее физические характеристики (определенные геометрические формы внутри ИС); это может быть как добавление/удаление в схему новых транзисторов, так и изменение существующих соединений, шин и т.п.
; Типичным примером здесь может быть изменение логического элемента с NAND на NOR в интересах злоумышленника;
- активация; Некоторые трояны постоянно крадут ваши данные, тогда как другие активируются только при определенных внешних/внутренних воздействиях.
- Базовые приготовления;
- быстрое фото с помощью микроскопа;
- выявление различий между эталонным образцом без трояна и рассматриваемым аналогичным образцом.
При приложении комплекса напряжений к рассматриваемой детали различные элементы проявляют себя более активно.
Алгоритм автоматический и умеет использовать нужные ему фотографии.
Также можно делать фотографии с разных расстояний, менять время съемки (время пребывания) и разрешение (от этого зависит качество съемки и, соответственно, результат; здесь рождается привычный для машинного обучения компромисс между временем работы алгоритма и качества обнаружения угроз).
Рис.
3. Зависимость качества изображения от внешнего напряжения, зума, времени съемки и разрешения Дальше всё просто: по выбранной метрике «похожести» анализируются схожие участки эталона и тестируемой микросхемы.
Все несоответствия дополнительно проверяются на предмет выявления одного из известных типов троянских угроз.
Рис.
4. ?Этапы выявления несоответствия исследуемой ИС сравнению с оригиналом Сегодня уже существует более продвинутый подход к поиску троянов с использованием машинного обучения без стандарта.
Сначала данные, как и раньше, предварительно обрабатываются для фотографий.
Рис.
5. Подготовка микросхемы с сим-карты телефона для поиска троянских угроз Далее делается фотография плюс несколько фильтров, дающих четкое черно-белое изображение.
Исследуемые участки схемы вырезаются на отдельные изображения и подаются на вход предсказателя, который классифицирует элемент как оригинальный или подозрительный.
Предиктором в данном случае является тот же SVM с RBF-ядром (для выявления нелинейных зависимостей данных).
Он обучается на наборе помеченных выборок, которые, короче говоря, получаются с помощью дискретного преобразования Фурье по элементам IC. Объяснение RBF с помощью DFT RBF (радиальная базисная функция) — функция преобразования исходного пространства признаков в новое нелинейным способом.
Дело в том, что линейная граница, построенная методом СВМ в новом пространстве, будет нелинейной в исходном.
Это позволяет с хорошей точностью строить классификаторы и выявлять нелинейности.
Конвейер обучения такого классификатора выглядит следующим образом:
Теги: #Машинное обучение #информационная безопасность #Инженерные системы #искусственный интеллект #Антивирусная защита #защита данных #Троян #аппаратная уязвимость #Троянский конь #обнаружение аномалийrbf_kernel_svm_clf = Pipeline([
-
Аудиофлай Af45M
19 Oct, 24 -
Бэкэнд Юнайтед #1. Винегрет. Объявление
19 Oct, 24 -
Xbox 360 Взломан
19 Oct, 24 -
«Средний Индекс» И Антибанковские
19 Oct, 24