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

В Windows 11 нашли способ включить нативный NVMe — SSD ускорились до 15%

Microsoft сделала важный шаг в сторону ускорения Windows — компания объявила, что Windows Server 2025 получит нативную поддержку NVMe-накопителей. Есть хорошая новость для обычных пользователей: поскольку архитектура Windows 11 во многом унаследована от Windows 10, энтузиасты уже нашли способ включить нативную NVMe-поддержку вручную — через правку реестра.

И, судя по первым отзывам, эффект вполне ощутимый. Пользователи, которые решились на эксперимент, сообщают о:

  • снижении задержек;
  • росте скорости чтения и записи;
  • приросте производительности примерно на 10–15%;
  • снижении нагрузки на процессор.

 

 

Кроме того, система становится устойчивее в сценариях с активной работой с диском — когда несколько приложений одновременно нагружают хранилище, Windows реже «замирает» целиком.

 

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

Исторически Windows работает со всеми накопителями через SCSI. Даже NVMe-диски в системе фактически «притворяются» SCSI-устройствами — команды NVMe просто переводятся в понятный Windows формат. Под это поведение за годы подстроились драйверы, утилиты и софт.

При переходе на нативный NVMe этот слой исчезает — и тут начинаются нюансы:

  • некоторые утилиты управления дисками перестают видеть NVMe-накопители;
  • другие, наоборот, обнаруживают их дважды;
  • может измениться идентификатор диска, из-за чего программы резервного копирования и другой софт теряют накопитель.

По данным Microsoft, нативная NVMe-поддержка в Windows рассчитана на 64 000 очередей, каждая из которых может обрабатывать 64 000 команд одновременно. В теории — это более 4 миллиардов операций в очереди.

Для сравнения: SCSI-протоколы ограничены 32 командами на очередь. Разница — колоссальная, особенно с учётом современных NVMe-дисков и систем с DDR5.

Если вы любите выжимать максимум из железа — попробовать можно уже сейчас, инструкции доступны. Но есть важное «но»:
перед экспериментами обязательно сделайте резервную копию системы или протестируйте всё в виртуальной среде. Правка реестра на таком уровне вполне может привести к нестабильной работе Windows.

В долгосрочной перспективе нативный NVMe, скорее всего, станет стандартом, когда разработчики начнут учитывать его в своих продуктах. А пока это история для энтузиастов, которые готовы немного рискнуть ради скорости.

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