Top Ten Security Threads
How To: Prevent Cross-Site Scripting in ASP.NET
How To: Protect From Injection Attacks in ASP.NET
How To: Protect From SQL Injection in ASP.NET
How To: Use Regular Expressions to Constrain Input in ASP.NET
Après avoir lu ci-dessus articles,
I résume façon de empêchements en utilisant les technologies asp.net et Entity Framework.
Conformité d'injection
validation de la demande -Activer Asp.net dans le fichier de configuration web asp.net.
-Activez le mode d'erreur personnalisée dans le fichier de configuration web asp.net.
-Utilisez des contrôles de validation d'entrée côté serveur pour limiter les entrées.
-Valide la longueur, la plage, le format et le type de chaque entrée du système.
-Utilisez un typage fort de données. -Encode tous les champs de texte libre et sortie non sécurisée à l'aide du code HttpUtility.HtmlEncode.
-Valide les chemins d'accès aux fichiers à l'aide de System.IO.Path.GetFileName et System.IO.Path.GetFullPath.
-Utilisez Request.MapPath pour mapper un chemin virtuel fourni vers un chemin physique sur le serveur.
-Prévenir une attaque par injection SQL en utilisant la syntaxe de requête Linq to Entities.
authentification et brisé session Compliance Management
méthode de hachage salé -Utiliser pour les données sensibles de l'utilisateur.
-Utilisez le protocole SSL/TLS pour chaque donnée d'identification.
-Défini correctement la session.
Cross-Site Scripting (XSS) Conformité
expressions régulières -Utiliser pour contraindre les champs d'entrée critiques dans ASP.NET. -Utilisez ASP.net RegularExpressionValidator et RangeValidator pour contraindre les contrôles d'entrée côté serveur. -Encode toutes les entrées provenant de l'utilisateur ou provenant d'autres sources, telles que des bases de données.
Références insécurisés objet direct Conformité
-Donner uniquement Accès utilisateur/groupe spécifique de votre projet et ses dossiers connexes.
Sécurité Misconfiguration Conformité
-Show seul message d'erreur personnalisé à l'utilisateur.
conformité Exposition de données sensibles
algorithmes cryptographiques modernes -Utiliser pour crypter toutes les données sensibles.
Fonction manquante Niveau d'accès Contrôle de la conformité
-Faire vous que votre menu système et liste des programmes sont renseignés en fonction du niveau d'autorisation de l'utilisateur.
-Assurez-vous que votre système vérifie avant de répondre à la demande de l'utilisateur s'il est valide pour lui.
Cross-Site Request Forgery (CSRF) Conformité
-Utiliser CAPTCHA image pour veiller à ce que la demande ne soit pas générée par un ordinateur.
-Utilisez CSRF Token pour vous assurer que la page spécifique qui a envoyé la requête à votre serveur est créée uniquement par votre serveur.
Utilisation de composants connus vulnérables Conformité
-Toujours garder les composants/mise à jour des bibliothèques.
non validée Redirections et Attaquants Conformité
-Assurez-vous que votre système toujours vérifier si l'URL et ses paramètres sont valides ou non, avant qu'il ne soit redirigé.
http://msdn.microsoft.com/en-us/library/aa973813.aspx est une autre bonne ressource pour la protection xss. La bibliothèque fournit un niveau de protection supérieur à la fonctionnalité de codeur par défaut. –
Le deuxième lien est cassé. Voici une copie archivée de la page: https://web.archive.org/web/20091006040147/http://technotes.towardsjob.com/dotnet/asp-net-developers-checklist-security-checklist –