Cloudflare отстрани уязвимост в Containers и Sandboxes, която позволяваше на клиенти с платен абонамент за Workers Paid да възстановяват остатъчни данни от контейнерите на други клиенти, разположени на същия физически хост.

Cloudflare Containers е услуга, достъпна в плана Workers Paid, която позволява на разработчиците да изпълняват контейнеризирани приложения в инфраструктурата на Cloudflare наред с Cloudflare Workers.

Услугата се използва от разработчици и компании, изграждащи приложения върху Cloudflare, включително такива, които поддържат бeкенд услуги, обработват задачи и управляват среди за изпълнение на код.

Недостатъкът е докладван чрез платформата HackerOne на 4 септември от Орен Йомтов, изследовател по сигурността в технологичната компания Accomplish.

Експлоатирането на тази уязвимост би позволило на атакуващ да чете файлове на други клиенти, включително списъци с директории, бази от данни SQLite, профили в Chromium, .env файлове и файлове с идентификационни данни.

Според официалното съобщение на Cloudflare проблемът е бил в споделен ресурс за съхранение, конфигуриран да пропуска нулирането на повторно използвани 64 KiB блокове.

„Когато логическият том (thin volume), обслужващ кореновия диск на даден контейнер, беше изтрит, неговите физически блокове се връщаха в ресурс за съхранение, обслужващ работни товари на множество клиентски профили“, обясняват от Cloudflare.

Чрез записване само на 4 KiB в неизползвана област от диска на нов контейнер, изследователите са успели да предизвикат алокиране на повторно използван 64 KiB физически блок. Без операцията по нулиране, само 4 KiB запис припокрива блока, оставяйки в четимо състояние останалите 60 KiB, които могат да съдържат данни от предишен клиент.

Те са открили остатъчен материал при 18 от 24 разпределения на контейнери и на 20 от 22 тествани физически възела, включително структури на директории, страници от бази данни и структурно пълни бази от данни SQLite.

„Уязвимостта потенциално би позволила на клиент с профил Workers Paid да възстанови остатъчни данни от блокове за съхранение, използвани преди това от контейнерите на други клиенти на същия физически хост“, посочват от Cloudflare.

„Успешното експлоатиране би преминало границата на изолация между клиентите (tenant-isolation) и би могло да разкрие метаданни на файловата система, структури на директории, страници от бази данни и данни на приложения.“

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

Оценка на риска и реален ефект

От Cloudflare заявяват, че изследователите са използвали единствено скриптове, които извършват проверки и връщат обобщени данни, а не действително съдържание от дисковете, така че при тази оценка не са били изложени реални клиентски данни.

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

Cloudflare премахна настройката, която причиняваше пропускането на нулирането на блоковете, извади от употреба съществуващите дискове за контейнери и изчисти кешираните снимки (snapshots), които биха могли да съдържат стари съответствия, като завърши всички действия по отстраняване на риска до 19 септември 2026 г.

След преглед на логовете, телеметрията и историческите данни, компанията не е открила доказателства за компрометиране на клиентски данни чрез метода, описан от Accomplish.

Cloudflare е приложила корекциите за сигурност в инфраструктурата си автоматично и не се изисква никакво действие от страна на клиентите за адресиране на риска.