Avamar : « Clé publique du serveur SSH trop petite » et « Paramètres cryptographiques SSH obsolètes » sont signalés dans un rapport d’analyse de sécurité
Summary: Les vulnérabilités « Clé publique du serveur SSH trop petite » et « Paramètres cryptographiques SSH obsolètes » sont signalées dans un rapport d’analyse de sécurité.
Symptoms
La faille de sécurité suivante a été signalée dans le rapport d’analyse de sécurité.
Title: SSH Server Public Key Too Small
Results: Algorithm Length ssh-rsa 1024 bit
Threat: The SSH protocol (Secure Shell) is a method for secure remote login from one computer to another. The SSH Server is using a small Public Key.
Best practices require that RSA digital signatures be 2048 or more bits long to provide adequate security. Key lengths of 1024 are acceptable through 2013, but since 2011 they are considered deprecated.
For more information, please refer to NIST Special Publication 800-131A (http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar1.pdf).
Only server keys that are not part of a certificate are reported in this QID.
QID: 38739
Title: Deprecated SSH Cryptographic Settings
Results: Type Name
key exchange diffie-hellman-group1-sha1
cipher arcfour256
cipher arcfour128
cipher 3des-cbc
cipher blowfish-cbc
cipher cast128-cbc
cipher arcfour
Threat: The target is using deprecated SSH cryptographic settings to communication
Cause
La commande SSH La clé publique est configurée par défaut avec 1 024 bits au lieu de 2 048 bits et peut utiliser obsolète SSH Cryptographic Settings.
Resolution
1. Connectez-vous à Avamar Utility Node en tant qu’administrateur.
2. Élévation au niveau du privilège root.
3. Déterminez les chiffrements susceptibles d’être utilisés :
cat /etc/ssh/sshd_config | grep -i ciphers
Exemple de résultat :
# Ciphers and keying
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,aes192-cbc,aes256-cbc
4. Exécutez la commande suivante pour confirmer les chiffrements utilisés :
ssh -Q cipher
Exemple de résultat :
3des-cbc
blowfish-cbc
cast128-cbc
arcfour
arcfour128
arcfour256
aes128-cbc
aes192-cbc
aes256-cbc
rijndael-cbc@lysator.liu.se
aes128-ctr
aes192-ctr
aes256-ctr
aes128-gcm@openssh.com
aes256-gcm@openssh.com
chacha20-poly1305@openssh.com
5. Effectuez une copie de sauvegarde du fichier /etc/ssh/sshd_config fichier :
cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.`date +%y%m%d`
6. À l’aide de vi, modifiez le fichier /etc/ssh/sshd_config fichier :
vi /etc/ssh/sshd_config
7. Apportez les modifications suivantes :
un. Supprimez tous les paramètres cryptographiques SSH obsolètes répertoriés dans le rapport d’analyse de sécurité. Dans cet exemple, celles répertoriées ci-dessous :
cipher arcfour256
cipher arcfour128
cipher 3des-cbc
cipher blowfish-cbc
cipher cast128-cbc
cipher arcfour
b. Modifiez le paramètre suivant de 1024 à 2048 :
ServerKeyBits 2048
c. Supprimez les commentaires sur ces lignes pour spécifier les clés que SSH va utiliser :
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
8. Vérifiez la taille de chacune de ces clés :
ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub
Exemple de résultat :
2048 82:4e:33:4a:1f:e6:81:7f:ef:c7:4c:1f:c7:b2:ce:59 [MD5] root@linux-host1 (RSA)
ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub
Exemple de résultat :
256 a9:2b:e7:0b:ab:0b:be:2f:d4:9b:6c:2d:6c:fb:3d:e9 [MD5] root@linux-host1 (ECDSA)
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
Exemple de résultat :
256 65:c5:1e:1c:ac:a3:7c:05:90:21:a3:3c:7e:d6:d4:bd [MD5] root@linux-host1 (ED25519)
Si les tailles (le premier chiffre de la sortie, surligné en rouge) sont inférieures à la sortie ci-dessus, de nouvelles clés doivent être générées.
Si nécessaire, exécutez la commande applicable pour la ou les clés à générer :
sudo ssh-keygen -N '' -b 2048 -t rsa -f /etc/ssh/ssh_host_rsa_key
sudo ssh-keygen -N '' -b 256 -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
sudo ssh-keygen -N '' -b 256 -t ed25519 -f /etc/ssh/ssh_host_ed25519_key
Confirmez les remplacements de clés :
Generating public/private rsa key pair.
/etc/ssh/ssh_host_rsa_key already exists.
Overwrite (y/n)? y
Your identification has been saved in /etc/ssh/ssh_host_rsa_key.
Your public key has been saved in /etc/ssh/ssh_host_rsa_key.pub.
The key fingerprint is:
47:60:91:14:b1:15:6e:6d:ea:e9:36:37:31:08:d3:69 root@vmtest-debian8
The key's randomart image is:
+---[RSA 2048]----+
| .B=o. |
| ..= . |
| ..+.o |
| ooEo |
| S+o. |
| o..o |
| o o |
| .o o |
| ..o . |
+-----------------+
9. Vérifiez que la configuration ne contient pas d’erreurs :
sshd -t
Aucun résultat ne doit s’afficher. Si des erreurs sont détectées, corrigez-les avant de continuer.
10. Redémarrez le sshd service:
service sshd restart
11. Pour vérifier quels chiffrements sont acceptés après l’application de ces modifications, exécutez la commande suivante sur chaque chiffrement répertorié précédemment :
ssh -c "cipher_name" localhost
-
- Si le chiffrement est accepté, la sortie doit correspondre à l’Annexe A
- Si le chiffrement est refusé, la sortie doit correspondre à l’Annexe B
Additional Information
ANNEXE A :
root@hostname:~/#: ssh -c "cipher_name" localhost
Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
Last login: Mon Oct 1 14:05:28 2018 from XX.XX.XX.XXX
*****************************************************************
* *
* This is the Avamar Virtual Appliance *
* *
* Please read the documentation before performing *
* any administrative functions on this node. *
* For help, contact EMC at 877.534.2867 (USA only) or *
* https://support.emc.com. *
* *
*****************************************************************
root@hostname:~/#:
ANNEXE B :
root@hostname:~/#: ssh -c "cipher_name" localhost
no matching cipher found: client "cipher_name" server valid_cipher, valid_cipher, valid_cipher