Malproksime ekspluatebla radika vundebleco en la ping-utilo inkluzivita kun FreeBSD

En FreeBSD, vundebleco (CVE-2022-23093) estis identigita en la ping-utilo inkluzivita en la baza distribuo. La problemo eble povus konduki al fora koda ekzekuto kun radikaj privilegioj kiam oni pingas eksteran gastiganton kontrolitan de atakanto. Riparo estis disponigita en FreeBSD-ĝisdatigoj 13.1-RELEASE-p5, 12.4-RC2-p2 kaj 12.3-RELEASE-p10. Ankoraŭ ne estas klare ĉu aliaj BSD-sistemoj estas trafitaj de la identigita vundebleco (ekzistas ankoraŭ neniuj raportoj pri vundeblecoj en NetBSD, DragonFlyBSD kaj OpenBSD).

La vundebleco estas kaŭzita de bufro-superfluo en la analiza kodo por ICMP-mesaĝoj ricevitaj en respondo al konfirmpeto. La kodo por sendi kaj ricevi ICMP-mesaĝojn en ping uzas krudajn ingojn kaj estas ekzekutita kun altigitaj privilegioj (la utileco venas kun la setuid radika flago). La respondo estas prilaborita ĉe la ping-flanko per la rekonstruo de la IP- kaj ICMP-titoloj de la pakaĵetoj ricevitaj de la kruda ingo. La elektitaj IP- kaj ICMP-titoloj estas kopiitaj en bufrojn per pr_pack (), sen konsidero, ke kromaj plilongigitaj titoloj povas ĉeesti en la pakaĵeto post la IP-kapo.

Tiaj kaplinioj estas ĉerpitaj el la pakaĵeto kaj inkluditaj en la kapliniobloko, sed ne estas konsiderataj dum kalkulado de la bufrograndeco. Se la gastiganto, en respondo al sendita ICMP-peto, resendas pakaĵeton kun kromaj titoloj, ilia enhavo estos skribita al areo preter la bufrolimo sur la stako. Kiel rezulto, atakanto povas anstataŭigi ĝis 40 bajtojn da datumoj sur la stako, eble permesante al ilia kodo ekzekuti. La severeco de la problemo estas mildigita de la fakto, ke kiam la eraro okazas, la procezo estas en stato de sistema voka izolado (kapableca reĝimo), kio malfaciligas akiri aliron al la resto de la sistemo post ekspluatado de la vundebleco. .

fonto: opennet.ru

Aldoni komenton