2009-10-01 8 views
5

Je voudrais sécuriser une application Web ASP.NET contre le piratage. Existe-t-il une liste de tâches spécifiques à ASP.NET codant spécifiquement pour rendre un ASP.NET plus sûr? Au-delà de ce qui est mentionné sur MSDN. Je suis intéressé par des étapes spécifiques avec des exemples de code sur les moyens d'éviter les contrefaçons de requête inter-sites & script inter-site.Liste de vérification des étapes pour sécuriser l'application web asp.net

Je connais l'utilisation de paramètres SQL pour l'injection SQL, l'authentification Windows lors de la connexion à SQL Server et la validation de l'entrée du formulaire sur le serveur.

Répondre

5
+0

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. –

+0

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 –

1

L'OWASP (Open Application Security Project Web) une liste pratique des vulnérabilités d'application 10 Web haut: http://www.owasp.org/index.php/Top_10_2007

Voici un tutoriel de Microsoft Anti-Cross Scripting Library 1.5: http://msdn.microsoft.com/en-us/library/aa973813.aspx

est ici un très instructif, mais pas beaucoup de ressources de sécurité bien connue, ASP.NET 2.0 Internet sécurisé Référence Mise en œuvre - essentiellement modèles & pratiques:

Last but not least, voici une vidéo sur la Architecture Derrière CAT.NET: http://channel9.msdn.com/posts/Jossie/Architecture-behind-CATNET/

Télécharger la dernière version de l'outil de CAT.NET ici (32 et 64 bits): http://bit.ly/164BlV

1

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é.

+0

https://dzone.com/articles/10-steps-to-secure-software?utm_source=Top%205&utm_medium=email&utm_campaign=top5%202015-12-18 –

Questions connexes