Realtek SDK-ийн эмзэг байдал нь 65 үйлдвэрлэгчийн төхөөрөмжүүдэд асуудал үүсгэсэн

Төрөл бүрийн утасгүй төхөөрөмж үйлдвэрлэгчид өөрсдийн програм хангамжид ашигладаг Realtek SDK-ийн бүрэлдэхүүн хэсгүүдэд танигдаагүй халдагчид өндөр эрх бүхий төхөөрөмж дээр алсаас код ажиллуулах боломжийг олгодог дөрвөн эмзэг байдлыг илрүүлсэн. Урьдчилсан тооцоогоор Asus, A-Link, Beeline, Belkin, Buffalo, D-Link, Edison, Huawei, LG, Logitec, MT- зэрэг утасгүй чиглүүлэгчийн янз бүрийн загварууд зэрэг 200 өөр ханган нийлүүлэгчийн дор хаяж 65 төхөөрөмжийн загварт асуудал нөлөөлж байна. Link, Netgear, Realtek, Smartlink, UPVEL, ZTE болон Zyxel.

Асуудал нь RTL8xxx SoC дээр суурилсан утасгүй төхөөрөмжүүдийн төрөл бүрийн ангиллыг хамардаг, утасгүй чиглүүлэгч, Wi-Fi өсгөгчөөс эхлээд IP камер, ухаалаг гэрэлтүүлгийн хяналтын төхөөрөмж хүртэл. RTL8xxx чип дээр суурилсан төхөөрөмжүүд нь хоёр SoC суулгасан архитектурыг ашигладаг - эхнийх нь үйлдвэрлэгчийн Линукс дээр суурилсан програм хангамжийг суулгадаг, хоёр дахь нь хандалтын цэгийн функцуудыг хэрэгжүүлдэг тусдаа задалсан Линукс орчныг ажиллуулдаг. Хоёрдахь орчныг дүүргэх нь SDK-д Realtek-ийн өгсөн стандарт бүрэлдэхүүн хэсгүүдэд суурилдаг. Эдгээр бүрэлдэхүүн хэсгүүд нь гадны хүсэлтийг илгээсний үр дүнд хүлээн авсан өгөгдлийг боловсруулдаг.

Энэ эмзэг байдал нь Realtek SDK v2.x, Realtek "Jungle" SDK v3.0-3.4 болон 1.3.2 хувилбараас өмнөх Realtek "Luna" SDK ашигладаг бүтээгдэхүүнүүдэд нөлөөлдөг. Энэ засварыг Realtek "Luna" SDK 1.3.2a шинэчлэлт дээр аль хэдийн гаргасан бөгөөд Realtek "Jungle" SDK-ийн засваруудыг мөн хэвлүүлэхээр бэлтгэж байна. Realtek SDK 2.x-д зориулсан засваруудыг гаргах төлөвлөгөө байхгүй, учир нь энэ салбарын дэмжлэг аль хэдийн зогссон. Бүх эмзэг байдлын хувьд таны кодыг төхөөрөмж дээр ажиллуулах боломжийг олгодог ажиллаж байгаа ашиглалтын прототипүүдийг өгсөн болно.

Тодорхойлсон эмзэг байдал (эхний хоёр нь ноцтой байдлын түвшинг 8.1, үлдсэнийг нь 9.8 гэж тооцдог):

  • CVE-2021-35392 - “WiFi Энгийн Тохиргоо” функцийг хэрэгжүүлдэг mini_upnpd болон wscd процессуудын буфер халилт (mini_upnpd нь SSDP пакетуудыг боловсруулдаг ба wscd нь SSDP-г дэмжихээс гадна HTTP протоколд суурилсан UPnP хүсэлтийг боловсруулдаг). Халдагчид тусгайлан боловсруулсан UPnP "SUBSCRIBE" хүсэлтийг хэт том портын дугаараар "Буцах" талбарт илгээснээр өөрийн кодоо гүйцэтгэх боломжтой. SUBSCRIBE /upnp/event/WFAWLANConfig1 HTTP/1.1 Хост: 192.168.100.254:52881 Буцах дуудлага: NT:upnp:үйл явдал
  • CVE-2021-35393 нь SSDP протоколыг (UDP болон HTTP-тэй төстэй хүсэлтийн форматыг ашигладаг) ашиглах үед үүсдэг WiFi Энгийн тохиргооны зохицуулагчийн эмзэг байдал юм. Сүлжээнд үйлчилгээ байгаа эсэхийг тодорхойлохын тулд үйлчлүүлэгчээс илгээсэн M-SEARCH мессеж дэх "ST:upnp" параметрийг боловсруулахдаа 512 байт тогтмол буфер ашигласантай холбоотой асуудал үүсдэг.
  • CVE-2021-35394 нь оношлогооны үйлдлүүдийг (ping, traceroute) гүйцэтгэх үүрэгтэй MP Daemon процессын эмзэг байдал юм. Асуудал нь гадны хэрэгслүүдийг ажиллуулахдаа аргументуудыг хангалтгүй шалгасны улмаас өөрийн командыг солих боломжийг олгодог.
  • CVE-2021-35395 нь http сервер /bin/webs болон /bin/boa дээр суурилсан вэб интерфэйсүүдийн хэд хэдэн эмзэг байдал юм. Систем() функцийг ашиглан гадны хэрэгслүүдийг эхлүүлэхийн өмнө шалгах аргумент дутмаг байснаас үүссэн ердийн эмзэг байдлыг хоёр серверт тодорхойлсон. Ялгаа нь зөвхөн халдлагад өөр өөр 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/0 ;&setPIN=Start+PIN&configVxd=off&resetRptUnCfg=XNUMX&peerRptPin=
  • Нэмж дурдахад UDPServer процесст өөр хэд хэдэн эмзэг байдал илэрсэн. Асуудлын нэгийг 2015 онд бусад судлаачид олж илрүүлсэн боловч бүрэн засч залруулж чадаагүй байна. Асуудал нь system() функцэд дамжуулагдсан аргументуудыг зохих ёсоор баталгаажуулаагүйгээс үүдэлтэй бөгөөд 9034 сүлжээний порт руу 'orf;ls' гэх мэт мөрийг илгээх замаар ашиглаж болно. Нэмж дурдахад, sprintf функцийг аюулгүй ашигласны улмаас UDPServer-д буфер халих нь тогтоогдсон бөгөөд үүнийг халдлага хийхэд ашиглаж болно.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх