Auteur Sujet: Plage de ports dynamique du protocole TCP  (Lu 149998 fois)

0 Membres et 2 Invités sur ce sujet

vivien

  • Administrateur
  • *
  • Messages: 47 079
    • Twitter LaFibre.info
Plage de ports dynamique du protocole TCP
« Réponse #24 le: 29 décembre 2015 à 21:55:45 »
J'ai rajouté l’information du port source et du port destination sur la page https://ip.lafibre.info/

J'ai aussi rajouté la version du protocole http (1.0 ou 1.1 aujourd'hui ; 2.0 mi-2016, quand le serveur sera compatible)

Enfin j'affiche l'adresse IP via deux méthodes, censé donner l'information de la véritable IP du visiteur, et non l'IP du proxy (en cas d'utilisation d'un proxy).
=> Plus d'infos : http://www.infowebmaster.fr/tutoriel/php-fonction-adresse-ip

corrector

  • Invité
Plage de ports dynamique du protocole TCP
« Réponse #25 le: 29 décembre 2015 à 23:06:15 »
Tu as pensé à récupérer l'adresse avec WebRTC?

https://diafygi.github.io/webrtc-ips/
« Modifié: 29 décembre 2015 à 23:53:23 par corrector »

corrector

  • Invité
Plage de ports dynamique du protocole TCP
« Réponse #26 le: 30 décembre 2015 à 00:49:32 »
Tu pourrais faire une page qui affiche la dispersion des ports?

Déjà tu crées une URL qui donne IP et port en texte, sans chichis. Il faut un truc qui marche en IPv6 donc éviter d'utiliser ":" comme séparateur.

Imaginons : une simple page avec un menu vitesse (en Hz) et un bouton démarrer. Le bouton lance un script qui fait des connexions et récupère IP et port. Pour chaque IP, une liste de ports est compilée.

Ensuite on peut dessiner les ports sur un graphique.

Marin

  • Client Bbox vdsl
  • Modérateur
  • *
  • Messages: 2 804
  • 73
Plage de ports dynamique du protocole TCP
« Réponse #27 le: 30 décembre 2015 à 07:39:14 »
Tu as pensé à récupérer l'adresse avec WebRTC?

