CVE-2019-6111 et autres vulnérabilités scp

TL; DR;


Plus récemment (depuis environ 1983), il s'est avéré que OpenSSH, en tant que successeur de rsh, pour la commande scp (ex. Rcp) permet au serveur de choisir quel fichier et avec quels paramètres vous transférer. Et les vulnérabilités de sortie vous permettent de masquer le fichier qui vous a été transféré.
Autrement dit, vous demandez file.txt, mais vous obtenez - exploit.bin
Et il n'y a pas encore de correctifs, ce sont les choses. Utilisez sftp ou rsync.

Détails



CVE-2019-6109


Le client scp ne vérifie pas les caractères supplémentaires dans le nom de fichier, ce qui vous permet de masquer le vrai nom du fichier transmis (par exemple, les codes ASCII)

CVE-2019-6110


Le client scp vous permet d'écrire sur stderr et de réécrire les données dans le terminal, ce qui vous permet de masquer le vrai nom du fichier transmis (par exemple, les codes ASCII).

CVE-2019-6111


Le client scp ne vérifie pas quel fichier lui est envoyé et ne le compare pas à ce qu'il a demandé. Un serveur malveillant peut remplir le client avec tout ce qu'il veut et avec n'importe quel mode.

Exemple de travail


$ rm -rf * $ ls -la  36 drwxr-xr-x 2 user user 4096  25 15:11 . drwx------ 99 user user 28672  25 14:23 .. $ scp test@localhost:x.txt . x.txt 100% 32 0.3KB/s 00:00 $ ./exploit.sh #   ?! You're hacked. Sorry for that Please upgrade your OpenSSH client $ 

Dans cet exemple (un exploit légèrement modifié du lien ci-dessus), le fichier exploit.sh avec les autorisations de 755 est chargé avec x.txt, et à l'aide de déchets, le fait du transfert lui-même est effacé.

Clients vulnérables


Bref, c'est tout. OpenSSH, y compris 7.9p1, mastic, winscp <5.13.
Seul WinSCP a des correctifs (5.14+)
Utilisez sftp / rsync lorsque vous travaillez avec des serveurs non approuvés.

Source: https://habr.com/ru/post/fr437508/


All Articles