Plusieurs vulnérabilités ont été détectées dans GNU Screen qui permettaient d'obtenir des privilèges root.

vulnérabilité

Il y a quelques jours, il a été annoncé informations sur un audit de sécurité qui a révélé cinq vulnérabilités critiques dans le multiplexeur de terminaux populaire Écran GNU, utilisé pour gérer plusieurs sessions de console sur un seul terminal.

L'une d'entre elles (CVE-2025-23395, la vulnérabilité la plus dangereuse) permet à un attaquant d'obtenir les privilèges root sur les systèmes affectés (la vulnérabilité n'affecte que la version 5.0.0 de GNU Screen), y compris dans les distributions telles que Fedora, Arch Linux, NetBSD, entre autres. D'autres versions telles que Debian, Ubuntu et RHEL utilisent cependant toujours la branche 4.x, qui n'est pas vulnérable à cette faille particulière.

CVE-2025-23395 : Élévation critique des privilèges

Il est mentionné que le problème se produit lorsque GNU Screen est exécuté avec le bit racine setuid (cas d'Arch et de NetBSD), puisqueet la fonction logfile_reopen() est exécutée avant de réduire les privilèges, qui permet à l'utilisateur de manipuler le registre pour écrire des fichiers arbitraires en tant que root. Dans une ferme typique, etL'attaquant supprime le fichier journal d'origine et le remplace par un lien symbolique. vers un fichier système. Lorsque vous rouvrez le fichier, Screen l'écrit avec les autorisations root, permettant ainsi au contenu malveillant d'entrer.

Ce problème affecte Screen 5.0.0 lors de l'exécution avec les privilèges setuid-root. La fonction logfile_reopen() ne supprime pas les privilèges lors de l'utilisation d'un chemin fourni par l'utilisateur. Cela permet aux utilisateurs non privilégiés de créer des fichiers dans des emplacements arbitraires avec la propriété root, la propriété du groupe (réel) de l'utilisateur appelant et le mode de fichier 0644. Toutes les données écrites sur le PTY de l'écran seront enregistrées dans ce fichier. Les fichiers existants peuvent également être utilisés pour l'enregistrement de cette manière : les données seront ajoutées au fichier en question, mais le mode et la propriété du fichier resteront inchangés.

Cette attaque peut conduire au contrôle total du système s'il est exploité correctement, car il vous permet de modifier des fichiers sensibles ou de modifier des scripts de démarrage. Fedora est partiellement protégé car Screen est installé avec le bit setgid, limitant la surface d'attaque.

Autres vulnérabilités pertinentes

L'audit, réalisé par l'équipe de sécurité de SUSE Linux, a également identifié d’autres défauts majeurs :

  • CVE-2025-46802 : Dans les sessions multi-utilisateurs, un attaquant peut obtenir des autorisations globales de lecture et d'écriture sur des périphériques TTY tels que /dev/pts/1, affectant à la fois les branches 4.x et 5.x.
  • CVE-2025-46803 : La branche 5.0 définit des autorisations non sécurisées (0622) sur les périphériques PTY, permettant l'écriture par n'importe quel utilisateur.
  • CVE-2025-46804 : Une fuite d'informations permet de déduire l'existence de fichiers ou de répertoires à l'aide de messages d'erreur lors de la définition de la variable SCREENDIR.
  • CVE-2025-46805 : Une condition de concurrence lors de l'envoi de signaux SIGCONT et SIGHUP peut entraîner un déni de service.

Une mauvaise utilisation de strncpy a également été détectée, ce qui peut provoquer des plantages lors de l'exécution de commandes avec un formatage spécial, un problème exclusif à la branche 5.0.

Manque de maintenance et de support de la part de SUSE

La découverte de ces vulnérabilités a révélé des problèmes plus profonds dans la maintenance de GNU Screen. Selon l'équipe SUSE, Les responsables actuels du projet ne comprennent pas entièrement la base de code ni de problèmes de sécurité, ce qui les a obligés à développer eux-mêmes des correctifs pour certaines des failles découvertes. Le rapport a été envoyé aux développeurs le 7 février, mais l'ensemble des vulnérabilités n'a pas pu être corrigé dans le délai de grâce convenu de 90 jours.

Que faire si vous utilisez GNU Screen ?

Utilisateurs de systèmes incluant Screen 5.0.0 avec setuid root devrait immédiatement mettre à jour vers la version 5.0.1 ou revenir temporairement à une version 4.x si aucun package n'est disponible. À titre de mesure d'atténuation, le bit setuid peut également être supprimé de l'exécutable Screen :

sudo chmod u-s /usr/bin/screen

Toutefois, Cela peut affecter la fonctionnalité comme le partage de session entre utilisateurs. Enfin, il convient de mentionner que la version 5.0.1 récemment publiée corrige ce bug et d'autres et est désormais disponible sur des distributions telles que Arch Linux et FreeBSD.

Si vous intéressé à en savoir plus, vous pouvez vérifier les détails dans le lien suivant


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.