Non, juste le X-Forwarded-For, un champ peu renseigné dans la pratique (surtout par des proxy ouverts qui restent aujourd'hui rarement accessibles).

$ curl -s https://ip.lafibre.info/ -H 'X-Forwarded-For: <script>alert("CARRÉMENT VALIDE")</script>' | grep 'Votre véritable adresse'
      <li>Votre véritable adresse IP est <strong><script>alert("CARRÉMENT VALIDE")</script></strong> <small>(différente si vous utilisez un proxy)</small></li>

Cette ligne pourrait être n'affichée qu'au besoin.

Outre WebRTC, il pourrait y avoir le décodage des IPv4 encapsulées (dans les IPv6 Free par exemple) qui pourrait être intéressant, afin d'afficher directement l'hôte et donc le NRA (on peut aussi penser à intégrer d'autres sources de données comme le traceroute chez Orange/FBN mais ce n'est pas le sujet).

[..]
Imaginons : une simple page avec un menu vitesse (en Hz) et un bouton démarrer. Le bouton lance un script qui fait des connexions et récupère IP et port. Pour chaque IP, une liste de ports est compilée.

Si on fait ça, il faudrait peut-être une implèmentation légère comme un socket qui écoute les connexions et renvoie au plus vite le port en réponse (sans persistance), pour :
  • éviter de gaspiller la charge ou les logs du serveur ;
  • éviter de se heurter aux limites de connexions parallèles fixées par les navigateurs, si trop de latence. En sachant que si ça pose problème, certains sites ont pour astuce de contourner (de manière limitée) cet aspect en répartissant les requêtes sur différents sous-domaines. Il me semblait également avoir lu que les websockets étaient exonérées de ces limites de connexions, mais à voir si ça concerne tout le processus de communication (handshake compris) ou juste le moment à partir duquel la connexion bidirectionnelle est établie.

Bensay

  • Technicien Orange ADSL / FTTH / MIC
  • Abonné Orange Fibre
  • *
  • Messages: 686
  • Val D'oise
Plage de ports dynamique du protocole TCP
« Réponse #28 le: 30 décembre 2015 à 08:10:50 »
Tu parles du NAT de Vmware?

Je suppute, Vmware jouant avec les interfaces réseaux , peut être une cause à effet ?
Une idée corrector de ce qui aurait pour effet cette divergence avec Vivien ?

vivien

  • Administrateur
  • *
  • Messages: 47 079
    • Twitter LaFibre.info
Plage de ports dynamique du protocole TCP
« Réponse #29 le: 30 décembre 2015 à 11:38:00 »
Cette ligne pourrait être n'affichée qu'au besoin.

Voila, j'affiche directement les informations HTTP_CLIENT_IP et HTTP_X_FORWARDED_FOR si ils ne sont pas nuls :
$ClientIp2 $_SERVER["HTTP_CLIENT_IP"];
$Forwarded $_SERVER["HTTP_X_FORWARDED_FOR"];
if (
"$ClientIp2!= "")
{
        echo 
"      <li>Information HTTP_CLIENT_IP est <strong>",$ClientIp2,"</strong></li>\n";
}
if (
"$Forwarded!= "")
{
        echo 
"      <li>Information HTTP_X_FORWARDED_FOR est <strong>",$Forwarded,"</strong></li>\n";
}

corrector

  • Invité
Plage de ports dynamique du protocole TCP
« Réponse #30 le: 30 décembre 2015 à 17:09:36 »
        echo "      <li>Information HTTP_X_FORWARDED_FOR est <strong>",$Forwarded,"</strong></li>\n";

vivien, le monsieur t'explique que ça ne se fait pas!

vivien

  • Administrateur
  • *
  • Messages: 47 079
    • Twitter LaFibre.info
Plage de ports dynamique du protocole TCP
« Réponse #31 le: 30 décembre 2015 à 17:11:37 »
Si cela n'est jamais utilisé, cela ne s'affichera jamais.

Si c'est utilisé un jour, on pourra voir les infos.

Pour le décodage des IPv4 encapsulées dans les IPv6 Free, si une personne veut se lancer pour le bout de code, pas de pb.

Marin

  • Client Bbox vdsl
  • Modérateur
  • *
  • Messages: 2 804
  • 73
Plage de ports dynamique du protocole TCP
« Réponse #32 le: 30 décembre 2015 à 17:33:58 »
Je crois que corrector faisait référence à la petite XSS, mais une XSS qui demande de modifier les en-têtes client + sur un site qui ne reçoit pas d'entrée utilisateur particulière et ne stocke rien + qui n'a même pas d'intérêt de détournement, l'intérêt est limité. C'était juste pour montrer qu'on peut mettre n'importe quoi, ce que les développeurs de certains sondages en ligne qui remplacent d'office la variable $adresse_ip par le X-Forwarded-For s'il est présent n'ont pas compris :)

corrector

  • Invité
echo $n'importequoi
« Réponse #33 le: 30 décembre 2015 à 17:48:21 »
qui n'a même pas d'intérêt de détournement, l'intérêt est limité.
Certes.

C'est une question de principe, hein.

corrector

  • Invité
6rd
« Réponse #34 le: 30 décembre 2015 à 17:53:59 »
Pour le décodage des IPv4 encapsulées dans les IPv6 Free, si une personne veut se lancer pour le bout de code, pas de pb.
Il est impossible de distinguer à coup sûr une simple coincidence numérique du 6to4rd généralisé.

Tout dépend du taux de faux positif/faux négatif.

Quels sont les paramètres utilisés par les autres opérateurs en 6rd?

vivien

  • Administrateur
  • *
  • Messages: 47 079
    • Twitter LaFibre.info
Plage de ports dynamique du protocole TCP
« Réponse #35 le: 30 décembre 2015 à 20:33:56 »
Je crois que corrector faisait référence à la petite XSS

Comme ça, c'est bon ?
En appelant htmlspecialchars pour les variables où il est possible d'injecter du code :
$ClientIp $_SERVER["REMOTE_ADDR"];//On obtient l'adresse IP
$ClientIp2 htmlspecialchars($_SERVER["HTTP_CLIENT_IP"]);
$Forwarded htmlspecialchars($_SERVER["HTTP_X_FORWARDED_FOR"]);
$ClientPort $_SERVER["REMOTE_PORT"];//On obtient le port source
$ServerPort $_SERVER["SERVER_PORT"];//On obtient le port destination
$ClientHTTP $_SERVER["SERVER_PROTOCOL"];//On obtient la version de HTTP utilisé
$Chiffrement $_SERVER["HTTPS"];
$ClientHost gethostbyaddr($ClientIp);//on transforme en Host avec adresse du FAI
$ClientHostTab explode("."$ClientHost);//on divise en segments le host par rapport à chaque point
$nb_points substr_count($ClientHost".");// Nombre de point(s) dans la ligne
$ClientUA htmlspecialchars($_SERVER["HTTP_USER_AGENT"]);