Pagkahuyang sa libinput nga modala sa pagpatuman sa code kung konektado ang usa ka makadaot nga aparato

Ang libinput 1.20.1 library, nga naghatag usa ka hiniusa nga input stack nga nagtugot kanimo sa paggamit sa parehas nga paagi sa pagproseso sa mga panghitabo gikan sa mga aparato sa pag-input sa mga palibot nga gibase sa Wayland ug X.Org, nagwagtang sa usa ka kahuyang (CVE-2022-1215), nga nagtugot kanimo sa pag-organisar sa pagpatuman sa imong code sa dihang nagkonektar sa usa ka espesyal nga giusab / gisundog nga input device ngadto sa sistema. Ang problema nagpakita sa iyang kaugalingon sa mga palibot nga gibase sa X.Org ug Wayland, ug mahimong mapahimuslan kung magkonektar sa mga aparato sa lokal ug kung magmaniobra sa mga aparato nga adunay interface sa Bluetooth. Kung ang X server nagdagan ingon gamut, ang pagkahuyang nagtugot sa code nga ipatuman nga adunay taas nga mga pribilehiyo.

Ang problema gipahinabo sa usa ka sayup sa pag-format sa linya sa code nga responsable sa pag-output sa kasayuran sa koneksyon sa aparato sa log. Sa partikular, ang evdev_log_msg function, gamit ang usa ka tawag sa snprintf, nag-usab sa orihinal nga format nga string sa log entry, diin ang ngalan sa device gidugang isip prefix. Sunod, ang giusab nga string gipasa ngadto sa log_msg_va function, nga sa baylo migamit sa printf function. Busa, ang unang argumento sa printf, diin ang format nga pag-parse sa karakter gigamit, adunay dili balido nga eksternal nga datos, ug ang tig-atake mahimong magsugod sa stack corruption pinaagi sa pagpabalik sa device og ngalan nga adunay string format nga mga karakter (pananglitan, "Evil %s") .

Source: opennet.ru

Idugang sa usa ka comment