web-dev-qa-db-fra.com

NAT Loopback sur mon routeur est-il un problème de sécurité?

Certains routeurs DSL empêchent le bouclage NAT. La sécurité est parfois citée comme raison. NAT est-il vraiment un problème de sécurité? Et si oui, comment est-il exploité?

Bouclage NAT ... où une machine sur le LAN peut accéder à une autre machine sur le LAN via l'adresse IP externe du LAN/routeur (avec la redirection de port configurée sur le routeur pour diriger les requêtes vers la machine appropriée sur le LAN) . Sans NAT loopback, vous devez utiliser l'adresse IP interne de l'appareil lorsque vous êtes sur le LAN.

EDIT: Les mentions de sécurité proviennent certes de sources non officielles, c'est pourquoi je voudrais clarifier cela ...

Depuis les BT Community Forums :

Ce n'est pas une faute. La plupart des routeurs n'enverront pas et ne recevront pas de données sur la même interface (Loopback), car cela représente un risque pour la sécurité.

Et plus bas sur la même page , du même utilisateur:

En tant qu'ingénieur réseau, je travaille quotidiennement avec les routeurs Cisco et Brocade et ceux-ci ne permettront pas le bouclage en raison des problèmes de sécurité inhérents. BT a adopté une approche selon laquelle la sécurité est très importante et, comme pour les routeurs de classe entreprise, le bouclage n'est pas autorisé.

De ne page sur NAT Loopback Routers :

De nombreux routeurs/modems DSL empêchent les connexions de bouclage comme fonction de sécurité.

Pour être honnête, jusqu'à présent, j'ai toujours supposé que l'échec de la prise en charge de NAT loopback était simplement une défaillance du matériel/micrologiciel, pas une "fonction de sécurité"?! Son omission est beaucoup plus importante problème à mon humble avis. (Si vous n'aviez pas deviné, mon routeur ne prend pas en charge NAT loopback.)

10
MrWhite

La plupart des routeurs grand public n'ont aucune interdiction, cela ne fonctionne tout simplement pas.

Imaginez le scénario suivant. Ce n'est pas hypothétique, exécutez simplement tcpdump sur votre propre ordinateur et vous verrez que cela se produit maintenant. Capturé de mon Buffalo ddwrt il y a quelques instants juste pour vérifier.

Joueurs: [Routeur: 10.0.0.1] [Ordinateur1: 10.0.0.3] [Ordinateur2: 10.0.0.4]
IP extérieure: 99.99.99.99, transmise à Computer2

  • Ordinateur1 vers routeur [10.0.0.3 -> 99.99.99.99]

  • Le routeur utilise DNAT pour changer la destination en 10.0.0.4 et la repousse sur le réseau local:
    Routeur vers ordinateur2 [10.0.0.3 -> 10.0.0.4]

  • Computer2 tente de répondre au paquet en envoyant à l'adresse IP source.
    Ordinateur2 à Ordinateur1 [10.0.0.4 -> 10.0.0.3]

  • Ordinateur1: WTF?
    Computer1 attendait une réponse de 99,99.99.99, en a obtenu une de 10.0.0.4 à la place. Les adresses ne correspondent pas, échec de connexion, paquet RST renvoyé.

Maintenant, vous demandez, pourquoi le routeur ne SNAT-il pas la connexion de Computer1 à l'IP interne du routeur quand il le DNATs à Computer2? Parce que la règle SNAT gâcherait tout le reste du trafic qui ne suit pas le modèle ci-dessus.

SNAT ne devrait vraiment être utilisé que dans une seule direction, sauf si vous êtes prêt à consacrer beaucoup de temps et de soin à l'élaboration et au maintien d'un ensemble de règles NAT qui ne vous mordra pas.

Et pour préempter tous ceux qui disent:

iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -d 10.0.0.0/24 -j MASQUERADE

Je voudrais souligner que cette règle affecterait non seulement le trafic de bouclage NAT, mais aussi le trafic de pont (par exemple, le réseau WiFi vers le réseau câblé), qui rendrait un routeur WiFi frustré. La règle devrait être adaptée pour correspondre UNIQUEMENT au trafic de bouclage, ce qui est légèrement plus délicat et implique probablement le marquage des paquets. Pas impossible, mais pas le type d'ingénierie et de débogage qui va dans la plupart des routeurs; et certainement lourd de périls.

Glossaire:
SNAT = Source NAT (modification de l'IP source))
DNAT = Destination NAT (modification de l'adresse IP de destination)
NAT = Traduction d'adresse réseau

11
tylerl

Impossible de trouver une base technique pour cette NAT. =)

Le seul bouclage dont je me souvienne à mes débuts était de brancher les deux extrémités du RJ45 d'un cat5e au même commutateur et de gâcher la connectivité du LAN. À l'époque, nous l'appelons un bouclage. Mais c'est plus un problème technique que de sécurité.

2
John Santos