Realtek SDK komponentides, mida kasutavad erinevad tootjad oma traadita seadmete tarkvarades, on tuvastatud neli haavatavust, mis võimaldavad autentimata ründajal kaugelt käitada koodi seadmel kõrgendatud õigustega. Esialgsete hinnangute kohaselt mõjutavad probleemid vähemalt 200 seadme mudelit 65 erinevalt tarnijalt, sealhulgas erinevad mudelid traadita marsruuteritest nagu Asus, A-Link, Beeline, Belkin, Buffalo, D-Link, Edison, Huawei, LG, Logitec, MT-Link, Netgear, Realtek, Smartlink, UPVEL, ZTE ja Zyxel.
Probleem hõlmab erinevaid RTL8xxx SoC-põhiseid traadita seadmeid, sealhulgas traadita ruutereid ja Wi-Fi kordureid, IP-kaameraid ning nutiseadmeid valgustuse juhtimiseks. RTL8xxx kiipide põhjal loodud seadmetes kasutatakse arhitektuuri, mis hõlmab kahe SoC-i paigaldamist — esimesel on tootja Linuxi-põhine firmware, teisel aga eraldi kärbitud Linuxi keskkond, kus on rakendatud ligipääsupunkti funktsioonid. Teise keskkonna koostisosad põhinevad Realteki pakutavatel tüüppakomponentidel SDK-s. Need komponendid töötlevad andmeid, mis tulenevad väliste päringute saatmisest.
Haavatavused mõjutavad tooteid, kus kasutatakse Realteki SDK versioone 2.x, Realteki „Jungle“ SDK versioonid 3.0-3.4 ja Realteki „Luna“ SDK kuni versioonini 1.3.2. Parandus on juba välja antud Realteki „Luna“ SDK versioonis 1.3.2a ning Realteki „Jungle“ SDK-le valmistatakse ette plaastrid. Realteki SDK 2.x jaoks paranduside loomist ei kavandata, kuna selle versiooni hooldus on juba lõpetatud. Kõigi haavatavuste jaoks on esitatud töötavad ekspluateerimise prototüübid, mis võimaldavad seadmes enda koodi täitmist.
Tu vastustused (esimesele kahele on määratud ohutaseme 8.1 ja ülejäänutele 9.8):
- CVE-2021-35392 — puhverserveri ülevool mini_upnpd ja wscd protsessides, mis rakendavad funktsionaalsust «WiFi Simple Config» (mini_upnpd tegeleb SSDP-pakettide töötlemisega, samas kui wscd toetab SSDP-d ja teenindab HTTP-protokollil põhinevaid UPnP-päringute teenindamist). Ründaja võib saavutada oma koodi täitmise, saates spetsiaalselt vormindatud UPnP-päringuid «SUBSCRIBE» liiga suure sadama numbriga «Callback» välja. SUBSCRIBE /upnp/event/WFAWLANConfig1 HTTP/1.1 Host: 192.168.100.254:52881 Callback: NT: upnp:event
- CVE-2021-35393 — haavatavus «WiFi Simple Config» käitlejates, mis avaldub SSDP protokolli kasutamisel (kasutab UDP-d ja päringute formaati, mis sarnaneb HTTP-iga). Probleem tuleneb fikseeritud 512-baidise puhverserveri kasutamisest, töötades «ST:upnp» parameetri puhul M-SEARCH sõnumites, mida kliendid saadavad võrgu teenuste olemasolu määramiseks.
- CVE-2021-35394 — haavatavus MP Daemon protsessis, mis vastutab diagnostikategevuste (ping, traceroute) teostamise eest. Probleem võimaldab teha enda käskude sisestamist, kuna väliste utiliitide käitamisel puudub piisav argumentide kontroll.
- CVE-2021-35395 — rida haavatavusi veebiliidestes, mis põhinevad http-serveritel /bin/webs ja /bin/boa. Mõlemas serverites tuvastatud on tüüpilised haavatavused, mis on põhjustatud argumentide kontrollimise puudumisest enne väliste utiliitide käivitamist funktsiooni system(). Erinevused taanduvad ainult erinevate API-de kasutamisele rünnakuks. Mõlemad käitlejad ei sisaldanud kaitset CSRF rünnaku ja DNS rebinding tehnikate eest, mis võimaldab korraldada päringute saatmist välisest võrgust, kui juurdepääs liidesele on piiratud ainult sisevõrguga. Protsessides kasutati ka vaikimisi eelmääratud supervisor/supervisor kontot. Lisaks on käitlejates tuvastatud mitu mälupuhvri ülevoolu, mis ilmnevad liiga suurte argumentide saatmisel. POST /goform/formWsc HTTP/1.1 Host: 192.168.100.254 Content-Length: 129 Content-Type: application/x-www-form-urlencoded submit-url=wlwps.asp&resetUnCfg=0&peerPin=12345678;ifconfig>/tmp/1;&setPIN=Start+PIN&configVxd=off&resetRptUnCfg=0&peerRptPin=
- Lisaks on tuvastatud veel mõningaid haavatavusi UDPServeri protsessis. Selgus, et üks probleemidest oli teiste uuringute poolt avastatud juba 2015. aastal, kuid ei olnud täielikult lahendatud. Probleem tuleneb ebapiisavast argumentide kontrollimisest, mis edastatakse funktsioonile system(), ja seda saab ära kasutada, saates võrguporti 9034 rea vormingus ‘orf;ls’. Lisaks on UDPServeris tuvastatud mälupuhvri ülevool, mis tuleneb sprintf-funktsiooni ebaohutu kasutamisest ja mis võib potentsiaalselt samuti olla kasutatud rünnakute läbiviimiseks.
Allikas: opennet.ru
