FreeBSD, IPnet un Nucleus NET ievainojamības, kas saistītas ar kļūdām DNS saspiešanas ieviešanā

Pētnieku grupas Forescout Research Labs un JSOF Research ir publicējušas kopīgā pētījuma rezultātus par dažādu saspiešanas shēmu ieviešanu drošību, ko izmanto, lai iesaiņotu dublētus nosaukumus DNS, mDNS, DHCP un IPv6 RA ziņojumos (dublēto domēna daļu iesaiņošana ziņojumos). kas ietver vairākus nosaukumus). Darba gaitā tika identificētas 9 ievainojamības, kas apkopotas ar koda nosaukumu NAME:WRECK.

Problēmas ir konstatētas FreeBSD, kā arī tīkla apakšsistēmās IPnet, Nucleus NET un NetX, kas ir kļuvušas plaši izplatītas VxWorks, Nucleus un ThreadX reāllaika operētājsistēmās, ko izmanto automatizācijas ierīcēs, glabāšanā, medicīnas ierīcēs, avionikā, printeros. un plaša patēriņa elektronika. Tiek lēsts, ka ievainojamība ir skārusi vismaz 100 miljonus ierīču.

  • FreeBSD ievainojamība (CVE-2020-7461) ļāva organizēt tā koda izpildi, uzbrucējiem, kas atrodas tajā pašā lokālajā tīklā ar upuri, nosūtot speciāli izstrādātu DHCP paketi, kuras apstrādi izraisīja ievainojams DHCP klients. uz bufera pārplūdi. Problēmu mazināja fakts, ka dhclient process, kurā bija ievainojamība, darbojās ar atiestatīšanas privilēģijām izolētā Capsicum vidē, un tāpēc bija jāidentificē cita ievainojamība, lai izietu.

    Kļūdas būtība ir nepareizā parametru pārbaudē, DHCP servera atgrieztajā paketē ar DHCP opciju 119, kas ļauj pārsūtīt “domēnu meklēšanas” sarakstu uz atrisinātāju. Nepareizs bufera lieluma aprēķins, kas nepieciešams, lai pielāgotu neiepakotos domēna nosaukumus, noveda pie tā, ka uzbrucēja kontrolēta informācija tika ierakstīta ārpus piešķirtā bufera. FreeBSD problēma tika novērsta pagājušā gada septembrī. Problēmu var izmantot tikai tad, ja jums ir piekļuve vietējam tīklam.

  • Ievainojamība iegultajā IPnet tīkla kaudzē, ko izmanto RTOS VxWorks, pieļauj iespējamu koda izpildi DNS klienta pusē nepareizas DNS ziņojumu saspiešanas apstrādes dēļ. Kā izrādījās, šo ievainojamību pirmo reizi atklāja Exodus 2016. gadā, taču tā nekad netika novērsta. Arī jauns pieprasījums Wind River netika atbildēts, un IPnet ierīces joprojām ir neaizsargātas.
  • Siemens atbalstītajā Nucleus NET TCP/IP stekā tika identificētas sešas ievainojamības, no kurām divas var izraisīt attālinātu koda izpildi, bet četras var izraisīt pakalpojuma atteikumu. Pirmā bīstamā problēma ir saistīta ar kļūdu, atspiežot saspiestus DNS ziņojumus, bet otrā ir saistīta ar nepareizu domēna nosaukumu etiķešu parsēšanu. Abas problēmas izraisa bufera pārpildīšanu, apstrādājot īpaši formatētas DNS atbildes.

    Lai izmantotu ievainojamības, uzbrucējam tikai jānosūta īpaši izstrādāta atbilde uz jebkuru likumīgu pieprasījumu, kas nosūtīts no neaizsargātas ierīces, piemēram, veicot MTIM uzbrukumu un traucējot trafiku starp DNS serveri un upuri. Ja uzbrucējam ir piekļuve vietējam tīklam, viņš var palaist DNS serveri, kas mēģina uzbrukt problemātiskām ierīcēm, nosūtot mDNS pieprasījumus apraides režīmā.

  • NetX tīkla steka (Azure RTOS NetX), kas izstrādāta ThreadX RTOS un tika atvērta 2019. gadā pēc tam, kad to pārņēma Microsoft, ievainojamība aprobežojās ar pakalpojuma atteikumu. Problēmu izraisa kļūda, analizējot saspiestus DNS ziņojumus atrisinātāja ieviešanā.

No pārbaudītajiem tīkla skursteņiem, kuros netika atrastas ievainojamības saistībā ar atkārtotu datu saspiešanu DNS ziņojumos, tika nosaukti šādi projekti: lwIP, Nut/Net, Zephyr, uC/TCP-IP, uC/TCP-IP, FreeRTOS+TCP. , OpenThread un FNET. Turklāt pirmie divi (Nut/Net un lwIP) vispār neatbalsta DNS ziņojumu saspiešanu, bet pārējie šo darbību īsteno bez kļūdām. Turklāt tiek atzīmēts, ka iepriekš tie paši pētnieki jau bija identificējuši līdzīgas ievainojamības Treck, uIP un PicoTCP stekos.

Avots: opennet.ru

Pievieno komentāru