شرکت Cloudflare اعلام کرد که یک نقص امنیتی در سرویس Cloudflare Containers شناسایی و رفع شده است. این آسیبپذیری به مشتریان اجازه میداد دادههای باقیمانده از کانتینرهای سایر کاربران را که پیشتر روی همان سرور اجرا شده بودند، مشاهده کنند.
جزئیات فنی نقص امنیتی
این مشکل در نحوه پیکربندی دیسکهای مشترک ریشه داشت. هر کانتینر از قابلیتی در لینوکس به نام Thin Provisioning برای تخصیص فضای ذخیرهسازی در بلوکهای ۶۴ کیلوبایتی استفاده میکرد. طبق گزارش منتشر شده، زمانی که یک کانتینر حذف میشد، بلوکهای مربوط به آن به یک استخر (Pool) مشترک باز میگشتند.
نکته بحرانی این بود که در این استخر، قابلیت پاکسازی (Wiping) بلوکها پیش از تخصیص به کاربر بعدی غیرفعال شده بود. در نتیجه، اگر کانتینر جدید مقدار کمی داده در یک بلوک بازیافتی مینوشت، باقیمانده آن بلوک همچنان حاوی دادههای کاربر قبلی میبود.
تاثیرات و دادههای بازیابی شده
پژوهشگران شرکت Accomplish توانستند با نوشتن یک بلوک کوچک ۴ کیلوبایتی و سپس خواندن کل بلوک در سطح Raw Disk، دادههای باقیمانده را استخراج کنند. در آزمایشهای انجام شده روی سرورهای مختلف در چهار قاره، این متد در اکثر موارد موفقیتآمیز بود. دادههای بازیابی شده شامل موارد زیر بود:
- ساختارهای دایرکتوری (Directory Structures)
- صفحات دیتابیس و پایگاههای داده کامل SQLite
- پروفایلهای مرورگر Chromium
- فایلهای محیطی (.env) و فایلهای حاوی اعتبارنامهها (Credentials)
اقدامات اصلاحی Cloudflare
این شرکت برای رفع کامل مشکل دو گام برداشت:
- فعالسازی مجدد Wiping: ابتدا قابلیت پاکسازی بلوکهای جدید فعال شد تا متد اکسپلویت متوقف شود.
- پاکسازی جامع: برای حذف دادههای موجود در کش (Cache) لایههای ایمیج و دیسکهای در حال اجرا، تمامی دیسکهای کانتینری بازنشسته شده و سرورها در ساعات کمترافیک ریاستارت شدند.
این آسیبپذیری همچنین سرویس Cloudflare Sandboxes را که برای اجرای کدهای غیرقابل اعتماد (از جمله کدهای تولید شده توسط AI Agents) طراحی شده است، تحت تاثیر قرار داده بود. Cloudflare اعلام کرده است که هیچ شواهدی از سوءاستفاده از این نقص توسط عوامل تهدید خارج از تیم پژوهشی نیافته است و کاربران نیازی به اقدام خاصی ندارند.