Vulnerabilidade na entrada de libin que leva á execución de código cando se conecta un dispositivo malicioso

Solucionouse unha vulnerabilidade (CVE-1.20.1-2022) na biblioteca libinput 1215, que proporciona unha pila de entrada unificada que permite o uso dos mesmos medios para xestionar eventos de dispositivos de entrada en contornos baseados en Wayland e X.Org. O problema maniféstase en contornas baseadas en X.Org e Wayland, e pódese explotar tanto ao conectar dispositivos localmente como ao manipular dispositivos Bluetooth. Se o servidor X está a executarse como root, a vulnerabilidade permite executar código con privilexios elevados.

O problema é causado por un erro de formato de cadea no código responsable da saída da información de conexión do dispositivo ao rexistro. En particular, a función evdev_log_msg, mediante a chamada snprintf, cambiou a cadea de formato orixinal da entrada de rexistro, á que se engadiu o nome do dispositivo como prefixo. A continuación, a cadea modificada pasou á función log_msg_va, que á súa vez utilizou a función printf. Así, o primeiro argumento printf ao que a análise de caracteres de formato resultou ser datos externos desmarcados e un atacante podería iniciar a corrupción da pila facendo que o dispositivo devolvese un nome que contén caracteres de formato de cadea (por exemplo, "Evil %s").

Fonte: opennet.ru

Engadir un comentario