Omnikit
DevFichiersFinancesTous les outils
Ctrl K
Outils pour développeursOutils pour fichiersCalculateurs financiersTous les outils
AccueilOutils pour développeursAnalyseur CSP
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

Analyseur CSP

dev

Vérifiez une Content-Security-Policy directive par directive et voyez comment des scripts la contournent

Fonctionne dans votre navigateur. Rien de ce que vous saisissez n'est envoyé nulle part. Vérifié le 16 octobre 2026.

Une Content-Security-Policy indique au navigateur d'où les scripts et autres contenus peuvent être chargés. Elle ne protège contre les scripts injectés que si script-src évite 'unsafe-inline', les jokers et les hôtes contournables, si object-src vaut 'none' et si base-uri est restreint. Une étude de Google de 2016 a montré que 94.7% des politiques réelles pouvaient être contournées ; les nonces avec 'strict-dynamic' règlent ce problème.

Cette page a été traduite automatiquement à partir de l'original anglais. Aucune personne n’a encore relu la traduction : c’est la version anglaise qui fait foi. Lire l'original en anglais

Ensuite :
  • Security Headers Generator Choose HSTS, CSP, framing and more, then copy the nginx, Apache or Vercel config
  • SRI Hash Generator Make the integrity hash and script or link tag for a CDN file, or check one

Comment vérifier une Content-Security-Policy

1

Collez la politique, la ligne d'en-tête Content-Security-Policy complète ou la balise <meta> qui la contient.

2

Lisez les constats, les plus graves en premier : chacun nomme la directive et ce qu'un attaquant pourrait en faire.

3

Vérifiez dans le tableau des directives les noms mal orthographiés et les sources que le navigateur ignorera.

4

Corrigez la politique, ou partez du modèle strict, et collez-la à nouveau jusqu'à ce qu'il ne reste que des remarques.

À propos de l'Analyseur CSP

Il est facile de commettre de petites erreurs dans une Content-Security-Policy, et les navigateurs ne se plaignent jamais : une directive qu'ils ne savent pas lire est ignorée. Cet outil lit la politique exactement comme la spécification CSP Level 3 indique qu'un navigateur le fait, puis l'évalue à la lumière de l'étude de Google de 2016 sur des politiques réelles.

Constats, les plus graves en premier.

Gravité Exemples
Élevée 'unsafe-inline' sans nonce, * ou https: dans script-src, object-src différent de 'none', 'strict-dynamic' sans nonce, un point-virgule manquant, self sans guillemets
Moyenne 'unsafe-eval', hôtes autorisés connus pour servir du JSONP ou d'anciennes versions d'AngularJS, base-uri ouvert, sources en http simple, directives inconnues
Faible pas de frame-ancestors, nonces courts, directives obsolètes, doublons, 'unsafe-inline' pour les styles
Remarque pas de signalement, report-uri sans report-to, sources que les navigateurs ignorent avec une politique stricte

Le repli est appliqué. Lorsque script-src est absent, default-src est évalué à sa place ; lorsque les deux sont absents, les scripts peuvent être chargés de n'importe où, et l'outil le signale.

Collez ce que vous avez. La politique seule, la ligne d'en-tête complète ou une balise <meta http-equiv>. Les politiques fournies dans une balise meta ne peuvent pas utiliser frame-ancestors, report-uri ni sandbox, et l'outil les signale. Un en-tête contenant plusieurs politiques séparées par des virgules est découpé, puisque chacune est appliquée.

Chaque source est vérifiée. Mots-clés, nonces, hachages (avec la bonne longueur pour SHA-256, 384 ou 512), schémas et hôtes sont vérifiés par rapport à la grammaire, et une directive mal orthographiée reçoit une suggestion, par exemple frame-ancestor vers frame-ancestors.

Modèle strict. Un seul geste charge une politique basée sur un nonce : script-src avec un nonce et 'strict-dynamic', object-src 'none' et base-uri 'none'. Votre serveur doit écrire un nouveau nonce aléatoire dans l'en-tête et dans chaque balise script à chaque réponse.

La politique est lue dans votre navigateur et n'est jamais envoyée nulle part. Pour récupérer les en-têtes qu'envoie un site en ligne, utilisez HTTP Headers Checker.

Questions fréquentes

'unsafe-inline' dans script-src est-il sûr ?

Non. Avec 'unsafe-inline', tout script qu'un attaquant parvient à injecter dans la page s'exécute, ce qu'une Content-Security-Policy existe précisément pour empêcher. Utilisez plutôt un nonce ou un hachage pour chaque script en ligne. Dès qu'un nonce ou un hachage est présent, les navigateurs modernes ignorent 'unsafe-inline' ; le conserver comme repli pour les anciens navigateurs est donc sans danger.

