Spoofing d'IP

Le
Denis Beauregard
Bonjour,


Comme on peut faire croire que le numéro de téléphone qu'on utilise
est un autre numéro (j'ai déjà reçu un appel venant du 1234567890
(véridique), je me demandais si c'était possible de faire la même
chose avec une IP.

C'est plutôt par curiosité. J'examine l'IP pour me protéger contre
un aspirateur de site (il semble que seul AOL change ses IP à chaque
requête). Les cookies sont inutiles si je veux des visiteurs qui
arrivent par un moteur de recherche (quoique )


Denis
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Eric Demeester
Le #26374971
Bonjour,

Denis Beauregard (Thu, 29 Oct 2015 23:48:03 -0400 -
fr.comp.infosystemes.www.auteurs) :

Comme on peut faire croire que le numéro de téléphone qu'on utilise
est un autre numéro (j'ai déjà reçu un appel venant du 1234567890
(véridique), je me demandais si c'était possible de faire la même
chose avec une IP.



Non seulement c'est possible mais ce n'est pas très compliqué, il existe
même des logiciels faits pour ça. Quelques explications ici :

http://www.commentcamarche.net/contents/71-usurpation-d-adresse-ip-mystification-spoofing

Ces techniques sont essentiellement employées pour attaquer des serveurs
ou des sites.

C'est plutôt par curiosité. J'examine l'IP pour me protéger contre
un aspirateur de site (il semble que seul AOL change ses IP à chaque
requête). Les cookies sont inutiles si je veux des visiteurs qui
arrivent par un moteur de recherche (quoique ...)



Je n'ai rien compris à ce paragraphe :)

Pour te protéger contre un aspirateur de sites particulier, mieux vaut
se fier à son User-Agent qu'à son IP. Pour se faire, indiquer ça dans un
fichier robots.txt (si c'est un serveur Apache) à la racine du site :

User-agent: nom_du_méchant_aspirateur
Disallow: /

Tu peux en mettre plusieurs, on trouve des listes de User-Agents
malpolis longues comme des jours sans pain.

Il existe des méthodes génériques pour piéger ou ralentir les
aspirateurs de sites, mais elles sont imparfaites, risquent d'écrouler
le site si elles sont mal programmées et surtout, pénalisent aussi le
référencement, puisque les robots indexeurs en général, et GoogleBot en
particulier [*], sont des aspirateurs de sites qui analysent le contenu
sémantique des pages afin de l'indexer.

[*] Il les garde en cache, de surcroît.
Sergio
Le #26374978
Le 30/10/2015 09:48, Eric Demeester a écrit :

Je n'ai rien compris à ce paragraphe :)

Pour te protéger contre un aspirateur de sites particulier, mieux vaut
se fier à son User-Agent qu'à son IP. Pour se faire, indiquer ça dans un
fichier robots.txt (si c'est un serveur Apache) à la racine du site :

User-agent: nom_du_méchant_aspirateur
Disallow: /

Tu peux en mettre plusieurs, on trouve des listes de User-Agents
malpolis longues comme des jours sans pain.



httrack --help
[...]
Browser ID:
F user-agent field (-F "user-agent name") (--user-agent )

(httrack est un aspirateur de site bien connu sous Linux ou Windows)


--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Denis Beauregard
Le #26375015
Le Fri, 30 Oct 2015 09:48:31 +0100, Eric Demeester
fr.comp.infosystemes.www.auteurs:

Denis Beauregard (Thu, 29 Oct 2015 23:48:03 -0400 -
fr.comp.infosystemes.www.auteurs) :

Comme on peut faire croire que le numéro de téléphone qu'on utilise
est un autre numéro (j'ai déjà reçu un appel venant du 1234567890
(véridique), je me demandais si c'était possible de faire la même
chose avec une IP.



Non seulement c'est possible mais ce n'est pas très compliqué, il existe
même des logiciels faits pour ça. Quelques explications ici :

http://www.commentcamarche.net/contents/71-usurpation-d-adresse-ip-mystification-spoofing

Ces techniques sont essentiellement employées pour attaquer des serveurs
ou des sites.



Mais cela ne peut pas fonctionner comme aspirateur de site ! En
effet, si le client 1.2.3.4 envoie une requête en disant être 2.3.4.5,
alors le serveur demande confirmation à 2.3.4.5, et comme il ne reçoit
pas cette confirmation, il n'envoie pas la page. Donc, le site n'est
pas aspirer même s'il peut être attaqué.

C'est plutôt par curiosité. J'examine l'IP pour me protéger contre
un aspirateur de site (il semble que seul AOL change ses IP à chaque
requête). Les cookies sont inutiles si je veux des visiteurs qui
arrivent par un moteur de recherche (quoique ...)



Je n'ai rien compris à ce paragraphe :)



Si le visiteur a l'IP 1.2.3.4, je note cette IP et compte "1". S'il
revient, je compte 2, etc. AOL a (avait ?) la curieuse habitude de
changer l'IP et donc un visiteur donnera l'impression qu'il a les
IP 1.2.3.4, 1.2.3.5, etc.

Si j'utilise un cookie, l'aspirateur ne le conserve pas. Si j'oblige
mes visiteurs à utiliser les cookies, je dois créer un système
compliqué pour injecter un cookie et n'affiche la page que si le
cookie est présent. Mais si c'est un robot légitime, il n'a pas non
plus de cookie.

Pour te protéger contre un aspirateur de sites particulier, mieux vaut
se fier à son User-Agent qu'à son IP. Pour se faire, indiquer ça dans un
fichier robots.txt (si c'est un serveur Apache) à la racine du site :

User-agent: nom_du_méchant_aspirateur
Disallow: /

Tu peux en mettre plusieurs, on trouve des listes de User-Agents
malpolis longues comme des jours sans pain.



Cela ne fonctionne pas non plus. Les robots répondent volontairement
au robots.txt. Un aspirateur ne lira pas ce fichier. Il suffit de
regarder dans les logs du serveur pour voir que robots.txt est lu
par la plupart des bots et donc ce n'est pas le serveur qui décide.

Il existe des méthodes génériques pour piéger ou ralentir les
aspirateurs de sites, mais elles sont imparfaites, risquent d'écrouler
le site si elles sont mal programmées et surtout, pénalisent aussi le
référencement, puisque les robots indexeurs en général, et GoogleBot en
particulier [*], sont des aspirateurs de sites qui analysent le contenu
sémantique des pages afin de l'indexer.

[*] Il les garde en cache, de surcroît.



mais les IP de Googlebot sont identifiables.


Denis
Paul Gaborit
Le #26375240
À (at) Fri, 30 Oct 2015 07:27:06 -0400, Denis Beauregard

Cela ne fonctionne pas non plus. Les robots répondent volontairement
au robots.txt. Un aspirateur ne lira pas ce fichier. Il suffit de
regarder dans les logs du serveur pour voir que robots.txt est lu
par la plupart des bots et donc ce n'est pas le serveur qui décide.



C'est une dure lutte car, dans l'absolu, rien ne peut distinguer un
utilisateur légitime d'un aspirateur bien conçu. Une méthode qui peut
parfois fonctionner consiste à ajouter de faux liens (non visibles d'un
utilisateur légitime car cachés par du CSS par exemple) qui pointent
vers de fausses pages avec des redirections sans fin. Mais pour éviter
qu'un robot d'indexation légitime s'y perdre lui aussi il faut déclarer
ces pages dans robots.txt...


--
Paul Gaborit -
Jean Francois Ortolo
Le #26383733
Le 30/10/2015 04:48, Denis Beauregard a écrit :
Bonjour,


Comme on peut faire croire que le numéro de téléphone qu'on utilise
est un autre numéro (j'ai déjà reçu un appel venant du 1234567890
(véridique), je me demandais si c'était possible de faire la même
chose avec une IP.

C'est plutôt par curiosité. J'examine l'IP pour me protéger contre
un aspirateur de site (il semble que seul AOL change ses IP à chaque
requête). Les cookies sont inutiles si je veux des visiteurs qui
arrivent par un moteur de recherche (quoique ...)


Denis





Bonjour Monsieur

- C'est possible de détecter les bots des moteurs de recherche par
leur ip reverse. ( ipv4 donc actuellement, en ipv6 il n'y a pas de
reverse je crois ).

- Ormis le cas des ips variables ( AOL... ), un anti-aspirateur
classique devrait fonctionner.

- Pour clore le tout, utiliser des cookies, puisque c'est précisément
le rôle d'un cookie : Suivre le connexions d'après leur source.

Pour détecter les bots, j'utilise la fonction ( rapide )
get_dns_record($in_addr_arpa, DNS_PTR) , qui rend un pointeur vers le
reverse.

Après, des preg_match sur une array de tokens possibles de bots.

Plus exactement, ce pointeur pointe vers plusieurs champs, je prend
le premier non vide.

On devrait pouvoir identifier AOL par le reverse ?

Quand il n'y a pas votre cookie présent, alors soit c'est un
aspirateur, soit un bot, soit la première visite.

Quand le cookie est présent, problème résolu.

En ce qui me concerne je n'utilise pas les cookies pour mon
antiaspirateur.

Je n'ai pas prévu le cas des ip spoofing.

Respectueusement.

Jean François Ortolo
Jean Francois Ortolo
Le #26386222
Bonjour Monsieur

Voici l'algorithme que j'ai mis au propre à l'instant.

J'espère que le formatage n'est pas trop mauvais ;)

online est est la table MySQL contenant ( comme primary key ) les ips
ou les cookies. Je verrai si je peux enregistrer les hash codes des ips
au lieu des ips.

Mon développement est en cours.

Par "ip valide", j'entends une ip publique ( pas privée ) du réseau
internet. Les ips privées sont acceptées.

Respectueusement.

Jean François Ortolo



Nouvel Algorithme :

DELETE FROM online WHERE date_time < time() - MAX_TIME.


Ip == localhost ou localhost6 ?
N Y
Acceptation.

Ip valide ?
N Y

Refus Si hash code dans whitelist, accepter.
Si hash code dans blacklist, refuser


Evaluation reverse de l'ip.

is_bot() ?
N Y

Cookie actuel valide ? Accepter.

N Y


Enregistrement Cookie existe déjà ?
dans online
$Vip, $cpt = 0;

N Y

IP existe déjà ? UPDATE online $cpt += 1
WHERE code=$cookie;
N Y

$domaine de AOL ? UPDATE online $cpt += 1,code=$cookie
WHERE code=$Vip

N Y
INSERT online INSERT online $cpt=1,code=$cookie
$Vip, $cpt == 0;




Avant chaque UPDATE, verifier $cpt.

$cpt > MAX ?
N Y

UPDATE Ban / Mail
Publicité
Poster une réponse
Anonyme