Sécurité Test d'un site Web

Je travaille actuellement sur une mission scolaire qui nous oblige à effectuer des tests de security sur un site Web créé par l'un de nos pairs. Le site Web est créé en utilisant ASP.Net 3.5 / 4 et une database MS-SQL.

Les principales caractéristiques du site sont:

  • Enregistrement et connection en utilisant des rôles
  • Téléchargement de documents
  • Partage de documents téléchargés
  • Laisser des commentaires sur les documents partagés

J'ai déjà commencé à tester le site en utilisant:

  • XSS dans le registre, se connecter et laisser des commentaires
  • SQL Injection dans les pages Register et Login
  • Téléchargement d'exécutables, avec une extension différente (j'ai changé un file exécutable en .doc pour tester si le système vérifie l'extension du file ou le contenu réel)

Ces tests ont été effectués manuellement et j'ai access au code source!

Pouvez-vous suggérer d'autres tests que je pourrais vouloir effectuer?

À votre santé

Une bonne ressource pour les choses à verrouiller serait OWASP – J'ai lié à leurs «dix premiers» articles comme je l'ai moi-même suivi pour verrouiller les applications et je l'ai trouvé vraiment utile.

L'exploration de n'importe quel élément de leur list des dix premiers traite de la façon de reconnaître une vulnérabilité particulière et suggère comment la supprimer. Tous les trucs agnostiques de code, des descriptions de haut niveau ainsi il peut être appliqué à n'importe quel projet que ce soit .Net, Ruby, PHP, etc.

Vérifiez également les vulnérabilités d'inclusion de file local et d'inclusion de file distant.

Vous pouvez également vérifier le système de connection: Si le site vous permet de vous connecter (et vous avez un count ou pouvez en créer un), connectez-vous et vérifiez le fonctionnement du code de connection (c.-à-d. ] ou une autre méthode [habituellement non sécurisée]). Si vous trouvez une vulnérabilité dans le système de connection, vous pouvez élever vos privilèges de l'user habituel à l'administrateur.

Aussi, "Upload des exécutables, avec une extension différente." Pourriez-vous clarifier cela pour moi?

La meilleure chose à faire est d'utiliser votre imagination.

Vous devriez également utiliser le moteur de Cat.NET (qui est un outil d'parsing statique centré sur la security fourni par Microsoft).

J'ai travaillé à rendre Cat.NET plus facile et plus rapide à utiliser à l'intérieur de VisualStudio et voici un PoC assez cool de la façon dont il fonctionne: Réaction de création de vulnérabilité en time réel dans VisualStudio (avec les verts et les rouges)

Si Cat.NET vous intéresse, vous pouvez le download sur http://www.microsoft.com/fr-fr/download/details.aspx?id=19968