Новая критическая уязвимость в 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. 

В Android Canary у Linux Terminal появились новые настройки памяти и экрана

Google продолжает понемногу прокачивать встроенный Linux Terminal в Android. В свежей сборке Android Canary 2603 для него появилось сразу несколько изменений — и визуальных, и вполне практичных. Сам Терминал остаётся одной из самых любопытных функций на смартфонах Pixel.

Формально это штука скорее для энтузиастов, но по факту она уже давно вышла за рамки игрушки для гиков: через неё можно запускать Linux-приложения и даже игры. А на фоне планов Google расширять поддержку полноценных Linux-программ такие обновления выглядят вполне логично.

Снаружи Терминал немного освежили. Например, экран установки теперь выглядит современнее: прогресс-бар переместили в центр, а чек-бокс с ограничением по Wi-Fi заменили на переключатель. Плюс процесс установки теперь отображается более наглядно.

 

 

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

 

 

Главное новшество — это появление в настройках нового раздела «Advanced». В нём можно ограничить объём памяти, который Терминал отдаёт виртуальной среде, чтобы она не слишком активно съедала ресурсы смартфона. Там же появилась настройка времени активности экрана: можно выбрать, чтобы дисплей не гас от одной минуты до целых суток.

Последняя функция особенно полезна, если в Терминал крутится что-то долгое и не хочется, чтобы Android слишком рано отправил процесс в фон или просто прервал работу. Правда, система честно предупреждает: чем дольше экран остаётся включённым, тем быстрее будет таять заряд аккумулятора.

Пока эти изменения замечены именно в Android Canary. В Android 17 Beta 2 и Android 16 QPR3 их пока нет.

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