Специално създаден файл с изображение е бил достатъчен, за да превърне стандартна функция за качване на файлове във възможен път за поемане на контрол върху сървър. Изследователи показаха, че дефект в широко използван софтуер за декодиране на изображения може да причини повреда на паметта и в определени случаи да позволи на атакуващите да изпълняват код отдалечено върху засегнатите системи.

Проблемът, наречен HEIF Heist, засяга приложения, които приемат и обработват HEIF, HEIC или AVIF изображения. Вместо да разчита на конвенционално изтегляне на зловреден софтуер, атакуващият може да скрие задвижващия механизъм в изображение, изпратено чрез функция за качване, поставяйки в риск уеб услуги, платформи за разработка и корпоративни инструменти.

CyberScoop отбеляза, че изследователите от Hacktron са използвали проучвания, подпомогнати от изкуствен интелект, за да разкрият и тестват уязвимостта. Тяхната работа поражда притеснения, тъй като файловете с изображения често преминават през доверени инструменти за конвертиране, докато библиотеките зад тях могат да обработят враждебно съдържание, преди стандартните защити на приложението да го спрат.

В доклад, споделен с Cyber Security News (CSN), CyberScoop посочва, че при разкриването не е установена активна кампания със зловреден софтуер, а изследователите са извършили контролирани тестове за потвърждение на концепцията (proof-of-concept).

Все пак потенциалното въздействие е широко, включително разкриване на информация от паметта, потребителски файлове, токени за достъп, потребителски сесии и производствени системи, при които декодер без инсталирани корекции за сигурност обработва изображения, предоставени от атакуващия. Това превръща обикновената инфраструктура за обработка на медийни файлове в потенциална входна точка към много по-ценни системи.

Claude Opus 5 помага на изследователи да превърнат уязвимостта в HEIF изображения в оръжие

Основната уязвимост се състои в начина, по който libheif и libde265 анализират определени данни от изображения. Hacktron установи, че некоректно форматирани HEIC изображения могат да достигнат до базовия декодер през процеса за качване в дадено приложение, предизвиквайки препълване на динамичната памет (heap-buffer overflow), което предоставя основните елементи за четене или промяна на паметта.

Изследователите споделят, че системи с изкуствен интелект са подпомогнали тяхното разследване, като Claude Opus 5 е помогнал уязвимостта да бъде превърната в работещ вектор за отдалечено изпълнение на код.

При тестовете, описани в по-ранно отражение от Cyber Security News, целевият форум е обработвал HEIC файлове чрез ImageMagick, след като стандартният му компонент за валидиране на изображения не е поддържал този формат.

Създаването на надежден експлойт все пак е изисквало идентифициране на характеристиките на целта и зловреден код, съобразен с инсталираната версия. Някои опити са изисквали хиляди качвания, но работата с помощта на изкуствен интелект е намалила докладваното време от първоначалната проверка до RCE до приблизително един до три дни.

Един от тестовете за потвърждение на концепцията е включвал форумна общност, базирана на Discourse, където изследователите са свързали няколко уязвимости във верига, за да компрометират акаунти на служители и да използват свързаните с тях идентификационни данни за отваряне на pull request във вътрешно репозиторий за код.

Екипът съобщи, че първоначалната уязвимост е била открита на 25 юли, коригирана в рамките на броени дни и е донесла възнаграждение от 6500 долара (bug bounty). Находката напомня и за скорошните рискове с изображения в Next.js, при които уязвим път за обработка на AVIF може да изложи сървърите на риск от RCE.

И в двата случая опасността произтича от третирането на качването на изображение като безопасно, докато базов компонент извършва сложен анализ на сървъра.

Инсталирайте корекции за сигурност в декодерите и изолирайте качванията

Организациите трябва да идентифицират всяка услуга, която приема качвания на HEIF, HEIC или AVIF файлове, включително форуми за поддръжка, платформи за съдържание, API и вътрешни инструменти за разработка.

След това те трябва да потвърдят, че внедрените пакети libheif и libde265 включват най-новите корекции за сигурност от разработчиците, а не просто версията, предоставена от по-старо базово изображение.

Обновяването само на потребителското приложение (front-end) не е достатъчно, когато уязвимият код се намира в контейнер, пакет на операционната система или зависимост за конвертиране.

Екипите трябва да прегледат софтуерните си активи и да генерират отново системните изображения, когато е необходимо – урок, научен и от уязвимостта при обработка на изображения в WordPress, където внимателната проверка на реалното съдържание на файловете беше от ключово значение за отстраняване на уязвимостта.

Когато конвертирането на изображения е от съществено значение, операторите трябва да деактивират неизползваните декодери и да извършват конвертирането в кратковременни, изолирани среди с минимални права.

Ограничаването на достъпа до идентификационни данни, хранилища с изходен код и чувствителни променливи на средата може да намали потенциалните щети, ако даден компонент за анализ бъде компрометиран.

И накрая, услугите за качване на файлове трябва да прилагат проверки за типа на файловете, ограничения за размера, водене на дневници (logging) и мониторинг за неколкократни неуспешни опити за обработка.

По-широкият модел съвпада с уязвимостта при обработка на файлове в Rails: точката за качване може да се превърне в път към тайни данни или изпълнение на код, когато обработката на медийни файлове на сървъра не се третира като граница с висок риск.