توسعهدهندگان PHP امروز ساعت ۵ بعد از ظهر (به وقت مسکو) از انتشار وصلههای اضطراری (۸.۵.۱۲، ۸.۴.۲۷، ۸.۳.۳۶ و ۸.۲.۳۵) خبر دادند که دو آسیبپذیری حیاتی را برطرف میکنند. به همه مدیران سرورهای PHP توصیه میشود که بلافاصله پس از انتشار، وصلهها را روی سیستمهای خود نصب کنند. جزئیات رسمی فقط پس از انتشار وصلهها افشا خواهد شد، اما بر اساس اطلاعات عمومی، این آسیبپذیریها CVE-2026-109618 و CVE-2026-109619 هستند که به طور بالقوه امکان اجرای کد از راه دور را روی هر سرور وب که اسکریپتهای PHP را در پیکربندی پیشفرض اجرا میکند، فراهم میکنند. این مشکلات بر همه نسخههای PHP 5.4 به بالا تأثیر میگذارند.
نمونههای اولیهی اکسپلویتها (۱، ۲) قبلاً به صورت آنلاین برای آزمایش آسیبپذیری سیستم ظاهر شدهاند. یادداشتهای این اکسپلویت ادعا میکنند که این آسیبپذیریها ناشی از دسترسی به حافظهی از قبل آزاد شده در کنترلکنندهی پیشرفت دانلود فایل هستند. سرور (session.upload_progress). این حمله نیازی به قابلیت آپلود فایل در سایت ندارد؛ فعالسازی خودکار کنترلکننده محتوای "multipart/form-data" در مفسر PHP کافی است. بهرهبرداری موفقیتآمیز نیاز به تعیین طرح حافظه فرآیند دارد که مختص هر ساخت است (این مشکل را میتوان با حمله جستجوی فراگیر (brute-forcing) با استفاده از آفستهای از پیش محاسبهشده برای بستههای توزیعهای مختلف حل کرد).
به عنوان یک راه حل، برخی توصیه میکنند پارامتر php.ini را به صورت "session.upload_progress.enabled = off" (یا "php_admin_flag[session.upload_progress.enabled] = off" در PHP-FPM تنظیم کنید)، اما یک نماینده پروژه PHP و همچنین نویسنده اولین نمونه اولیه اکسپلویت ادعا میکنند که این برای مسدود کردن هر دو آسیبپذیری کافی نیست. یادداشت مربوط به نمونه اولیه اکسپلویت دوم بیان میکند که علاوه بر تنظیمات php.ini فوقالذکر، مسدود کردن کامل درخواستها با نوع محتوای "multipart/form-data" برای جلوگیری از حمله بدون اعمال وصله لازم است.
در آپاچی httpd، میتوان از قانون زیر در mod_rewrite برای مسدود کردن درخواستهای چندبخشی استفاده کرد:
بازنویسی %{HTTP:Content-Type} چندبخشی [NC]
بازنویسی قانون ^ — [F,L]
برای مسدود کردن در nginx:
اگر ($http_content_type ~* "چندبخشی") {
403 بازگشت؛
}
برای قفل کردن Caddy:
@multipart header_regexp نوع محتوا (?i)multipart
پاسخ @multipart 403
بهروزرسانی: وصلههای PHP نسخههای ۸.۵.۱۲، ۸.۴.۲۷، ۸.۳.۳۶ و ۸.۲.۳۵ به همراه جزئیات مربوط به آسیبپذیریهای بحرانی رفعشده منتشر شدهاند. تحلیل دقیق آسیبپذیریها و راهحلهای پیشنهادی رسمی در یک خبر جداگانه موجود است.
منبع: opennet.ru
