Proof-of-concept от Google наглядно демонстрирует опасность атаки «Spectre»

16 марта 2021 г. 11:09
 782

Google выпустила proof-of-concept (PoC), демонстрирующий практическую атаку на JavaScript-движок браузера, с целью утечки информации из его памяти.

Google выпустила proof-of-concept (PoC), демонстрирующий практическую side-channel атаку «Spectre» на JavaScript-движок браузера, с целью утечки информации из его памяти.

Исследователи Google в 2018 году подробно описали два варианта «Spectre», один из которых – «вариант 1» (CVE-2017-5753) - касался использования Javascript против браузеров. «Spectre» была нацелена на использование процесса, называемого «спекулятивным исполнением», на современных процессорах для утечки конфиденциальных данных, например паролей, и вывода данных на сервер злоумышленнников.

Веб-разработчики могут посетить новую страницу Google - https://leaky.page - чтобы увидеть демо эксплоита «Spectre» на JavaScript, видео-демо на YouTube и подробное описание proof-of-concept на GitHub.

Google выпустила PoC для разработчиков веб-приложений чтобы показать, почему важно внедрять усовершенствования на уровне приложений. Как подробно описано в документе Google на W3C, «данные разработчика не должны внезапно попадать в процесс атаки».

В то время как PoC демонстрирует атаку «Spectre» на JavaScript-движок Chrome 88 на процессоре Intel Core i7-6500U «Skylake» под Linux, Google отмечает, что ее можно легко подстроить под другие процессоры, браузеры и операционные системы. Она даже оказалась успешной на процессоре Apple M1 Arm с небольшими модификациями. Атака может привести к утечке данных со скоростью 1 кБ в секунду.

Основными компонентами PoC являются гаджет «Spectre» версии 1 или код, запускающий управляемое атакующим «транзиентное выполнение» и side-канал или «способ наблюдения за побочными эффектами транзиентного выполнения».

«Веб-платформа полагается на происхождение как на фундаментальный признак безопасности, и браузеры довольно хорошо работают с предотвращением явной утечки данных из одного источника в другой», - пояснил Майк Вест из Google.

«Атаки типа «Spectre», однако, показывают, что нам еще предстоит проделать работу по предотвращению неявной утечки данных». Side-каналы, используемые в этих атаках, доказывают, что злоумышленники могут считывать любые данные, вводимые в ходе процесса, который содержит код злоумышленника. Эти атаки сегодня достаточно практичны и представляют реальный риск для пользователей».

Хотя компания Google и другие производители браузеров разработали усовершенствования для защиты от «Spectre», такие как изоляция сайта, они не предотвращают эксплуатацию «Spectre» - объясняют Стивен Рёттгер и Артур Янк, инженеры Google по информационной безопасности.

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

«Разработчики операционных систем и веб-браузеров реализовали важные встроенные защиты там, где это возможно (включая изоляцию сайта с out-of-process iframes и Cross-Origin Read Blocking в Google Chrome, или Project Fission в Firefox), дизайн существующих веб-интерфейсов API все равно позволяет данным случайно попасть в процесс атакующего» - поясняют исследователи.

Google также выпустила новый прототип расширения Chrome под названием «Spectroscope», сканирующее приложение в поисках ресурсов, которые могут потребовать включения дополнительной защиты. 

Рёттгер и Янк отмечают, что атака «Spectre» Варианта 1 может быть отражена на программном уровне. Тем не менее, команда V8 обнаружила, что защита от атак «Spectre» Варианта 4 или Speculative Store Bypass (SSB) «просто неосуществима на программном уровне». 

 

Перевод сделан со статьи: https://www.zdnet.com/