Новости · Софт и форматы

Вышел Ghostscript 10.08.0: усиление безопасности и новая политика C99 для PDF-движка

8 сентября 2026 года Artifex Software выпустила Ghostscript 10.08.0 — открытого интерпретатора PostScript и PDF, который лежит в основе сотен утилит для работы с документами. Этот релиз сосредоточен на безопасности: по умолчанию разрешено только то устройство вывода, которое явно указано в командной строке, а семь PostScript-операторов, открывавших возможности для атаки, удалены из стандартной сборки.

Коротко: Ghostscript 10.08.0 (8 сентября 2026) ужесточает изоляцию устройств вывода — сторонний PostScript-файл больше не может самовольно переключиться на другой принтер или вывод. Из движка удалены операторы .tempfile, makeimagedevice и ещё пять связанных с управлением устройствами. Сторонние библиотеки внутри пакета получили право использовать синтаксис C99. Скачать: Windows x32/x64 exe на ghostscript.com и GitHub.

10 сентября 2026 Редакция LoadFile Чтение 5 мин
Абстрактные потоки данных через процессорные узлы — обновление Ghostscript 10.08.0
Содержание
  1. Что такое Ghostscript и кто его использует
  2. Защита устройств: главное изменение релиза
  3. Удалённые операторы PostScript
  4. Новая политика C99 для сторонних библиотек
  5. Где скачать и как обновить
  6. Источники

Что такое Ghostscript и кто его использует

Ghostscript — это свободный интерпретатор языков PostScript и PDF, разрабатываемый компанией Artifex Software. В отличие от таких инструментов, как Poppler или MuPDF, Ghostscript изначально создавался как полноценный интерпретатор PostScript — языка описания страниц, который лежит в основе большинства принтерных устройств и предшествовал PDF. Сегодня Ghostscript умеет как читать PostScript и конвертировать его в PDF, так и рендерить PDF в растровые изображения или векторные форматы.

На Ghostscript опирается широкий круг программ: CUPS (стандартная система печати Linux), Inkscape при работе с EPS-файлами, ImageMagick при конвертации PDF в изображения, а также многочисленные серверные пайплайны обработки документов. LibreOffice использует Ghostscript как запасной PDF-рендерер при отсутствии libpoppler. По данным пакетных менеджеров Ubuntu 2026 года, ghostscript установлен в рамках зависимостей примерно у 30% систем с установленным LibreOffice или CUPS.

Версия 10.08.0 вышла 8 сентября 2026 года — следующая после 10.07.0 (март 2026). Artifex придерживается полугодового цикла крупных релизов, поэтому обновление несёт заметные изменения в поведении, а не только набор мелких исправлений.

Защита устройств: главное изменение релиза

Ключевое изменение безопасности в 10.08.0 — ограничение разрешённых устройств вывода. По умолчанию Ghostscript теперь разрешает использовать только то устройство, которое явно указано пользователем при запуске (через ключ -sDEVICE=). Если PostScript-файл пытается изменить устройство вывода программным путём — через PostScript-операторы — это действие блокируется.

Почему это важно

Переключение устройств вывода из PostScript-кода — известный вектор атаки. Вредоносный .ps-файл или PDF с PostScript-содержимым мог заставить Ghostscript перенаправить вывод не на экран, а, например, на принтер, в файл системного пути или на сетевое устройство. Новое ограничение закрывает эту возможность по умолчанию.

Для пользователей, чьи рабочие сценарии требуют переключения устройств из PostScript-кода (например, сложные типографские пайплайны), Artifex предусматривает явное разрешение через командную строку. Такие сценарии существуют, но являются нишевыми — для большинства пользователей изменение прозрачно.

Помимо этого, из списка разрешённых по умолчанию директорий удалён каталог temp. Ghostscript имеет встроенный механизм контроля доступа к файловой системе (-dSAFER), и сужение списка директорий уменьшает поверхность атаки при работе с недоверенными документами.

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

Удалённые операторы PostScript

Ghostscript 10.08.0 убирает из языковой среды семь нестандартных операторов PostScript, которые относились к управлению устройствами. Они никогда не были частью официальной спецификации PostScript (Adobe PLRM), а существовали как расширения Ghostscript — и именно это делало их потенциально опасными при обработке входящих документов.

Удалённые операторы:

  • .tempfile — создание временных файлов из PostScript-кода;
  • makeimagedevice — программное создание нового устройства вывода;
  • putdeviceprops — изменение свойств текущего устройства;
  • getdeviceprops — чтение свойств устройства (потенциальный канал утечки конфигурации);
  • finddevice — поиск устройства по имени;
  • copydevice — копирование существующего устройства;
  • findprotodevice — поиск прототипа устройства.

Если ваш рабочий PostScript-код содержит обращения к этим операторам, при запуске Ghostscript 10.08.0 вы получите ошибку. Это применимо прежде всего к разработчикам типографского ПО и авторам сложных .ps-скриптов — рядовые пользователи, конвертирующие PDF или просматривающие документы, с этими операторами никогда не сталкивались.

Что делать, если скрипт сломался

Проверьте свой .ps-файл на наличие перечисленных операторов. Если они нужны для легитимной задачи, Artifex рекомендует реализовать аналогичную функциональность через механизмы командной строки Ghostscript, а не через операторы внутри PostScript-кода.

Новая политика C99 для сторонних библиотек

Ghostscript исторически написан на C89 с добавлением широко поддерживаемых расширений — это обеспечивает максимальную переносимость на экзотических платформах и встраиваемых системах. Однако Ghostscript поставляется с рядом бандлированных сторонних библиотек (libpng, zlib, freetype, harfbuzz и другие), которые разрабатываются независимо и давно используют возможности C99.

До версии 10.08.0 это создавало трения: сторонние библиотеки вынуждены были либо ограничивать себя, либо в сборках Ghostscript применялись флаги компилятора, не позволявшие полноценно использовать C99-возможности. В 10.08.0 Artifex официально разрешила бандлированным сторонним библиотекам использовать C99 и более поздние стандарты.

Для конечных пользователей это изменение практически незаметно — оно сказывается на опыте разработчиков и мейнтейнеров, которые собирают Ghostscript из исходников или поддерживают его в дистрибутивах Linux. Сборка становится чище: меньше патчей для отключения C99-кода в сторонних библиотеках, меньше предупреждений компилятора.

Где скачать и как обновить

Ghostscript 10.08.0 доступен для скачивания с 8 сентября 2026 года:

  • Windows (32-bit): gs10080w32.exe на официальном сайте и GitHub Releases;
  • Windows (64-bit): gs10080w64.exe там же;
  • Linux / macOS (исходники): ghostscript-10.08.0.tar.gz и .tar.xz;
  • GhostPCL и GhostXPS (компаньоны для PCL и XPS форматов) — также 10.08.0 в том же релизе.

Пользователи Linux, как правило, не скачивают Ghostscript вручную: он обновляется вместе с дистрибутивом. В Debian/Ubuntu пакет называется ghostscript; проверить версию: gs --version. Для Arch Linux версия уже появилась в extra/ghostscript.

Если вы работаете с PDF-документами через браузер и вам нужно конвертировать PDF в Word или объединить несколько PDF в один файл — эти операции доступны в инструментах Loadfile без установки дополнительного ПО. Для понимания того, как устроен PDF внутри, полезна наша статья о формате PDF. Параллельно за PDF-движками следите и за обновлениями Poppler, который используется в большинстве Linux-приложений для чтения документов. Стандарт PDF также продолжает развиваться: ведётся работа по добавлению в PDF сжатия Brotli, что может существенно уменьшить размер файлов.

Источники

Читайте также