Halte au vol de bande passante !

Certains individus peu scrupuleux n’hésitent pas à prendre les sites web des autres pour des espaces de mise à disposition de bande passante. Plusieurs images de Gastero Prod sont ainsi utilisées par différentes personnes sur d’autres sites, en appelant directement l’URL de Gastero Prod et non en recopiant le fichier.

Par exemple, la photo de Zhang Ziyi que j’ai mis dans mon article sur le film « Hero » :

Lune (Zhang Ziyi)

En consultant les logs de consultation de mon serveur HTTP Apache, je me suis rendu compte qu’elle est reprise sur différents sites, dans le profil d’internautes peu scrupuleux.

Sur Fractal par exemple, dans le profil d’une certaine « Mei Lin » :

Dans les forums de El Otro Lado, dans la signature d’un certain « Evil Mask » :

Bien sûr, le furoncle MySpace n’échappe pas à la liste, avec notamment le profil d’un certain « Nick »

… ou encore celui d’un certain « Sgnl>06 (Paul Fills The Void) » :

J’arrête là la démonstration, mais j’ai déjà relevé plus de dix autres sites sur lesquels cette unique image est réutilisée sans vergogne.

Cette photo n’est pas de moi, bien sûr, et je ne suis même sans doute pas totalement dans mon droit en l’affichant ainsi sur mon site, mais ce que je déplore surtout, c’est la quantité de bande passante ainsi détournée !

D’après les logs Apache, l’image a été téléchargée 321 fois vendredi 17 mars pour illustrer une page non hébergée par Gastero Prod1. L’image faisant une taille de 14748 octets, on arrive à un vol de bande passante quotidien d’environ 4,5 Mo. Et cela pour une seule des images qui sont « volées », je n’ose tenter un calcul global…

Heureusement, une solution existe ! Comme l’explique simplement NiKo, il « suffit » d’empêcher les méchants de voler la bande passante, en interdisant l’usage d’images du site à partir d’autres sites. Via les Rewrite Rules d’Apache, en l’occurance.

La solution de NiKo ne s’intéresse qu’au furoncle MySpace, donc il est nécessaire d’adapter la règle décrite.

Malheureusement, il est impossible de généraliser la règle à tout site externe, car les images deviendraient alors invisibles dans les aggrégateurs de flux de syndication en ligne tels que Bloglines ou FeedLounge.

Voici donc ma règle pour l’instant, si je la limite à trois domaines :

RewriteCond  %{HTTP_REFERER} ^.*(myspace|elotrolado|fract)\.[^/]+/.*$ [NC] ReWriteRule .*\.(gif|png|jpg|jpeg)$ - [F]

cat gasteroprod_access_log | grep zhang_ziyi.jpg | grep -v gasteroprod | grep "17/Mar/2006" | wc -l

  1. Pour les techniciens, voilà comment j’ai obtenu ce résultat (sans les retours à la ligne) : ⬆︎

Si vous voulez signaler une erreur ou proposer une modification de ce texte, n'hésitez pas à l'éditer directement à la source sur Github.

13 commentaires

  • J'adore le bombing sur furoncle ^^

    Sinon j'ai trouvé encore mieux (plus lisible je trouve) grâce aux variables d'enironnement apache :

    SetEnvIfNoCase Referer myspace.com leecher=yes

    SetEnvIfNoCase Referer furoncle.org leecher=yes

    deny from env=leecher

    Mais bon le résultat est le même : une bonne vieille 403 :D

    PS : C'est chiant de pas pouvoir poster du code dans les commentaire…

  • Je me suis jamais amusé à faire cet exercice, je devrais un de ces quatre… :)

    Pour Niko, pour le code il suffit d'utiliser les balises code ou cadre (sur le même formatage qu'une balise html standard…

    <textarea readonly="readonly" cols="40" rows="2" class="spip_cadre" dir="ltr">oh des balises <code> et enfermées dans des balises cadre :-)

    PS pour Nico : c'est quoi ces pop-up CoComment ?

  • Y'a des popup CoComment ???

    J'ai bien mis en place CoComment en mode automatique, mais je n'ai pas de popup, moi, c'est zarb. Tu peux préciser dans quelles conditions ???

  • J'ai ajouté le paramètre qui doit éviter ce désagrément :


    <div style="text-align: left;" class="spip_code" dir="ltr"><code>var cocomment_force = false;</div>

    Vous confirmez ?


  • Pour Niko, pour le code il suffit d'utiliser les balises code ou cadre (sur le même formatage qu'une balise html standard…



    Sauf que la balise <cadre> donne en général quelque chose de pas très lisible. Son seul intérêt est pour les lignes de code trop longues, qui donnent un ascenceur horizontal au lieu d'exploser la mise en page…


  • Malheureusement, il est impossible de généraliser la règle à tout site externe, car les images deviendraient alors invisibles dans les aggrégateurs de flux de syndication en ligne tels que Bloglines ou FeedLounge.



    Pour ma part, je ne fonctionne pas en "liste noire" (en bloquant des sites indélicats), mais en "liste blanche" (en débloquant les sites souhaités). L'option liste noire oblige à pouchasser les hotlinkers dans les logs, ce qui rpend un temps certain.

    Je redirige aussi les images hotlinkées vers une image modifiée, rétrécie, et un brin provoquante.

    Le htaccess

    Exemple d'image modifiée

  • Le problème de la liste blanche, c'est qu'elle peut vite devenir longue si tu veux que tes images apparaissent dans tes flux RSS qui sont repris par des sites ou outils d'aggrégation en ligne type FeedLounge, Bloglines, etc.

  • Bonsoir,

    Je suis hébergeur et j'aimerai pouvoir proposer une telle option pour mes hébergés. Cependant, au lieu d'interdire chaque site voleur, site par site, j'aimerai autoriser seulement le site légitime à afficher ses images, en sachant que les sites de mes hébergés peuvent être accessible par plusieurs adresses URL.

    J'aimerai pouvoir m'inspirer de cet exemple :

    RewriteEngine On
    RewriteCond %HTTP_REFERER ^.*myspace.com.*$ [NC]
    RewriteRule .*\.(gif|jpg|jpeg|swf|png)$ http://www.prendreuncafe.com/images/antileech.jpg [NC]

    Merci d'avance, car le post qui parlai de ceci justement pointe sur un .htaccess introuvable.

    Merci d'avance, je garde en bookmark ce topic.

  • Salut !
    Ben voilà, je me présente : Furoncle.
    Je suis un artiste sur myspace en bourgogne et je ne vole pas de bande passante…
    diffamation, diffamation ‼
    Attention !

Twitter 500px Flickr Facebook Instagram Github Feed