Вектор атаки iLeakage позволяет вытащить пароли из браузера Apple Safari

Вектор атаки iLeakage позволяет вытащить пароли из браузера Apple Safari

Вектор атаки iLeakage позволяет вытащить пароли из браузера Apple Safari

Исследователи разработали новый вектор кибератаки по сторонним каналам и дали ему имя «iLeakage». Его особенностью является впервые продемонстрированная работа против процессоров Apple Silicon и браузера Safari.

С помощью iLeakage, по словам специалистов, можно вытащить конфиденциальную информацию из «яблочного» браузера. Причём данные извлекаются с «практически идеальной» точностью.

Кстати, одним Safari проблема не ограничивается, поскольку iLeakage сработает и в случае с iOS-версиями Firefox, Tor и Edge. В сущности, новый вектор атаки представляет собой ещё одну реализацию знаменитой Spectre.

 

Вытащить сведения специалисты смогли, создав примитив (графический элемент), способный спекулятивно читать и сливать любой 64-битный указатель в адресном пространстве, которое Safari использует для рендеринга.

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

Новый подход задействовал JavaScript-API window.open, что позволило странице условного атакующего использовать то же адресное пространство, что задействуют произвольные страницы условной жертвы.

Проблема несоответствия типов данных (type confusion) допускает обход сжатой 35-битной адресации и защитных мер Apple и приводит к утечке конфиденциальных данных.

Специалисты разработали демонстрационный эксплойт на JavaScript и WebAssembly, а на видеороликах ниже показан вектор атаки в работе:

 

iLeakage, согласно описанию, работает против чипов Apple M1 и M2. С техническими деталями вектора можно ознакомиться в соответствующем отчёте (PDF). Список затронутых устройств выглядит так:

 

Apple узнала о iLeakage 12 сентября и успела выработать временную защиту для пользователей macOS:

  1. Открыть Терминал и запустить defaults write com.apple.Safari IncludeInternalDebugMenu 1 (открывает скрытое меню отладки в Safari).
  2. Открыть Safari и пройти в новое меню.
  3. Выбрать «WebKit Internal Features».
  4. Прокрутить до пункта «Swap Processes on Cross-Site Window Open» и активировать его.