csp

Prestashop : Améliorer la sécurité de votre site avec les csp

Les Content Security Policies ( CSP ) vous permettent d’améliorer la sécurité de votre site web et d’éviter les injections de contenus externes.
J’avais déjà fait un article sur leur utilité il y’a quelques années dans le cadre du passage au https : Détecter vos contenus mixtes avec les CSP
Je ne vais pas parapher plus en détails leurs fonctionnement car il existe de très bonnes ressources sur le sujet :

https://developer.mozilla.org/fr/docs/Web/HTTP/CSP (FR)
https://content-security-policy.com/ (EN)

Il est important de noter tout de même qu’il existe plusieurs modes de CSP avec des noms assez explicites :
Content-Security-Policy : Le fonctionnement normal
Content-Security-Policy-Report-Only : Fonctionnement « Debug » qui permets de récupérer les erreurs et avertissements en vue d’une correction.

Implémentation dans Prestashop

Pour l’implémenter dans Prestashop nous allons définir les CSP via un header http que nous pourrons définir directement en php
Pour cela il est possible d’utiliser le hook ActionControllerInitBefore qui est appelé assez tôt dans le workflow de l’ensemble des controllers ( Front / Back )
Voici comment je l’ai implémenté :

/**
     * Avant l'initialisation du controller on va définir les CSP
     * @param array $params
     * @return void
     * @throws PrestaShopException
     */
    public function hookActionControllerInitBefore(array $params): void
    {
        if (Configuration::get($this->configPrefix .

Prestashop : Améliorer la sécurité de votre site avec les csp Lire la suite »

Détecter vos contenus mixtes avec les CSP

Je continue ma série d’articles sur le https avec une problématique assez chronophage qui est la détection des contenus mixtes sur une page https.
Avec les nouvelles sécurité des navigateurs si une image , une feuille de style ou un fichier javascript n’est pas appellé en https il ne sera pas interprété.

Et donc votre site ne sera pas affiché correctement.
La tâche d’identification de ces contenus est relativement longue et implique de passer sur toutes les pages de votre site si vous souhaitez le faire manuellement.
La bonne nouvelle est que ce n’est pas nécessaire 🙂

Avec les headers Content Security Policy ( CSP ) il est possible de détecter automatiquement les éléments bloquants.
Mon exemple est relativement basique, pour des informations complètes sur les CSP vous pouvez consulter le site suivant : https://content-security-policy.com/

Comme le nom ( header ) le défini, nous allons ajouter l’entête spécifique à notre document.

Content-Security-Policy-Report-Only "default-src https://your-site.com https: 'unsafe-inline';report-uri https://your-site.com/csp-https-report.php"

Détecter vos contenus mixtes avec les CSP Lire la suite »