باگ دوسالهٔ Redis که سرور رو تحویل مهاجم میداد
خلاصهٔ کاملتر
یه آسیبپذیری که بیشتر از دو سال توی Redis مخفی مونده بود — یعنی از نسخهٔ پایدار 7.2.0 به بعد — بالاخره وصله شد. نکتهٔ جالب ماجرا اینه که این باگ رو یه ابزار امنیتی کاملاً خودکار و مبتنی بر AI به اسم Xint Code (کار تیم Team Xint Code) پیدا کرد و حتی یه اکسپلویت اجرای کد از راه دور هم باهاش بهصورت زنده تو کنفرانس ZeroDay.Cloud 2025 لندن دسامبر گذشته نمایش داده شد.
این آسیبپذیری با شناسهٔ CVE-2026-23479 و امتیاز ۷.۷ (High) ثبت شده و ریشهش تو یکی از توابع سورس Redis ـه که مسئول مدیریت کلاینتهاییه که منتظر در دسترسشدن یه key موندهن. وقتی اون کلاینتِ معطلمونده درست تو بدترین لحظه از حافظه evict میشه، تابع همچنان از یه اشارهگر به حافظهای استفاده میکنه که قبلاً آزاد شده.
این نوع باگ به use-after-free (UAF) معروفه: برنامه بعد از اینکه دادهٔ یه آدرس حافظه دور انداخته شده، باز هم به اون آدرس دسترسی میگیره، و مهاجم میتونه با پرکردن همون آدرس با دادهٔ ساختگی خودش ازش سوءاستفاده کنه. به گفتهٔ نویسنده، زنجیرهٔ بهرهبرداری چند مرحله داره و در نهایت مهاجم میتونه با دستکاری دقیق حافظه و جاگذاری یه ساختار دادهٔ جعلی، رفتار داخلی Redis رو منحرف کنه.
نتیجهٔ این انحراف اینه که مهاجم در عمل میتونه با سطح دسترسی همون دیمن Redis روی سرور کد اجرا کنه — یعنی دسترسی به هر key، هر اعتبارنامه تو فایلهای کانفیگ و شبکهٔ سرویسهای مجاور. خلاصه که از یه باگ خرابی حافظه به کنترل کامل سرور میرسه.
طبق تحلیل Wiz، حدود ۸۰٪ محیطهای ابری Redis دارن و نزدیک ۸۵٪ این نمونهها بدون پسورد بالا اومدن، که سطح حملهٔ واقعی رو خیلی بیشتر از چیزی که فقط امتیاز CVSS نشون میده گسترده میکنه. این باگ از 7.2.0 وارد شده و تا نسخههای 7.2.13، 7.4.8، 8.2.5، 8.4.2 و 8.6.2 رو درگیر میکنه؛ نسخههای اصلاحشده 7.2.14، 7.4.9، 8.2.6، 8.4.3 و 8.6.3 هستن.
مشتریهای Redis Cloud خودکار محافظت شدن، ولی برای نصبهای self-managed نویسنده توصیه میکنه فوراً آپدیت کنید. اگه فعلاً نمیتونید پچ کنید، دستورهای CONFIG، گروه @scripting و دستورهای stream رو فقط به نقشهایی بدید که واقعاً لازمشون دارن — چون اکسپلویت کامل به هر سهتای اینها تو یه session نیاز داره. تا الان هم شواهدی از بهرهبرداری فعال در دنیای واقعی دیده نشده.
نکات کلیدی:
- CVE-2026-23479 یه use-after-free تو تابع مدیریت کلاینتهای معطلِ سورس Redis ـه که از نسخهٔ 7.2.0 وجود داشته
- مهاجم احرازهویتشده میتونه دستور دلخواه سیستمعامل با دسترسی دیمن Redis اجرا کنه
- این باگ رو یه ابزار خودکار AI به اسم Xint Code کشف کرده
- ۸۰٪ محیطهای ابری Redis دارن و ۸۵٪ بدون پسوردن
- نسخههای اصلاحشده: 7.2.14، 7.4.9، 8.2.6، 8.4.3 و 8.6.3 — فوراً آپدیت کنید
- راهکار موقت: محدودکردن دستورهای CONFIG، scripting و stream به نقشهای ضروری




