Fermer

novembre 26, 2018

Comment sécuriser l'interface utilisateur administrative de Sitefinity


 backend-login-screen "src =" https://d117h1jjiq768j.cloudfront.net/images de base 350 & ScaleUp = false & Quality = High & Method = ResizeFitToAreaArguments & Signature = BB9EFA6C6C5A6167D4E51C805C43 "" information-display form "(en anglais):" information-display form "(en anglais). "," ScaleUp ": false," Qualité ":" Elevé "}" align = "right" /> </a></p><p> L’interface Web administrative <a href= CMS de Sitefinity est accessible en ajoutant / Sitefinity à l’URL du site Web Les utilisateurs sont ensuite tenus de fournir un nom d'utilisateur et un mot de passe valides pour accéder au système de gestion Sitefinity CMS Ces dernières années, le nombre de sites Web et de cyberattaques a augmenté, faisant de la sécurité un site hautement prioritaire dans l'agenda de toute entreprise. .

Cet article explique comment ajouter ext. ra couches de sécurité sur la page de connexion d’arrière-plan du CMS Sitefinity utilisant des fonctionnalités de sécurité prêtes à l'emploi et des mécanismes ASP.NET pour protéger votre site Web et ses données.

Configurer une stratégie de mot de passe fort

Il existe de nombreux outils bombardera un formulaire de connexion Web avec des variantes de mot de passe. Ces tentatives de connexion peuvent être diffusées aussi rapidement que le serveur Web peut les accepter. Après plusieurs heures (ou plusieurs jours), ces outils automatisés finissent par tomber sur un mot de passe valide.

La première ligne de défense contre ces attaques par mot de passe en force brute consiste à choisir un mot de passe raisonnable. Les attaques de dictionnaire supposent que le mot de passe est un mot valide ou un mot de passe commun. Par conséquent, les mots de passe contenant des mots courants sont beaucoup plus faciles à deviner.

Voici quelques recommandations très générales en matière de mots de passe:

  • Les mots de passe doivent comporter au moins 8 caractères de plus. Le plus long…
  • Les mots de passe doivent être composés de plusieurs cas
  • Les mots de passe doivent comporter un mélange de chiffres et de lettres [19659009] Les mots de passe ne doivent pas utiliser des mots courants

Un bon mot de passe rend difficile la possibilité de trébucher au hasard dans la bonne combinaison de chiffres et de lettres. La première étape que vous pouvez faire dans cette direction consiste à appliquer une stratégie de mot de passe fort pour les utilisateurs de votre site Web. Dans Sitefinity CMS, vous pouvez contrôler les paramètres de stratégie de mot de passe au niveau du fournisseur d'adhésion. Cela vous permet d'avoir différentes stratégies pour le fournisseur par défaut, votre fournisseur LDAP et tout autre fournisseur que vous avez configuré dans le système. Pour accéder à ces paramètres, accédez à l'interface utilisateur principale de Sitefinity et cliquez sur Administration -> Paramètres -> Avancé -> Sécurité -> Fournisseurs d'adhésion . Vous verrez une liste de fournisseurs d'adhésion que vous pouvez configurer. Développez le fournisseur d’appartenance souhaité (si vous n’avez ajouté aucun fournisseur ici, développez celui qui s'appelle “Par défaut”) et cliquez sur Paramètres .

Le menu Paramètres présente diverses options pour configurer la stratégie de mot de passe au niveau du fournisseur d'appartenance. Voici à quoi cela devrait ressembler:
 membership-provider-parameters "title =" membership-provider-parameters "data-openoriginalimageonclick =" true "data-method =" ResizeFitToAreaArguments "data-customsizemethodproperties =" {"MaxWidth": "", "MaxHeight": " 450 "," ScaleUp ": false," Qualité ":" Elevé "}" /> </a data-recalc-dims=

Pour concevoir la politique de résistance de votre mot de passe

Invalid Password Behavior

Pour décourager davantage les attaques par force brute, le L'implémentation du fournisseur d'adhésion Sitefinity CMS (par défaut!) Verrouille temporairement les comptes pour lesquels trop de tentatives de mot de passe ont échoué. Par défaut, Sitefinity est configuré pour limiter le nombre de tentatives de mot de passe à 5. Le délai de verrouillage du compte est défini sur 10 minutes, période pendant laquelle l'utilisateur ne pourra pas se connecter, même s'il fournit le mot de passe correct. Ce comportement peut être ajusté à l'aide des propriétés maxInvalidPasswordAttempts et passwordAttemptWindow du fournisseur d'appartenance.

Ajouter un certificat de signature de serveur pour IdentityServer

