Van trobar diverses vulnerabilitats a l'administrador de tecles ràpides de Wayland

Fa pocs dies es va donar a conèixer la notícia que van ser trobades una sèrie de vulnerabilitats en swhkd (Simple Wayland HotKey Daemon) provocades per un maneig incorrecte de fitxers temporals, opcions de línia d'ordres i sockets unix.

El programa està escrit a Rust i maneja tecles d'accés ràpid en entorns basats en el protocol Wayland (un anàleg compatible amb fitxers de configuració del procés sxhkd utilitzat en entorns basats en X11). El paquet inclou un procés swhks sense privilegis que realitza accions per a les tecles d'accés ràpid i un procés en segon pla swhkd que s'executa com a root i interactua amb els dispositius d'entrada al nivell de l'API uinput. Per organitzar la interacció entre swhks i swhkd, es fa servir un socket Unix.

Les regles de Polkit permeten que qualsevol usuari local executi el procés /usr/bin/swhkd com a root i li passi paràmetres arbitraris.

La integració del paquet RPM presentat per a openSUSE Tumbleweed contenia regles de Polkit inusuals al fitxer de definició que va requerir una revisió per part de l'equip de seguretat de SUSE.

Com a resultat de la revisió, es van identificar múltiples problemes de seguretat. Els problemes individuals es descriuen al següent informe detallat.

De les vulnerabilitats que van ser identificades, s'esmenten les següents:

CVE-2022-27815

aquesta vulnerabilitat permet poder desar un PID de procés en un fitxer amb un nom predictible i en un directori que altres usuaris puguin escriure (/tmp/swhkd.pid), de manera que qualsevol usuari pot crear un fitxer /tmp/swhkd.pid i posar el pid d'un procés existent, cosa que farà que sigui impossible iniciar swhkd.

En absència de protecció contra la creació d'enllaços simbòlics a /tmp, la vulnerabilitat es pot utilitzar per crear o sobreescriure arxius en qualsevol directori del sistema (el PID s'escriu a l'arxiu) o determinar el contingut de qualsevol fitxer al sistema (swhkd genera el tot el contingut del fitxer PID a stdout). Cal assenyalar que en la correcció publicada, el fitxer PID no es va moure al directori /run, sinó al directori /etc (/etc/swhkd/runtime/swhkd_{uid}.pid), on tampoc no pertany.

CVE-2022-27814

aquesta vulnerabilitat permet manipular l'opció de línia d'ordres «-c» per especificar un fitxer de configuració pot determinar lexistència de qualsevol fitxer en el sistema.

Com en el cas de la primera vulnerabilitat, solucionar el problema és desconcertant: solucionar el problema es redueix al fet que la utilitat externa cat ('Command::new(«/bin/cat»).arg(ruta) es ara llançat per llegir el fitxer de configuració.output()').

CVE-2022-27819

aquest problema també està relacionat amb l'ús de l'opció "-c", que carrega i analitza tot el fitxer de configuració sense verificar la mida i el tipus del fitxer.

Per exemple, per provocar una denegació de servei a causa de l'esgotament de la memòria lliure i la creació d'E/S paràsites, podeu especificar un dispositiu de bloc a l'inici («pkexec /usr/bin/swhkd -d -c /dev/sda ») o un dispositiu de caràcters que emet un flux infinit de dades.

El problema es va resoldre restablint els privilegis abans d'obrir el fitxer, però la solució no estava completa, ja que només es restableix la ID d'usuari (UID), però la ID de grup (GID) continua sent la mateixa.

CVE-2022-27818

aquesta vulnerabilitat permet poder utilitzar un fitxer /tmp/swhkd.sock per crear un socket Unix, que es crea en un directori públic gravable, cosa que genera problemes similars als de la primera vulnerabilitat (qualsevol usuari pot crear /tmp/swhkd. sock i generar o interceptar esdeveniments de pulsació de tecles).

CVE-2022-27817

En aquesta vulnerabilitat, els esdeveniments d'entrada es reben de tots els dispositius i en totes les sessions, és a dir, un usuari d'una altra sessió de Wayland o de la consola pot interceptar esdeveniments quan altres usuaris pressionen tecles d'accés ràpid.

CVE-2022-27816

El procés swhks, com swhkd, utilitza el fitxer PID /tmp/swhks.pid al directori /tmp d'escriptura pública. El problema és semblant a la primera vulnerabilitat, però no tan perillós, ja que swhks sexecuta sota un usuari sense privilegis.

Finalment si estàs interessat en poder conèixer més a l'respecte, pots consultar els detalls en el següent enllaç.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.