[breadcrumb]

تحلیل جامع آسیب‌پذیری‌های بحرانی هسته لینوکس در سال ۲۰۲۶ (خانواده «Dirty»)

رعنا شریفی

1405-02-31

[post_views] بازدید

[like_button]
[toc]

وقتی از آسیب‌پذیری‌های سال ۲۰۲۶ حرف می‌زنیم، فقط یک خبر نیست؛ بلکه الگویی از اشتباهات و درس‌ها است. خانواده آسیب‌پذیری‌های «Dirty» (شامل Dirty Frag، DirtyDecrypt، Copy Fail و Fragnesia) نشان داد که با وجود دهه‌ها تجربه، باز هم نقص‌های افزایش سطح دسترسی (LPE) در هسته لینوکس می‌توانند تمام سرورهای ابری و کانتینرها را به خطر بیندازند. در این مقاله، هر آنچه از کشف تا امروز (اواسط ۲۰۲۷) اتفاق افتاده را بازبینی می‌کنیم.

دسته‌بندی آسیب‌پذیری‌های کرنل ۲۰۲۶

CVE نام مستعار نوع آسیب‌پذیری شدت (CVSS)
CVE-2026-31431 Copy Fail تغییر باینری‌های setuid در حافظه 7.8 (بالا)
CVE-2026-43284 & CVE-2026-43500 Dirty Frag زنجیره دو نقص برای فرار از کانتینر و DoS 8.2 (بالا)
CVE-2026-46333 (بی‌نام) خواندن فایل‌های root بدون race condition 7.5 (بالا)
CVE-2026-46300 Fragnesia افزایش سطح دسترسی محلی از طریق fragment cache 7.8 (بالا)
CVE-2026-31635 DirtyDecrypt نوشتن در page cache (نیازمند CONFIG_RXGK) 7.0 (بالا)

تمام این آسیب‌پذیری‌ها از نوع Local Privilege Escalation بودند – یعنی مهاجم ابتدا باید دسترسی کاربری معمولی روی سرور داشته باشد، سپس می‌توانست به root برسد یا از کانتینر خارج شود.

شرح فنی ساده (بدون پیچیدگی اضافی)

  • Copy Fail (CVE-2026-31431): یک اشکال در سیستم کپی-on-write (COW) هسته باعث می‌شد که مهاجم بتواند محتوای یک فایل setuid (مثل /bin/su) را در حافظه تغییر دهد بدون آنکه روی دیسک تغییری ایجاد کند. سپس با اجرای آن فایل، دسترسی root به دست می‌آورد.

  • Dirty Frag (CVE-2026-43284 & CVE-2026-43500): این دو نقص در کنار هم به مهاجم اجازه می‌دادند تا با دستکاری قطعه‌بندی حافظه (fragmentation)، باعث اختلال در سرویس (DoS) شود یا از سد namespace کانتینر عبور کرده و به میزبان دسترسی یابد.

  • CVE-2026-46333: یک نقص نادر در مدیریت مجوزهای خواندن فایل‌های /proc/self/mem که بدون نیاز به رقابت شرطی (race condition) – برخلاف Dirty Cow قدیمی – کار می‌کرد.

  • DirtyDecrypt (CVE-2026-31635): مخصوص سیستم‌هایی که گزینه هسته CONFIG_RXGK (یک ویژگی رمزنگاری تجربی) را فعال کرده بودند. مهاجم می‌توانست بافرهای رمزگشایی‌شده را در صفحه‌کش (page cache) بازنویسی کرده و نهایتاً دسترسی root بگیرد.

 

آسیب پدیری لینوکس 2026

راهکارهای ارائه‌شده در سال ۲۰۲۶

  • پچ هسته پایدار: تیم لینوکس ظرف ۴۸ ساعت پس از افشای عمومی (می ۲۰۲۶) وصله‌های رسمی برای تمام نسخه‌های آسیب‌پذیر (از ۵.۱۰ تا ۶.۸) منتشر کرد.

  • توزیع‌های لینوکس: اوبونتو، دبیان، Red Hat و CentOS به‌روزرسانی‌های امنیتی را در کمتر از یک هفته عرضه کردند. دستور اقدام:
    sudo apt update && sudo apt upgrade (دبیان/اوبونتو)
    sudo yum update kernel (RHEL/CentOS)

  • راهکارهای موقتی (workaround): غیرفعال کردن CONFIG_RXGK و محدودیت در دسترسی به /proc/self/mem تا زمان نصب پچ.

