La falsification de requête intersite (CSRF) est une vulnérabilité de site web dans laquelle le navigateur d’un utilisateur valide est utilisé pour envoyer une requête malveillante, par exemple via un iFrame. Étant donné que le navigateur envoie les cookies sur une base de domaine, si l’utilisateur est connecté à une application, les données de l’utilisateur peuvent être compromises.
Supposons, par exemple, que vous soyez connecté à Administration Console dans un navigateur. Vous recevez un message électronique contenant un lien. Cliquez sur le lien pour ouvrir un nouvel onglet dans votre navigateur. La page que vous avez ouverte contient un iFrame masqué qui émet une requête malveillante au serveur Forms à l’aide du cookie de votre session forms authentifiée. Comme User Management reçoit un cookie valide, il transmet la demande.
Référent : adresse de la page source à partir de laquelle la requête est envoyée. Par exemple, une page web sur site1.com contient un lien vers site2.com. Un clic sur le lien envoie une requête à site2.com. Le référent de cette requête est site1.com, car la requête provient d’une page dont la source est site1.com.
URI Placés sur la liste autorisée : Les URI identifient les ressources sur le serveur Forms qui sont demandées, par exemple /adminui ou /contentspace. Certaines ressources peuvent autoriser des requêtes à entrer dans l’application à partir de sites Web externes. Ces ressources sont considérées comme des URI placés sur la liste autorisée. Le serveur Forms n’effectue jamais de vérification de référent à partir d’URI placés sur la liste autorisée.
Référent nul : Lorsque vous ouvrez une nouvelle fenêtre ou un nouvel onglet de navigateur, puis saisissez une adresse et appuyez sur Entrée, le référent est nul. La demande est entièrement nouvelle et ne provient pas d’une page Web parente ; il n’existe donc aucun référent pour la requête. Le serveur Forms peut recevoir un référent null de :
Autoriser un référent null sur les points de terminaison SOAP et REST. Autorisez également un référent null sur toutes les pages de connexion URI telles que /adminui et /contentspace et leurs ressources mappées correspondantes. Par exemple, le servlet mappé pour /contentspace est /contentspace/faces/jsp/login.jsp, qui doit être une exception de référent nulle. Cette exception n’est requise que si vous activez le filtrage par GET pour votre application web. Vos applications peuvent indiquer s’il faut autoriser les référents nuls. Voir « Protection contre les attaques multisites par usurpation de requête (CSRF) » dans Renforcement et sécurité dʼAEM Forms.
Exception de référent autorisé : L’exception de référent autorisé est une sous-liste de la liste des référents autorisés, à partir de laquelle les requêtes sont bloquées. Les exceptions aux référents autorisés sont spécifiques à une application Web. Si un sous-ensemble des référents autorisés ne doit pas être autorisé à appeler une application web spécifique, vous pouvez placer sur la liste bloquée les référents au moyen des exceptions aux référents autorisés. Les exceptions aux référents autorisés sont spécifiées dans le fichier web.xml de votre application. (voir « Protection contre les attaques multisites par usurpation de requête (CSRF) » dans Renforcement et sécurité dʼAEM Forms sur la page Aide et didacticiels).
AEM Forms fournit le filtrage des référents, ce qui peut aider à empêcher les attaques CSRF. Le filtrage des référents fonctionne comme suit :
Le serveur Forms vérifie la méthode HTTP utilisée pour l’appel :
Le serveur Forms vérifie si l’URI requis est placé sur la liste autorisée :
S’il existe un référent dans la requête, le serveur vérifie s’il s’agit d’un référent autorisé. S’il est autorisé, le serveur recherche une exception de référent :
S’il n’y a aucun référent dans la requête, le serveur vérifie si un référent null est autorisé.
Lorsque vous exécutez Configuration Manager, l’hôte par défaut et l’adresse IP ou le serveur Forms sont ajoutés à la liste des référents autorisés. Vous pouvez modifier cette liste dans Administration Console.
Dans Administration Console, cliquez sur Paramètres > User Management > Configuration > Configurer les URL de référent autorisées. La liste Référent autorisé s’affiche au bas de la page.
Pour ajouter un référent autorisé :
0
(zéro) dans les champs, tous les ports sont activés sur ce serveur. Vous pouvez également saisir un numéro de port spécifique pour activer uniquement ce port.Pour supprimer l’entrée de la liste de référents autorisés, sélectionnez l’élément dans la liste, puis cliquez sur Supprimer.
Si la liste de référents autorisés est vide, la fonction CSRF cesse de fonctionner et le système n’est plus sécurisé.
Après avoir modifié la liste de référents autorisés, redémarrez le serveur AEM Forms.