Realtek SDK осалдықтары 65 өндірушінің құрылғыларында ақауларға әкелді

Түрлі сымсыз құрылғылар өндірушілері микробағдарламаларында пайдаланатын Realtek SDK құрамдастарында аутентификацияланбаған шабуылдаушыға артықшылықтары жоғары құрылғыда кодты қашықтан орындауға мүмкіндік беретін төрт осалдық анықталды. Алдын ала бағалаулар бойынша проблемалар 200 түрлі жеткізушілердің кем дегенде 65 құрылғы үлгісіне әсер етеді, соның ішінде Asus, A-Link, Beeline, Belkin, Buffalo, D-Link, Edison, Huawei, LG, Logitec, MT- сымсыз маршрутизаторларының әртүрлі үлгілері. Link, Netgear, Realtek, Smartlink, UPVEL, ZTE және Zyxel.

Мәселе RTL8xxx SoC негізіндегі сымсыз құрылғылардың әртүрлі сыныптарын қамтиды, сымсыз маршрутизаторлар мен Wi-Fi күшейткіштерінен бастап IP камералары мен смарт жарықтандыруды басқару құрылғыларына дейін. RTL8xxx чиптеріне негізделген құрылғылар екі SoC орнатуды қамтитын архитектураны пайдаланады - біріншісі өндірушінің Linux негізіндегі микробағдарламасын орнатады, ал екіншісі кіру нүктесі функцияларын жүзеге асыра отырып, бөлек ажыратылған Linux ортасын іске қосады. Екінші ортаны толтыру SDK ішінде Realtek ұсынған стандартты компоненттерге негізделген. Бұл компоненттер сыртқы сұрауларды жіберу нәтижесінде алынған деректерді де өңдейді.

Осалдықтар Realtek SDK v2.x, Realtek “Jungle” SDK v3.0-3.4 және Realtek “Luna” SDK 1.3.2 нұсқасынан бұрын пайдаланатын өнімдерге әсер етеді. Түзету Realtek "Luna" SDK 1.3.2a жаңартуында шығарылған және Realtek "Джунгли" SDK үшін патчтар да жариялануға дайындалуда. Realtek SDK 2.x үшін қандай да бір түзетулерді шығару жоспары жоқ, себебі бұл филиалға қолдау көрсету қазірдің өзінде тоқтатылды. Барлық осалдықтар үшін құрылғыда кодты орындауға мүмкіндік беретін жұмыс істейтін эксплойт прототиптері қамтамасыз етіледі.

Анықталған осалдықтар (алғашқы екеуіне ауырлық деңгейі 8.1, ал қалғандарына – 9.8):

  • CVE-2021-35392 - "WiFi қарапайым конфигурациялау" функциясын жүзеге асыратын mini_upnpd және wscd процестеріндегі буфердің толып кетуі (mini_upnpd SSDP пакеттерін өңдейді және wscd, SSDP қолдауымен қатар, HTTP протоколы негізінде UPnP сұрауларын өңдейді). Шабуылдаушы «Кері қоңырау» өрісінде тым үлкен порт нөмірі бар арнайы жасалған UPnP «ЖАЗЫЛУ» сұрауларын жіберу арқылы өз кодының орындалуына қол жеткізе алады. ЖАЗЫЛУ /upnp/event/WFAWLANConfig1 HTTP/1.1 Хост: 192.168.100.254:52881 Кері қоңырау: NT:upnp:оқиға
  • CVE-2021-35393 — SSDP протоколын (UDP және HTTP-ге ұқсас сұрау пішімін пайдаланады) пайдалану кезінде пайда болатын WiFi Simple Config өңдегіштеріндегі осалдық. Мәселе желіде қызметтердің бар-жоғын анықтау үшін клиенттер жіберген M-SEARCH хабарламаларында "ST:upnp" параметрін өңдеу кезінде 512 байт тұрақты буферді пайдаланудан туындады.
  • CVE-2021-35394 диагностикалық операцияларды (ping, traceroute) орындауға жауапты MP Daemon процесіндегі осалдық болып табылады. Мәселе сыртқы утилиталарды орындау кезінде дәлелдерді жеткіліксіз тексеруге байланысты өз командаларын ауыстыруға мүмкіндік береді.
  • CVE-2021-35395 - /bin/webs және /bin/boa http серверлеріне негізделген веб-интерфейстердегі осалдықтар қатары. System() функциясын пайдаланып сыртқы утилиталарды іске қоспас бұрын тексеру дәлелдерінің болмауынан туындаған типтік осалдықтар екі серверде де анықталды. Айырмашылықтар тек шабуылдар үшін әртүрлі API қолдануына байланысты. Екі өңдеушілер де CSRF шабуылдарынан қорғауды және интерфейске тек ішкі желіге кіруді шектей отырып, сыртқы желіден сұрауларды жіберуге мүмкіндік беретін «DNS қайта байланыстыру» техникасын қамтымаған. Процестер де алдын ала анықталған супервайзер/бақылаушы тіркелгісі үшін әдепкі болып табылады. Бұған қоса өңдегіштерде тым үлкен аргументтер жіберілген кезде пайда болатын бірнеше стек толып кетулері анықталды. POST /goform/formWsc HTTP/1.1 Хост: 192.168.100.254 Мазмұн ұзындығы: 129 Мазмұн түрі: application/x-www-form-urlencoded submit-url=%2Fwlwps.asp&resetUnCfg=0&peerPin12345678/1; ;&setPIN=Бастау+PIN&configVxd=off&resetRptUnCfg=0&peerRptPin=
  • Сонымен қатар, UDPServer процесінде тағы бірнеше осалдықтар анықталды. Белгілі болғандай, проблемалардың бірін басқа зерттеушілер 2015 жылы ашқан, бірақ толығымен түзетілмеген. Мәселе system() функциясына жіберілген аргументтерді дұрыс тексерудің болмауынан туындады және оны 9034 желілік портына 'orf;ls' сияқты жолды жіберу арқылы пайдалануға болады. Бұған қоса, UDPServer жүйесінде sprintf функциясының қауіпсіз пайдаланылуына байланысты буфердің толып кетуі анықталды, оны шабуылдарды орындау үшін де пайдалануға болады.

Ақпарат көзі: opennet.ru

пікір қалдыру