Escalade des privilèges via analyse des arguments en ligne de commande - sudo - (CVE-2021-3156)

Public Date: January 26, 2021, 11:20
Mis à jour October 24, 2024, 12:00 - Chinese, Simplified Anglais Japanese Korean

Est-ce que cette infomation vous a été utile ?

Resolved État
Important Impact

Insights vulnerability analysis

View exposed systems



Red Hat est conscient d'une faille dans la manière dont sudo gère les arguments de la ligne de commande. Un attaquant local peut provoquer une corruption de la mémoire, entraînant un crash ou une escalade des privilèges. Le paquet sudo est installé par défaut sur Red Hat Enterprise Linux et permet aux utilisateurs d'exécuter des commandes en tant qu’autre utilisateur, le plus souvent utilisateur root. Le problème est classé CVE-2021-3156 et Red Hat Product Security a classé cette vulnérabilité comme ayant un degré de gravité Important. Les clients concernés sont invités à passer à des versions plus récentes de sudo. 

Les versions de produits Red Hat suivants sont affectées :

  • Red Hat Enterprise Linux 6

  • Red Hat Enterprise Linux 7

  • Red Hat Enterprise Linux 8

Bien que Red Hat's Containers ne soit pas directement concerné par ces problèmes, leur sécurité repose sur l'intégrité et les mises à jour de l'image de base (c-a-d les mises à jour des paquets RHEL). Red Hat vous recommande d'utiliser les versions les plus récentes de vos images de conteneurs. L'index de santé des conteneurs (Container Health Index), faisant partie du Red Hat Container Catalog, peut toujours être utilisé pour vérifier le statut de sécurité des conteneurs Red Hat.

  • Red Hat OpenShift Container Platform 4 (RHEL CoreOS)

  • Red Hat Virtualization (RHV) 4.3 and 4.4

  • rook-ceph-operator-container-4.6

  • cephcsi-container-4.6

Pour déterminer si votre système est actuellement concerné par ces failles de sécurité, voir la section Diagnostic ci-dessous.

Un débordement de tampon «heap-based» a été associé à la façon dont sudo analyse les arguments de ligne de commande. Cette faille est exploitable par tout utilisateur local (utilisateurs et utilisateurs du système, sudoers et non-sudoers), sans authentification (c'est-à-dire que l'attaquant n'a pas besoin de connaître le mot de passe de l'utilisateur). Une exploitation réussie de cette faille pourrait conduire à une escalade des privilèges.

Red Hat Product Security recommande vivement à ses clients de mettre à jour les paquets sudo à ceux qui sont corrigés dès qu'ils seront disponibles. Pour les clients qui ne peuvent pas mettre à jour immédiatement, on recommande la mesure d'atténuation partielle provisoire suivante utilisant systemtap :


1. Installez les paquets et les dépendances systemtap, exemple : 

# yum install systemtap yum-utils kernel-devel-"$(uname -r)"

Ensuite, pour RHEL 7, installez les informations de débogage du noyau, en utilisant :

# debuginfo-install -y kernel-"$(uname -r)" 

Ensuite, pour RHEL 8, installez les informations de débogage du noyau, en utilisant :

# debuginfo-install sudo

2. Créez le script systemtap suivant : (appelez le fichier sudoedit-block.stap)

probe process("/usr/bin/sudo").function("main")  {

        command = cmdline_args(0,0,"");

        if (strpos(command, "edit") >= 0) {

                raise(9);

        }

}

3. Installez le script en utilisant la commande suivante : (en utilisant la racine)

# nohup stap -g sudoedit-block.stap &

(Ceci devrait produire le numéro PID du script de systemtap)

Ce script fera en sorte que la commande sudoedit vulnérable cesse de fonctionner. La commande sudo fonctionnera toujours normalement.

Le changement ci-dessus ne persiste pas pendant les redémarrages et doit être appliqué après chaque redémarrage.


4. Une fois que les nouveaux paquets corrigés seront installés, le script de "systemtap" peut être supprimé en tuant (kill) le processus "systemtap".  Par exemple :

# kill -s SIGTERM 7590 (avec 7590 comme PID du processus systemtap)

