Участники ежегодного состязания «белых» хакеров Pwn2Own-2018 взломали браузеры Microsoft Edge, Apple Safari и Mozilla Firefox, а также смогли «сбежать» из виртуальной машины Oracle, которая впервые вошла в список конкурсных задач. Победители получили 267 тыс. долларов из призового фонда размером в 2 млн долларов.

Мероприятие состоялось в рамках конференции CanSecWest в Ванкувере. В течение двух дней ИБ-специалисты пытались взломать продукты крупных мировых разработчиков, сражаясь за звание Master of Pwn. Атака признавалась успешной, если участник смог выполнить сторонний код на целевой машине.

В первый день победы добились трое игроков. Ричард Жу (Richard Zhu), выступавший без команды, не уложился в установленные правилами 30 минут при атаке на Safari, однако взломал браузер Edge. Для этого он прибегнул к уязвимостям «использование после освобождения» (use after free) и «целочисленное переполнение» (integer overflow). Заплатки для этих брешей вошли в мартовский пакет обновлений Microsoft. В ходе напряженной атаки Жу столкнулся с техническими трудностями и дважды был вынужден переписывать код эксплойта прямо перед зрителями. В результате участник получил 70 тыс. долларов.

Следующим после Жу с заданием справился член команды Phoenhex Никлас Баумштарк (Niklas Baumstark). Он продемонстрировал взлом Oracle VirtualBox с помощью ошибок чтения за пределами поля (out-of-bounds read) и проверки перед использованием (time-of-check-to-time-of-use). Судьи дали Баумштарку награду в 27 тыс. долларов.

Другой представитель команды Phoenhex, Сэмюэль Гросс (Samuel Groß), заработал 65 тыс. долларов на уязвимостях Safari. Он использовал ошибку веб-браузера с оптимизацией «на лету» (just-in-time optimization), логическую брешь MacOS и перезапись ядра (kernel overwrite).

На второй день Pwn2Own-2018 состоялось три выступления. Ричард Жу увеличил свой общий выигрыш на 50 тыс. долларов, успешно атаковав Mozilla Firefox. Эксплойт был построен на ошибках чтения за пределами поля и целочисленного переполнения ядра Windows.

Затем Маркус Гаасэделен (Markus Gaasedelen), Ник Бернетт (Nick Burnett) и Патрик Бирнат (Patrick Biernat) из компании Ret2 Systems попытались взломать Safari, однако не уложились в предписанные три попытки. Когда на четвертый раз метод доказал свою работоспособность, они получили награду от багхантинговой программы Zero Day Initiative, под чьей эгидой проводится мероприятие.

Состязание завершилось выступлением команды из MWR labs. Алекс Пласкетт (Alex Plaskett), Георги Гешев (Georgi Geshev) и Фаби Бетерке (Fabi Beterke) использовали уязвимости незаполнения буфера кучи (heap buffer underflow) и неопределенной переменной стека (uninitialized stack variable), чтобы выйти из песочницы Safari. Наградой стали 55 тыс. долларов.

По итогам Pwn2Own-2018 победителем был признан Ричард Жу — он набрал в два раза больше призовых очков, чем ближайший конкурент. По традиции, вдобавок к денежным наградам все успешные конкурсанты получили ноутбуки, на которых проводили атаки.

Стоит отметить, что нынешнее мероприятие уступает предыдущим по размаху, количеству участников и размеру призов. Так, в прошлом году Pwn2Own длился три дня, а конкурсанты получили более 800 тыс. долларов. Участники подали около 30 заявок (в 2018 году — семь), а количество обнаруженных уязвимостей превысило 50.

Уменьшение размаха во многом связано с отсутствием команд из Китая — в марте правительство КНР из соображений конкуренции запретило им участвовать в международных ИБ-конференциях. Ранее именно китайские эксперты занимали многие призовые места на Pwn2Own. Так, в 2017 году на их счету было 5 из 7 наград, в том числе рекордные 105 тыс. долларов за успешный побег из виртуальной машины VMware.

Категории: Главное, Уязвимости, Хакеры