it-swarm-es.com

¿Hay escáneres de seguridad de aplicaciones web decentes que se puedan integrar con un servidor de compilación?

He pasado mucho tiempo en TeamCity recientemente y las métricas nocturnas de calidad del código provenientes de dupe Finder, FxCop y NDepend han sido excelentes.

Lo que realmente me gustaría hacer es encontrar un escáner de seguridad de aplicación web decente que pueda ejecutarse en los sitios implementados automáticamente (estoy ejecutando una compilación nocturna y una implementación en un entorno de prueba). También consideraría el análisis estático si existe una herramienta decente. El único requisito previo real es que debe poder ejecutarse sin supervisión y debe generar un informe en formato HTML para que pueda aparecer a través de TeamCity.

¿Alguien tiene alguna experiencia en la integración de un escáner con un servidor de compilación o sugerencias de herramientas que cumplan con los criterios?

16
Troy Hunt

Quizás deberías probar Netsparker: http://www.mavitunasecurity.com/netsparker/ . Tiene escaneos automatizados, generación de informes, registro. Proporciona CLI.

8
anonymous

Troya

He visto su trabajo, incluida la integración de Netsparker con TeamCity. Comenté y mencioné que Burp Suite Professional en modo sin cabeza podría ser más apropiado, pero las pruebas completamente automatizadas de esta manera solo encuentran algunos de los errores. Es un problema clásico de automatización de pruebas.

Sin embargo, si tiene solicitudes HTTP conocidas que producen una respuesta HTTP no deseada (es decir, vulnerable), puede usar la función de solicitud de exportación de W3AF, disponible en la parte inferior derecha de Resultados-> Navegador de KB -> [Elemento específico de la base de conocimientos abajo] -> Solicitar -> [Botones en la parte inferior]. Esto abrirá una nueva ventana donde las solicitudes HTTP se pueden convertir en casos de prueba. Los casos de prueba están disponibles en HTML, Ajax, Python y Ruby.

Dependiendo de su entorno de servidor de compilación, la forma de integrar estos scripts puede variar. HtmlFixture, disponible en FitNesse, sería un buen candidato para los scripts de solicitud HTML o Ajax. Bajo Python, tal vez Nose sería adecuado; Ruby tiene Pepino.

El libro "Security on Rails" tiene capítulos completos dedicados a este tema, y ​​separa las pruebas lógicamente por unidad, funcional, integración y navegador.

El proyecto O2 de OWASP tiene opciones de menú en "API/Desarrollo de scripts" para ejecutar y escribir pruebas unitarias. Estas pruebas unitarias están escritas en WatiN, pero el desarrollador de pruebas ya ha realizado gran parte del trabajo.

Si desea desarrollar algo muy poderoso por su cuenta, le sugiero que consulte Geb , que combina las características de manejo del navegador de WebDriver (y por lo tanto puede funcionar con Internet Explorer, FireFox, Chrome y HTMLUnit) con una API de inspección/navegación de contenido inspirada en jQuery y la expresividad de Groovy .

3
atdre

CAT.NET es una herramienta de análisis estático que puede integrar en el servidor de compilación. La última versión todavía está en beta, pero puede encontrar más información al respecto en http://blogs.msdn.com/b/securitytools/

0
Steve