Новый метод CFA обнаруживает атаки изгиба потока управления без перебора
Исследователи представили KS-CFA — метод аттестации потока управления (CFA), который выявляет атаки изгиба потока управления (CFB) без необходимости перебора путей или значений. В отличие от существующих решений, KS-CFA использует символьное выполнение и выборочную идентификацию переменных, зависимы

Исследователи представили KS-CFA — метод аттестации потока управления (CFA), который выявляет атаки изгиба потока управления (CFB) без необходимости перебора путей или значений. В отличие от существующих решений, KS-CFA использует символьное выполнение и выборочную идентификацию переменных, зависимых от внешнего ввода, что позволяет точно детектировать отклонения в четырёх типах передач управления: косвенные вызовы, условные и косвенные переходы, а также возвраты. Этот подход обещает повысить безопасность встраиваемых устройств, особенно в контексте удалённой верификации.
Атаки CFB представляют собой серьёзную угрозу, поскольку злоумышленник использует легальные рёбра графа потока управления, манипулируя флагами ветвлений, счётчиками циклов и другими данными времени выполнения. Традиционные методы обнаружения либо требуют перебора большого пространства измерений, что неэффективно, либо покрывают лишь часть атак, либо полагаются на низкоуровневые аппаратные изменения, которые сложно внедрить. KS-CFA предлагает альтернативу, которая работает без этих недостатков, что делает его привлекательным для разработчиков систем безопасности.
Как работает KS-CFA
Метод KS-CFA состоит из двух этапов. На стороне доказывающего устройства, работающего в доверенном окружении выполнения (TEE), записывается трасса потока управления и внешние входные данные. Затем верификатор воспроизводит путь через однопутевое символьное выполнение, предсказывая каждую передачу управления. Если возникает расхождение между предсказанным и фактическим поведением, это сигнализирует об атаке. Ключевое преимущество — отсутствие необходимости в переборе путей или значений, что значительно снижает вычислительную нагрузку.
Исследователи реализовали KS-CFA на базе RISC-V Keystone TEE и протестировали его с набором тестов Embench-IoT на эмуляторе QEMU и FPGA-платформе Rocket (NiteFury II). Результаты показали, что накладные расходы на стороне доказывающего относительно неаттестованного выполнения составляют от 6,8 до 20,5 раз на QEMU и от 6,7 до 32,2 раз на FPGA. Хотя это может показаться значительным, верификация при этом не требует перебора, что делает метод практичным для многих сценариев.
Какие типы атак может обнаружить KS-CFA?
KS-CFA нацелен на четыре типа передач управления: косвенные вызовы, условные и косвенные переходы, а также возвраты. Эти точки часто используются в атаках CFB для перенаправления выполнения на вредоносный код. Метод эффективно выявляет отклонения, вызванные манипуляциями с флагами ветвлений или счётчиками циклов, которые зависят от внешнего ввода. Однако исследователи отмечают, что эффективность против более сложных атак, манипулирующих данными, не связанными с внешним вводом, пока не подтверждена.
Почему это важно для безопасности встраиваемых устройств
Встраиваемые устройства, такие как IoT-датчики и промышленные контроллеры, часто работают в условиях ограниченных ресурсов и не имеют сложных механизмов защиты. Атаки CFB могут нарушить их работу, приводя к утечке данных или отказу в обслуживании. KS-CFA предлагает решение, которое не требует аппаратных изменений и может быть реализовано на существующих платформах с TEE, таких как RISC-V Keystone. Это особенно актуально для производителей, которым нужна удалённая верификация целостности выполнения без значительных накладных расходов.
Метод также может быть интересен исследователям в области аппаратной безопасности и инженерам, работающим с RISC-V и TEE. Поскольку KS-CFA использует символьное выполнение, он может быть адаптирован для других архитектур, хотя на данный момент данные о производительности за пределами RISC-V отсутствуют.
Ограничения и перспективы
Несмотря на многообещающие результаты, KS-CFA имеет ограничения. Исследователи не уточняют, насколько эффективен метод против атак, использующих манипуляции с данными, не связанными с внешним вводом. Также не приведены данные о производительности на других архитектурах, кроме RISC-V. Для широкого внедрения потребуется дальнейшая валидация и оптимизация, особенно в части снижения накладных расходов на стороне доказывающего.
Тем не менее, KS-CFA представляет собой значительный шаг вперёд в области аттестации потока управления. Его способность обнаруживать атаки без перебора путей или значений делает его привлекательным для практического использования. Разработчики систем безопасности встраиваемых устройств могут рассмотреть его как альтернативу существующим методам, особенно в контексте RISC-V и TEE.