Inventaire de scripts, tous les scripts tiers de votre site
Chaque script que les navigateurs chargent sur votre site, internes et tiers, regroupés par origine, avec les hashes et la bibliothèque derrière chacun.
Dernière mise à jour:
L'inventaire de scripts est la liste de chaque script que les navigateurs ont exécuté sur votre site. Chaque script est indexé par son URL et regroupé sous l'origine qui l'a servi. C'est la liste des dépendances côté client de votre site, observée depuis de vraies visites plutôt que reconstituée depuis votre build.
Il a deux moitiés, issues des mêmes reports Content Security Policy (CSP) :
- Hashes CSP répond à la question de savoir quels scripts s'exécutent, depuis quelles origines, sur quelles pages, et si le contenu servi à une URL a changé.
- Technologies répond à la question de savoir ce qu'est chaque script : la bibliothèque, sa version, si cette version est toujours à jour, et les Common Vulnerabilities and Exposures (CVE) connues qui l'affectent.
D'où vient l'inventaire de scripts
Les navigateurs reportent un hash de chaque script qu'ils exécutent dès que votre CSP porte 'report-sha256'. Chacun de ces reports csp-hash nomme l'URL du script, son hash, et la page sur laquelle se trouvait le navigateur.
Ajoutez le mot-clé à script-src et les reports arrivent dès le prochain chargement de page. Voir Connecter votre site.
Il n'y a rien à installer : pas de crawler à planifier, pas d'agent sur la page, pas de dépôt à connecter. L'inventaire est construit à partir de ce qu'ont fait les navigateurs de vos visiteurs.
Ce que l'inventaire enregistre
Pour chaque URL de script, CentralCSP conserve :
| Champ | Ce qu'il vous dit |
|---|---|
| Origine | L'hôte qui a servi le script, l'unité de confiance |
| Hash actuel | Le contenu que les navigateurs exécutent en ce moment |
| Historique des hashes | Chaque hash vu à cette URL, avec première et dernière apparition |
| Pages | Les URL de document sur lesquelles le script a été chargé |
| Première et dernière apparition | Quand le script est entré dans l'inventaire, et s'il se charge toujours |
Les origines sont le premier niveau de la liste. Vous la lisez comme « 11 hôtes exécutent du code sur mon site » avant de la lire comme une liste de fichiers.
La couche technologie ajoute, pour chaque script, la bibliothèque qu'il porte, sa version, le statut de cycle de vie de cette version, et les CVE qui l'affectent. Voir Technologies.
À quoi sert l'inventaire
- Connaître vos dépendances côté client. L'inventaire contient les tags de prestataires, les copies servies par CDN et tout ce qu'un tag manager injecte à l'exécution, ce qu'une analyse de votre code source ne liste jamais.
- Voir les changements. Une URL avec plusieurs hashes signifie que le contenu servi à cette URL a changé. C'est normal pour votre propre bundle après un déploiement, et cela mérite une question pour un script tiers posé à une URL stable.
- Juger une origine, pas seulement un fichier. Le regroupement par origine transforme une longue liste de fichiers en une courte liste de parties que vous acceptez ou non.
- Repérer les versions vulnérables. Une CVE connue dans une bibliothèque que vos visiteurs chargent devient visible sans attendre une analyse de dépendances qui n'a jamais vu ce script. Pour une vérification ponctuelle d'une seule page, l'analyseur de technologies gratuit fait de même à partir d'une URL.
Couverture et limites
L'inventaire couvre ce que les navigateurs reportent, avec trois conséquences :
- Une page que personne n'a visitée, ou une page qui ne porte pas la politique, n'apporte rien.
- Un script apparaît peu après sa première exécution par un navigateur, pas au moment de votre déploiement.
- Seuls les scripts chargés depuis une URL sont rattachés à une bibliothèque et à une version. Les scripts inline ne font pas partie de la couche technologie.
Les reports sont conservés 90 jours, l'historique des hashes remonte donc à cette limite.
Étapes suivantes
Export de preuves
Exportez un ZIP contenant un rapport PDF et deux CSV complets. Ce que contient chaque fichier, ce qui est tronqué dans le PDF, et ce qui ne l'est pas.
Vue d'ensemble
Les bibliothèques JavaScript que vos visiteurs chargent, avec version, statut et CVE connues, depuis les reports de hash CSP. Sans agent ni crawler.