Définition des directives de sécurité Headers CSP

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

  • [RÉGLÉ] Définition des directives de sécurité Headers CSP

    Mon environnement: Joomla 3.9.5, Community Builder (dernière version)

    Je n'arrive pas à définir une directive CSP, même la plus simple qui soit pour protéger mon site.
    J'ai essayé les 2 techniques d'implémentation:
    • avec une définition dans mon fichier .htaccess,
    • ou à l'aide du plugin dédié "http".
    Que j'utilise l'une ou l'autre de ces techniques, je crée un dysfonctionnement de CB: blocage dans l'affichage de profil de membre, dans la modification d'un profil, etc...

    Question: qui pourrait me préciser l'écriture précise et la plus basique d'une directive CSP ?

    Merci, et bon dimanche.
    Dernière édition par lendrevi à 14/04/2019, 04h02

  • #2
    Bonjour,

    Lors des joomladays à Paris, j'ai fait une présentation "express" des headers et du CSP. Ce n'est pas encore en ligne sur le site des joomladays, mais vous pouvez retrouver la présentation sur mon site : https://www.conseilgouz.com/espace-t...19-httpheaders

    En espérant que cela réponde à votre problème, bon dimanche,

    Pascal
    Les JoomlaDays Paris 2019, c'était du 8 au 9 mars... J'y étais et vous ?

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

    Commentaire


    • #3
      Envoyé par lendrevi Voir le message
      ....Que j'utilise l'une ou l'autre de ces techniques, je crée un dysfonctionnement de CB: blocage dans l'affichage de profil de membre, dans la modification d'un profil, etc...
      Au niveau de la console de votre explorateur, avez-vous des messages d'erreur ? un lien vers le site ou une copie écran des messages d'erreur permettrait de vous aider.

      Pascal
      Les JoomlaDays Paris 2019, c'était du 8 au 9 mars... J'y étais et vous ?

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

      Commentaire


      • #4
        Bonjour lendrevi et Pascal.

        Pour mettre en place une CSP avec le plugin HTTPHeaders, c'est très simple.

        Il faut commencer par une CSP par défaut qui autorise uniquement le contenu du site :

        Politique via les directives -> default-src
        Valeur -> 'self'

        Ensuite il faut vérifier toutes les pages du site à l'aide de la console afin de relever les erreurs et mettre en place une CSP pour chacune d'elles.

        p.ex. Imaginons que tu utilises Google Analytics et le reCaptcha de Google. En testant tes pages, la console affichera une ou plusieurs erreurs comme ceci :

        Cliquez sur l'image pour l'afficher en taille normale  Nom : Capture_ 2019-04-14 à 11.59.52.jpg* Affichages : 0* Taille : 45,4 Ko* ID : 1999213
        La console te dis la CSP qu'il faut ajouter -> script-src… et l'url bloquée qu'il faut autoriser.

        Tu te rends dans le plugin HTTPHeaders et tu ajoutes une règle, tu lui donne script-src comme politique et comme valeur 'self' 'unsafe-inline' www.google-analytics.com www.google.com ('unsafe-inline' autorise les scripts inline que tu aurais éventuellement sur ton site. À ne renseigner que si strictement nécessaire).

        Les URL's sont à indiquer sans le http(s) mais impérativement avec le www si l'URL en est formée.

        Tu restestes la page et ajoutes les directives une à une jusqu'à ce qu'il n'y ait plus d'erreur.

        Tu continues alors les tests sur toutes tes pages afin de t'assurer que tu autorises bien les ressources utiles au fonctionnement de ton site.

        Comme polices tu retrouveras peut-être :
        script-src, img-src, style-src, frame-src, font-src, form-action, etc.
        Dernière édition par Eddy.vh à 14/04/2019, 11h12
        Cordialement.
        __
        Eddy !!!
        Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

        Commentaire


        • #5
          Bonjour Pascal & Eddy,

          J'avais déjà tenté les 2 directives décrites par Eddy pour paramétrer le plugin "HTTPHeaders". Et avec ces mêmes paramètres.
          Je bloquais le fonctionnement de CB (community builder) dès l'application de la plus basique des 2 directives CSP (la 1ère).

          Mais je viens de trouver: je ne dois mettre que la seule deuxième directive. Et tout fonctionne proprement en front-end, et aucun message dans la console de Firebug.

          Grand merci à vous 2. Et bonne soirée !
          Dernière édition par lendrevi à 14/04/2019, 17h49

          Commentaire


          • #6
            Si le problème est réglé merci de l'indiquer.
            Pour cela voir l'encadré ci-dessous.
            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


            • #7
              Envoyé par lesoutier Voir le message
              Si le problème est réglé merci de l'indiquer.
              Pour cela voir l'encadré ci-dessous.
              Mille excuses, complètement oublié. Je le fais de ce pas.

              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