У Ghostscript виявлено вразливість, яка може дозволити виконання коду

Кілька тому днів вони випускали новини визначеного вразливість у Ghostscript (CVE-2020-15900) що міг викликати модифікацію файлу та довільне виконання команди при відкритті спеціально відформатованих документів PostScript.

Тим, хто не знайомий з Ghostscript, слід це знати це механізм візуалізації вмісту Postscript та PDF і він зазвичай використовується для перетворення PDF та Postscript документів у зображення для попереднього перегляду, ескізів та друку.

Він також використовується для повноякісного відтворення документів для багатьох переглядачів PDF, включаючи популярних глядачів на Android, і ліцензований декількома великими компаніями, такими як Google, для візуалізації в хмарі.

Про вразливість у Ghostscript

Помилка була ідентифікована за допомогою оператора rsearch Нестандартний PostScript у документі, що дозволяє викликати переповнення типу uint32_t при розрахунку розміру, перезаписати області пам'яті з буфера призначено та отримує доступ до файлів у файловій системі, які можна використовувати для інтенсивної атаки для виконання довільного коду в системі (наприклад, шляхом додавання команд до ~ / .bashrc або ~ / .profile).

Фрагмент, знайдений AFL, штовхнув порожній рядок у стек: порожні дужки (), скопіював посилання на це, в результаті чого з’явився стек з двома порожніми рядками () (), а потім здійснив зворотний пошук. Іншими словами, він шукав порожній рядок у порожньому рядку, починаючи з кінця.

На жаль, вони пропустили прикордонний випадок, коли шукають порожній рядок. Під час пошуку порожнього рядка це визначається як негайний успіх: немає чого шукати, тому ми переходимо до кінця. Однак результат потрібно розділити на значення до матчу, матчу та після матчу. На жаль, код припускав, що ми принаймні один раз переглянули і неправильно розрахували тривалість результату після матчу, віднімаючи одиницю від нуля, що призводить до повернення до максимального значення: 4,294,967,295 XNUMX XNUMX XNUMX.

Ця помилка це дефект пам'яті, де існує ймовірність несправності і це відбувається постійно. Не потрібно мати справу з захисниками стека тощо, просто читайте і пишіть все, що завгодно, у масивний сегмент пам'яті. Це дозволило експлуатувати його комусь, хто не є досвідченим письменником.

Завдяки цьому недотоку, цей рядок ніколи не виділявся і не займав реального простору, але він мав довжину, яка поширювалася на іншу пам'ять. Спроба прочитати або записати, що пам’ять за випадковими адресами виходить за межі пам’яті, звідси і всі нечіткі помилки. Однак ми могли б зберегти посилання, щоб дозволити його використання, використовуючи цей фрагмент коду:

Важливо врахувати це вразливості в Ghostscript є більш серйознимиоскільки цей пакет використовується у багатьох популярних програмах обробки PostScript та PDF. Наприклад, Ghostscript викликається при створенні ескізів на робочому столі, при індексації даних у фоновому режимі та при перетворенні зображень.

Для успішної атаки в багатьох випадках достатньо просто завантажити файл експлоїту або переглянути каталог із ним у Nautilus.

Вразливості в Ghostscript також можна використовувати за допомогою драйверів зображень на основі пакетів ImageMagick та GraphicsMagick передача файлу JPEG або PNG, який містить замість зображення код PostScript (цей файл буде оброблений у Ghostscript, оскільки тип MIME розпізнається вмістом і не залежить від розширення).

Рішення

Випуск стосується версій від 9.50 до 9.52 (Помилка існує з версії 9.28rc1, але на думку дослідників, які виявили вразливість, вона з’явилася з версії 9.50).

Але виправлення вже пропонувалось у версії 9.52.1 на додаток до цього таопубліковано оновлення пакетів виправлень для деяких дистрибутивів Linux, таких як Debian, Ubuntu та SUSE.

Тоді як пакунки в RHEL не впливають.

Фуенте: https://insomniasec.com


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: AB Internet Networks 2008 SL
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.