Avertissement: N'essayez pas de désactiver sudoedit en supprimant le lien symbolique. Ce n'est pas une option de mitigation suffisante.

Nous conseillons à tous les clients de Red Hat exécutant des versions de produits Red Hat affectés de procéder aux mises à jour dès que les correctifs sont disponibles.

Produit

Paquet

Alerte / Mise à jour

Red Hat Enterprise Linux 8 

sudo

RHSA-2021:0218

Red Hat Enterprise Linux 8.2.0 Extended Update Support [2]

sudo 

RHSA-2021:0219

Red Hat Enterprise Linux 8.1.0 Extended Update Support [2]

sudo

RHSA-2021:0220

Red Hat Enterprise Linux 7

sudo

RHSA-2021:0221

Red Hat Enterprise Linux 7.7 Extended Update Support [2]

sudo

RHSA-2021:0222

Red Hat Enterprise Linux 7.6 Extended Update Support [2]

sudo

RHSA-2021:0223

Red Hat Enterprise Linux 7.4 Update Services for SAP Solutions, Advanced Update Support [3], [4]

sudo

RHSA-2021:0224

Red Hat Enterprise Linux 7.3 Advanced Update Support [4]

sudo

RHSA-2021:0225

Red Hat Enterprise Linux 7.2 Advanced Update Support [4]

sudo

RHSA-2021:0226

Red Hat Enterprise Linux 6 Extended Update Support [5]

sudo

RHSA-2021:0227


[1] Le lien "Avis/Mise à jour" sera ajouté une fois que les mises à jour seront mises en ligne.

[2] Qu'est-ce que l'abonnement à Red Hat Enterprise Linux Extended Update Support (EUS) ?

[3] Qu'est-ce que l'Advanced mission critical Update Support (AUS) ?

[4] Qu'est-ce que l'abonnement à Red Hat Enterprise Linux SAP Solutions ?

[5] L'accès à ce patch nécessite un abonnement actif à Extended Life-cycle Support (ELS).  Veuillez contacter le service commercial de Red Hat ou votre représentant commercial spécifique pour plus d'informations si votre compte n'a pas d'abonnement ELS actif.

Les produits et conteneurs suivants consomment des paquets affectés en provenance d’un autre produit.  Bien que Red Hat's Containers ne soit pas directement concerné par ces problèmes, leur sécurité repose sur l'intégrité et les mises à jour de l'image de base (c-a-d les mises à jour des paquets RHEL). Red Hat vous recommande d'utiliser les versions les plus récentes de vos images de conteneurs. L'index de santé des conteneurs (Container Health Index), qui fait partie du Red Hat Container Catalog, peut toujours être utilisé pour vérifier le statut de sécurité des conteneurs Red Hat.

Produit ou Conteneur

Correctif dépendant de

Notes

cephcsi-container-4.6

Red Hat Enterprise Linux 8

Utilise sudo-0:1.8.29-6.el8

rook-ceph-operator-container-4.6

Red Hat Enterprise Linux 8

Utilise sudo-0:1.8.29-6.el8

Red Hat OpenShift Container Platform 4.6

Red Hat CoreOS

Utilise sudo-0:1.8.29-6.el8

Red Hat Virtualization 4.3

Red Hat Enterprise Linux 7

Utilise sudo-1.8.23-10.el7

Red Hat Virtualization 4.4

Red Hat Enterprise Linux 8

Utilise sudo-1.8.29-6.el8

Les clusters Red Hat OpenShift Dedicated sont affectés car la version sudo vulnérable est présente dans les systèmes. Cependant, l'impact est très faible car l'accès à la commande sudo est déjà limité aux utilisateurs ayant des privilèges cluster-admin sur des clusters dédiés.

Un script de détection a été développé afin de déterminer si votre système est actuellement concerné par cette faille de sécurité. Pour vérifier la légitimité du script, vous pouvez télécharger la signature GPG détachée également. Les instructions sur la manière d'utiliser la signature GPG pour la vérification sont disponibles sur le portail client.

Version en cours : 1.0

Red Hat remercie Qualys Security pour avoir signalé cette faille.

Comment utiliser GPG pour vérifier le contenu signé de la Sécurité produits

Comments