Vulnerabilitate în libinput care duce la executarea de cod la conectarea unui dispozitiv malițios

În biblioteca libinput 1.20.1, care oferă un stivă de input unificată, permițând utilizarea acelorași instrumente de procesare a evenimentelor de la dispozitivele de input în medii bazate pe Wayland și X.Org, a fost eliminată o vulnerabilitate (CVE-2022-1215) care permite executarea de cod personalizat prin conectarea unui dispozitiv de input modificat/emulativ la sistem. Problema se manifestă în mediile bazate pe X.Org și Wayland și poate fi exploatată atât prin conectarea locală a dispozitivelor, cât și prin manipularea dispozitivelor cu interfață Bluetooth. În cazul în care serverul X rulează cu privilegii root, vulnerabilitatea permite executarea codului cu privilegii ridicate.

Problema este cauzată de o eroare de formatare a șirurilor în codul responsabil pentru logarea informațiilor despre conectarea dispozitivelor. În special, funcția evdev_log_msg modifica șirul original de formatare al înregistrării pentru log, adăugând numele dispozitivului ca prefix. Apoi, șirul modificat era transmis funcției log_msg_va, care, la rândul ei, utiliza funcția printf. Astfel, în primul argument al printf, unde se aplică analiza caracterelor de formatare, ajungeau date externe nevalidate, iar un atacator putea iniția coruperea stivei prin returnarea unui nume de dispozitiv care conținea caractere de formatare a șirului (de exemplu, „Evil %s”).

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster