The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск Ghostscript 9.24 с исправлением уязвимостей, эксплуатируемых через ImageMagick, Evince и Nautilus

04.09.2018 10:38

Компания Artifex Software выпустила релиз набора инструментов для обработки, преобразования и генерации документов в форматах PostScript и PDF - Ghostscript 9.24. Ghostscript позволяет обрабатывать как язык Postscript, так и документы PDF, переводить их в растровые форматы для показа на экране или для вывода на печать на принтерах без поддержки Postscript. Код проекта распространяется под лицензией AGPLv3, а содержимое каталога CMap по специальной лицензии Adobe.

В новой версии проведена работа по усилению безопасности и устранена большая порция разноплановых уязвимостей. Наиболее опасной из решённых проблем является возможность (CVE-2018-15908) обхода ограничений sandbox-изоляции, применяемой при запуске в режиме "-dSAFER". Указанная узявимость позволяет организовать выполнение в системе произвольного кода при обработке в Ghostscript специально оформленных документов (уже доступен универсальный эксплоит, который работает в Linux и Windows со всеми фронтэндами Ghostscript).

Проблема проявляется в том числе в продуктах, использующих обработчики Ghostscript, таких как ImageMagick, GraphicsMagick, Evince, GIMP, Mediawiki, Okular и Nautilus. Так как Ghostscript также применяется при построении миниатюр для рабочего стола и индексации данных, то для успешной атаки во многих случаях достаточно просто загрузить файл с эксплоитом или просмотреть каталог с ним в Nautilus. Для защиты от автоматического построения миниатюр рекомендуется временно отключить (переименовать) "/usr/bin/evince-thumbnailer".

Уязвимость также может быть эксплуатирована при преобразовании или проверке изображений при помощи обработчиков, вызывающих ImageMagick или GraphicsMagick. При этом проблемный PS, EPS, PDF и XPS может быть представлен в виде JPEG или PNG-файла, но ImageMagick и GraphicsMagick обработают такой файл в соответствии с распознанным по содержимому MIME-типом, а не полагаясь на расширение. Например, для запуска утилиты "id" достаточно создать следующий файл (shellexec.jpeg):

 
   %!PS
   userdict /setpagеdеvice undef
   legal
   { null restore } stopped { pop } if
   legal
   mark /OutputFile (%рiрe%id) currentdevice putdeviceprops

При преобразовании его в другой формат, будет выполнен произвольный код:

 
   convert shellexec.jpeg whatever.gif

   uid=1000(taviso) gid=1000(taviso) groups=1000(taviso),10(wheel) 

В качестве обходного пути защиты в /etc/ImageMagick/policy.xml в секции policymap можно запретить обработку PS, EPS, PDF и XPS:


    <policy domain="coder" rights="none" pattern="PS" />
    <policy domain="coder" rights="none" pattern="PS2" />
    <policy domain="coder" rights="none" pattern="PS3" />
    <policy domain="coder" rights="none" pattern="EPS" />
    <policy domain="coder" rights="none" pattern="PDF" />
    <policy domain="coder" rights="none" pattern="XPS" />

В Ghostscript 9.24 также устранено несколько других критичных уязвимостей:

  • CVE-2018-15911 - возможность использования неинициализированной памяти при манипуляции с оператором aesdecode в PostScript-файлах, которая потенциально может привести к выполнению кода атакующего;
  • CVE-2018-15910 - возможность выполнения кода при обработке файлов PostScript со специально подобранными парамерами LockDistillerParams;
  • CVE-2018-15909 - проблема при обработке типов в операторе .shfill, которая может применяться для выхода за границы буфера при обработке специально оформленных файлов PostScript. Потенциально не исключается использование уязвимости для выполнения кода атакующего.


  1. Главная ссылка к новости (https://www.ghostscript.com/do...)
  2. OpenNews: Уязвимости в GDK-Pixbuf, затрагивающие Chromium, Firefox, VLC и GNOME thumbnailer
  3. OpenNews: Уязвимость в gnome-exe-thumbnailer, позволяющая выполнить код при просмотре каталога с MSI-файлом
  4. OpenNews: Уязвимость в GNOME Evince, позволяющая выполнить код при построении миниатюр
  5. OpenNews: Уязвимость, позволяющая запустить код при копировании файла на рабочий стол
  6. OpenNews: Угроза безопасности из-за автоматической обработки мультимедийных файлов
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/49224-ghostscript
Ключевые слова: ghostscript, pdf, postscript
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (8) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, пох (?), 12:40, 04/09/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –23 +/
    Dependency hell во всей своей красе.

    Ну кто, кто, блжад, кроме совсем укушенных, на самом деле imagick'ом обрабатывал pdf'ы, ps и прочую хрень?

    Но конечно же никак нельзя не тащить зависимость от любого ненужного хлама на случай "а вдруг оно понадобится!"

     
     
  • 2.2, _hide_ (ok), 13:10, 04/09/2018 [^] [^^] [^^^] [ответить]  
  • +10 +/
    Не умничайте, а сообщите:
    1. Растеризовать PDF можно тем-то
    2. Собрать PDF из картинок можно тем-то
    Вот исходники тут, вот собранные пакеты под самые популярные ОС

    А так дешево, толсто и по-школьному

     
     
     
    Часть нити удалена модератором

  • 4.5, тоже Аноним (ok), 13:43, 04/09/2018 [ответить]  
  • +2 +/
    Успешно сделанная через задницу задача:
    1. взять pdf полиграфического качества, это самое качество сильно убавить, в том числе с растеризацией вложенных векторов, и сохранить обратно в pdf.
    2. разобрать спуск полос обратно в страницы.
    3. сконвертировать результат в PDF/A.
    Автоматически, скриптом на сервере, поскольку задача регулярная.

    Пересборка (п. 2), действительно, делается без утилит IM - pdfjam в помощь.
    Конвертация - да, без проблем самим GhostScript.
    А вот как из командной строки сделать первую часть без convert - я что-то не могу представить.
    Просим, просим!

     
     
  • 5.8, нах (?), 14:13, 04/09/2018 [^] [^^] [^^^] [ответить]  
  • –12 +/
    ну я верю что в вашем специальном случае оно даже и пригодилось (хотя не очень понятно зачем понадобилось "обратно в pdf" на первом шаге, если уже все равно оно не векторное), но вы исходное -то прочитайте - они ж действительно, похоже, не умеют пользоваться gs и каждый раз вызывают его через imagick.

     
  • 2.13, Аноним (13), 15:07, 04/09/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ну кто, кто, блжад, кроме совсем укушенных, на самом деле imagick'ом обрабатывал pdf'ы, ps и прочую хрень?

    Скрипты. Но тебе же такое и в голову не приходит.

     
     
  • 3.23, Аноним (23), 16:50, 04/09/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Скрипты это что, а вопрос был - кто.
    Но тебе же такое и в голову не приходит.
     
     
  • 4.32, Аноним (13), 22:17, 04/09/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > а вопрос был - кто.

    Запускающий скрипты. Внезапно, да?

     

  • 1.36, cat666 (ok), 22:07, 06/09/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Прекрасно, в Арче уже исправили, естественно, сразу же отвалился принтер. Спас только даунгрейд на ghostscript-git. Обожаю Linux.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру