Mastodon Mastodon Mastodon Mastodon

Выход из песочницы

Обновлено: · CyberSecureFox Editorial Team

Выход из песочницы (sandbox escape) — эксплуатация уязвимости, позволяющая коду вырваться из изолированной среды (песочницы браузера, виртуальной машины или контейнера) и действовать в основной системе с большими привилегиями.

Как работает выход из песочницы

Песочница ограничивает возможности кода: процесс рендеринга браузера не может читать файлы, гостевая виртуальная машина не может обращаться к хосту, приложение на iOS или Android не видит данные других приложений. Выход из песочницы использует изъян в самой границе изоляции, например:

  • ошибку в привилегированном процессе-брокере браузера, интерфейсах IPC или ядре операционной системы, доступном из песочницы;
  • уязвимость в эмулируемом оборудовании или гипервизоре (побег из ВМ);
  • ошибку в среде выполнения контейнеров или в ядре, которая позволяет процессу в контейнере управлять хостом (побег из контейнера).

Поэтому современные атаки на браузеры используют цепочки эксплойтов: одна уязвимость нужна для выполнения кода в процессе рендеринга, вторая — для выхода из песочницы, а нередко и третья — для повышения привилегий в ядре.

Почему это важно

Песочницы — один из важнейших уровней защиты, поэтому выход из них очень ценен. Полные цепочки против Chrome, Safari или iOS встречаются в атаках нулевого дня коммерческих разработчиков шпионского ПО и относятся к самым дорогим призам хакерских соревнований вроде Pwn2Own. Известные примеры — VENOM (2015), ошибка в эмуляторе дисковода QEMU, позволявшая выйти из многих виртуальных машин, и уязвимость runc 2019 года, через которую вредоносный контейнер мог перезаписать бинарный файл runc на хосте и получить права root. В облаке побеги из ВМ и контейнеров угрожают изоляции между клиентами.

Как защититься

  • Оперативно обновлять браузеры, гипервизоры, среды выполнения контейнеров и ядра — такие ошибки часто эксплуатируются как уязвимости нулевого дня.
  • Выстраивать эшелонированную защиту: запускать контейнеры не от root, применять профили seccomp и AppArmor, разносить чувствительные нагрузки по разным хостам.
  • Включать изоляцию сайтов (Site Isolation) и режим блокировки (Lockdown Mode) для пользователей из группы риска.
  • Отслеживать на хостах неожиданные процессы, порождённые приложениями в песочнице.
Синонимы:
sandbox escape, побег из песочницы, обход изоляции песочницы