Ignite Gallery 0.8.3 SQL Injection Vulnerability

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Ignite Gallery 0.8.3 SQL Injection Vulnerability

    Bonjour

    je vois des attaques tres recentes sur Ignite Gallery 0.8.3. c'est pas une news...sauf pour tout ceux qui vont se faire pirater...

    Je n'ai pas envie de diffuser les liens sur l'exploit n'y comment trouver les sites sensibles pour ne pas faciliter la tache de certains neewbies...

    cependant je vois que des malfaisants font des requetes sous google pour preparer la deuxieme phase : "le deface du site web"

    Pour conclure : attention aux password trop faibles surtout pour les admin...
    www.maison-salamandre.com
    Sites Joomla 1.5.17

  • #2
    bonjour

    je n'utilise pas ce composant mais il me serait utile de prendre connaissance des actions néfastes et la methode de l'exploit donc si cela ne te dérange pas de me faire parvenir l'information par MP .

    Ceci afin de savoir si la Sentinelle la bloquerait ou pas .

    merci
    adaptations|conceptions

    Commentaire


    • #3
      correctif disponible

      salut

      voici pour info la correction proposée par le dev il y a peu (simple mais cela marche):
      $gallery = JRequest::getString('gallery', '');
      to:
      $gallery = JRequest::getInt('gallery', '');
      Line 21 in ignitegallery.php, which is in components/com_ignitegallery/.
      sinon il a fait une nouvelle version intégrant cette modification.

      trop sympa ce gars!
      www.maison-salamandre.com
      Sites Joomla 1.5.17

      Commentaire


      • #4
        Salut Thorhax

        Comme j'ai une minute je te rend service : Sentinelle fonctionne bien contre l'attaque. Je dis une minute parce que je me suis banné tout seul
        On s'amuse comme on peut !
        www.maison-salamandre.com
        Sites Joomla 1.5.17

        Commentaire


        • #5
          Envoyé par moogly Voir le message
          Salut Thorhax

          Comme j'ai une minute je te rend service : Sentinelle fonctionne bien contre l'attaque. Je dis une minute parce que je me suis banné tout seul
          On s'amuse comme on peut !
          exellent !!!! merci ,, j'ai déclassé la version du plugin 1.0.1b car elle est un peu trop gourmande et même je dirais chiante

          la version 1.0.2 est de loin mieux goupillée mais d'après ce que j'ai lu de ton mp; elle bloque également l'attaque donc c'est bon.

          la release sera probablement pour demain car je fini quelques bricole et je vais la repasser aux testeurs , c'est parce qu'à chaque fois que j'apporte une fonctionnalité l'aspect de l'ajout doit être considéré partout ça oblige le code à devenir à chaque fois mieux défini.

          merci et bonne continuation


          Note:
          si vous trouvez des liens bizarres sur les requêtes faites sur vos sites n'hésitez pas à les soumettre car en fonction je peux mieux orienter les motifs de détection.
          adaptations|conceptions

          Commentaire


          • #6
            merci Sentinelle!!!

            Bonjour à tous,

            Je vais faire de la pub à Thorhax et à Sentinelle : en effet après avoir installé cet excellent plugin qui devrait faire parti de toute installation de Joomla, on a pu remonter facilement sur les attaques de type sql injection et code itou sur Ignite Gallery du coup connaissant le script et la faille le developpeur a pu corriger son code et vient de sortir une deuxieme version. Il remercie donc Sentinelle et son developpeur (+contributeurs)

            Moi aussi je dis merci : tu m'as évité des heures de "forensic analysis" et de réinstallation!
            www.maison-salamandre.com
            Sites Joomla 1.5.17

            Commentaire


            • #7
              "Good , I'm very happy" de savoir que le plugin puisse aider car il est prevu pour ça

              merci
              adaptations|conceptions

              Commentaire


              • #8
                Envoyé par moogly Voir le message
                salut

                voici pour info la correction proposée par le dev il y a peu (simple mais cela marche):
                $gallery = JRequest::getString('gallery', '');
                to:
                $gallery = JRequest::getInt('gallery', '');
                Il aurait plutôt dû proposer :
                Code:
                 $gallery 	= JRequest::getInt('gallery', 0);
                même dans ses corrections il y a des aberrations ! Ça n'est pas très rassurant...

                PS : il s'agit d'une injection SQL en utilisant ce paramètre mal filtré. L'attaque est bloqué par Sentinelle et GuardianLight beta2
                Que la forge soit avec vous.

                Commentaire


                • #9
                  Salut Globule,

                  Je te trouve un peu dure , en effet Matt a repondu super vite et est tres disponible.
                  Par contre on reste ouverts et positifs donc j'en ai parlé avec lui voici sa réponse (pas négative ceci dit...) tu peux lui repondre?
                  Hi the zero is just a default value if there is nothing in the url. In theory it is the right thing to do, but in practice as long as people click on the links there will always be a value for gallery in the url. If someone trys to hack the site there will be a value for gallery (their injection attempt), so it also does nothing.

                  I can’t think of any situation where someone would manually type in &task=view but leave out &gallery=1. I cant think of any situation where anyone would type in the urls manually at all.

                  The getInt forces gallery value to a number, if someone puts in &gallery=nasty_sql_injection_code it will be forced to a number, killing the injection.

                  Does he have have any reasoning as to why to use 0?

                  Et c'est vrai , sentinelle m'a bien remonté cette attaque, c'est pourquoi je n'ai pas ete inquieté par celle-ci et les 30 autres d'hier (sql injection et code injection)
                  Dernière édition par moogly à 14/10/2008, 22h15
                  www.maison-salamandre.com
                  Sites Joomla 1.5.17

                  Commentaire


                  • #10
                    Je n'ai pas dit qu'il y avait un risque à mettre autre chose que 0, juste que quand on attend un entier numérique, la valeur par défaut doit en être un aussi...

                    Ce que je veux dire, c'est qu'avec un codage approximatif on a plus de chance de créer des failles !

                    Personne n'est parfait, moi non plus, mais une correction mineure de ce type ne nécessite pas une grande réflexion une fois que le problème a été identifié. Le "bad guy" qui a trouvé la faille doit certainement passer beaucoup de temps à chercher ces erreurs de codeurs pour se moquer d'eux en exploitant leurs maladresse.

                    Pour info, quand j'ai appris la faille de JIM par la CT, elle a été corrigée, publiée sur mon site et sur le JED, j'ai posté dans tous les forums en/fr et envoyé un mail à tous les utilisateurs que je connaissais et le tout en 1/2 journée, en plein mois d'août alors que j'étais seul avec mes 3 enfants !
                    Mais je t'avoue que je m'en voulais plus d'avoir fait une telle boulette que je n'en voulais au hacker qui a défacé mon site... à tel point que j'ai promis un support personnalisé à tous les sites qui auraient été défacés à cause de ça. Mais personne ne s'est manifesté.

                    C'est donc une bonne chose qu'il vous réponde vite, c'est tout à son honneur. Mais en programmation comme en médecine, mieux vaut prévenir que guérir.
                    Que la forge soit avec vous.

                    Commentaire


                    • #11
                      Envoyé par moogly Voir le message
                      Salut Globule,

                      Je te trouve un peu dure , en effet Matt a repondu super vite et est tres disponible.
                      Par contre on reste ouverts et positifs donc j'en ai parlé avec lui voici sa réponse (pas négative ceci dit...) tu peux lui repondre?
                      Hi the zero is just a default value if there is nothing in the url. In theory it is the right thing to do, but in practice as long as people click on the links there will always be a value for gallery in the url. If someone trys to hack the site there will be a value for gallery (their injection attempt), so it also does nothing.

                      I can’t think of any situation where someone would manually type in &task=view but leave out &gallery=1. I cant think of any situation where anyone would type in the urls manually at all.

                      The getInt forces gallery value to a number, if someone puts in &gallery=nasty_sql_injection_code it will be forced to a number, killing the injection.

                      Does he have have any reasoning as to why to use 0?

                      Et c'est vrai , sentinelle m'a bien remonté cette attaque, c'est pourquoi je n'ai pas ete inquieté par celle-ci et les 30 autres d'hier (sql injection et code injection)
                      Bonsoir il a raison de dire qu'il n'y a aucune raison à mettre le 0 car la variable prendra la valeur 0 de toute façon si rien ne la change

                      donc il peut aisément écrire :

                      Code PHP:
                      $gallery JRequest::getInt('gallery'); 
                      et faire un

                      Code PHP:
                      echo $gallery
                      le résultat sera bien 0

                      @ + et merci moogly



                      PS:
                      Et c'est vrai , sentinelle m'a bien remonté cette attaque, c'est pourquoi je n'ai pas ete inquieté par celle-ci et les 30 autres d'hier (sql injection et code injection)
                      30 ???? bigre damnnn !!! comment vous faites pour vous faire aimer à ce point , j'en ai pas un qui daigne venir chez moi me faire des misères, enfin ceux qui sont venus ne reviennent plus

                      Je vais pitêtre me faire un slogan du type :

                      "Sentinelle Power Self Test in Progress It's Waiting For You "
                      Dernière édition par Thorhax à 14/10/2008, 23h46
                      adaptations|conceptions

                      Commentaire


                      • #12
                        Merci à Globule et à Thorhax pour vos réponses.

                        Thorhax, Pour ton slogan c'est cou..llu genre "hacking challenge"... j'en connais d'autres qui en sont revenus .
                        Je te propose de monter un honeypot, mais bien loin de ton site de prod
                        avec des composants et des modules à la bonne version, C.A.D vulnérables. Leurs robots genre "Matrix" auront vite fait de te sauter dessus et là tu seras
                        Pour ma part je vais juste continuer à protéger du mieux possible ces sites :
                        www.maison-salamandre.com
                        www.club-ebios.org
                        www.aca-france.com
                        www.club-kravmaga.fr (bien apprécié par certains pirates extrémistes )

                        donc je te fera comme dab' le retour des attaques. et pourquoi pas d'un petit deface (c'est vrai en ce moment j'ai rien à faire!)
                        Dernière édition par moogly à 15/10/2008, 08h42
                        www.maison-salamandre.com
                        Sites Joomla 1.5.17

                        Commentaire


                        • #13
                          Même si dans le fond il n'y a pas de risque, c'est la forme qui ne me plait pas. Je m'explique :
                          1. Pourquoi avoir utilisé un getString alors qu'une valeur numérique était attendue ?
                          2. La déclaration d'une valeur par défaut est une règle en programmation. Sinon, il y a toujours un doute sur la valeur qu'elle peut contenir...
                          Ici, je getIint valorise à 0 par défaut grâce à Joomla! pour réduire les risques de bugs ou de faille.
                          3. On n'a parlé que de cette ligne sur les milliers que contient l'application. Ne peut-il pas y avoir d'autre problèmes similaires ?

                          La façon "légère" dont le problème est traité dénote un manque de rigueur de la par du développeur. C'est un des problèmes soulevés par les opposants à l'Open Source. Le fonctionnement en équipe des développeurs de Joomla est un contre-exemple et est à l'origine de son succès.
                          En effet, la réactivité seule ne suffit pas. Un plugin de protection ne devrait pas être nécessaire si les extensions étaient bien codées.
                          Dans les faits, la Sentinelle ou GuardianLight rendent de grands services cependant, ce ne sont dans le fond que des rustines qui empêchent le bateau de couler !

                          Vous allez me dire "tous les éditeurs corrigent les bugs quand ils sont décelés et publient des patches". C'est bien pour ça que l'informatique a une si mauvaise réputation...
                          Que la forge soit avec vous.

                          Commentaire

                          Annonce

                          Réduire
                          1 sur 2 < >

                          C'est [Réglé] et on n'en parle plus ?

                          A quoi ça sert ?
                          La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                          Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                          Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                          Comment ajouter la mention [Réglé] à votre discussion ?
                          1 - Aller sur votre discussion et éditer votre premier message :


                          2 - Cliquer sur la liste déroulante Préfixe.

                          3 - Choisir le préfixe [Réglé].


                          4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                          2 sur 2 < >

                          Assistance au forum - Outil de publication d'infos de votre site

                          Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                          Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                          Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                          UTILISER À VOS PROPRES RISQUES :
                          L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                          Problèmes connus :
                          FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                          Installation :

                          1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                          Archive zip : https://github.com/AFUJ/FPA/zipball/master

                          2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                          3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                          4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                          5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                          6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                          et remplacer www. votresite .com par votre nom de domaine


                          Exemples:
                          Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                          Télécharger le script fpa-fr.php dans: /public_html/
                          Pour executer le script: http://www..com/fpa-fr.php

                          Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                          Télécharger le script fpa-fr.php dans: /public_html/cms/
                          Pour executer le script: http://www..com/cms/fpa-fr.php

                          En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                          Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                          Voir plus
                          Voir moins
                          Travaille ...
                          X