نرمافزار Notepad++ نسخه 8.9.9 را برای رفع شش آسیبپذیری امنیتی منتشر کرد. این آسیبپذیریها شامل نقصهایی در پیامرسانی بینفرایندی (interprocess messaging)، ذخیرهسازی فایلهای سطح بالا، مدیریت کلیپبورد (clipboard)، ارسال دستورات (command dispatch) و رمزگشایی MIME Tools هستند.
این نسخه جدید تمامی موارد ذکر شده را برطرف میکند. اگرچه شناسههای CVE هنوز اختصاص داده نشدهاند، اما این آسیبپذیریها عمدتاً مسیرهای حمله محلی (local attack paths) را هدف قرار میدهند و برخلاف برخی تصورات، امکان اکسپلویت از راه دور (Remote Code Execution) بدون دسترسی اولیه را ندارند.
جزئیات فنی آسیبپذیریها
- دور زدن احراز هویت (Authentication Bypass): دو مورد از آسیبپذیریها مربوط به مکانیزم WM_COPYDATA در ویندوز هستند. در این حالت، نرمافزار بدون تأیید فرآیند فرستنده، به هندل پنجره (window handle) اعتماد میکند که این امر امکان جعل پیامهای معتبر را برای یک مهاجم فراهم میسازد.
- ارتقای سطح دسترسی محلی (Local Privilege Escalation): در صورت استفاده از پلاگین NppExec و اجرای یک نسخه ارتقایافته از Notepad++, مهاجم میتواند با ارسال پیامهای جعلی از طریق پلاگین، دستوراتی را با سطح دسترسی بالای ویرایشگر اجرا کند.
- آسیبپذیری TOCTOU: یک نقص از نوع Time-of-check/time-of-use در فرآیند ذخیره فایلهای محافظتشده از طریق UAC broker وجود دارد. این نقص به مهاجم اجازه میدهد تا در فاصله زمانی بین بررسی و استفاده از فایل، محتوای آن را جایگزین کند.
- نشت اطلاعات از حافظه (Heap Disclosure): در عملیات Paste Binary، عدم اعتبارسنجی اندازه حافظه اختصاص یافته به کلیپبورد باعث میشود که دادههای حساس موجود در Heap فرآیند (مانند مسیرهای سیستمفایل) در داخل سند نمایش داده شود.
- اجرای دستورات از طریق ShellExecute: نقص در شناسههای NPPM_MENUCOMMAND میتواند منجر به دسترسی خارج از محدوده (out-of-bounds) به آرایههای دستورات شود، هرچند کنترل کامل بر رشته دستورات در شرایط فعلی اثبات نشده است.
- سرریز Heap در MIME Tools: ویژگی SAML Decode در ابزار MIME Tools دارای آسیبپذیری سرریز Heap (heap overflow) است که میتواند منجر به کرش کردن نرمافزار یا اجرای کد شود.
اقدامات پیشنهادی
برای مقابله با این تهدیدات، توصیه میشود کاربران بلافاصله به نسخه 8.9.9 بهروزرسانی کنند. همچنین در صورت استفاده از افزونه MIME Tools، حتماً نسخه 3.2 را نصب نمایید. همچنین توصیه میشود از اجرای خودکار پلاگینهای ناشناس و ارتقای سطح دسترسی غیرضروری خودداری شود.