Information concernant la variable register_globals

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

  • Information concernant la variable register_globals

    La variable php_value register_globals initialiser à OFF presente un interet si et seulement si votre site JOOMLA tourne sous une version PHP inferieur à 4.4.1

    Je m'explique, le PHP inferieur à la version 4.4.1 permet l’exécution de code injecté directement depuis l'URL lorsque cette fameuse variable (php_value register_globals) est initialisé à ON d'ou un serieux probleme de securité mais amis...

    Ce "bug" a ete corrigé dans la version 4.4.1 de PHP.

    Sans on etre sure il me semble que Free est recement passé de la version PHP3 à la version PHP4.
    En esperant que les experts techniques de Free suivent de tres pret les patchs evolutif et correctif concernant PHP on peut esperer que les sites hebergés chez FREE, (peut etre OVH) soit au minimum en version 4.4.1

    Des lors avoir la variable php_value register_globals intialié à ON ne devrait pas presenter une faille de securité....

  • #2
    Je souhaite appuyer cette déclaration avec deux liens plus explicite
    http://www.phpindex.com/index.php/20...31/789-php-441
    http://www.zone-h.fr/advisories/read/id=634

    pour les courageux (l'explication du problème du tableau de superglobale $Globals en EN)
    http://www.hardened-php.net/globals-problem
    Vous êtes developpeur, vous aimez joomla! et vous êtes plus malin que les autres puisque vous avez compris que pour recevoir il faut aussi savoir donner... venez nous rejoindre => http://forge.joomla.org/sf/frs/do/vi...ts.jfr_dev/frs (La Forge Francophone)
    Comment poser de bonnes questions ?!
    http://www.gnurou.org/Writing/SmartQuestionsFr
    Création d'un composant pour Joomla! 1.5
    http://wiki.joomlafacile.com/index.p...pour_Joomla%21

    Commentaire


    • #3
      Bonjour,

      petit bemol...

      OVH: 4.4.4
      Celeonet: 4.4.2

      Donc les sites Joomla sur ces hebergeurs auraient du etre tranquilles. Ca n'a pas ete le cas...

      Cordialement,
      Richard.
      Association d'entraide de parents de multiples: http://www.jumeaux-et-plus.fr
      École de Musique de Villers-lès-Nancy: http://www.apm-villers.org

      Commentaire


      • #4
        Envoyé par rcognot
        Bonjour,

        petit bemol...

        OVH: 4.4.4
        Celeonet: 4.4.2

        Donc les sites Joomla sur ces hebergeurs auraient du etre tranquilles. Ca n'a pas ete le cas...

        Cordialement,
        Richard.
        Toutes les attaques ne passe pas par l'injection de code php dans l'url.

        Si tu veux parler des hackeurs turc je pense au vu de ce que j'ai pu lire qu'il s'agit d'attaque par injection de code sql via les variable passé par l'URL.
        Mettre ta varialbe register_globals à off ne changera rien à ton probleme dans ce cas la.
        Le probleme vient plutot des composants ajouter à joomla.
        Ce qui serait interessant pour trouver lesquels posent un pb, ca serait de lister tous les sites hacker , de faire un listing de tous les composants et voir lesquels on retrouve à chaque fois pour ensuite analyse le code.....

        je t'invite à lire cela http://forum.joomla.fr/showthread.php?t=17383&page=2

        Commentaire


        • #5
          Bonjour,
          Envoyé par Misstmourt
          Toutes les attaques ne passe pas par l'injection de code php dans l'url.

          Si tu veux parler des hackeurs turc je pense au vu de ce que j'ai pu lire qu'il s'agit d'attaque par injection de code sql via les variable passé par l'URL.
          Pour en avoir vu et analyse un certain nombre, non.

          Les dernieres attaques sont effectivement plus suspectes et mettent peut-etre en jeu des injection SQL. Celle de fin aout-debut septembre, non. Elles passaient par de simple overwrite de la variable mosConfig_absolute_path, en lui donnant le chemin d' un script php. La raison pour laquelle cela passait etait bel et bien:
          • un manque de protection du composant qui ne verifiait pas son contexte d' utilisation en utilisant le check de _VALID_MOS
          • un serveur qui tournait avec register_globals = On
          • un serveur sur lequel allow_url_fopen = On egalement.

          Et c' est la combinaison de ces trois facteurs qui faisait que le hack passait. Et sur des hebergeurs sense faire tourner php 4.4.2 ou 4.4.4.
          Hum. Me referer vers une thread ou je suis intervenu, passons...

          Relis la thread, en particulier ceci..
          Pour moi, les logs sont clairs: exploitation d' un composant mal protege via injection de script.

          Faut pas non plus oublier que lorsque le hacker reussi a deposer un script de son choix sur ton espace d' hebergement, il a alors acces au fichier configuration.php, qui contient le mot de passe de la base de donnees en clair. Donc apres il fait absolument ce qu'il veut, s'il veut detruire toutes les tables c'est pas un probleme ca prends 2 secondes.

          A partir du moment ou un hacker est entre sur le site, il faut TOUT verifier, les fichiers comme la base. Le fait que la base soit modifiee mais pas le reste n'est pas un indicateur suffisant d'injection SQL. Les logs sont la meilleure source d'indices. Et dans le cas que tu presentes comme une evidente injection SQL les logs demontrent le contraire.

          Cordialement,
          Richard.
          Association d'entraide de parents de multiples: http://www.jumeaux-et-plus.fr
          École de Musique de Villers-lès-Nancy: http://www.apm-villers.org

          Commentaire


          • #6
            Envoyé par Misstmourt
            La variable php_value register_globals initialiser à OFF presente un interet si et seulement si votre site JOOMLA tourne sous une version PHP inferieur à 4.4.1
            [...]
            Ce "bug" a ete corrigé dans la version 4.4.1 de PHP.
            Faux. Verifie hier soir par pomelo avec un php 5.1.6.

            Ce qui a ete corrige c'est la possibilite de modifier directement GLOBALS. Mais avec register_globals le probleme est completement different.

            register_globals=On serialise autimatiquement les variables _GLOBALS, _GET, _POST.

            Ce qui veut dire que si _GET contient une variable _GET['mosConfig_absolute_path'], et que ton script ne declare pas encore de variable de ce nom, une variable $mosConfig_absolute_path est automatiquement enregistree dans le contexte d'execution, avec comme valeur ce que tu lui a passe par l'URL. Si tu utilises ensuite cette variable pour faire un include => injection de script possible.

            Si le composant ne verifie pas qu'il est bien appele dans le contexte de joomla (en verifiant la position de _VALID_MOS) un hacker peut faire absolument n'importe quoi dans ces conditions. Mais seulement si register_globals et allow_url_fopen sont tous les deux a On. Et ce avec toutes les versions de php.

            Cordialement,
            Richard.
            Association d'entraide de parents de multiples: http://www.jumeaux-et-plus.fr
            École de Musique de Villers-lès-Nancy: http://www.apm-villers.org

            Commentaire


            • #7
              Oui voilà ta répondu plus vite Rcognot, donc l'inclusion est possible sur toutes les versions de php mais joomla veille au grain car même si vous avez le register_globals à On et RG_EMULATION=0 (variable dans joomla qui simule register_globals à OFF) et bien vous êtes protégé DANS LE FRAMEWORK de Joomla(donc pas pour un script extérieur ex:vBulletin). A vous de choisir ce que vous souhaitez, perso register_globals à OFF et on en parle plus...
              Vous êtes developpeur, vous aimez joomla! et vous êtes plus malin que les autres puisque vous avez compris que pour recevoir il faut aussi savoir donner... venez nous rejoindre => http://forge.joomla.org/sf/frs/do/vi...ts.jfr_dev/frs (La Forge Francophone)
              Comment poser de bonnes questions ?!
              http://www.gnurou.org/Writing/SmartQuestionsFr
              Création d'un composant pour Joomla! 1.5
              http://wiki.joomlafacile.com/index.p...pour_Joomla%21

              Commentaire


              • #8
                Bonjour à tous,

                Sans rentrer dans ce débat d'experts, j'ai demandé à 1&1 mon hébergeur de modifier la variable register_globals à off. En effet je me suis fait défacé et également intégrer un serveur irc sur mon site. Je n'ai pas encore regardé ma base, il faut que je le fasse.

                J'ai remis mon index.html conforme, mis à jour ma version de joomla en 1.0.11. Supprimé le script d'irc sauf les fichiers qui étaient déposés en root (1&1 l'a fait pour moi).

                Pour la variable register_globals 1&1 me dit de mettre un fichier php.ini dans tous les répertoire de mon site. Un peu fastidieux non!

                Qu'en pensez vous.

                Je précise 1&1 est en php 4.4.4.

                Salutations,
                Lannick
                BierBreizh.info

                Commentaire


                • #9
                  Envoyé par Lannick
                  Bonjour à tous,
                  Pour la variable register_globals 1&1 me dit de mettre un fichier php.ini dans tous les répertoire de mon site. Un peu fastidieux non!

                  Qu'en pensez vous.
                  C'est malheureusement la solution chez certains hebergeurs.

                  Voir ici pour une solution: un script a faire tourner sur ton site pour copier automatiquement ton php.ini dans tous les repertoires.

                  A noter qu'il vaut probablement mieux verifier que le serveur web est configure proprement pour ne pas donner l'acces au php.ini depuis une url. Sinon ajouter une regle de deny dans le .htaccess a la base du site.

                  Je précise 1&1 est en php 4.4.4.
                  Ce qui confirme bien que 4.4.4 est tout aussi vulnerable que les version pre 4.4.1.

                  Cordialement,
                  Richard.
                  Association d'entraide de parents de multiples: http://www.jumeaux-et-plus.fr
                  École de Musique de Villers-lès-Nancy: http://www.apm-villers.org

                  Commentaire


                  • #10
                    Rajoute cette ligne dans ton htaccess :
                    Code:
                    AddType x-mapp-php5 .php
                    comme ça les fichiers php seront exécutés avec PHP5 qui est paramétré correctement chez eux.
                    Que la forge soit avec vous.

                    Commentaire


                    • #11
                      Ooops je n'avais pas lu les autres posts concernant ce problème de register global.

                      Bon j'ai assayé de mettre quelque php.ini ici et là, et en effet si on en met un dans le répertoire administrator le message disparait.

                      J'ai essayé la méthode de pomelo en passant par le .haccess et la plantage du site.

                      Je vais donc essayer la méthode globule et/ou le script pour automatiser l'insertion de php.ini.

                      A+
                      Lannick
                      BierBreizh.info

                      Commentaire


                      • #12
                        Salut,

                        La solution de globule fonctionne. Du coup je suis en php 5.1.6

                        A+
                        Lannick
                        BierBreizh.info

                        Commentaire


                        • #13
                          En fait il semble que chez tous les hébergeurs le PHP5 soit configuré correctement. On devrait mettre le support php5 dans les recommandation pour le choix d'un hébergeur.
                          En plus, quand Joomla! passera en PHP5 (Joomla! 2.0?) il n'y aura pas de soucis à se faire. Enfin, j'espère...
                          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