Ontgin wortelkwesbaarheid op afstand in FreeBSD se ping-nutsding

In FreeBSD is 'n kwesbaarheid (CVE-2022-23093) geïdentifiseer in die ping-hulpprogram wat by die basiese verspreiding ingesluit is. Die probleem kan moontlik lei tot die uitvoering van afgeleë kode met wortelvoorregte wanneer 'n eksterne gasheer wat deur 'n aanvaller beheer word, geping word. 'n Regstelling is verskaf in FreeBSD-opdaterings 13.1-RELEASE-p5, 12.4-RC2-p2 en 12.3-RELEASE-p10. Dit is nog nie duidelik of ander BSD-stelsels deur die geïdentifiseerde kwesbaarheid geraak word nie (daar is nog geen verslae van kwesbaarhede in NetBSD, DragonFlyBSD en OpenBSD nie).

Die kwesbaarheid word veroorsaak deur 'n bufferoorloop in die ontledingskode vir ICMP-boodskappe wat in reaksie op 'n verifikasieversoek ontvang is. Die kode vir die stuur en ontvang van ICMP-boodskappe in ping gebruik rou voetstukke en word uitgevoer met verhoogde voorregte (die hulpprogram kom met die setuid-wortelvlag). Die antwoord word aan die ping-kant verwerk deur die rekonstruksie van die IP- en ICMP-opskrifte van die pakkies wat van die rou-sok ontvang is. Die geselekteerde IP- en ICMP-opskrifte word in buffers gekopieer deur pr_pack(), sonder om in ag te neem dat bykomende uitgebreide opskrifte in die pakkie na die IP-opskrif teenwoordig kan wees.

Sulke opskrifte word uit die pakkie onttrek en in die kopblok ingesluit, maar word nie in ag geneem wanneer die buffergrootte bereken word nie. As die gasheer, in reaksie op 'n gestuurde ICMP-versoek, 'n pakkie met bykomende kopskrifte terugstuur, sal hul inhoud na 'n area buite die buffergrens op die stapel geskryf word. Gevolglik kan 'n aanvaller tot 40 grepe data op die stapel oorskryf, wat moontlik hul kode kan laat uitvoer. Die erns van die probleem word versag deur die feit dat die proses op die tydstip waarop die fout voorkom, in 'n toestand van stelseloproep-isolasie is (vermoë-modus), wat dit moeilik maak om toegang tot die res van die stelsel te verkry nadat die kwesbaarheid uitgebuit is .

Bron: opennet.ru

Voeg 'n opmerking