Уразлівасць у Ghostscript, якая эксплуатуецца праз ImageMagick

У Ghostscript, наборы прылад для апрацоўкі, пераўтварэнні і генерацыі дакументаў у фарматах PostScript і PDF, выяўлена крытычная ўразлівасць (CVE-2021-3781), якая дазваляе выканаць адвольны код пры апрацоўцы спецыяльна аформленага файла. Першапачаткова на наяўнасць праблемы звярнуў увагу Эміль Лернер, які распавёў аб уразлівасці 25 жніўня на якая прайшла ў Санкт-Пецярбургу канферэнцыі ZeroNights X (у дакладзе было расказана, як Эміль у рамках праграм bug bounty выкарыстаў уразлівасць для атрымання прэмій за дэманстрацыю нападаў на сэрвісы AirBNB, Dropbox і Яндэкс.Нерухомасць).

5 верасня ў адчыненым доступе з'явіўся працоўны эксплоіт, які дазваляе атакаваць сістэмы з Ubuntu 20.04 праз перадачу выкананаму на серверы web-скрыпту, выкарыстоўваламу пакет php-imagemagick, адмыслова аформленага дакумента, загружанага пад выглядам малюначка. Пры гэтым па папярэдніх дадзеных падобны эксплоіт знаходзіўся ва ўжытку яшчэ з сакавіка. Заяўлялася аб магчымасці нападу на сістэмы з GhostScript 9.50, але высветлілася, што ўразлівасць выяўляецца і ва ўсіх наступных версіях GhostScript, уключаючы змешчаны ў распрацоўцы выпуск 9.55 з Git.

Выпраўленне было прапанавана 8 верасня і пасля рэцэнзавання прынята ў рэпазітар GhostScript 9 верасня. У многіх дыстрыбутывах праблема застаецца да гэтага часу не выпраўлена (статус публікацыі абнаўленняў можна паглядзець на старонках Debian, Ubuntu, Fedora, SUSE, RHEL, Arch Linux, FreeBSD, NetBSD). Рэліз GhostScript з ухіленнем уразлівасці плануюць апублікаваць да канца месяца.

Праблема выклікана магчымасцю абыходу рэжыму ізаляцыі "-dSAFER" з-за недастатковай праверкі параметраў Postscript-прылады "%pipe%", якія дазвалялі дамагчыся выкананні адвольных shell-каманд. Напрыклад, для запуску ўтыліты id у дакуменце дастаткова пазначыць радок "(%pipe%/tmp/&id)(w)file" або "(%pipe%/tmp/;id)(r)file".

Нагадаем, што ўразлівасці ў Ghostscript уяўляюць падвышаную небяспеку, бо дадзены пакет выкарыстоўваецца ў шматлікіх папулярных прыкладаннях для апрацоўкі фарматаў PostScript і PDF. Напрыклад, Ghostscript выклікаецца падчас стварэнняў мініяцюр на працоўным стале, пры фонавай індэксацыі дадзеных і пры пераўтварэнні малюнкаў. Для паспяховага нападу ў шматлікіх выпадках досыць проста загрузіць файл з эксплоітам ці прагледзець каталог з ім у файлавым мэнэджары, які падтрымлівае адлюстраванне эскізаў дакументаў, напрыклад, у Nautilus.

Уразлівасці ў Ghostscript таксама можна эксплуатаваць праз апрацоўшчыкі малюнкаў на базе пакетаў ImageMagick і GraphicsMagick, перадаўшы ў іх JPEG або PNG-файл, у якім замест карцінкі знаходзіцца код PostScript (такі файл будзе апрацаваны ў Ghostscript, бо MIME-тып распазнаецца па змесціве, а не належачы на ​​пашырэнне).

Крыніца: opennet.ru

Дадаць каментар