Journal Multiple Browsers Window Injection Vulnerability

Posté par  (site web personnel) .
Étiquettes :
0
8
déc.
2004
D'après Secunia [1], la plupart des navigateurs web sont vulnérables à une faille appelée « Multiple Browsers Window Injection Vulnerability ». Elle peut être utilisée pour du phishing.

Vous pouvez tester votre navigateur sur [2]. Mon mozilla 1.7.3 est vulnérable. Idem pour Firefox 1.0, Epiphany 1.4.4 et IE 6.0 SP1.


[1] http://secunia.com/(...)
[2] http://secunia.com/multiple_browsers_window_injection_vulnerability(...)
  • # Moué bon

    Posté par  (site web personnel) . Évalué à -2.

    1.T'as ete verifie que c'est pas vraiment eux qui le font le popup?
    2.Moi dans le barre de titre y a marqué - javascript donc bon deja tout ce qui est fenetre javascript.....
    3.Un script javascript ne peut plus changer lui meme le titre de sa fenetre?

    Donc bon franchement ca devient gavant ce genre de déclaration de bugs
    Evidement pour les noob c'est une faille de secu, mais bon avec eux y a besoin de juste un copier coller de l'interface de debut c'est bon
    ils verifient meme pas la barre d'url donc voila quoi.....
    • [^] # Re: Moué bon

      Posté par  (site web personnel) . Évalué à 1.

      1.T'as ete verifie que c'est pas vraiment eux qui le font le popup?
      Si tu parles de Citibank, le popup est bien de leur fait, mais le contenu n'est pas du tout le même si tu vas directement sur le site sans passer par la page de Secunia.

      2.Moi dans le barre de titre y a marqué - javascript donc bon deja tout ce qui est fenetre javascript.....
      Beaucoup de sites utilisent du javascript sans que ce soit dangereux. Bien utilisé, c'est même plutôt pratique.

      3.Un script javascript ne peut plus changer lui meme le titre de sa fenetre?
      Je pense que oui. Mais la le problème vient du fait que c'est Secunia qui contrôle le popup.

      Donc bon franchement ca devient gavant ce genre de déclaration de bugs
      Evidement pour les noob c'est une faille de secu, mais bon avec eux y a besoin de juste un copier coller de l'interface de debut c'est bon
      ils verifient meme pas la barre d'url donc voila quoi.....
      Ce n'est pas vraiment un bug, plutôt une fonctionnalité qui peut être utilisée à mauvais escient.
      Et je ne vois pas ce qui fait que ce mécanisme est destiné aux noobs. Imagine : linuxfr.org est piraté, tu cliques sur un lien sur linuxfr.org, sur cette nouvelle page tu ouvres un popup, alors le contenu de ce popup est manipulé par le pirate. Tu peux bien évidemment remplacer linuxfr.org par n'importe quel site (un site de bannières de pub par exemple).
  • # Moralité :

    Posté par  . Évalué à 3.

    les demeurés qui "réinventent internet en javascript" au lieu d'utiliser HTML normalement devraient tous être foutus à la porte.

    BeOS le faisait il y a 20 ans !

    • [^] # Re: Moralité :

      Posté par  (site web personnel) . Évalué à 5.

      Je suppose que tu dis ça parce que l'on aurait pu voir l'adresse de la page dans la bare d'adresse sinon...

      Pour ceux qui n'auraient pas compris le fonctionnement, si j'ai bien compris, en ouvrant le site de citibank à partir de secunia, le lien incriminé affecte un nom à la fenêtre citibank pour en garder la trace, et lance un script.

      Ce script vérifie au déchargement de la page citybank le nom de cette fenêtre. Là en l'occurence ils cherchent la fenêtre qui s'appelle "spoofing", ouverte par le site de citibank. Le script utilise le fait que l'on a déchargé (OnUnload) la page d'origine de citibank en cliquant sur le lien parlant de spoofing, et le script tournant toujours, il en profite pour changer la cible de la page, ouvrant une page de sécunia...

      On profite je pense du fait que :
      • L'utilisateur clique sur un lien qui pointe bien vers la page de sa banque, sans connaitre celui qui lui a transmis ce lien.
      • on connait le nom de la page qui sera ouverte ("spoofing")
      • le lien qui ouvre la page sur citibank ouvre une popup sans barre d'adresse (on ne voit pas qu'on a été redirigé)


      Dites moi si j'ai oublié qq chose...
  • # Marche pas

    Posté par  . Évalué à 3.

    Avec Firefox1.0/NT4.
    J'ai rien vu de ce qu'ils disait (popup avec contenu de secunia).
    • [^] # Re: Marche pas

      Posté par  (site web personnel) . Évalué à 3.

      A mon avis le javascript est désactivé chez toi...
      Je suis sous Firefox 1.0/NT4 et ça a fonctionné, je me suis retrouvé sur une page sécunia...
      • [^] # Re: Marche pas

        Posté par  . Évalué à 2.

        Personnellement avec Javascript d'activer chez moi, et Ubuntu Linux+Firefox 1.0, cela ne fait rien de spécial, et je fais bien un clique gauche pour ne pas ouvrir dans un onglet.
    • [^] # Re: Marche pas

      Posté par  . Évalué à 3.

      Je me suis fait avoir au début aussi : il ne faut pas ouvrir le lien dans un onglet, mais faire un clic normal du bouton gauche de la souris à partir du site de secunia.
  • # euh...

    Posté par  . Évalué à 1.

    J'ai du mal à comprendre ou est la vulénrabilité :
    On ouvre une fenetre en javascript, ouais normal. Ok.
    Et alors ?
    Si vous visitez des sites normaux (commerciaux donc anormaux ?) vous avez des bannières qui peuvent provenir d'autres sites, et même poser des cookies d'autres sites que celui de votre visite. Et alors ? c'est une faille de sécurité ?
    Si le visiteur ne fait pas attention ou il clique et ou il arrive, c'est lui la faille de sécurité.
    Je peux faire un site fake de societe-general.com et même écrire société géneral dans la barre de titre, sans javascript et sans rien. juste html, et je suis sur que certains ne se rendrons pas compte que c'est societe-general.com et pas societe-generale.com. Alors j'ai trouvé une super méga faille windows injection fake url of the world for most browser of the univers ?
    Nan !
    Bon c'est vrai je ne vend pas de sécurité (sentiment d'insécurité?).

    Mes 2cts
    • [^] # Re: euh...

      Posté par  . Évalué à 2.

      On ouvre une fenetre en javascript, ouais normal. Ok.
      Et alors ?


      Sur la page citibank tu dois cliquer sur le logo Citibank "Consumer Alert" et normalement si tu cliques dessus cela ouvrira une page "made in secunia" ce qui indique que bien qu'étant sur le site de citibank tu ouvre une page de chez secunia...

      Je trolle dès quand ça parle business, sécurité et sciences sociales

      • [^] # Re: euh...

        Posté par  . Évalué à 0.

        Ouais,
        je ne vois toujours pas la faille de sécurité. je ne dois pas être assez .. smart. Pour moi ce n'est pas une faille de sécurité mais une technique javascript.
        Ouais, en fait; il faut que le site qui 'triche' t'envoie sur le site réel dans une nouvelle fenetre et ensuite, il peut voler la popup de cette fenètre. Pour moi ce n'est que de l'habile javascript dans la mesure ou une nouvelle fenetre n'est pas chainé avec la précédente, il n'y a pas de lien bijectif, mais applicatif.
        En clair : Une fenetre navigateur A ouvre une autre fenetre navigateur B (si c'est une pop up) alors A peut controler B (en fait la 'javascript machine' peut controler.)
        Maintenant effectivement, on peut nommer une fenètre et la réutiliser. Donc si j'ai une fenetre navigateur C et que la fenetre B est pop-up, le javascript de C peut controler B si il connait son nom. ce n'est pas une faille de sécurité. C'est une 'feature'. On arrive toujours au même point : pour un véritable webmaster la question est : les données sont-elles secure ? d'ou viennent elle ? La chaine de confiance est-elle intacte ? avant de créer un fichier on vérifie qu'il n'existe pas. Par exemple pour ne pas écraser un fichier important ou pour ne pas lier des données sensibles. pareil avant de créer une fenetre, on peut vérifier qu'elle n'existe pas ou donner des noms aléatoires ou pas de nom. Si le nom sur citibank change, paff cela ne marche plus. Ok c'est un bon truc de programmation pour ceux qui adorent javascript ..
        mais de là à en faire une découverte importante ....
        • [^] # Re: euh...

          Posté par  (Mastodon) . Évalué à 3.

          Si quelqu'un, en surfant sur le site de sa banque, peut ouvrir un popup qui lui demande son numéro de carte bleue ou une info personnelle, et que ce popup vient en fait d'un autre site, c'est bel et bien une faille de sécurité.
        • [^] # Re: euh...

          Posté par  (site web personnel) . Évalué à 4.

          Non justement.
          Si un site A ouvre un site B dans une popup, il lui est impossible de contrôler le contenu de la fenêtre ouvrante. C'est une sécurité prévue de base. [1]

          Par contre la chose non prévue est d'écraser cette fenêtre si on connait son nom.

          En effet c'est une "feature" de javascript mais c'est bel et bien une vulnérabilité de javascript (et non du navigateur qui ne fait qu'implémenter ce langage).

          Tu sembles considèrer que le "spoofing" n'est pas une vulnérabilité alors que c'est le meilleur moyen de tromper une utilisateur. Tout le monde ne fait pas un clic-droit pour puis "propriété de la page" pour savoir sur quel site il se trouve. Ce n'est donc pas uniquement une jolie démonstration de javascript mas bel et bien un soucis.


          [1] D'ailleurs Netscape 4.x avait ce bug. Il suffisait d'ouvrir la popup "about:config" et d'en lire le contenu en Javascript pour récupérer le mail de la personne.

          L'association LinuxFr ne saurait être tenue responsable des propos légalement repréhensibles ou faisant allusion à l'évêque de Rome, au chef de l'Église catholique romaine ou au chef temporel de l'État du Vatican et se trouvant dans ce commentaire

          • [^] # Re: euh...

            Posté par  . Évalué à 1.

            Bien sur que si, le fait de pouvoir écraser une fenetre en connaissant sont nom est PREVU et CONNU : Par exemple tu as une galerie de peinture avec des miniatures, tu cliques sur une miniature, cela ouvre une pop-up qui présente le tableau en grand. Utiliser la même fenêtre en la renommant évite d'ouvrir à chaque fois un pop-up en 'rafraichissant' son contenu et je t'assures que pour la navigation c'est extrement plaisant.
            Ok, cela peut poser des problèmes si le site a mal été codé. Par exemple : si tu ouvres une fenètre nommée qui contient le nom de l'utilisateur plus un code particulier, tu ne peux plus être 'spoofé' .
            Donc si tu peux, par programmation simple (donner un nom différent à chaque fenètre pour chaque utilisateur) éviter le problème, ce n'est pas une faille de sécurité mais une mauvaise programmation à la base. Le truc de la lecture de about:config serait peut-être une vrai faille, mais là, la faille ne serait pas dans javascript, mais dans le navigateur qui passe en internet-land des infos du user-land Je trouve dommage d'utiliser des objets javascripts qui appartiennent à ces 2 mondes. Je pense qu'il faut un vrai partage, oui c'est plus contraignant, mais la sécurité est contraignante. par nature. Ok les prefs par javascript pourquoi pas, MAIS le moteur javascript internet-land ne devrait même pas pouvoir LIRE les infos qui seraient réservés au moteur javascript user-land.
            Sinon, on va se retrouver avec des sites capables de modifier ta page de démarrage par un simple javascrip.(il était même possible à l'époque (encore maintenant ?) de mettre par javascript un site en favoris) CA c'est un problème de CONCEPTION du browser. Ok javascript est SUR la machine du visiteur, mais c'est de l'info internet-land qui n'est secure NI pour l'utilisateur (il ne le maitrise pas - sauf à le desactiver) ni pour le webmasteur (qui doit vérifier sur site les vérification qu'il fait par javascript.)
            • [^] # Ah...

              Posté par  (Mastodon) . Évalué à 3.

              «Donc si tu peux, par programmation simple [...] éviter le problème, ce n'est pas une faille de sécurité mais une mauvaise programmation à la base.»

              1- si on peut éviter le problème par programmation simple, ce n'est pas une faille de sécurité.
              2- on peut par programmation simple éviter les buffer overflows.
              3- les buffer overflows ne sont pas des failles de sécurité.
              • [^] # Re: Ah...

                Posté par  . Évalué à 0.

                AH AH.....
                très joli syllogisme (ou un sophisme?).
                je vais essayer d'expliquer plus simplement. tu utilises un outils. (un site web est une utilisation d'un outil - html+css+javascript dans un browser.)
                Si tu n'as aucun moyen en utilisant un outil de ne pas te blesser (te faire voler ta fenètre par un code malicieux) ou par exemple si il y a une fonction non documentée window.steal.user.passeword (qui te permet d'avoir accès au nom et au pass de l'utilisateur connecté) il y a faille de sécurité. sinon ce n' est pas une faille de sécurité.
                Comme c'est toi qui programme les buffer overflow, la faille de sécurité est dans C alors (puisqu'il te permet de programmer une faille.) ? non bien sur.
                Il faut supprimer toutes les tronçonneuse, on peut vraiment se faire mal avec. Dans la même veine, il faut supprimer internet, c'est un repaire de pédophile.
                • [^] # Re: Ah...

                  Posté par  (Mastodon) . Évalué à 2.

                  Ben euh soit, mais tu redéfinis un peu la notion de faille de sécurité alors. En général, on considère qu'il y a faille de sécurité quand quelqu'un peut exécuter du code à l'insu de ton plein gré, ou se faire passer pour quelqu'un d'autre. Ici, il y a très clairement possibilité de se faire passer pour quelqu'un d'autre.

                  Selon ta définition, une distribution de GNU/Linux qui ne mettrait pas de mot de passe au root par défaut ne contiendrait pas de faille de sécurité... c'est une manière de voir les choses, mais ce n'est pas la définition habituelle.
  • # mouef ...

    Posté par  (site web personnel) . Évalué à 1.

    J'en enfin compris comment la ___vulnérabilité___ concernant firefox fonctionne en autorisant les popup sur le site de secunia.

    Le lien "With Pop-up Blocker" ne fait strictement rien ... sauf ouvrir la page de citibank et de m'annoncé que firefox a bloquer tout un tas de popup sur le site de secunia.
    • [^] # Re: mouef ...

      Posté par  (site web personnel) . Évalué à 2.

      Tu n'as pas du tout lire. Il faut cliquer sur un lien sur la page de citibank. Ce lien ouvre un popup qui normalement contient une page web de citibank. Sauf que si tu viens de la page de Secunia, le contenu du popu est modifié et affiche une page de Secunia.

      Cette vulnérabilité peut être exploitée si des méchants t'envoient un mail (en HTML + javascript), que tu suits un des liens vers un vrai site (l'url est bonne et c'est bien le site officiel). À ce moment-là, tout contenu affiché dans un popup peut être falsifié. Le point de départ peut aussi être un site web de confiance qui vient de se faire hacké.
      • [^] # Re: mouef ...

        Posté par  (site web personnel) . Évalué à 0.

        Fonctionne pas chez moi en tout cas...
        Le contenu du pop-up est bel est bien celui de citybank !

        Je possède le Firefox de Debian Sarge avec l'extension TabBrowsing et le pop-up blocker d'activé...
        • [^] # Re: mouef ...

          Posté par  (site web personnel) . Évalué à 2.

          Avant chaque essai, il faut aller sur la page de Secunia et cliquer sur le lien qui est proposé. Je cite la page en question :
          Please note. If you wish to run the test multiple times, then please refresh this page before each test.
      • [^] # Re: mouef ...

        Posté par  (site web personnel) . Évalué à 0.

        j'y arrive pas.
        Firefox 1.0 +adblock
        win xp
      • [^] # Re: mouef ...

        Posté par  (site web personnel) . Évalué à 2.

        Effectivement je viens de comprendre le principe ...
        Très génant tout ca :/
  • # bof

    Posté par  . Évalué à 1.

    ya des gens qui autorisent encore le JS a ouvrir des popups ?
    ils ont tord.
    • [^] # Re: bof

      Posté par  (site web personnel) . Évalué à 1.

      Perso, j'interdis à un site d'ouvrir des popups sans action de ma part, mais ceux dont je déclenche l'ouverture volontairement (clique sur un lien) ne sont pas bloqués. Ici, il s'agit d'un popup dont on déclenche l'ouverture volontairement.
  • # Marche pas :)

    Posté par  (site web personnel) . Évalué à 2.

    Avec konqueror :)
    Mais avec firefox debian/sid, je n'ai aucun probleme non plus et j'ai le javascript activé.
  • # SOLUTION PARTIELLE

    Posté par  . Évalué à 2.

    MozillaNews a publié une solution partielle (qui vous permettra de savoir d'où vient la pop-up) en attendant la rustine officielle:
    http://mozillanews.org/?article_date=2004-12-08%2006-48-46(...)

    (pseudo traduction) "Bien que le site attaquant puisse [toujours] envoyer son propre contenu, il ne peut pas changer l'adresse qui apparait dans la barre d'adresse. Firefox et Mozilla permettent de refuser l'accès à la barre d'adresse de sorte que toutes les fenetres publicitaires seront obligées de montrer cette barre."

    Ouvrez un onglet et rendez vous dans about:config

    Dans le champs de recherche entrez:
    dom.disable_window_open_feature.location

    Changez la valeur de "false" vers "true"

    Finito.
    • [^] # Re: SOLUTION PARTIELLE

      Posté par  . Évalué à 2.

      Une mauvaise solution à un faux problèmes si toutes les pop-up doivent avoir la barre d'adresse. La pop-up ouverte lors d'un clic sur un site est un OUTIL donné pour pouvoir faire du fonctionnel. Le fait de pouvoir masquer les barres d'adresse, navigation, ascenceurs permet de faire 'plus' joli, pour un player musical ou vidéo ou un diaporama. Cela permet aussi de cacher des adresses avec des paramètres dedans. (qui ne sont pas forcement très jolies) sans avoir à utiliser le mode_rewrite de apache (ce qui économise une partie de charge serveur).
      Bon maintenant qu'une solution est donnée c'est fait : mais n'empèche que ce n'est pas un problème firefox. Donner une solution à un problème qui n'en est pas un donne l'impression que c'est un VRAI problème.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.