Në bibliotekën libinput 1.20.1, e cila ofron një grackë unike të inputeve që lejon përdorimin e të njëjtave mjete për trajtimin e ngjarjeve nga pajisjet e inputeve në mjedise të bazuara në Wayland dhe X.Org, është eliminuar një dobësi (CVE-2022-1215) që lejon ekzekutimin e kodit tuaj kur lidheni me sistemin me një pajisje inputi të modifikuar/emulet. Problemi ndodhet në mjediset e bazuara në X.Org dhe Wayland, dhe mund të eksploatohet si me lidhje lokale të pajisjeve, ashtu edhe me manipulime me pajisjet që kanë ndërfaqe Bluetooth. Në rastin kur X-serveri ekzekutohet me të drejtat e root, dobësia lejon arritjen e ekzekutimit të kodit me privilegje të rritura.
Problemi shkaktohet nga një gabim në formatimin e vargut në kodin që është përgjegjës për regjistrimin e informacionit të lidhjes së pajisjes. Në veçanti, funksioni evdev_log_msg, përmes thirrjes snprintf, ndryshonte vargun origjinal të formatimit të regjistrimit, në të cilin si prefix shtohej emri i pajisjes. Më pas, vargu e ndryshuar kalonte në funksionin log_msg_va, i cili nga ana e tij përdorte funksionin printf. Kështu, në argumentin e parë të printf, të cilit i zbatohej analiza e simboleve për formatim, ndodhen të dhëna eksternë të paverifikuara dhe sulmuesi mund të inicojë dëmtimin e stack-ut duke organizuar kthimin nga pajisja të emrit, që përmban simbole për formatimin e vargut (p.sh., "Evil %s").
Burimi: opennet.ru
