
Белые хакеры на конференции по безопасности в Ванкувере обнаружили две уязвимости нулевого дня в Safari, одна из которых позволила им повысить свои привилегии до такой степени, что они смогли полностью захватить Mac…
Первая уязвимость позволила обойти защиту песочницы (sandbox), которую macOS использует для обеспечения того, чтобы приложения имели доступ только к своим собственным данным и к любым системным данным, разрешенным Apple.
Конкурс начался с команды Fluoroacetate (Амат Кама и Ричард Жу), нацелившейся на веб-браузер Apple Safari. Им удалось успешно использовать браузер и обойти песочницу, применив целочисленное переполнение (integer overflow) в браузере и переполнение кучи (heap overflow) для выхода из песочницы. Попытка заняла почти все отведенное время, поскольку они использовали метод полного перебора (brute force) во время выхода из песочницы. Код давал сбой, затем пытался снова, пока не достиг успеха. Демонстрация принесла им 55 000 долларов США и 5 очков в рейтинге Master of Pwn.
Вторая уязвимость оказалась более серьезной, предоставив доступ к системе как root, так и к ядру (kernel) Mac.
Последняя заявка первого дня от команды phoenhex & qwerty (@_niklasb @qwertyoruiopz и @bkth_) нацелилась на Apple Safari с повышением привилегий до уровня ядра. Они продемонстрировали полную компрометацию системы. Зайдя на их веб-сайт, они инициировали ошибку JIT, а затем ошибку чтения за пределами кучи (heap out-of-bounds, OOB) – использованную дважды – затем перешли от root к ядру через ошибку типа «время проверки — время использования» (Time-of-Check-Time-of-Use, TOCTOU). К сожалению, это была лишь частичная победа, поскольку Apple уже знала об одной из ошибок, использованных в демонстрации. Тем не менее, они заработали 45 000 долларов США и 4 очка в рейтинге Master of Pwn.ZDI
Safari является распространенной точкой входа для хакеров. На прошлогодней конференции одна уязвимость нулевого дня в Safari использовалась для захвата Touch Bar на MacBook Pro, а на следующий день были продемонстрированы еще три уязвимости на базе Safari.
Мероприятие было организовано Trend Micro под брендом Zero Day Initiative (ZDI). Эта программа была создана для того, чтобы поощрять хакеров к частному сообщению об уязвимостях компаниям-разработчикам, а не к продаже их злоумышленникам. ZDI делает это, предлагая финансовые вознаграждения и признание.
Заинтересованные исследователи предоставляют нам эксклюзивную информацию о ранее неисправленных уязвимостях, которые они обнаружили. Затем ZDI собирает справочную информацию для проверки личности исследователя исключительно в целях этического и финансового надзора. Наши внутренние исследователи и аналитики проверяют проблему в наших лабораториях безопасности и делают денежное предложение исследователю. Если исследователь принимает предложение, платеж производится незамедлительно. По мере того как исследователь обнаруживает и предоставляет дополнительные исследования уязвимостей, бонусы и вознаграждения могут увеличиваться за счет программы лояльности, аналогичной программе для часто летающих пассажиров.
Trend Micro использует информацию об уязвимостях для создания защиты для своих клиентов, одновременно уведомляя поставщика – в данном случае Apple – чтобы они могли устранить проблему.
В первый день ZDI выплатила в общей сложности 240 тысяч долларов.
Как обычно, ZDI не будет публиковать подробную информацию об уязвимостях до тех пор, пока Apple не подтвердит, что они были исправлены в обновлении macOS.