Le système de gestion de contenu Sitefinity est livré avec une implémentation immédiate d'IdentityServer depuis la version 10.x. Cela a apporté beaucoup d'améliorations en termes de flexibilité et de sécurité en ce qui concerne la fonctionnalité d'authentification du produit. Par défaut, Sitefinity CMS utilise un certificat X.509 pour signer les jetons d’identité et d’accès JWT émis par IdentityServer. C’est formidable, car cela permet d’empêcher les pirates de modifier ou de contrefaire des jetons de sécurité afin d’obtenir un accès non autorisé aux ressources fédérées. Vous pouvez toutefois faire un effort supplémentaire et configurer votre site Web Sitefinity CMS pour utiliser votre propre certificat privé au lieu du certificat par défaut. Si vous utilisiez IdentityServer dans votre propre application Web ASP.NET, la définition du certificat de signature est effectuée via IdentityServerOptions à l'aide de la propriété SigningCertificate. Sitefinity CMS simplifie cette tâche en exposant une interface utilisateur de configuration dans laquelle vous pouvez spécifier directement le nom du magasin de certificats, l'emplacement du magasin et le nom du sujet. Pour plus d'informations, consultez la documentation du produit ici . Si vous utilisez déjà un certificat SSL pour votre site Web (bien sûr!), Vous pouvez configurer le même certificat pour IdentityServer. Sinon, vous devez en générer un nouveau. Consultez cet article de blog pour savoir comment créer un nouveau certificat à l'aide d'OpenSSL.

Désactivez la saisie semi-automatique pour les entrées de la page de connexion

La saisie semi-automatique peut s'avérer utile si vous êtes en développement et ne voulez plus vous rappeler le nom d'utilisateur et le mot de passe de l'utilisateur test que vous venez de créer. Une fois en production, il est préférable d’indiquer aux navigateurs de ne pas proposer l’option de saisie semi-automatique. La plupart des navigateurs modernes ne stockent pas les entrées pour les champs de type = mot de passe, ce qui est une bonne nouvelle. Cependant, le champ nom d'utilisateur peut toujours être une source de préoccupation. Bien qu’il ne s’agisse pas d’une information sensible en soi, un attaquant qui exploite une vulnérabilité de saisie semi-automatique sur la machine physique que l’utilisateur a utilisée pour se connecter peut commettre des violations de la confidentialité en collectant des noms d’utilisateur ou des adresses électroniques.

Le système de gestion de site Sitefinity vous permet de personnaliser la page de connexion d’arrière-plan. Vous pouvez donc définir autocomplete = off pour le formulaire ou les champs de saisie. Jetez un coup d'œil à cet article de la Base de connaissances si vous utilisez l'authentification SWT, ou à celui-ci si vous utilisez OpenId – les deux répertorient les étapes nécessaires à la personnalisation du formulaire de connexion du backend .

À la fin de la journée, que vous décidiez de désactiver la saisie semi-automatique ou non, cela dépend des préférences personnelles. Il convient de noter que la désactivation de la saisie semi-automatique peut empêcher le fonctionnement normal des gestionnaires de mots de passe, ce qui peut également poser un problème de sécurité.

SSL pour la page de connexion

Le fait de desservir votre CMS Sitefinity (ou, en fait, n'importe quel site Web) sous https: // vous rapproche encore plus d'une solution de navigation plus sécurisée pour vos utilisateurs. Après tout, cela devrait être l’objectif de tous. De plus, vous bénéficiez également d'un classement amélioré par Google en récompense de vos efforts altruistes:).

Le système de gestion de site Sitefinity offre une grande souplesse en ce qui concerne l'application de SSL. Bien sûr, vous pouvez configurer la page de connexion du backend pour qu'elle soit explicitement servie sous https: //, mais pourquoi s'arrêter là? Vous pouvez configurer différentes zones du site Web pour qu'elles soient desservies sous SSL, l'intégralité de l'interface, du backend, etc. La méthode recommandée consiste toutefois à appliquer le protocole SSL à l’ensemble du site Web. Il est indispensable de tout servir sous https: //, surtout si vous faites du commerce électronique ou opérez dans le secteur de la santé. Quel que soit le scénario envisagé, consultez la documentation officielle pour savoir comment Configurer SSL pour obtenir votre scénario d'utilisation.

Exploiter le module de sécurité Web

Le CMS Sitefinity est livré avec un puissant module de sécurité Web. Il est livré avec des paramètres de sécurité ajustés, assurez-vous de l'utiliser. Le module Web Security a été introduit dans la version 11 et est activé par défaut. Si vous n'avez pas encore activé le module de sécurité pour vos projets mis à niveau, continuez ainsi . Il offre une protection avancée contre les XSS MITM contenus reniflant et de nombreux autres types d’attaques malveillantes. Si la sécurité de la page de connexion principale est sur votre radar, toutes les protections susmentionnées s’intègrent parfaitement. De plus, en utilisant le module Web Security, vous pouvez protéger votre site contre les attaques de clic par exemple un pirate qui restitue votre page de connexion d'arrière-plan dans une balise