آسیبپذیری حیاتی در Docker Desktop برای ویندوز و macOS امکان به خطر انداختن میزبان را با اجرای یک کانتینر مخرب فراهم میکند، حتی اگر محافظت ایزولهسازی پیشرفته کانتینر (ECI) فعال باشد.
شرح مشکل باگ در Docker Desktop
این مشکل امنیتی، یک جعل درخواست سمت سرور (SSRF) با شناسه CVE-2025-9074 است که امتیاز شدت حیاتی ۹.۳ را دریافت کرده است. یک کانتینر مخرب در Docker Desktop میتواند بدون نیاز به اتصال به سوکت داکر، به Docker Engine دسترسی یافته و کانتینرهای اضافی راهاندازی کند، که این امر امکان دسترسی غیرمجاز به فایلهای کاربر در سیستم میزبان را فراهم میکند. محافظت ECI این آسیبپذیری را کاهش نمیدهد.
Felix Boulet، محقق امنیتی و باگ هانتر، کشف کرد که API موتور داکر بدون نیاز به احراز هویت از طریق آدرس http://192.168.65.7:2375/ از داخل هر کانتینر در حال اجرا قابلدسترسی است. او با استفاده از دو درخواست HTTP POST با ابزار wget، اثبات مفهومی (PoC) ارائه داد که کانتینری جدید ایجاد و راهاندازی میکند و درایو C: میزبان ویندوز را به سیستم فایل کانتینر، بدون نیاز به حقوق اجرای کد داخل کانتینر، متصل میکند.
Philippe Dugre، مهندس DevSecOps در شرکت فناوری Pvotal Technologies و طراح چالش کنفرانس امنیتی NorthSec، تأیید کرد که این آسیبپذیری Docker Desktop ویندوز و macOS را تحت تأثیر قرار میدهد؛ اما نسخه لینوکس مشکلی نخواهد داشت. او اظهار داشت که این آسیبپذیری در macOS به دلیل محافظتهای سیستمعامل کمتر خطرناک است. در ویندوز، مهاجم میتواند کل سیستم فایل را بهعنوان مدیر mount کرده، فایلهای حساس را بخواند و با بازنویسی یک DLL سیستمی، امتیازات خود را به مدیر سیستم میزبان ارتقا دهد؛ اما در macOS، برنامه Docker Desktop دارای لایهای از ایزولهسازی است و تلاش برای اتصال پوشه کاربر نیازمند مجوز کاربر است و بهطور پیشفرض دسترسی به کل سیستم فایل یا اجرای با امتیازات مدیریتی ندارد.
با این حال، این محقق هشدار داد که در macOS نیز امکان فعالیت مخرب وجود دارد؛ زیرا مهاجم کنترل کامل بر برنامه و کانتینرها دارد و میتواند بدون نیاز به مجوز، بکدور ایجاد کرده یا پیکربندی را تغییر دهد. او این آسیبپذیری را بهراحتی قابل اکسپلویت دانست و اکسپلویت او با سه خط کد پایتون این را تأیید میکند.
این آسیبپذیری بهصورت مسئولانه به Docker گزارش شد و آنها بهسرعت در نسخه جدید Docker Desktop 4.44.3 که هفته گذشته منتشر شد، آن را برطرف کردند.