Ох не зря Иэн Бир из Google Project Zero провёл 6 месяцев самоизоляции. В своём посте он опубликовал результаты рисёрча по эксплуатации уязвимости в Apple iOS, которая вызывает повреждение памяти ядра операционной системы и позволяет получить полный удалённый доступ ко всем пользовательским данным (включая электронную почту, фотографии, мгновенные сообщения и даже keychain).
История этого бага началась в 2018 году, когда Apple случайно распространила бета-версию iOS с именами функций ядра. Тысячи инфосек спецов по всему воскликнули “вау!” и принялись изучать код. Особое внимание Иэна Бира привлекла функция memmove: немного покопавшись в её параметрах он обнаружил в коде самую обычную ошибку переполнения буфера. С помощью этого бага атакующий может провести пакетную инъекцию в AWDL-соединение (при этом необязательно находиться в одной wi-fi сети), получить доступ к устройству и выполнить код-имплант с рутовыми правами. Весь фокус уложился в несколько минут и был проведён с iPhone 11 Pro в соседней комнате. По мнению Бира при достаточной воле и финасировании трюк можно проделать за секунды и на гораздо большем удалении.
В этой истории прекрасно всё. Прежде всего – упорство рисёрчера и результат. Project Zero чётко отработал устранение уязвимости с Apple в формате responsible disclosure – не было зарегистрировано (пальцы крестиком) ни одного in-the-wild случая атак, а сам баг был успешно пофиксен в iOS 13.5.
А примерно 10% пользователей iOS-девайсов, которые до сих сидят на предыдущих версиях операционки нужно немедленно найти кнопку “обновить”. Да да, с помощью этой уязвимости атакующий может заставить все близлежащие девайсы спонтанно перегрузиться.