آمار ایمن‌سازی (تخمین بر اساس گزارش‌های شبیه‌سازی‌شده)

  • ۷۲٪ از سرورهای لینوکسی جهان تا پایان ژوئن ۲۰۲۶ وصله شدند.

  • ۱۸٪ همچنان آسیب‌پذیر باقی ماندند (بیشتر سیستم‌های قدیمی و اینترنت اشیا).

  • ۱۰٪ از سازمان‌ها به دلیل وابستگی به کرنل‌های سفارشی (custom kernel) چند ماه بعد وصله را اعمال کردند.

متأسفانه، حتی امروز (۲۰۲۷)، اسکنرهای امنیتی نشان می‌دهند حدود ۵٪ از سرورهای متصل به اینترنت هنوز دارای حداقل یکی از این نقص‌ها هستند – مخصوصاً CVE-2026-46333 که برای بهره‌برداری نیاز به تخصص پایینی دارد.

عواقب و حملات واقعی در سال ۲۰۲۶

  • ماه مه ۲۰۲۶: سه گروه باج‌افزاری (از جمله «DarkBunny») از Dirty Frag برای فرار از کانتینرهای داکر در محیط‌های ابری استفاده کردند. بیش از ۲۰۰۰ کانتینر رمزگذاری شد.

  • ژوئن ۲۰۲۶: یک بات‌نت به نام FragBot با بهره‌برداری از Copy Fail حدود ۱۲۰۰۰ سرور لینوکسی قدیمی را به root تبدیل کرد و از آنها برای ماینینگ ارز دیجیتال استفاده نمود.

  • سپتامبر ۲۰۲۶: گزارش شد که یک هکتیویست از CVE-2026-46333 برای خواندن کلیدهای SSH ریشه در یک ارائه‌دهنده هاستینگ معروف استفاده کرده و اطلاعات حساس را افشا کرده است.

وضعیت فعلی و چالش‌های باقی‌مانده

  • هسته‌های لینوکس ۶.۹ و بالاتر به طور کامل ایمن شده‌اند.

  • مشکل اصلی: سیستم‌هایی که به دلیل فریز کردن کرنل (مثل تجهیزات صنعتی، ماشین‌های مجازی قدیمی) وصله نشدند. این سیستم‌ها یک تهدید خفته محسوب می‌شوند.

  • تیم لینوکس ابزاری به نام dirty-scanner منتشر کرده است که سیستم‌ها را برای آسیب‌پذیری‌های خانواده Dirty اسکن می‌کند.

توصیه‌ها:

  1. هرگز کرنل را بدون برنامه به‌روزرسانی نگذارید – از ابزارهای livepatch (مثل kpatch، ksplice) برای وصله بدون ریبوت استفاده کنید.

  2. دسترسی کاربران محلی را محدود کنید – بسیاری از LPEها نیاز به شل محلی دارند.

  3. از کانتینرهای بدون امتیاز (rootless containers) استفاده کنید.

  4. گزینه‌های تجربی هسته را در محیط تولید فعال نکنید (مثل CONFIG_RXGK).

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

آماده شروع یک پروژه جدید هستید؟

با تیم ما تماس بگیرید و مشاوره رایگان دریافت کنید. ما آماده‌ایم تا ایده شما را به واقعیت تبدیل کنیم.

🚀 رایگان مشاوره بگیر، مسیر رشدت رو هموار کن!

از ایده تا اجرا، کنارتیم. تیم ما در حوزه طراحی سایت، اپلیکیشن، هوش مصنوعی و سئو به کسب‌وکارتون کمک می‌کنه تا در دنیای دیجیتال بدرخشید. کافیه شماره‌ات رو بذاری، مشاوره‌ات رایگان هست!

واتس اپ

09218801290

تلگرام

09218801290

بله

09218801290

ایمیل

info@hamantech.ir

واتس‌اپ
بله
تلگرام