En-têtes de sécurité HTTP (Security Headers) Cross-Origin-Resource-Policy (CORP)

Cross-Origin-Resource-Policy (CORP) est un en-tête de politique de sécurité HTTP qui contrôle le comportement des navigateurs web lorsqu'ils chargent des ressources (telles que des scripts, des images, des styles ou des polices) à partir d'origines (domaines) différentes dans une page web. Cette politique permet aux développeurs de spécifier les règles de chargement des ressources cross-origin, ce qui peut aider à renforcer la sécurité en limitant l'accès à des ressources potentiellement malveillantes ou non sécurisées.

CORP vise à renforcer la sécurité des sites web en contrôlant les chargements de ressources cross-origin. En spécifiant une politique CORP, les développeurs peuvent indiquer aux navigateurs comment gérer les demandes de chargement de ressources provenant de différentes origines.

Contrôle du chargement des ressources cross-origin

CORP permet aux développeurs de spécifier trois modes différents :
  • Same-origin : Les ressources cross-origin ne sont pas chargées, sauf si elles incluent les en-têtes CORS (Cross-Origin Resource Sharing) appropriés dans leur réponse HTTP.
  • Same-site : Les ressources cross-origin sont chargées uniquement si elles proviennent d'un même site (même domaine de premier niveau) que la page web parente.
  • Cross-origin : Les ressources cross-origin sont chargées sans restrictions supplémentaires. C'est le comportement par défaut si aucune politique CORP n'est spécifiée.

Protection contre les attaques de type CORS

En contrôlant les chargements de ressources cross-origin, CORP peut aider à prévenir les attaques de type "cross-origin" telles que les attaques de type "cross-site scripting" (XSS) et les attaques de détournement de session en limitant l'accès à des ressources provenant de domaines externes.

Compatibilité et adoption

CORP est une norme de sécurité émergente et n'est pas encore largement pris en charge par tous les navigateurs web. Sa compatibilité peut varier entre les navigateurs et les versions, et son adoption est encore en cours.

En résumé, Cross-Origin-Resource-Policy est un en-tête de politique de sécurité HTTP qui contrôle le comportement des navigateurs web lorsqu'ils chargent des ressources cross-origin dans une page web. En spécifiant une politique CORP appropriée, les développeurs peuvent contribuer à renforcer la sécurité de leurs sites web en limitant l'accès à des ressources potentiellement malveillantes ou non sécurisées.

Quelles sont les risques ?


  • Exposition à des ressources non sécurisées : Sans CORP, les navigateurs peuvent charger des ressources cross-origin dans une page web sans restrictions spécifiques. Cela peut permettre à des ressources provenant de domaines externes non fiables ou malveillants d'être chargées, ce qui expose les utilisateurs à des risques de sécurité tels que l'exécution de code malveillant, le vol de données sensibles ou les attaques de type "cross-site scripting" (XSS).
  • Vulnérabilité aux attaques de type XSS : Les ressources cross-origin chargées sans restrictions appropriées peuvent être exploitées par des attaquants pour injecter du code malveillant dans une page web et compromettre la sécurité des utilisateurs. Cela peut permettre aux attaquants de voler des informations sensibles, de rediriger le trafic vers des sites malveillants ou de prendre le contrôle de sessions utilisateur légitimes.
  • Risque de détournement de session : Les ressources cross-origin non sécurisées peuvent être utilisées par des attaquants pour mener des attaques de détournement de session. En exploitant des vulnérabilités dans les ressources chargées à partir de domaines externes, les attaquants peuvent tenter de prendre le contrôle d'une session utilisateur légitime et accéder à des informations confidentielles ou effectuer des actions non autorisées au nom de l'utilisateur.
  • Altération de l'expérience utilisateur : Les ressources cross-origin non sécurisées peuvent altérer l'expérience utilisateur en modifiant le contenu ou le comportement de la page web. Cela peut inclure l'affichage de publicités intrusives, la redirection vers des sites malveillants, l'affichage de fausses informations, etc., ce qui peut nuire à la confiance et à la réputation du site web.
  • Violation de la confidentialité des utilisateurs : Les ressources cross-origin chargées sans restrictions peuvent accéder à des informations sensibles présentes sur la page web, telles que des cookies, des en-têtes HTTP et d'autres données confidentielles. Cela peut compromettre la confidentialité des utilisateurs et exposer leurs informations personnelles à des risques de vol ou d'exploitation.

En résumé, le manque de Cross-Origin-Resource-Policy (CORP) peut exposer un site web à des risques importants de sécurité, notamment l'exposition à des ressources non sécurisées, la vulnérabilité aux attaques de type XSS, le risque de détournement de session, l'altération de l'expérience utilisateur et la violation de la confidentialité des utilisateurs. Il est donc recommandé aux développeurs de mettre en place des politiques CORP appropriées pour renforcer la sécurité de leurs sites web.