Risque

Contournement de la politique de sécurité.

Systèmes affectés

OpenBSD, FreeBSD, toute distribution Linux et tout système utilisant OpenSSHv2 dans une version inférieure à la 2.9.9.

Résumé

Un utilisateur mal intentionné peut contourner une configuration restreignant les adresses IP de connexion au serveur ou les commandes autorisées sur ce dernier.

Description

Le fichier ˜/.ssh/authorized_keys2, de chaque utilisateur autorisé à se connecter via SSH, permet de restreindre les actions permises et/ou l'adresse du client par l'ajout d'options à chaque clé publique listée.

Ces limitations sont souvent utilisées lorsque le client distant est invoqué automatiquement (tâche programmée,...) et que par conséquent sa clé privée n'est pas protégée par un mot de passe.

Dans certains cas particuliers, ces restrictions peuvent être contournées :

  • si le serveur sftp (ftp sécurisé introduit avec la version 2) est lancé, il peut être invoqué malgré la restriction sur les commandes autorisées, et, selon les droits du client, être utilisé pour modifier le fichier ˜/.ssh/authorized_keys2 dans le but d'obtenir un shell, par exemple.
  • si 2 clés de nature différente (i.e. RSA et DSA) se suivent au sein de ce fichier, alors les options sur la seconde clé s'appliquent également à la première, ce qui peut conduire au non respect de restrictions sur l'adresse source du client pour la première clé.

Contournement provisoire

  • Désactiver le lancement du sous-système sftp sur le serveur (usuellement dans le fichier sshd_config) dans le premier cas.
  • Commenter l'une des clés ou créer de nouvelles clés de manière à unifier le type, dans le second cas.

Solution

Documentation