Varnarleysi í uClibc og uClibc-ng sem gerir kleift að blekkja gögn í DNS skyndiminni

Í stöðluðu C bókasöfnunum uClibc og uClibc-ng, sem notuð eru í mörgum innbyggðum og flytjanlegum tækjum, hefur verið greint frá varnarleysi (CVE ekki úthlutað) sem gerir kleift að setja gervigögn í DNS skyndiminni, sem hægt er að nota til að skipta um IP tölu af handahófskennt léni í skyndiminni og beina beiðnum til lénsins á netþjóni árásarmannsins.

Málið hefur áhrif á ýmsa Linux fastbúnað fyrir beinar, aðgangsstaði og Internet of Things tæki, sem og innbyggða Linux dreifingu eins og OpenWRT og Embedded Gentoo. Það er tekið fram að varnarleysið birtist í tækjum frá mörgum framleiðendum (til dæmis er uClibc notað í Linksys, Netgear og Axis vélbúnaðar), en þar sem varnarleysið er óráðið í uClibc og uClibc-ng, eru nákvæmar upplýsingar um tiltekin tæki og framleiðendur sem eru með vörurnar. hafa vandamálið er tiltækt. hefur ekki enn verið gefið upp.

Varnarleysið er vegna notkunar fyrirsjáanlegra viðskiptaauðkenna í kóðanum til að senda DNS fyrirspurnir. Auðkennisnúmer DNS beiðninnar var valið með því einfaldlega að auka teljarann ​​án þess að nota viðbótar slembival á gáttanúmerum, sem gerði það mögulegt að eitra DNS skyndiminni með fyrirbyggjandi sendingu á UDP pakka með uppdiktuðum svörum (svarið verður samþykkt ef það barst fyrir kl. svarið frá hinum raunverulega netþjóni og inniheldur rétt auðkenni). Ólíkt Kaminsky aðferðinni sem lögð var til árið 2008, þarf ekki einu sinni að giska á færsluauðkennið, þar sem það er upphaflega fyrirsjáanlegt (gildið er upphaflega stillt á 1, sem er aukið með hverri beiðni, frekar en valið af handahófi).

Varnarleysi í uClibc og uClibc-ng sem gerir kleift að blekkja gögn í DNS skyndiminni

Til að vernda gegn auðkenniskrafti mælir forskriftin að auki með því að nota handahófskennda dreifingu fjölda frumnetsgátta sem DNS-beiðnir eru sendar frá, sem bætir upp fyrir ófullnægjandi stærð auðkennisins. Þegar þú virkjar slembival gáttar til að búa til gervi svar, auk þess að velja 16 bita auðkenni, verður þú einnig að velja netgáttarnúmerið. Í uClibc og uClibc-ng var slík slembival ekki beinlínis virkjuð (þegar hringt var í bind var UDP tengi af handahófi uppspretta ekki tilgreint) og notkun þess var háð stillingum stýrikerfisins.

Þegar slembival í potti er óvirkt er að ákvarða aukið beiðniauðkenni merkt sem léttvægt verkefni. En jafnvel þótt slembiröðun sé notuð, þarf árásarmaðurinn aðeins að giska á netgáttina á bilinu 32768–60999, þar sem hann getur notað stórfellda samtímis sendingu sýndarviðbragða á mismunandi nettengi.

Varnarleysi í uClibc og uClibc-ng sem gerir kleift að blekkja gögn í DNS skyndiminni

Vandamálið hefur verið staðfest í öllum núverandi útgáfum af uClibc og uClibc-ng, þar á meðal nýjustu útgáfum af uClibc 0.9.33.2 og uClibc-ng 1.0.40. Í september 2021 voru upplýsingar um varnarleysið sendar til CERT/CC til samræmdra undirbúnings lagfæringa. Í janúar 2022 var gögnum um vandamálið deilt með meira en 200 framleiðendum í samstarfi við CERT/CC. Í mars var reynt að hafa sérstaklega samband við umsjónarmann uClibc-ng verkefnisins, en hann svaraði að hann gæti ekki lagað varnarleysið sjálfur og mælti með því að birta opinberlega upplýsingar um vandamálið í von um að fá aðstoð við að þróa laga frá samfélaginu. Meðal framleiðenda tilkynnti NETGEAR útgáfu uppfærslu sem útilokar varnarleysið.

Heimild: opennet.ru

Bæta við athugasemd