Quels outils sont disponibles pour évaluer la sécurité d'une application Web?
Veuillez fournir une petite description de ce que fait l'outil.
Mise à jour: Plus précisément, je recherche des outils qui n'assument aucun accès au code source (boîte noire).
il existe un grand nombre d'applications qui peuvent être utilisées dans les évaluations d'applications Web. Une chose à considérer est le type d'outil que vous recherchez. Certains d'entre eux sont mieux utilisés parallèlement à un test manuel, tandis que d'autres sont plus conçus pour le personnel informatique non spécialisé en sécurité comme des outils de numérisation plus "boîte noire".
En plus de cela, il existe une vaste gamme de scripts et d'outils de pointage qui peuvent être utilisés pour évaluer des domaines spécifiques de la sécurité des applications Web.
Certains de mes favoris
Suite Burp - http://www.portswigger.net . Outil gratuit et commercial. Excellent complément aux tests manuels et possède également une bonne capacité de numérisation. Des testeurs d'applications Web professionnels que je connais, la plupart l'utilisent.
W3af - http://w3af.org/ - L'outil d'analyse open source, semble se développer un peu en ce moment, se concentre principalement sur le côté de l'analyse automatisée des choses, nécessite encore un peu de connaissances à utiliser efficacement.
Du côté de la numérisation pure, il existe un certain nombre d'outils commerciaux disponibles.
Netsparker - http://www.mavitunasecurity.com/netsparker/
IBM AppScan - http://www-01.ibm.com/software/awdtools/appscan/
HP WebInspect - https://h10078.www1.hp.com/cda/hpms/display/main/hpms_content.jsp?zn=bto&cp=1-11-201-2 ^ 9570_4000_100__
Cenzic Hailstorm - http://www.cenzic.com/products/cenzic-hailstormPro/
Acunetix WVS - http://www.acunetix.com/vulnerability-scanner/
NTObjectives NTOSpider - http://www.ntobjectives.com/ntospider
Ma trousse à outils préférée pour faire un stylo d'application web boîte noire. test est actuellement:
Les outils ci-dessus nécessitent une certaine familiarité pour fonctionner à pleine puissance et sont mieux utilisés de manière semi-automatisée (par exemple, choisissez un formulaire Web spécifique que vous souhaitez tester, configurez des exécutions "d'attaque", puis passez en revue les résultats et localisez les vulnérabilités ou les points à tester plus)
Scanners entièrement automatisés pour attraper les fruits qui pendent bas et pour obtenir une couverture de test étendue:
Peut-être AppScan ou WebInpsect si j'ai accès à une licence (ces outils sont chers)
Il est difficile de maintenir cette liste à jour. À mon avis - c'est une mauvaise question.
La bonne question devrait être "Quelles techniques sont disponibles pour évaluer la sécurité d'une application Web, comment sont-elles généralement mises en œuvre et comment suivez-vous les dernières améliorations apportées aux techniques et à leurs implémentations?
Par exemple, de meilleurs outils sont déjà disponibles depuis que ces réponses ont été avancées: Hatkit, WATOBO, l'interface web d'Arachni, et al.
Le principal problème des outils commerciaux est leur manque de capacité à innover et à s'améliorer. À ce stade - presque tous les produits commerciaux dans l'espace de sécurité des applications Web ont été freinés par les guerres de brevets et la perte de capital individuel et social. À quand remonte la dernière fois que vous avez vu une COMMUNAUTÉ autour d'un scanner d'application, d'un pare-feu d'application ou d'une analyse statique axée sur la sécurité PRODUIT/SERVICE? La bonne réponse, oui, est "JAMAIS". La bataille est pour des outils gratuits (et/ou open-source) pour essayer d'innover au-delà de la barrière de 2004 mise en avant par ces clowns idiots et non prospectifs sans talent qui ont doté le scanner d'application, le pare-feu d'application et la sécurité - entreprises d'analyse statique ciblées qui sont pour la plupart aujourd'hui disparues.
Littéralement, comme le montre la 1.4beta de Burp Suite Professional, la SEULE PERSONNE qui innove sur ce marché est PortSwigger. Cigital innove, mais ils se sont démarqués des marchés des consommateurs et des chercheurs.
J'ai apprécié SkipFish
Et theres également OWASP Zed Attack Proxy: https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project
Pour citer la page d'accueil:
"Le Zed Attack Proxy (ZAP) est un outil de test de pénétration intégré facile à utiliser pour détecter les vulnérabilités dans les applications Web.
Il est conçu pour être utilisé par des personnes ayant une vaste expérience de la sécurité et en tant que tel, il est idéal pour les développeurs et les testeurs fonctionnels qui sont nouveaux dans les tests de pénétration.
ZAP fournit des scanners automatisés ainsi qu'un ensemble d'outils qui vous permettent de détecter manuellement les failles de sécurité. "
C'est une fourchette de Paros et est gratuit, open source et activement entretenu.
Psiinon (chef de projet ZAP)
Pourquoi ne pas essayer Arachni . Il est écrit en Ruby et il semble très prometteur.
L'organisation OWASP est une organisation caritative mondiale à but non lucratif axée sur l'amélioration de la sécurité des logiciels d'application et dispose de bons outils pour aider à détecter vulnérabilités et protéger les applications .
Il y a aussi OWASP WebScarab et Paros .
Cependant, cette page contient une liste qui devrait avoir ce que vous voulez.
La page Web du Consortium de sécurité des applications Web répertoriée ci-dessous contient un certain nombre d'outils différents pour différents rôles.
http://projects.webappsec.org/w/page/13246988/Web-Application-Security-Scanner-List
Certains des outils que j'utilise régulièrement sont:
AppScan et WebInspect: outils d'analyse automatisés, puissants pour automatiser certains types de contrôles mais manquant de capacités d'inspection approfondies. Utilisé en mode manuel contient des fonctionnalités intéressantes, mais d'après mon expérience, l'interface utilisateur gêne la fonctionnalité.
Zed Attack Proxy: un proxy d'interception qui est un fork et une mise à jour du proxy Paros mal obsolète. Assez puissant pour les tests manuels et contient des fonctionnalités de tests automatisés.
Skipfish: un scanner d'applications Web à grande vitesse intéressant; il manque la profondeur de l'ensemble des fonctionnalités des scanners d'applications commerciales, mais ne prétend jamais les avoir. Il ne prend pas en charge les fonctionnalités de numérisation avancées telles que l'authentification des applications, mais possède une puissante capacité de fuzzing pour certains types de défauts.
Nessus vraiment mauvais pour le fuzzing d'application web. Le monde open source peut offrir Wapiti , Skipfish et w3af (sorte de cassé). Acunetix est un bon produit commercial à un prix raisonnable. NTOSpider est l'un des outils de fuzzing d'application Web, mais il coûte 10 000 $ et plus et votre premier-né. Sitewatch a un service gratuit qui mérite d'être vérifié.
Packet Storm possède une vaste archive de scanners:
Puisque personne ne l'a mentionné, insecure.orgssectools.org est un excellent point de départ pour les ressources applicatives en général, en particulier pour ceux qui sont relativement nouveaux dans la participation active à la sécurité informatique liée au réseau. Si vous ne l'avez pas vérifié, je recommanderais absolument de parcourir leur liste des 100 meilleurs pour vous familiariser avec certains des outils (en particulier les outils d'attaque) qui existent. En gardant à l'esprit les mises en garde déjà mentionnées (et d'autres supposées), voici la page de leurs Top 10 des scanners de vulnérabilité Web .
Vous voudrez probablement également examiner Burp Suite. Ils ont une version gratuite et payante mais la version payante est relativement peu coûteuse.
Mon outil préféré pour PCI DSS audits/évaluations en termes d'application Web est Fiddler (ou FiddlerCap). Vous pouvez donner l'un de ces outils à un débutant ou à une grand-mère et ils pourront le comprendre avec peu d'instruction.
Vous leur demandez de vous envoyer un fichier SAZ (ou un fichier FiddlerCap), ce qui implique qu'ils utilisent la boîte de dialogue d'enregistrement après avoir utilisé Internet Explorer pour parcourir leur application Web.
Ensuite, vous pouvez voir le trafic HTTP/TLS et déterminer comment fonctionne l'application et comment elle traite les informations de carte de paiement. Le plugin Fiddler, Casaba Watche r peut traiter les sessions hors ligne après que vous lui ayez donné des informations sur le site (ajoutez le domaine de premier niveau et les sous-domaines). Watcher effectuera certaines activités OWASP ASVS, que vous pouvez mapper à ASVS et revoir. Tout cela est possible sans accès à l'application (par exemple, cela pourrait être dans un environnement de contrôle qualité ou de développement). Vous souhaitez généralement obtenir ces informations dès qu'un développeur dispose d'une version wifreframe disponible - bien avant que l'application ne passe en production ou en production.
Si vous avez accès à l'application Web, Fiddler peut également être utile. Je suggère de sélectionner n'importe quelle partie qui a une entrée utilisateur et d'exécuter le plugin Casaba x5s contre elle. La configuration des x5 est assez compliquée, mais les auteurs et autres en ligne seraient certainement prêts à vous aider à le configurer et à comprendre les résultats. Fiddler a la capacité de relire les demandes, il est donc préférable d'utiliser cette fonctionnalité (c'est-à-dire de relire une demande à la fois) au lieu de parcourir le site en direct avec Fiddler et des x5 configurés pour s'exécuter. L'analyse des résultats n'est pas aussi compliquée que la configuration, car elle ne nécessite absolument aucune connaissance de HTML ou JavaScript.
Les résultats de ces 3 outils ne sont pas concluants. Cependant, ils sont PLUS concluants que l'exécution d'un scanner d'application Web ou d'un outil de sécurité - commercial, 500 000 $/an ou non. Je ne recommande pas NTOSpider, Acunetix, Netsparker, Hailstorm, WebInspect, AppScan, Wapiti, Skipfish, w3af, Burp Suite Free/Professional ou tout autre "scanner/outil" pour PCI DSS ou travail d'évaluation.
Ce dont vous avez besoin après les bases est d'embaucher et de travailler avec une société de conseil en sécurité des applications spécialisée dans ce type d'évaluations. Il est extrêmement probable qu'ils disposent de leurs propres outils, développés en interne, qu'ils ne souhaitent pas partager ou vendre.
Ils voudront avoir accès à une copie du code source à construire de la ou des applications Web. Il est préférable de leur fournir un fichier vmdk/OVF/VHD qui inclut une copie développeur de votre IDE et/ou serveur de build avec un build fonctionnel, y compris toutes les dépendances et SDK. Ils peuvent ensuite fournir la configuration nécessaire et d'autres recommandations pour le moment où l'application entre en production ou en production.
Bien qu'il soit assez ancien (obsolète?) Wapiti est un autre choix libre: http://wapiti.sourceforge.net/
vous devez combiner plusieurs outils ensemble pour obtenir de bons résultats et vous devez également molester le site Web sur votre (tests manuels) et la méthode manuelle est meilleure car aucun des outils commerciaux ne comprend la logique métier, donc je suggère les outils suivants:
pour les outils automatisés, je pense que acuentix, netsparker, burp suite, google's websurify sont bons pour aller avec et vous pouvez tester votre application web avec plus d'entre eux.
pour la méthode manuelle, vous devez étudier le top 10 OWASP pour connaître les vulnérabilités courantes des applications Web et après cela, vous devriez commencer à tester le site Web.
les outils suivants vous aideront beaucoup à faire des tests manuels: Paros Proxy pour modifier la requête/réponse HTTP. fiddler vous permet d'inspecter le trafic, de définir des points d'arrêt et de "tripoter" les données entrantes ou sortantes.
Extensions Firefox (Tamper Data, développeur web): pour modifier la requête/réponse HTTP pour voir comment votre serveur réagit. Utilisez ces outils sur Google et vous verrez de nombreux tutoriels sur la façon de les utiliser