Linux, Unix : importante faille dans les VPN, avec injection de données et vol de session
Le 09 décembre 2019 à 09h04
2 min
Logiciel
Logiciel
Elle porte la référence CVE-2019-14899 et pourrait causer de gros dégâts. Ubuntu 19.10, Fedora, Debian 10.2, Manjaro 18.1.1, Arch 2019.05, FreeBSD, OpenBSD… la liste des distributions touchées est longue.
De manière générale, elle concerne tous les systèmes utilisant la configuration par défaut de systemd sorti après le 28 novembre 2018. En cause, le changement d’un paramètre rp_filter de « strict » à « loose »… avec des conséquences en cascades.
« Cette vulnérabilité affecte la plupart des distributions Linux et des systèmes d'exploitation Unix comme FreeBSD, OpenBSD, macOS, iOS, et Android et permet à un attaquant présent dans le réseau local de déterminer si un autre utilisateur est connecté à un VPN, l'adresse IP virtuelle qui lui a été attribuée par le serveur VPN, et s'il y a ou non une connexion active à un site Web donné », explique le portail de cybersécurité des systèmes de santé qui reprend la publication sur Seclists de William J. Tolley, Beau Kujath et Jedidiah R. Crandall.
Le portail ajoute : « De plus, l’attaquant pourrait déterminer les numéros des séquences et d'acquittements des sessions TCP en comptant les paquets chiffrés et/ou en examinant leur taille. Cela lui permet d'injecter des données dans le flux TCP et de voler ces sessions. Ces vulnérabilités concernent OpenVPN, WireGuard et IKEv2/IPSec, mais potentiellement aussi d'autres technologies VPN ».
Les chercheurs donnent plusieurs pistes permettant de limiter les dégâts, notamment activer le reverse path filtering et mettre en place le filtrage Bogon.
Le 09 décembre 2019 à 09h04
Commentaires (56)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 09/12/2019 à 09h29
OpenBSD est touché aussi ?????
Mais il utilise systemd, lui ???
Je trouve ça chelou…
Le 09/12/2019 à 09h37
Bon, faut déjà être dans le réseau local…
Le 09/12/2019 à 09h53
D’après la publication originale:
Here is a list of the operating systems we have tested which are vulnerable to this attack:
This list isn’t exhaustive, and we are continuing to test other distributions, but made sure to cover a variety of init systems to show this is not limited to systemd.
Par conséquent, la faille n’est pas dans systemd mais est activée par systemd par défaut depuis la mise à jour en question et d’autres systèmes d’init peuvent l’activer (là aussi depuis plus ou moins longtemps).
De plus, les distribs utilisant systemd mais qui modifient la conf par défaut peuvent aussi être protégées.
Le 09/12/2019 à 10h16
C’est le cas de tous les réseaux Wi-Fi public où, justement, il est de bon ton de se protéger par l’utilisation d’un VPN.
Le 09/12/2019 à 10h18
Le 09/12/2019 à 10h24
Si l’admin du Wi-Fi public a bien fait son taf, normalement les utilisateurs sont isolés. " />
Le 09/12/2019 à 10h44
Tu as encore trop foi dans les compétences des prestataires de solution Wi-Fi public toi " />
Le 09/12/2019 à 10h47
J’ai travaillé pour une start-up qui délivre ce genre de solutions et y’a bcp de turn-over. " />
Le 09/12/2019 à 10h51
/ mode troll activé /
M’en fou, chui sous Windaube :)
Le 09/12/2019 à 10h53
Ils parlent de vpn en TCP. Cela veut dire que en UDP il n’y a pas ce problème ?
Le 09/12/2019 à 11h00
N’étant pas suffisamment pointu sur le sujet, ça veut dire que les machines sous debian 9 utilisant openvpn en udp sont également touchées ?
Le 09/12/2019 à 11h21
C’est la loose " />
Le 09/12/2019 à 11h43
Le 09/12/2019 à 11h47
La vache, l’erreur de config par défaut qui fait mal …
Moi qui voulais justement regarder pour configurer un VPN avec Open VPN pour avoir accès à mon réseau local à distance …
Ca va sans doute attendre un peu (au moins que j’aie le temps de lire comment réduire le risque. " />
En attendant le tunneling SSH restera mon copain (même si pour le partage de fichiers Windows ça pose d’autres problèmes). " />
Le 09/12/2019 à 11h49
Le 09/12/2019 à 11h52
Le 09/12/2019 à 12h03
Le 09/12/2019 à 12h07
Openvpn marche en UDP en général. C’est plus rapide que TCP.
Le 09/12/2019 à 12h21
Le 09/12/2019 à 12h26
" />
Le 09/12/2019 à 12h26
Pas besoin d’être sur le LAN, un MitM BGP permet d’intercepter le flux, c’est bien pour ça que les préconisations concernent le filtrage des routes - d’ailleurs dans URPF, c’est “Forwarding”, pas “Filtering”.
Le 09/12/2019 à 13h15
Le 09/12/2019 à 13h23
Le 09/12/2019 à 14h02
Le 09/12/2019 à 14h09
Le 09/12/2019 à 14h20
Le 09/12/2019 à 14h29
Elasticsearch
Le 09/12/2019 à 14h39
Merci, je ne connaissais pas. ;)
Du coup, la config par défaut de ce soft à l’air rock’n roll.
Le 09/12/2019 à 15h28
C’est avant même ça, c’est genre:
Le 09/12/2019 à 15h31
Le 09/12/2019 à 15h37
Un peu. " />
Mais ça permet de “garantir” la connexion, si des paquets sont perdus, ils sont renvoyés.
L’UDP lui s’en font de ça, il t’envoie les données sans rien vérifier et si jamais un paquet et perdu, tant pis, il est utilisé pour le streaming et les jeux en ligne.
Le 09/12/2019 à 15h39
Le 09/12/2019 à 15h40
Pas de souci, mais ne prend pas ça comptant, c’est des souvenirs de cours. " />
Le 09/12/2019 à 15h50
”…un attaquant présent dans le réseau local…”
Ouf, j’ai failli avoir peur.
Le 09/12/2019 à 15h56
Le 09/12/2019 à 15h58
C’est un peu le harceleur de rue. haha
Le 09/12/2019 à 16h03
Pire : il y a en a maintenant dans les foyers ! " />
Sinon il y a le même problème avec https… au moins la partie quel site visité. D’où le ESNI proposé par cloudflare… c’est la période parano. " />
Le 09/12/2019 à 16h05
C’est le weinstein des réseaux ! Surtout s’ils ont des NAT !
Le 09/12/2019 à 17h37
Ça c’est du TCP
Le 09/12/2019 à 17h44
Le 09/12/2019 à 18h08
Bah oui, je le dis que c’est du TCP.
L’UDP il n’y a pas de session.
Le 09/12/2019 à 19h32
Le 09/12/2019 à 20h20
Le 10/12/2019 à 00h00
Le 10/12/2019 à 05h28
Le serveur Openvpn écoute sur un port TCP , comme tous les serveurs. L’autorisation se passe en TCP,ensuite un tunnel UDP est créé et tout se passe a l’intérieur par la suite. On peut créé un tunnel en TCP mais c’est considérablement plus lent.
Le 10/12/2019 à 09h11
Ca me rappelle Baldur’s Gate " />
Hé c’est moi Imoen
Hé c’est moi Imoen
Hé c’est moi Imoen
…
Le 10/12/2019 à 09h17
“pour le groupe !”
Le 10/12/2019 à 10h52
Le 10/12/2019 à 11h50
On m’aurait caché des choses sur la sureté de LINUX ? " />
Comme quoi Windows 10 n’est pas si mauvais en matière de sécurité …
Le 10/12/2019 à 12h32
Il y a beaucoup de routeurs qui tournent sous Windows 10 ?
Le 11/12/2019 à 06h52
Le 11/12/2019 à 08h11
Le 11/12/2019 à 15h42
Je n’ai aucun serveur. " />
Le 11/12/2019 à 17h02
Qu’est-ce que tu fous ici alors? " />
Le 11/12/2019 à 17h26
Je viens de relire avec attention la brève à 2 reprises.
Il est bien mentionné “le serveur VPN”.
Mais je trouve que la brève laisse penser que tout le monde peut être victime.
Bref j’ai sans doute mal (ou pas) compris que c’est réservé aux gens ayant au moins un serveur.
Le 11/12/2019 à 18h17
Ma blague est tombée à plat.
Pas grave, tu m’as poussé à aller lire la description complète sur seclists.org, ce que j’avais eu la flemme de faire, la brève étant trop brève pour tout décrire.
Oui, toute machine sous un Linux (ou autre système cité) étant connecté par un VPN (ou autre WireGuard, ou IKEv2/IPSec) peut être vulnérable, pas uniquement un serveur.
Par contre, il est décrit qu’il faut contrôler un AP (point d’accès) pour attaquer alors que la brève dit qu’il faut être dans le même réseau local. Les 2 sont peut-être bien vrais suivant les cas, l’AP étant plus facile puisqu’il voit passer tous les paquets par design mais je pense qu’en étant en écoute de tout ce qui passe dans un réseau Wi-Fi, ça doit être pareil. Par contre, dans un réseau filaire, sur un switch réseau, tu ne peux pas écouter les autres connexions et contrôler le routeur est bien le plus simple (sinon, il faut faire du arp poisoning pour détourner vers le trafic vers ta machine sur le même réseau local).