web-dev-qa-db-fra.com

Techniques avancées pour détecter un proxy / obtenir l'IP d'origine

De quelle manière un site Web peut-il détecter mon adresse IP d'origine, même si j'utilise un serveur proxy? J'ai remarqué cela avec quelques sites. Il y a quatre méthodes de proxy que j'ai utilisées:

  • Firefox avec un paramètre proxy.
  • Python avec mechanize.set_proxies.
  • Firefox dans une machine virtuelle avec un routeur de machine virtuelle tel que tout Internet de la VM passe par un proxy.
  • TorBrowser (qui utilise Firefox comme navigateur réel).

Les choses suivantes sont des comportements attendus:

  • Avec tout cela, si je vais à http://www.whatismyip.com/, il donne l'adresse IP correcte (l'adresse IP du proxy, pas l'ordinateur hôte).
  • whatismyip.com indique "Aucun proxy détecté" pour tous ces éléments.

En effet, il semble que les sites Web que je visite pensent que mon IP est celle du proxy. Cependant, il y a eu quelques cas étranges qui me font penser que certains sites peuvent en quelque sorte détecter mon adresse IP d'origine. Je suis curieux de savoir comment ils s'y prennent.

  • Dans une situation, en visitant un site non américain via Firefox avec un proxy non américain, le site a littéralement pu imprimer mon adresse IP d'origine (depuis les États-Unis) et me refuser l'accès. Cela ne devrait-il pas être impossible? Visiter le site via la machine virtuelle avec ce même proxy non américain, ou le TorBrowser avec un nœud de sortie non américain, cependant, le site n'a pas pu le faire.
  • Dans une situation similaire, je visitais un autre site non américain à partir d'un proxy non américain. Si je me connectais au site à partir de Firefox dans la machine virtuelle, ou à partir de TorBrowser avec un nœud de sortie non américain, le site fonctionnerait correctement. Cependant, si j'essayais de me connecter via Firefox avec un proxy (le même proxy que la machine virtuelle utilise), ou avec mechanize, il ne parviendrait pas à se connecter avec un message d'erreur sans rapport.
  • Dans une troisième situation, en utilisant le mechanize.set_proxies option, j'ai surchargé un site avec trop de requêtes, il a donc décidé de bloquer l'accès (il expirait volontairement chaque fois que je me connectais). J'ai pensé que cela aurait pu bloquer l'adresse IP du proxy. Cependant, lorsque j'ai exécuté le code à partir d'une autre machine hôte, mais avec le même proxy, cela a fonctionné à nouveau, pendant un court moment, jusqu'à ce qu'ils le bloquent à nouveau. (Pas de soucis, je ne harcelerai plus le site - j'ai continué à exécuter le programme car je pensais que cela pouvait être un problème de ma part, pas un bloc de leur côté.) Visiter ce site avec la solution proxy Firefox + de l'un des hôtes bloqués a également entraîné la temporisation délibérée.

Il me semble que tous ces sites, dans les cas Firefox + proxy et mechanize, ont pu trouver quelque chose sur l'adresse IP de la machine hôte, alors que dans les cas TorBrowser et machine virtuelle, ils n'étaient pas . Ma question est essentiellement: comment les sites sont-ils en mesure de recueillir ces informations? Une autre façon de demander est la suivante: qu'est-ce qui est différent dans TorBrowser et les boîtiers de machines virtuelles qui empêchent les sites de collecter ces informations?

11
Claudiu

le site a littéralement pu imprimer mon adresse IP d'origine (depuis les États-Unis) et me refuser l'accès. Cela ne devrait-il pas être impossible?

Il semble que vous vous attendiez à l'anonymat.

Les procurations peuvent indiquer si elles envoient ou non le X-Forwarded-For en-tête (qui contient l'IP d'origine).

Un proxy qui n'envoie pas cet en-tête, ou n'enregistre pas l'IP d'origine dans les journaux, serait un proxy "anonymisant". Dans le cas que vous mentionnez, le proxy que vous utilisiez a probablement transmis cet en-tête au point de terminaison auquel vous accédez, de sorte que votre connexion n'a pas été anonymisée.

Il existe plusieurs façons de détecter si votre trafic est d'origine proxy. Deux faciles sont:

  • Présence de X-Forwarded-For en-tête (ou données personnalisées dans les en-têtes transférés)
  • Contre-vérification des adresses IP connues des proxys ou relais de sortie (TOR)
    • bases de données gérées par des tiers (par exemple Quova)

Il existe d'autres façons, nécessitant éventuellement des informations supplémentaires sur le serveur, peut-être pour corréler les demandes entre les connexions de différentes adresses IP, par exemple en examinant les critères de l'agent utilisateur et le calendrier des demandes, les cookies, LSO en flash, (un des raisons pour lesquelles vous souhaitez des cookies et Flash player désactivé pour vraiment vous anonymiser).

En bref, le simple fait d '"utiliser un proxy" ne vous rend pas anonyme ou introuvable.

8
parallaxed

Sauf en utilisant IP afin de trouver l'emplacement d'un visiteur, il est également possible de le faire en utilisant l'API de Firefox, selon Mozilla:

Si vous y consentez, Firefox recueille des informations sur les points d'accès sans fil à proximité et l'adresse IP de votre ordinateur. Firefox envoie ensuite ces informations au fournisseur de services de géolocalisation par défaut, Google Location Services, pour obtenir une estimation de votre position. Cette estimation d'emplacement est ensuite partagée avec le site Web demandeur.

Donc, utiliser un serveur proxy seul, sauf qu'il n'est pas en soi un outil d'anonymisation, ne suffit pas. (lire la réponse parallaxe pour plus de réponses à ce sujet).

TOR bundle vous propose un navigateur Firefox qui refuse toutes les demandes d'informations, ainsi que de ne pas garder la trace de vos allées et venues, tandis que les VM n'ont pas accès à vos informations réelles et sans fil de votre passerelle.

Notez que différents navigateurs collectent la géolocalisation différemment, donc alors que Firefox utilise le point d'accès sans fil autour de vous, d'autres navigateurs utilisent parfois le fuseau horaire de votre ordinateur, le GPS connecté à votre ordinateur, etc.

Essayez ce lien vers le manuel de géolocalisation de mozilla pour désactiver cette fonctionnalité dans votre navigateur, et ce pour voir les informations que Firefox envoie sur votre géolocalisation.

2
Boaz Tirosh

Vous devez configurer votre lecteur flash et Java pour utiliser le proxy ou essayer de désactiver le plugin flashplayer et Java plugin dans le navigateur Firefox. Les deux plugins sont notoires) pour l'envoi de l'adresse IP d'origine de l'utilisateur, même via un serveur proxy. Le proxy que vous avez utilisé peut également avoir été mis sur liste noire sur le serveur Web ou de nombreuses personnes utilisaient le même proxy pour accéder au même site, en violation de la politique de QoS du serveur.

0
shadotu

Essayez d'utiliser des outils tiers, ces outils ne suivront pas votre adresse IP. J'utilise des outils comme hotspot shield qui changeront votre adresse IP. Pour vérification, vous pouvez vous connecter à l'URL ce que vous avez mentionné et voir l'IP, elle s'affichera comme IP U.S.

0
dummel