Полное (Происходит полное раскрытие информации, что приводит к раскрытию всех системных файлов.)
Влияние на целостность
Полное (Происходит полная компрометация целостности системы. Полная потеря защиты системы, что приводит к компрометации всей системы.)
Влияние на доступность
Полное (Полная остановка затронутого ресурса. Злоумышленник может сделать ресурс полностью недоступным.)
Сложность доступа
Низкая (Специализированные условия доступа или смягчающие обстоятельства отсутствуют. Для эксплуатации требуется очень мало знаний или навыков.)
Аутентификация
Не требуется (Аутентификация не требуется для эксплуатации уязвимости.)
Полученный доступ
Нет
Тип(ы) уязвимости
Выполнение кода
Затронутые платформы
Windows, Macintosh, Linux и Chrome OS [1]
Базовое описание уязвимости и способы ее эксплуатации.
Критическая уязвимость (CVE-2016-4117) существует в Adobe Flash Player версии 21.0.0.226 и более ранних для Windows, Macintosh, Linux и Chrome OS. Успешная эксплуатация может привести к сбою и потенциально позволить злоумышленнику получить контроль над затронутой системой [2].
Предположим, вы получили электронное письмо с документом MS Office от кого-то или загрузили документ MS Office, размещенный на DDNS-сервере. Если этот документ MS Office специально создан злоумышленником, намеревающимся эксплуатировать данную уязвимость, то могут произойти следующие действия.
Вы открываете документ MS Office в системе, на которой запущен Flash Player 21.0.0.226 или более ранней версии, но не старше 21.0.0.196 [6].
Вы увидите flash-контент в документе, и эксплойт срабатывает.
Ваш компьютер подключается к серверу злоумышленника и загружает вредоносную полезную нагрузку.
Вы увидите подставной документ и, возможно, не заметите ничего вредоносного, но ваша система скомпрометирована и, возможно, является частью ботнета, ожидающего инструкций от командного центра (C&C-сервера) [Подробнее см. в разделе технических деталей].
Какие системы затронуты?
Все платформы Windows, Macintosh, Linux и Chrome OS с установленным Adobe Flash Player 21.0.0.226 или более ранней версии затронуты уязвимостью CVE-2016-4117.
Что можно сделать для смягчения уязвимости?
Adobe устранила CVE-2016-4117 12 мая 2016 года и рекомендовала пользователям обновить свои продукты до последних версий, следуя инструкциям, приведенным в бюллетене безопасности [2]. Кроме того, пользователи также могут отказаться от использования Adobe Flash Player, если он не требуется для их систем.
Доступен ли код эксплойта?
Да. Модуля Metasploit для CVE-2016-4117 не существует, но можно следовать приведенным ниже шагам для чтения и записи данных в памяти произвольным образом:
Злоумышленник определяет имя свойства, например «placement», которое конфликтует с именем внутреннего интерфейса в com.adobe.tvsdk.mediacore.timeline.operations.DeleteRangeTimelineOperation.
Теперь вызов интерфейса «placement» заставляет виртуальную машину ActionScript вызывать внутреннюю функцию getBinding для получения идентификатора привязки.
Поскольку свойство «placement» конфликтует с именем интерфейса, злоумышленник может манипулировать идентификатором привязки и создать конфликт.
Чтобы внедрить шелл-код для управления памятью, эксплойт определяет объект, расширяющий ByteArray, с отличительными значениями. Эти значения помогают эксплойту легко находить объекты в памяти.
Теперь свойство «placement» может манипулировать идентификатором привязки для чтения за пределами границ и указания на расширенный ByteArray, содержащий шелл-код.
Поскольку шелл-код, находящийся в ByteArray, выполняется, злоумышленник получает возможность повредить один из объектов, чтобы увеличить его длину до 0xffffffff (высокая память) и установить его буфер данных на адрес 0, т.е. объект может читать и записывать всё содержимое памяти (ОЗУ).
Например, если система является веб-сервером, эксплойт может прочитать значение закрытого ключа, хранящееся в памяти, и скомпрометировать идентичность веб-сервера [3].
Как эксплуатация может повлиять на уязвимые системы?
Предположим, что базовой системой является веб-сервер на Ubuntu с установленным Adobe Flash Player версии 21.0.0.226 или более ранней, но не старше 21.0.0.196.
Как объяснено в предыдущем разделе, успешный эксплойт позволяет злоумышленнику читать и записывать содержимое памяти. Существует множество различных видов компрометации системы. Некоторые из возможных вариантов перечислены ниже:
Злоумышленник получает всё содержимое памяти и отправляет его на C&C-серверы.
Злоумышленник очищает память, что может вызвать прерывание некоторых служб или сбой программ.
Злоумышленник устанавливает бэкдор, чтобы в будущем можно было получить доступ к скомпрометированному хосту.
Злоумышленник извлекает конфиденциальную информацию, такую как закрытые ключи, пароли (возможно в некоторых случаях).
Злоумышленник запускает утилиту strace или отладчик для присоединения к работающему процессу, чтобы найти возможные системные вызовы/переменные и изменить их значения.
Злоумышленник полностью захватывает контроль над системой и полностью уничтожает её.