this article does not pass the security level.

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

  • [RÉGLÉ] this article does not pass the security level.

    Bonjour,

    Si je recherche la largeur de l'écran auquel accèdent mes pages, mon code marche bien, je le donne à titre d'exemple
    Code:
    {source}
    <?php
    if(!isset($_GET['ret'])) {
    $var1 = $_GET['option'];
    $var2 = $_GET['view'];
    $var3 = $_GET['id'];
    $var4 = $_GET['catid'];
    $var5 = $_GET['Itemid'];
    echo "<script language=\"JavaScript\">
    <!--
    document.location=\"$REQUEST_URI?option=$var1&view =$var2&id=$var3&catid=$var4&Itemid=$var5&ret=1&Lar geur=\"+screen.width+\"&Hauteur=\"+screen.height;
    //-->
    </script>";
    }
    else {
    if(isset($_GET['Largeur'])) {
    $var1 = $_GET['Largeur'];
    $coef = (1/1680)*$var1;
    //echo "Line 220 coef = $coef<br />";
    }
    }
    ?>
    {/source}
    Ce code s'exécute comme attendu.
    Mais l'intérêt ce n'est pas d'avoir la largeur de l'écran, mais la largeur de la fenêtre dans laquelle s'affichera la page.
    J'ai écrit le code javascript suivant :

    Code:
    {source}
    <?php
    if(!isset($_GET['ret'])) {
    $var1 = $_GET['option'];
    $var2 = $_GET['view'];
    $var3 = $_GET['id'];
    $var4 = $_GET['catid'];
    $var5 = $_GET['Itemid'];
    echo "<script language=\"JavaScript\">
    <!--
    function getWindowHeight() {
    var windowHeight=0;
    if (typeof(window.innerHeight)=='number') {
    windowHeight=window.innerHeight;
    } else {
    if (document.documentElement&& document.documentElement.clientHeight) {
    windowHeight = document.documentElement.clientHeight;
    } else {
    if (document.body&&document.body.clientHeight) {
    windowHeight=document.body.clientHeight;
    }
    }
    }
    return windowHeight;
    }
    function getWindowWidth() {
    var windowWidth=0;
    if (typeof(window.innerWidth)=='number') {
    windowWidth=window.innerWidth;
    } else {
    if (document.documentElement&& document.documentElement.clientWidth) {
    windowWidth = document.documentElement.clientWidth;
    } else {
    if (document.body&&document.body.clientWidth) {
    windowWidth=document.body.clientWidth;
    }
    }
    }
    return windowWidth;
    }
    
    ny=getWindowHeight();
    nx=getWindowWidth();
    document.location=\"$REQUEST_URI?option=$var1&view =$var2&id=$var3&catid=$var4&Itemid=$var5&ret=1&Lar geur=\"+getWindowWidth()+\"&Hauteur=\"+getWindowHe ight();
    //-->
    </script>";
    }
    else {
    if(isset($_GET['Largeur'])) {
    $var1 = $_GET['Largeur'];
    $coef = (1/1680)*$var1;
    //echo "Line 220 coef = $coef<br />";
    }
    }
    ?>
    {/source}
    L’exécution de la page m'envoie dans le "view-soucce" le message suivant :

    Code HTML:
    <!-- Comment - Sourcerer: The code has been removed, because the owner of this article does not pass the security level. -->
    <!-- Comment - Sourcerer: The code has been removed, because the owner of this article does not pass the security level. -->


    Qu'ai-je fait de travers ? Merci de venir à mon secours.
    Bien cordialement.

  • #2
    Il semblerait que le problème soit lié aux droits de l'auteur de l'article, insuffisants pour insérer du code avec Sourcerer.
    Lorsque l'on se cogne la tête contre un pot et que cela sonne creux, ça n'est pas forcément le pot qui est vide.
    Confucius

    Commentaire


    • #3
      je ne le pense pas car le premier code Sourcerer donné fonctionne sans histoire et j'en use dans d'autres pages sans problème.

      mais c'est la première fois que je fais appel à "function" de javascript entre les balises {source} et {/source}

      Bien cordialement

      Commentaire


      • #4
        Bonjour,

        Juste une petite remarque : dans la mesure où vous avez mis votre code javascript entre <!-- et --> il s'agit uniquement d'un commentaire, donc qui n'est pas interprété et votre script est vide.

        Est-ce vous qui l'avez mis ou sourcerer ?

        Pascal
        If anything can go wrong, it will...
        If I can help, I will ..https://conseilgouz.com

        Commentaire


        • #5
          Bonjour Pascal,

          je confirme que dans la première séquence de codes, bien qu'entant entre <-- et -->, l’instruction javascript
          " document.location="$REQUEST_URI?option=$var1&view =$var2&id=$var3&catid=$var4&Itemid=$var5&ret=1&Lar geur="+screen.width+"&Hauteur="+screen.height; "
          fonctionne.

          j'en ai pour preuve « si donne l'adresse Web " http://www.fnautpaysmaures.com/?opti...article&id=304 " on récupère bien sur la ligne d'adresse :
          " http://www.fnautpaysmaures.com/?opti...0&Hauteur=1050 "
          ce qui était attendu : les dimensions de l'écran sont bien passées à la page »

          Ce que je ne comprends pas c'est que la seconde séquence de codes pour obtenir les dimensions de la fenêtre donne une violation de sécurité.

          je vais néanmoins retirer ces deux marqueurs de commentaires pour HTLM.

          Merci de m'éclairer et bien cordialement

          Commentaire


          • #6
            Bonsoir,

            Je viens de faire un test (en Joomla 3.9.21/PHP 7.4.9/Sourcerer 8.4.1 gratuite) et votre syntaxe semble fonctionner. Pas de message d'erreur.

            J'ai corrigé les espaces dans votre commande et mis les variables au lieu de l'appel des fonctions :

            Code PHP:
            document.location="$REQUEST_URI?option=$var1&view=$var2&id=$var3&catid=$var4&Itemid=$var5&ret=1&Largeur="+nx+"&Hauteur="+ny
            Dans la version actuelle du plugin sourcerer, il y a 2 options qui pourraient vous bloquer :
            - Autoriser Javascript (je pense qu'il est à oui dans votre cas puisque votre 1er exemple fonctionne
            - Fonctions PHP interdites : vérifiez si, dans votre liste, il n'y a pas l'une des commandes que vous utilisez dans votre script.

            Pascal

            PS: dans la version Pro de Sourcerer, il y a plus de contrôles de sécurité...
            If anything can go wrong, it will...
            If I can help, I will ..https://conseilgouz.com

            Commentaire


            • #7
              Bonjour Pascal,
              je vous remercie de l'énergie que vous développez pour résoudre mon problème.

              je ne comprends pas les espaces qui étaient présents dans la copie du code car il n'y en a pas sur l'original. Ceci est un détail je pense que c'est le copier-coller qui les a introduits.

              J'ai remplacé la ligne du " document.location " par celle que vous m'avez donnée :

              Le résultat est le même à l’exécution

              Code HTML:
              <!-- Comment - Sourcerer: The code has been removed, because the owner of this article does not pass the security level. -->
              Étant donné que le code tourne avec votre test, il ne reste qu'une alternative :
              • soit une instruction est interdite par PHP
              • soit le sourcerer que j'utilise ne l'autorise pas
              Malgré ma très longue expérience en informatique, il faut resté modeste, car j'ai encore beaucoup à apprendre pour suivre l'évolution.

              Le problème c'est que :
              • je ne sais pas où se cache la liste des instructions interdites par PHP,
              • je ne connais pas la version du sourcerer que j'utilise...
              • ni comment le remplacer par la sourcerer 8.x.
              J'ai tendance à penser que c'est le sourcerer qui a provoquer l'erreur.

              Il me semble cependant que nous ayons progressé.
              Qu'en pensez-vous ?

              Bien cordialement.

              Commentaire


              • #8
                Rebonjour Pascal,

                En effectuant un recherche par Windows sur la copie locale j'ai trouvé la version du sourcerer utilisé :
                Sourcerer version 2.4.8.
                Je pense qu'il faut refaire l'essai avec un version plus récente de sourcerer.

                bien cordialement.

                Commentaire


                • #9
                  Bonjour,

                  Le message d'erreur est bien un message d'erreur généré par sourcerer.

                  Dans ma version actuelle, il est possible de voir les commandes php bloquées au niveau du plugin.

                  Cliquez sur l'image pour l'afficher en taille normale

Nom : sourcerer.jpg 
Affichages : 29 
Taille : 53,4 Ko 
ID : 2020601

                  Pascal
                  If anything can go wrong, it will...
                  If I can help, I will ..https://conseilgouz.com

                  Commentaire


                  • #10
                    Hello Pascal,
                    je pense que je vais fermer cette conversation puisque les causes du non fonctionnement sont éclaircies.
                    Il s'agit d'une version obsolète de sourcerer.
                    les autres problèmes qui subsistent feront l'objet d'une conversation autre.
                    Un grand merci pour votre aide.
                    J'ai du travail en perceptive.
                    Bien cordialement.
                    Pierre

                    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

                    Partenaire de l'association

                    Réduire

                    Hébergeur Web PlanetHoster
                    Travaille ...
                    X