I libinput 1.20.1, som tillhandahÄller en enhetlig inmatningsstack för att möjliggöra samma hÀndelsebehandling frÄn inmatningsenheter i miljöer baserade pÄ Wayland och X.Org, har en sÄrbarhet (CVE-2022-1215) ÄtgÀrdats som gör det möjligt att exekvera egen kod vid anslutning av en sÀrskilt modifierad/emulerad inmatningsenhet till systemet. Problemet uppstÄr i miljöer baserade pÄ X.Org och Wayland och kan utnyttjas bÄde vid lokal anslutning av enheter och vid manipulation av enheter med Bluetooth-grÀnssnitt. Om X-servern körs med root-rÀttigheter kan sÄrbarheten ge möjlighet till kodexekvering med förhöjda privilegier.
Problemet orsakas av ett fel i formateringen av strÀngar i koden som ansvarar för loggning av enhetsanslutningsinformation. Specifikt modifierade funktionen evdev_log_msg, genom att anvÀnda snprintf, den ursprungliga formateringsstrÀngen för loggposten, dÀr enhetens namn lades till som prefix. Den modifierade strÀngen skickades sedan till funktionen log_msg_va, som anvÀnde funktionen printf. SÄledes blev obehöriga externa data, som inte verifierades, det första argumentet för printf, vilket ledde till potentiell stacköverskrivning om enheten returnerade ett namn som innehöll strÀngformattecken (till exempel "Evil %s").
KĂ€lla: opennet.ru
