Sécuriser les applications basées sur le .NET Framework
Cet article décrit les considérations importantes relatives à la sécurisation des applications basées sur Microsoft .NET Framework.
Version du produit d’origine : .NET Framework
Numéro de base de connaissances d’origine : 818014
Résumé
Cet article est l’une des séries d’articles qui fournissent des informations détaillées pour les applications basées sur le .NET Framework.
Les articles de cette série incluent les éléments suivants :
Guide pratique pour déployer des applications basées sur .NET Framework
PROCÉDURE : sécuriser des applications basées sur le .NET Framework
Ajuster la sécurité de .NET Framework sur une base de zone par zone
.NET Framework affecte des niveaux d’approbation aux assemblys managés. Ces affectations sont basées, en partie, sur la zone où l’assembly s’exécute. Les zones standard sont Mon ordinateur, intranet local, Internet, sites approuvés et sites non approuvés. Vous devrez peut-être augmenter ou réduire le niveau de confiance associé à l’une de ces zones. Le .NET Framework inclut des outils pour ajuster ces paramètres.
Ajuster le niveau d’approbation dans un assembly .NET Framework
Le .NET Framework inclut de nombreuses façons de déterminer le niveau de confiance que vous devez accorder à un assembly. Toutefois, vous pouvez faire des exceptions aux règles pour permettre à un assembly spécifique de recevoir un niveau de confiance supérieur à celui qu’il recevrait généralement en fonction des preuves fournies au Common Language Runtime. Le .NET Framework fournit un outil d’Assistant spécifiquement à cet effet.
Restaurer les niveaux de stratégie qui ont été personnalisés
En tant qu’administrateur, vous avez un contrôle total sur l’accès que vous accordez aux assemblys qui s’exécutent aux différents niveaux d’approbation. Si vous personnalisez les niveaux d’approbation, vous pouvez rencontrer des problèmes lorsque vous exécutez une application qui s’exécute généralement sous un niveau de confiance standard. Toutefois, vous pouvez restaurer rapidement les niveaux de stratégie dans leurs paramètres par défaut.
Évaluer les autorisations accordées à un assembly
Lorsque vous disposez de stratégies de configuration de sécurité utilisateur, d’ordinateur et d’entreprise et de niveaux de confiance personnalisables, il peut être difficile d’évaluer les autorisations qui ont été accordées à un assembly managé. L’outil de configuration .NET Framework inclut une méthode simple pour évaluer ces autorisations.
Auditez la sécurité de . Applications connectées à NET
Pendant les mises à niveau, les tests et la résolution des problèmes, la configuration des systèmes de production peut changer de manière involontaire. Par exemple, un administrateur peut accorder des informations d’identification administratives à un utilisateur tout en déterminant si une erreur est liée aux droits d’accès. Si cet administrateur oublie de révoquer ces informations d’identification élevées après avoir terminé le processus de résolution des problèmes, l’intégrité du système est compromise.
Étant donné que la sécurité du système peut être détériorée au fil du temps par ce type d’action, il est judicieux d’effectuer des audits réguliers. Pour ce faire, documentez les aspects clés d’un système prisé pour créer une mesure de référence. Comparez ces paramètres à la base de référence au fil du temps pour déterminer si des problèmes ont été développés, ce qui peut réduire considérablement le niveau de vulnérabilité.
Configurer un . Application connectée à NET et SQL Server pour utiliser un autre numéro de port pour les communications réseau
De nombreux outils automatisés identifient les services et les vulnérabilités disponibles en interrogeant les numéros de port connus. Ces outils incluent à la fois des outils d’évaluation de la sécurité légitimes et des outils que les utilisateurs malveillants peuvent utiliser.
Une façon de réduire l’exposition à ces types d’outils consiste à modifier le numéro de port utilisé par les applications. Vous pouvez appliquer cette méthode à . Applications connectées à NET qui s’appuient sur une base de données SQL Server principale. Cette méthode fonctionne si le serveur et le client sont correctement configurés.
Verrouiller une application web ou un service web ASP.NET
Il existe de nombreuses façons d’accroître la sécurité des applications web et des services web ASP.NET. Par exemple, vous pouvez utiliser le filtrage de paquets, les pare-feu, les autorisations de fichier restrictives, le filtre ISAPI (URL Scan Internet Server Application Programming Interface) et contrôler soigneusement les privilèges SQL Server. Il est judicieux de passer en revue ces différentes méthodes pour fournir une sécurité approfondie pour les applications ASP.NET.
Configurer des autorisations de fichier NTFS pour renforcer la sécurité des applications ASP.NET
Les autorisations de fichier NTFS (New Technology File System) continuent d’être une couche importante de sécurité pour les applications web. ASP.NET applications incluent beaucoup plus de types de fichiers que les environnements d’application web précédents. Les fichiers auxquels les comptes d’utilisateur anonymes doivent avoir accès n’est pas évident.
Configurer la sécurité SQL Server pour les applications basées sur .NET Framework
Par défaut, SQL Server n’accorde pas aux utilisateurs la possibilité d’interroger ou de mettre à jour des bases de données. Cette règle s’applique également aux applications ASP.NET et au compte d’utilisateur ASPNET. Pour permettre à ASP.NET applications d’accéder aux données stockées dans une base de données SQL Server, l’administrateur de base de données doit accorder des droits au compte ASPNET.
Pour plus d’informations sur la configuration de SQL Server pour autoriser les requêtes et les mises à jour à partir d’applications ASP.NET, consultez Configurer les autorisations sur les objets de base de données.
Configurer URLScan pour renforcer la protection des applications web ASP.NET
Lorsque vous installez URLScan sur un serveur Internet Information Services 5.0 (IIS 5.0), il est configuré pour permettre aux applications ASP 3.0 d’s’exécuter. Toutefois, lorsque vous installez .NET Framework, la configuration URLScan n’est pas mise à jour pour inclure les nouveaux types de fichiers ASP.NET. Si vous souhaitez ajouter la sécurité du filtre ISAPI URLScan pour vos applications ASP.NET, ajustez la configuration URLScan.
Exiger l’authentification pour les applications web ASP.NET
De nombreuses applications ASP.NET n’autorisent pas l’accès anonyme. Une application ASP.NET qui nécessite une authentification peut utiliser l’une des trois méthodes suivantes : authentification par formulaire, authentification .NET Passport et Authentification Windows. Chaque méthode d’authentification nécessite une technique de configuration différente.
Restreindre les utilisateurs spécifiques à l’accès aux ressources web spécifiées
ASP.NET inclut l’authentification par formulaire. Il s’agit d’un moyen unique d’authentifier les utilisateurs sans créer de comptes Windows. ASP.NET inclut également la possibilité d’accorder ou de refuser l’accès de ces utilisateurs à différentes ressources web.
Pour plus d’informations sur la façon de contrôler l’accès aux ressources web par utilisateur, consultez Comment restreindre l’accès des utilisateurs spécifiques aux ressources web spécifiées.
Limiter les protocoles de services web qu’un serveur autorise
Par défaut, ASP.NET prend en charge trois façons pour les clients de services web d’émettre des requêtes aux services web : SOAP, HTTP GET et HTTP PUT. Toutefois, la plupart des applications ne nécessitent qu’une de ces trois méthodes. Il est judicieux de réduire la surface d’attaque en désactivant les protocoles inutilisés.
N’autorisez pas l’accès du navigateur à . Services web connectés à NET
ASP.NET services web fournissent une interface conviviale pour les navigateurs afin de faciliter la création de clients de services web par les développeurs. Cette interface conviviale permet à toute personne pouvant accéder au service web d’afficher les détails complets des méthodes disponibles et des paramètres requis. Cet accès est utile pour les services web publics qui incluent uniquement les méthodes disponibles publiquement. Toutefois, elle peut réduire la sécurité des services web privés.
Pour plus d’informations sur la façon de contrôler l’accès aux ressources web par utilisateur, consultez Comment empêcher des utilisateurs spécifiques d’accéder aux ressources web spécifiées.
Utiliser ASP.NET pour protéger les types de fichiers
La structure des applications ASP.NET entraîne le stockage de nombreux fichiers privés avec les fichiers demandés par les utilisateurs finaux. ASP.NET protège ces fichiers en interceptant les demandes des fichiers et en retournant une erreur. Vous pouvez étendre ce type de protection à n’importe quel type de fichier à l’aide des paramètres de configuration. Si votre application inclut des types de fichiers inhabituels qui doivent rester privés, vous pouvez utiliser ASP.NET protection des fichiers pour protéger ces fichiers.
References
Pour plus d’informations sur la sécurisation des applications basées sur .NET Framework, consultez Les nouveautés du déploiement de Windows 10.