سوءاستفاده از نقص انکار سرویس در چندین مسیریاب MIKRO TIK
شرکت MikroTik بار دیگر از وجود نقصی در مسیریابهای خود خبر داد. این شرکت در هفتهی اول ماه آوریل سال 2019، جزئیات فنی مربوط به یک آسیب پذیری قدیمی که دستگاه را به مهاجمان راه دور نشان میدهد، منتشر ساخته است.
مهاجمان میتوانند از این آسیبپذیری برای راهاندازی یک حالت انکار سرویس (DoS) در دستگاههایی که RouterOS را اجرا میکنند، سوءاستفاده کنند. RouterOS حاوی چندین مشکل خستهشدن بیش از اندازهی منبع مربوط به IPv6 است که در حال حاضر برطرف شدهاند.
اولین مسئله باعث میشود در صورتی که ترافیک به سمت تعداد زیادی آدرس مقصد مختلف، تعیین مسیر شود، دستگاه مجدداً راهاندازی شود. این راه اندازیهای مجدد توسط یک تایمر نگهبان (watchdog) دایماً تکرار و در نتیجه منجر به به بارگیری بیش از اندازه و توقف پاسخگویی دستگاه میشوند.
بهروزرسانیهای امنیتی برای RouterOS منتشر شده است که این نقص (CVE-2018-19299) را برطرف میسازد؛ اما به گفتهی کارشناسان، برخی از دستگاههای متأثر همچنان آسیبپذیر هستند.
آسیبپذیری CVE-2018-19299، دستگاههای وصلهنشدهی Mikro Tik را که مسیر بستههای IPv6 را تعیین میکنند، تحتتأثیر قرار میدهد. مهاجم میتواند با ارسال یک دنبالهی خاص از بستههای IPv6 که استفاده از RAM را اشباع میسازد، از این نقص سوءاستفاده کند.
پس از رفع نقص مربوط به راهاندازی مجدد، مسئلهی دیگری باعث پرشدن حافظه میشود، زیرا اندازهی کش مسیر IPv6 میتواند بزرگتر از RAM موجود باشد. این مشکل نیز با محاسبهی خودکار اندازهی کش بر اساس حافظهی موجود، رفع شده است.
MikroTik این آسیبپذیریها را در نسخههای RouterOS که در ماه آوریل سال 2019 منتشر شدهاند (تمامی زنجیرههای انتشار: RouterOSv6.44.2، RouterOS v6.45beta23 و RouterOSv6.43.14)، برطرف ساخته است.
کارشناسان کشف کردهاند که نقص DoS تنها در دستگاههای با بیش از 64 مگابایت RAM رفع شده است.
Javier Prieto، یکی از اعضای Mikro Tik، این نقص را بر روی Cloud Hoster Router (CHR) با RAM 256 مگابایت مورد آزمایش قرار داده است. او مشاهده کرد که این حمله باعث استفادهی بیش از 20Mib شده است. Prieto چندین تست مختلف با GNS3 بااستفاده از CHR 6.44.2 (ثابت) انجام داده است و از آنجاییکه مسیریاب دارای حافظهی کافی بود ، نابود نشد.
در این آزمایش و با استفاده از CHR دارای 256 مگابایت حافظه، منابع سیستم، پیش از حمله، کل حافظه را 224 MiB و حافظهی آزاد را 197 MiB نشان میدهد. در حین حمله و تنها از یک رایانه، حافظهی آزاد تا حدود 20 MiB و گاهی تا 13 MiB کاهش مییابد. در استفاده از دو مهاجم، به نظر میرسد نتایج مشابه است و بدتر نیست. استفاده از مسیریاب دارای حافظهی 200 مگابایت منجر به راهاندازی مجدد میشود.
این نقص توسط چندین متخصص مختلف، از جمله Isalski، در 16 آوریل سال 2018 گزارش شده بود. به گفتهی این متخصص، Mikro Tik بر وجود این نقص اذعان داشت؛ اما آن را به عنوان آسیبپذیری امنیتی دستهبندی نکرد. Isalski این نقص را در ماه مارس به چندین تیم پاسخگویی اورژانسی گزارش داد و مدارک سوءاستفاده از این آسیبپذیری در حملات وحشیانه را منتشر ساخت. Isalski ثابت کرد که نقص CVE-2018-19299 تقریباً هر دستگاه Mikro Tik را تحتتأثیر قرار میدهد؛ حتی دستگاههایی که به عنوان مسیریابهای “core” یا “backhaul” استفاده میشوند.
Mikro Tik بیش از 20 نسخه RouterOS پس از کشف این آسیبپذیری منتشر ساخته است. یکی از دلایل این امر علاوه بر رد خطر امنیتی آن، این است که این نقص در سطح هسته (kernel) است و رفع آن بسیار دشوار است. به گفتهی یکی از اعضای تیم پشتیبانی شرکت Mikro Tik، Router v6 دارای هستهی قدیمیتری است و نمیتوان آن را تغییر داد.
کارشناسان معتقدند، Mikro Tik تعدادی بهینهسازی در نسخهی بتای بعدی RouterOS برای سختافزار با منبع کم RAM، معرفی خواهد کرد.