یک آسیبپذیری در ویژگی نصب هوشمند(۱) نرمافزار سیسکو IOS وIOS XE میتواند به یک مهاجم ناشناخته و از راه دور اجازه دهد تا یک دستگاه آسیبدیده را راهاندازی مجدد کند که منجر به DoS یا اجرای کد دلخواه در یک دستگاه آسیبدیده میشود.
این آسیبپذیری ناشی از اعتبارسنجی نادرست دادههای بسته است. یک مهاجم میتواند از طریق ارسال یک پیام نصب هوشمند دستکاریشده به یک دستگاه آسیبدیده بر روی پورت ۴۷۸۶ (TCP) از این آسیبپذیری بهرهبرداری کند. یک بهرهبرداری موفق میتواند به مهاجم اجازه دهد در دستگاه آسیبدیده یک سرریز بافر ایجاد کند که میتواند تأثیرات زیر را داشته باشد:
- راهاندازی مجدد یک دستگاه
- به مهاجم اجازه میدهد یک کد دلخواه بر روی دستگاه اجرا کند.
- منجر به یک حلقه نامحدود در دستگاه آسیبدیده میشود که موجب watchdog crash میشود.
سیسکو بهروزرسانیهای نرمافزاری را که مربوط به این آسیبپذیری میشود منتشر کرده است. هیچ راهحلی برای این آسیبپذیری وجود ندارد.
گزارش منتشرشده در این رابطه در اینجا[۱] آورده شده است.
این گزارش بخشی از گزارش ۲۸ مارس ۲۰۱۸ در مورد امنیت نرمافزار IOS و IOS XE است که حاوی ۲۰ توصیه امنیتی سیسکو است که ۲۲ آسیبپذیری را شرح میدهد. برای لیست کامل توصیهها و پیوندهای آنها، به پاسخ رویداد(۲) سیسکو مراجعه کنید[۲].
محصولات آسیبپذیر
این آسیبپذیری بر روی دستگاههایی از سیسکو تأثیر میگذارد که نسخه آسیبپذیر نرمافزار IOS یا IOS XE را اجرا میکنند و ویژگی نصب هوشمند در آنها فعال است.
فقط سوئیچهای سرویسگیرنده که دارای ویژگی نصب هوشمند هستند تحت تأثیر آسیبپذیریهایی است که در این گزارش توضیح داده شدهاند. دستگاههای سیسکو که سرویسدهنده (مدیر) هستند و ویژگی نصب هوشمند در آنها فعال است، دارای این آسیبپذیری نیستند.
برای اطلاعات بیشتر مربوط به اینکه کدام نسخههای نرمافزاری IOS و IOS XE آسیبپذیر هستند، بخش اصلاح نرمافزار را در این گزارش ببینید.
یادداشتهای مربوط به نسخههای خاص
ویژگی نصب هوشمند در سرویسگیرنده بر روی سوئیچهای IOS سیسکو در نسخههای نرمافزاری که برای برطرف شدن یک نقص با عنوان CSCvd36820 بهروزرسانی نشدهاند[۳]، بهطور پیشفرض فعال است.
سوئیچهایی که در حال اجرای نسخههای جدیدتر از نرمافزار IOS سیسکو نسخه ۱۲٫۵ هستند، قادر به اجرای ویژگی نصب هوشمند نیستند، اما اگر از فرمان archive download-sw که یک فرمان EXEC دارای امتیاز بالاست پشتیبانی کنند، میتوانند از سرویسگیرندگان نصب هوشمند شوند.
تعیین اینکه آیا ویژگی نصب هوشمند فعال است یا نه
برای تعیین اینکه آیا یک دستگاه سرویسگیرنده با قابلیت نصب هوشمند پیکربندی شده است یا نه، از دستور show vstack config که یک دستور EXEC و دارای امتیاز بالاست، استفاده کنید. خروجیهای Role: Client و Oper Mode: Enabled یا Role: Client (SmartInstall enabled) از دستور show config vstack نشان میدهد که این ویژگی در دستگاه فعال شده است.
مثالهای زیر خروجی دستور show config vstack را بر روی سوییچهای Catalyst سیسکو که بهعنوان نصب هوشمند پیکربندی شدهاند را نشان میدهد:
switch1# show vstack config
Role: Client (SmartInstall enabled)
.
.
.
switch2# show vstack config
Capability: Client
Oper Mode: Enabled
Role: Client
.
.
.
تعیین نسخه نرمافزار IOS سیسکو
برای تعیین اینکه کدام نسخه نرمافزار IOS سیسکو بر روی یک دستگاه در حال اجراست، مدیران میتوانند وارد دستگاه شوند، از دستور show version در CLI استفاده کنند و سپس به بنر سیستم که ظاهر میشود مراجعه کنند. اگر دستگاه در حال اجرای نرمافزار IOS سیسکو باشد، بنر سیستم متنهایی شبیه بهCisco Internetwork Operating System Software یا Cisco IOS Software را نمایش میدهد. این بنر همچنین نام تصویر نصبشده را در پرانتز نشان میدهد و پسازآن شماره نسخه نرمافزار IOS سیسکو و نام نسخه را نمایش میدهد. برخی از دستگاههای سیسکو از دستور show version پشتیبانی نمیکنند یا ممکن است خروجیهای مختلفی را ارائه دهند.
مثال زیر نتیجه خروجی دستور را برای دستگاهی که نرمافزار IOS سیسکو نسخه ۱۵٫۵(۲)T1 را اجرا میکند نشان میدهد و دارای نام تصویر نصبشده C2951-UNIVERSALK9-M است:
Router> show version
Cisco IOS Software, C2951 Software (C2951-UNIVERSALK9-M), Version 15.5(2)T1, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
.Copyright (c) 1986-2015 by Cisco Systems, Inc
Compiled Mon 22-Jun-15 09:32 by prod_rel_team
.
.
.
برای اطلاعات در مورد توافقنامههای نامگذاری و شمارهگذاری شده برای نسخههای نرمافزارIOS سیسکو، به راهنمای مرجع نرمافزار IOS و NX-OS سیسکو مراجعه کنید[۴].
تعیین نسخه نرمافزار IOS XE سیسکو
برای تعیین اینکه کدام نسخه از نرمافزار IOS XE سیسکو بر روی یک دستگاه در حال اجراست، مدیران میتوانند به دستگاه وارد شوند، از دستور show version در CLI استفاده کنند و سپس به بنر سیستم که ظاهر میشود مراجعه کنند. اگر دستگاه در حال اجرای نرمافزار IOS XE سیسکو باشد، بنر سیستم Cisco IOS Software، Cisco IOS XE Software و یا یک متن مشابه را نمایش میدهد.
مثال زیر نتیجه خروجی این دستور را برای دستگاهی که دارای نسخه ۱۶٫۲٫۱ نرمافزار IOS XE سیسکو است نمایش میدهد و دارای نام تصویر نصبشده CAT3K_CAA-UNIVERSALK9-M است.
ios-xe-device# show version
Cisco IOS Software, Catalyst L3 Switch Software (CAT3K_CAA-UNIVERSALK9-M), Version Denali 16.2.1, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
.Copyright (c) 1986-2016 by Cisco Systems, Inc
Compiled Sun 27-Mar-16 21:47 by mcpre
.
.
.
برای اطلاعات در مورد توافقنامههای نامگذاری و شمارهگذاری شده برای نسخههای نرمافزارIOS XE سیسکو، به راهنمای مرجع نرمافزار IOS و NX-OS سیسکو مراجعه کنید [۴].
محصولاتی که تأییدشده آسیبپذیر نیستند.
در حال حاضر هیچ محصول سیسکوی دیگر تحت تأثیر این آسیبپذیری قرار ندارد.
سیسکو تائید کرده است که این آسیبپذیری بر روی نرمافزارهای IOS XR یا NX-OS سیسکو تأثیر نمیگذارد.
جزئیات
نصب هوشمند یک پیکربندی plug-and-play و ویژگی مدیریت است که یک پیادهسازی zero-touch را برای سوئیچهای جدید (بهطورمعمول لایه دسترسی(۳)) فراهم میکند. این ویژگی به مشتری اجازه میدهد یک سوئیچ سیسکو را به هر مکانی انتقال دهد، آن را در شبکه نصب کند و بدون نیاز به تنظیمات اضافی آن را فعال کند. ویژگی نصب هوشمند هیچ تصدیق هویتی را نیاز ندارد.
یک شبکه نصب هوشمند شامل دقیقاً یک سوئیچ یا روتر نصب هوشمند هدایتکننده (مدیر) است که همچنین بهعنوان مدیر شاخه یکپارچه(۴) شناخته میشود و دارای یک یا چند سوئیچ مشتری نصب هوشمند است که همچنین به نام مشتریان شاخه یکپارچه(۵) شناخته میشوند. سوئیچ مشتری نیازی ندارد که مستقیماً به سوییچ مدیر متصل باشد؛ سوئیچ مشتری میتواند تا هفت hop دور باشد.
مدیر، یک نقطهی مدیریت واحد برای تصاویر و تنظیمات سوئیچهای مشتری را فراهم میکند. هنگامیکه یک سوئیچ سرویسگیرنده برای اولین بار در شبکه نصب میشود، مدیر بهطور خودکار سوئیچ جدید را تشخیص میدهد و تصویر صحیح نرمافزار IOS سیسکو و پیکربندی فایل برای دانلود را شناسایی میکند. مدیر همچنین میتواند یک آدرس IP و نام میزبان را به یک مشتری اختصاص دهد.
هیچ راهحلی وجود ندارد که این آسیبپذیری را برای مشتریانی که نیاز به استفاده از ویژگی نصب هوشمند دارند، برطرف کند. برای مشتریانی که نیاز به نصب هوشمند سیسکو ندارند، این ویژگی را میتوان با دستورno vstack غیرفعال کرد. در نسخههای نرمافزاری که به نقص CSCvd36820 مربوط هستند، ویژگی نصب هوشمند اگر در حال استفاده نباشد بهصورت خودکار غیرفعال خواهد شد.
به مدیران توصیه میشود با یک مشاور امنیت اطلاعات در ارتباط با سوءاستفاده از پروتکل نصب هوشمند سیسکو[۵] و راهنمای تنظیم پیکربندی نصب هوشمند[۶] مشورت کنند.
اصلاح نرمافزار
سیسکو بهروزرسانیهای نرمافزاری رایگانی ارائه داده است که آسیبپذیریهای توصیفشده در این گزارش را برطرف کرده است. مشتریان میتوانند فقط این بهروزرسانیها را نصب کرده و انتظار پشتیبانی از نسخههای نرمافزاری و ویژگیهایی که برای آنها مجوز خریداری کردهاند را داشته باشند. با نصب، دانلود، دسترسی و یا استفاده از چنین نرمافزارهایی، مشتریان موافقت خود را با شرایط مجوز نرمافزار سیسکو اعلام میکنند[۷].
علاوه بر این، مشتریان فقط میتوانند نرمافزارهایی را که دارای یک مجوز معتبر هستند، بهطور مستقیم از طریق سیسکو خریداری کنند یا از نمایندگی مجاز سیسکو دریافت کنند. در بیشتر موارد این بهروزرسانیها شامل بهروزرسانیهای نرمافزاری است که قبلاً خریداری شده است. بهروزرسانی نرمافزارهای امنیتی رایگان، مشتریان را وادار به دریافت یک مجوز نرمافزاری جدید، مجموعه ویژگیهای نرمافزاری اضافی یا بهروزرسانیهای عمده تجدیدنظر نمیکند.
در همه موارد، مشتریان باید اطمینان حاصل کنند که دستگاههای بهروزرسانی دارای حافظه کافی هستند و تائید میکنند که تنظیمات سختافزاری و نرمافزاری فعلی با نسخه جدید بهطور صحیح پشتیبانی میشوند. اگر این اطلاعات روشن نیست، به مشتریان توصیه میشود با مرکز پشتیبانی فنی سیسکو(۶) یا ارائهدهندگان قراردادی تعمیر و نگهداری تماس بگیرند.
مشتریان بدون قرارداد خدمات
مشتریانی که بهطور مستقیم از سیسکو خریداری میکنند، اما یک قرارداد خدمات با سیسکو ندارند و مشتریانی که از طریق فروشندگان شخص ثالث خرید میکنند اما در دستیابی به اصلاح نرمافزار از طریق فروشنده خود موفق نیستند، با تماس با مرکز پشتیبانی فنی سیسکو باید بهروزرسانی موردنظر را دریافت کنند[۸].
مشتریان باید شماره سریال دستگاه خود را در دسترس داشته باشند و آماده ارائه نشانی اینترنتی این گزارش بهعنوان مدرک حق دسترسی به بهروزرسانی رایگان باشند.
نرمافزارIOS و IOS XE شرکت سیسکو
برای کمک به مشتریانِ در معرضِ آسیبپذیریهای نرمافزارهای IOS و IOS XE، سیسکو یک ابزار به نامCisco IOS Software Checker را ارائه داده است[۹] که هرگونه توصیههای امنیتی سیسکو را که بر روی یک نسخه خاص تأثیر میگذارد را بررسی کرده و جدیدترین نسخهای که آسیبپذیری موردنظر را برطرف میکند را شناسایی میکند. در صورت لزوم، این ابزار نرمافزار را به آخرین نسخهای که دارای هیچکدام از آسیبپذیریهای ذکرشده در توصیهها نیست، بهروزرسانی میکند.
مشتریان میتوانند از این ابزار برای انجام وظایف زیر استفاده کنند:
- یک جستجو را با انتخاب یک یا چند نسخه از یک لیست drop-down یا آپلود یک فایل از یک سیستم محلی برای ابزار بهمنظور تجزیهوتحلیل، آغاز کنید.
- خروجی دستور show version را برای ابزار وارد کنید تا آن را تجزیه کند.
- یک جستجوی سفارشی را با استفاده از همه گزارشهای امنیتی منتشرشده توسط سیسکو آغاز کنید.
برای تعیین اینکه آیا یک نسخه تحت تأثیر هیچکدام از گزارشهای امنیتی منتشرشده توسط سیسکو قرار دارد یا نه، از ابزار Cisco IOS Software Checker در Cisco.com استفاده کنید یا نسخه نرمافزار IOS یا IOS XE را در اینجا [۱] وارد کنید.
بهرهبرداری و اطلاعیههای عمومی
تیم (۷)PSIRT از هیچ اطلاعیه عمومی و یا استفاده مخرب از آسیبپذیریهای شرح دادهشده در این گزارش آگاه نیست.
سیسکو از George Nosenko از شرکت Embedi برای گزارش کردن این آسیبپذیری از طریق GeekPwn تشکر میکند.
منابع
[۱]https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20180328-smi2
[۲] https://tools.cisco.com/security/center/viewErp.x?alertId=ERP-66682
[۳] https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvd36820
[۴] https://www.cisco.com/c/en/us/about/security-center/ios-nx-os-reference-guide.html
[۵]https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20170214-smi
[۶]https://www.cisco.com/c/en/us/td/docs/switches/lan/smart_install/configuration/guide/smart_install/concepts.html#23355
[۷] https://www.cisco.com/c/en/us/products/end-user-license-agreement.html
[۸] https://www.cisco.com/c/en/us/support/web/tsd-cisco-worldwide-contacts.html
[۹] https://tools.cisco.com/security/center/softwarechecker.x
(۱) Smart Install
(۲) Event Response
(۳) access layer
(۴) integrated branch director (IBD)
(۵) integrated branch clients (IBCs)
(۶) Cisco Technical Assistance Center (TAC)
(۷) Cisco Product Security Incident Response Team
ثبت ديدگاه