Que fait 'strict-dynamic' dans une CSP ?

Le mot-clé 'strict-dynamic' permet à un script approuvé via un nonce ou un hachage de charger d'autres scripts, tandis que les listes d'hôtes autorisés et https: sont ignorées par les navigateurs qui le prennent en charge. Associé à un nonce, il donne une politique à la fois stricte et facile à déployer. Sans aucun nonce ni hachage, il bloque tous les scripts.

Pourquoi object-src doit-il valoir 'none' ?

Les plugins chargés avec les balises object ou embed peuvent exécuter du script en dehors des règles de script-src, et d'anciens fichiers Flash sur des hôtes autorisés étaient un contournement courant. Peu de sites ont encore besoin de plugins, donc object-src 'none' supprime toute cette voie. Si object-src est absent, default-src s'applique, et il ne vaut souvent pas 'none'.

Pourquoi ma liste d'hôtes autorisés CSP est-elle jugée contournable ?

Les hôtes de scripts populaires, comme les grands CDN et certains domaines Google, servent des points de terminaison JSONP ou d'anciennes versions d'AngularJS. Un attaquant capable d'injecter du balisage peut charger ces fichiers autorisés pour exécuter son propre code. L'étude de Google de 2016 a montré que 94.7% des politiques réelles à liste d'hôtes pouvaient être contournées ainsi ; les nonces avec 'strict-dynamic' évitent le problème.

Que se passe-t-il quand une directive CSP est mal orthographiée ?

Le navigateur ignore la directive et affiche un avertissement dans la console, mais le reste de la politique s'applique toujours, si bien que la page perd cette protection sans bruit. Une faute comme frame-ancestor au lieu de frame-ancestors laisse la page exposée au clickjacking. Cet outil liste les directives inconnues et suggère le nom que vous vouliez probablement écrire.

Peut-on définir une Content-Security-Policy dans une balise meta ?

Oui, avec une balise meta http-equiv dans le head de la page, mais trois directives n'y fonctionnent pas : frame-ancestors, report-uri et sandbox. Les politiques d'une balise meta ne s'appliquent en outre qu'au contenu situé après la balise. Envoyer la politique dans un en-tête de réponse HTTP est le choix fiable ; la balise meta convient à l'hébergement statique sans contrôle des en-têtes.

Sources

  • W3C, Content Security Policy Level 3Parsing, directives, source expressions, fallback and meta-tag limits
  • Weichselbaum et al., CSP Is Dead, Long Live CSP! (ACM CCS 2016, Google Research)Why allowlists are bypassable, and the strict nonce policy
  • MDN Web Docs, Content-Security-PolicyObsolete directives and browser support

Dernière vérification le 16 octobre 2026.

Les taux et les règles changent ; vérifiez la source avant de vous fier à un chiffre.

Toujours bloqué ? Poser une question sur Analyseur CSP et toute personne qui connaît la réponse peut répondre. Aucun compte nécessaire.

Outils associés

Tous les outils pour développeurs
Décodeur, vérificateur et encodeur JWTDécodez n'importe quel JWT, vérifiez sa signature et signez de nouveaux jetons, le tout dans votre navigateurGénérateur de mots de passeMots de passe aléatoires robustes et phrases de passe mémorisables, générés sur votre appareilTesteur de force de mot de passeCombien de temps votre mot de passe résisterait à une attaque, et ce qui le rend faible exactementGénérateur HMACHMAC-SHA1, SHA-256, SHA-384 et SHA-512 d'un texte ou d'un fichier, et vérification de signaturesHachage et vérification bcryptHachez un mot de passe avec bcrypt à un coût de 4 à 14, ou vérifiez un mot de passe contre un hachageTOTP Generator and TesterLive authenticator codes from a secret, a QR code for your app, and a code testerCertificate DecoderRead an SSL certificate, CSR or public key: names, dates, key size and fingerprintsIMEI CheckerCheck an IMEI number’s check digit, see its TAC and serial, and look up the phone model
Cet outil vous a-t-il été utile ?
Omnikit

Les petites tâches, faites dans votre navigateur. Gratuit, rapide et privé. Les fichiers ne sont jamais envoyés.

Fichiers

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

Dev

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

Finances

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
GuidesQuestionsÀ proposNos vérificationsBibliothèque juridique (bêta)ConfidentialitéConditionsTransparenceContactMore: Exam practice (UGC NET Paper 1)Fonctionne dans votre navigateur. Rien n'est envoyé. © 2026 Omnikit (theomnikit.com)