6135 links
  • GuiGui's Show
  • Home
  • Login
  • RSS Feed
  • ATOM Feed
  • Tag cloud
  • Picture wall
  • Daily
Links per page: 20 50 100
 
  • Isolation d'un pont réseau sous Linux | Vincent Bernat

    Article très intéressant qui part d'un cas d'usage concret pour explorer le traitement des trames réseaux par Linux.

    Un pont réseau (aussi appelé « commutateur » ou « switch ») permet d’interconnecter plusieurs segments Ethernet ensemble. C’est un élément d’infrastructure banal et implémenté de longue date par Linux.

    Un usage typique est exposé dans la figure ci-dessous. L’hyperviseur exécute trois machines virtuelles. Chacune d’elle est attachée au pont br0 (représenté par un segment horizontal). L’hyperviseur dispose de deux interfaces réseau physiques :

    • eth0 est attachée à un réseau public fournissant divers services aux machines virtuelles (DHCP, DNS, NTP, routeurs vers Internet, …). Elle fait partie du pont br0.
    • eth1 est attachée à un réseau d’infrastructure fournissant divers services à l’hyperviseur (DNS, NTP, gestion de la configuration, routeurs vers Internet, …). Elle ne fait pas partie du pont br0.

    Dans une telle configuration, il est raisonnable de penser que les machines virtuelles peuvent accéder aux ressources du réseau public sans être capable d’atteindre les ressources du réseau d’infrastructure (y compris les ressources hébergées par l’hyperviseur lui-même, comme le serveur SSH). En d’autres mots, la séparation entre le domaine vert et le domaine violet doit être totale. Ce n’est pas le cas. Depuis n’importe quelle machine virtuelle […]

    […]

    Une autre méthode est de configurer arp_ignore à la valeur 2 pour l’interface du pont. Le noyau ne répondra aux requêtes ARP que si l’adresse IP cible est configurée sur l’interface entrante. Comme l’interface du pont n’a pas d’IP, cela revient à ignorer toute les requêtes. […] À noter que désactiver le traitement des requêtes ARP ne dispense pas d’appliquer une méthode spécifique à IPv4. Un utilisateur peut en effet ajouter manuellement une entrée dans son cache ARP […] Étant donné que Linux est assez libéral sur les adresses MAC autorisées, il n’est même pas nécessaire de deviner l’adresse MAC […]

    […]

    Dans l’exemple ci-dessus, la machine virtuelle reçoit des réponses ICMP car celles-ci sont routées à travers le réseau d’infrastructure vers Internet (c’est-à-dire que l’hyperviseur a en route par défaut une passerelle qui va également faire du NAT vers Internet). Quand ce n’est pas le cas, la communication ne peut se faire que dans un seul sens. Cela permet toujours de faire quelques dégâts dont des dénis de service.

    De plus, si l’hyperviseur est également un routeur, les machines virtuelles peuvent atteindre n’importe quelle machine du réseau d’infrastructure, exposant ainsi certains nœuds peu protégés tels que des PDU disposant d’un agent SNMP. L’attaquant peut aussi forger son adresse IP pour contourner certains mécanismes d’authentification.

    April 12, 2017 at 11:01:24 AM UTC - permalink - https://vincent.bernat.im/fr/blog/2017-linux-bridge-isolation
Links per page: 20 50 100
 
Mentions légales identiques à celles de mon blog | CC BY-SA 3.0

Shaarli - The personal, minimalist, super fast, database-free, bookmarking service by the Shaarli community