Новая критическая уязвимость в GraphicsMagick и ImageMagick

Новая критическая уязвимость в GraphicsMagick и ImageMagick

Новая критическая уязвимость в GraphicsMagick и ImageMagick

В пакетах ImageMagick и GraphicsMagick выявлена ещё одна опасная уязвимость (CVE-2016-5118), позволяющая выполнить произвольные команды shell при обработке специально оформленного имени файла. Проблема связана с передачей в вызов popen имени файла.

Без его проверки на наличие спецсимволов, что позволяет использовать модификатор "|", отвечающий за ответвление процесса для создания канала ввода-вывода. Передав вместо имени файла аргумент "|имя" можно выполнить произвольный код, например:

   convert '|echo Hello > hello.txt;' null:

Кроме эксплуатации приложений, для преобразования форматов изображений вызывающих утилиту convert, атака может быть проведена при обработке специально оформленных SVG- или MVG-файлов, в которых вместо ссылки на изображение может применяться конструкция:

SVG:

   xlink:href="|echo Hello > hello.txt; cat /usr/lib/firefox/browser/icons/mozicon128.png"

MVG:

  push graphic-context

  viewbox 0 0 640 480

  image copy 200,200 100,100 "|echo Hello > hello.txt; cat /usr/lib/firefox/browser/icons/mozicon128.png"

  pop graphic-context

Проблема присутствует в функции OpenBlob() из состава blob.c. Не исключено, что кроме утилиты convert и обработчиков SVG/MVG, уязвимость может проявляться и в других областях применения GraphicsMagick и ImageMagick. В качестве решения проблемы рекомендуется отключить использование функции popen, убрав флаг HAVE_POPEN в файле magick/blob.c ("#undef HAVE_POPEN"). На момент написания новости исправление доступно лишь в виде патча. Обновления пакетов для дистрибутивов еще не сформированы: Debian, Ubuntu, RHEL/CentOS, SUSE, openSUSE, FreeBSD, Fedora. 

Сторонним устройствам дадут доступ к уведомлениям iPhone, но не без условий

Apple ужесточила правила для сторонних аксессуаров, которые в будущем смогут показывать пересланные уведомления с iPhone и Live Activities. Компания обновила правила для разработчиков и отдельно прописала, что такие данные нельзя использовать для рекламы, профилирования, обучения моделей или отслеживания местоположения пользователя.

Речь идёт о новых разделах соглашения, посвящённых фреймворкам Accessory Notifications и Accessory Live Activities.

Apple заранее фиксирует правила игры для производителей сторонних устройств: получать такие данные можно будет только в рамках строго определённого сценария и с жёсткими ограничениями по их обработке.

Запрет на передачу пересылаемой информации в другие приложения или на другие устройства, кроме того аксессуара, который пользователь сам настроил для получения таких данных — одно из основных требований.

Кроме того, разработчикам запрещено менять содержание уведомления так, чтобы искажался его смысл, а расшифровка данных должна происходить только на самом аксессуаре.

Отдельно Apple оговорила, что такие данные нельзя хранить удалённо (например, в облаке), если это не требуется строго для доставки информации на аксессуар. Ещё одно ограничение касается ключей шифрования: ими тоже нельзя делиться с другими устройствами, включая сам iPhone пользователя.

Важный момент: поддержка со стороны конкретных приложений для этого механизма не обязательна. Управление будет идти на уровне пользовательской настройки, то есть в конечном счёте решение о пересылке уведомлений останется за владельцем устройства.

RSS: Новости на портале Anti-Malware.ru