Вразливість CVE-2019-16920 дозволяє віддаленим неавторизованим зловмисникам виконувати код на цільовому пристрої. І певні моделі маршрутизаторів D-Link мають таку вразливість у своїх прошивках. Але компанія-виробник відмовилася випускати патч безпеки, мотивуючи це тим, що ці моделі вже зняті з виробництва.
D-Link не буде виправляти критичну несанкціоновану вразливість команд-ін’єкцій у своїх маршрутизаторах, що може дозволити зловмиснику віддалено захоплювати пристрої та виконувати код. Уразливість (CVE-2019-16920) існує в останній прошивці для продуктів DIR-655, DIR-866L, DIR-652 та DHP-1565, які є маршрутизаторами Wi-Fi для домашнього ринку, пише ThreatPost.
Минулого тижня D-Link повідомив FortiGuard Labs Fortinet, яка вперше виявила цю проблему у вересні, що всі чотири моделі зняті з виробництва, а компанія більше не продає та не підтримує їх (проте моделі все ще доступні як нові у крамницях сторонніх продавців).
Першопричиною вразливості, на думку Fortinet, є відсутність перевірки правильності щодо довільних команд, які виконуються нативною функцією виконання команд. Fortinet описує це як “типову проблему безпеки, яку зазнають багато виробників мікропрограмного забезпечення”.
Експлуатація проблеми починається з функції входу на сторінку адміністратора для маршрутизатора. Функція входу виконується за допомогою функції URI/apply_sec.cgi – вона витягує значення “current_user” та “user_username” з енергонезалежної оперативної пам’яті з випадковим доступом (NVRAM), що є типом оперативної пам’яті, яка зберігає дані після живлення пристрою вимкнено. Потім функція порівнює значення current_user зі значенням змінної acStack160.
“Значення current_user в NVRAM буде встановлено лише після успішного входу користувача, тому за замовчуванням його значення не ініціалізується”, – пояснив дослідник Fortinet Тхань Нгуен Нгуен в нещодавньому написанні. “Значення acStack160 є результатом base64encode (user_username), і за замовчуванням ім’я user_username встановлено на” user “, тому немає можливості iVar2 повернути значення 0, тому воно не повернеться до помилки”.
Зрештою, зловмисник може виконувати будь-яку дію в масиві SSC_SEC_OBJS під трактом “/apply_sec.cgi”, згідно словам Нгуена.
Для успішної експлуатації “ми реалізуємо POST HTTP-запит на” apply_sec.cgi “за допомогою дії ping_test”, – сказав він. “Потім ми виконуємо введення команди в ping_ipaddr. Навіть якщо він повертає сторінку входу, дія ping_test все одно виконується – значення ping_ipaddr виконає команду “echo 1234 in” на сервері маршрутизатора, а потім відправить результат назад на наш сервер. “
У цей момент зловмисники могли отримати пароль адміністратора або встановити власну задню панель на сервер – це дозволило б їм встановлювати шкідливі програми, прослідковувати трафік, що проходить через маршрутизатор, і, можливо, рухатись через домашню мережу, щоб дістати та заразити інші пристрої. Якщо патч не доступний, постраждалі користувачі повинні оновити свої пристрої якнайшвидше.
Продукція D-Link має такі вразливості; у вересні дослідники виявили вразливості маршрутизаторів D-Link, які можуть просочувати паролі для пристроїв, і які можуть вплинути на кожного користувача в мережах, які використовують їх для доступу.
В травні дослідник виявив зловмисників за допомогою хмарної платформи Google, щоб здійснити три окремі хвилі викрадення DNS проти вразливих D-Link та інших маршрутизаторів, розрахованих на широкий спектр користувачів.