Неужели лишь изменение аппаратного дизайна поможет решить проблему, сообщает securitylab.ru.
Фото: securitylab.ru
Исследователи из Samsung, Сеульского национального университета и Технологического института Джорджии представили новую атаку «TIKTAG», нацеленную на технологию Memory Tagging Extension (MTE) в архитектуре ARM. Атака позволяет обойти защитный механизм с вероятностью успеха более 95%.
Memory Tagging Extension (MTE) была введена в ARM v8.5-A для предотвращения повреждений памяти. Она использует 4-битные теги для 16-байтных блоков памяти, чтобы защитить от атак на целостность памяти, проверяя соответствие тегов указателей и памяти.
Исследователи обнаружили, что используя всего два инструмента, TIKTAG-v1 и TIKTAG-v2, можно через спекулятивное исполнение добиться утечки тегов памяти MTE с высокой вероятностью успеха.
Хотя утечка тегов напрямую не раскрывает конфиденциальные данные, такие как пароли или ключи шифрования, она позволяет злоумышленникам подорвать защиту MTE, делая систему уязвимой для атак на повреждение памяти.
TIKTAG-v1 использует спекулятивное сжатие в предсказании ветвлений и предвыборке данных процессора. Этот инструмент эффективен против ядра Linux, особенно в функциях, связанных со спекулятивным доступом к памяти. Атака требует манипуляции указателями ядра и измерения состояния кэша для определения тегов памяти.
TIKTAG-v2 использует механизм перенаправления данных в спекулятивном исполнении, когда значение сохраняется по адресу памяти и немедленно загружается с этого же адреса. Соответствие тегов позволяет успешно загрузить значение и изменить состояние кэша, в противном случае, перенаправление блокируется и состояние кэша остаётся неизменным. Таким образом, состояние кэша после спекулятивного исполнения позволяет определить результат проверки тегов.
Исследователи продемонстрировали эффективность TIKTAG-v2 против браузера Google Chrome, особенно его движка V8 JavaScript, что открывает путь для эксплуатации уязвимостей повреждения памяти в процессе рендеринга.
Научная работа, опубликованная на arxiv.org, предлагает следующие меры по защите от атак TIKTAG:
- Модификация аппаратного дизайна для предотвращения изменения состояния кэша спекулятивным исполнением на основе результатов проверки тегов.
- Вставка барьеров от спекуляции (например, инструкций sb или isb) для предотвращения спекулятивного исполнения критических операций с памятью.
- Добавление инструкций заполнения для расширения окна исполнения между инструкциями ветвления и доступом к памяти.
Улучшение механизмов изоляции для строго ограничения спекулятивного доступа к памяти в безопасных областях.
ARM признала серьёзность проблемы, однако опубликовала бюллетень, где указала, что утечка тегов не считается компрометацией архитектуры, так как теги не предназначены для хранения секретных данных.
Команда безопасности Chrome также признала проблему, но решила не исправлять её, так как песочница V8 не предназначена для обеспечения конфиденциальности данных памяти и тегов MTE. Более того, браузер Chrome в настоящее время не включает защиту на основе MTE по умолчанию, что делает её менее приоритетной для немедленных исправлений.
Тем не менее, сообщения о проблемах с MTE на устройствах Pixel 8 были переданы команде безопасности Android в апреле 2024 года и были признаны аппаратным дефектом.
Источник securitylab.ru