Технологии безопасности

Сайт посвященный вопросам безопасности

Pwn2Own 2015: первые итоги

Завершился первый день известного контеста Pwn2Own 2015, на котором участникам предлагалось продемонстрировать успешные механизмы эксплуатации Remote Code Execution, а также Local Privilege Escalation уязвимостей. В этом году денежные вознаграждения были снижены, но увеличена сложность: для демонстрации брались 64-битные приложения & OS.

Pwn2Own 2015: первые итоги — 1Pwn2Own 2015: первые итоги — 1

Участникам предлагалось удаленно исполнить свой код в браузерах и в известных плагинах типа Adobe Flash Player & Reader. В качестве браузеров были выбраны 64-битные версии Google Chrome, MS IE11 в режиме sandbox (EPM), Mozilla Firefox, Apple Safari, а также вышеупомянутые плагины Flash Player и Reader на IE11 в режиме sandbox. В результате успешная эксплуатация постигла все заявленные в первый день браузеры.

В этом году расценки были следующие (64-битные веб-браузеры запускаются на новейших up-to-date версиях MS Windows 8.1 x64, Apple OS X Yosemite). Интересно отметить, что в числе плагинов не оказалось известного ПО Oracle Java.

Google Chrome: $75,000.
MS Internet Explorer 11 в режиме sandbox (EPM): $65,000.
Mozilla Firefox: $30,000.
Adobe Reader на IE11 в режиме sandbox (EPM): $60,000.
Adobe Flash Player (64-bit) на IE11 в режиме sandbox (EPM): $60,000.
Apple Safari: $50,000.

Выплаченные за первый день средства ($317,500) оказались распределены следующим образом:

Adobe Flash Player x 2 = $60K + $25K (sandbox bypass) + $30K = $115K
Adobe Reader x 2 = $60K + $30K + $25K (sandbox bypass) = $115K
Mozilla Firefox x 1 = $30K + $25K (sandbox bypass) = $55K
MS IE11 x 1 = $32,5K

= $317,500 cash.

Для эксплуатации Flash Player использовались уязвимости типа heap-overflow (HeapOv) и use-after-free (UAF), при этом обход sandbox и получение максимальных прав SYSTEM в системе обеспечивались через уязвимость в самой Windows (Windows Kernel TrueType fonts) и механизме изоляции Flash Player (Flash broker process). Еще одна уязвимость в обработке файлов шрифтов Windows в ядре (TrueType Fonts, TTF) использовалась для обхода механизма sandbox при эксплуатации Adobe Reader. В данном случае речь идет об очевидных уязвимостях в известном драйвере win32k.sys.

Индикатором успешного исполнения кода в браузере служит запуск безобидного приложения Windows под названием «калькулятор». При этом процесс создается как дочерний от процесса одной из вкладок браузера.

Механизм эксплуатации ПО регламентирован самими правилами Pwn2Own и сводится к следующему.

A successful entry should be designed to leverage a vulnerability to modify the standard execution path of a program or process in order to allow the execution of arbitrary instructions. The entry is required to defeat the target’s techniques designed to ensure the safe execution of code, such as Data Execution Prevention (DEP), Address Space Layout Randomization (ASLR) and application sandboxing. The resulting payload should be executing in an elevated context (for example, on Windows-based targets, Medium integrity level or higher).

Таким образом, речь идет об уязвимости в самом ПО, которая позволит удаленно исполнить код в системе, а также обойти известные механизмы защиты DEP & ASLR. В процесс эксплуатации может быть вовлечен другой эксплойт, как правило для уязвимости в ядре Windows, который поможет получить в системе максимальные права SYSTEM и т. о. обойти механизм sandbox.

Правилами Pwn2Own регламентируется, что все используемые в контесте уязвимости будут отправлены вендорам для подготовки ими соответствующих исправлений. Затем они могут быть публично разглашены.