Legitimadamente usando herramientas como Havij

15

Soy un desarrollador, no un gurú de la seguridad. Mi objetivo principal es garantizar que no esté introduciendo agujeros de seguridad a través de una mala programación. Entiendo cómo codificar para protegerme contra el Top 10 de OWASP, así como otras vulnerabilidades, pero sé lo suficiente para saber que no sé lo suficiente. Me gustaría agregar algunas pruebas adicionales a nuestro proceso para detectar vulnerabilidades en todo el proceso de desarrollo.

Ya realizamos modelos de amenazas a lo largo del proyecto, así como revisiones de código de todos los cambios de código que entran en producción.

También, como parte de nuestro proceso de lanzamiento, tenemos pruebas de penetración realizadas en nuestros sitios en nuestro entorno de prueba antes de lanzarlo a vivo, y también en vivo una vez que se lanzó. Sin embargo, no estoy seguro de que nuestras herramientas de prueba de penetración sean adecuadas . Además, las pruebas de penetración son costosas y solo se pueden hacer de vez en cuando. Realmente me gustaría que nuestro equipo los realice durante todo el proceso de desarrollo. (Es mucho más barato reparar hoyos antes que después en el proyecto).

Soy consciente de que herramientas como Havij que son utilizadas por los cibercriminales , y soy consciente de lo fácil que es hacer sitios de ataque con vulnerabilidades para los elementos. Incluso las personas no técnicas. Me encantaría poder usar las mismas herramientas para probar nuestra propia página web en nuestra prueba, luego la puesta en escena y luego el entorno de producción. (¿Por qué los malos tienen todas las buenas herramientas?) Pero no estoy dispuesto a ir a los sitios o grupos de noticias "sombríos" para descargar las herramientas. Ni siquiera sabría dónde mirar. Incluso si supiera dónde buscar, nuestros administradores de red nunca nos permitirían obtener esas herramientas de una fuente no confiable.

¿Hay un lugar legítimo , de confianza donde se puedan descargar o comprar tales herramientas para esos fines de sombrero blanco? Estoy perfectamente dispuesto a intentar que la alta gerencia pague la membresía en los grupos de sombrero blanco que podrían proporcionar estas herramientas, y aún mejor, capacitación, por lo que no necesariamente estoy buscando gratis. Solo estoy buscando fuentes legales y legítimas.

    
pregunta David Stratton 03.04.2012 - 18:29
fuente

4 respuestas

8

Buena respuesta de Chris Frazier, aunque personalmente no recomendaría el CEH. Tal vez tomé la prueba hace mucho tiempo, pero no sentí que cubriera nada cercano a lo que realmente necesita un probador de penetración o un desarrollador consciente de la seguridad.

Tal vez te voy a dar una respuesta poco ortodoxa, pero a mí me parece que ya estás haciendo un trabajo increíble, y el hecho de que todavía te preocupes solo. muestra cuánta seguridad hay en tu organización. Eso ya lo coloca en una posición mucho mejor que muchas otras aplicaciones que he encontrado, donde la seguridad suele ser un descuido.

Dicho esto, no debes simplemente relajarte y pensar que todo es seguro (lo cual dudo que de todos modos). Siempre hay cosas que puedes hacer para mejorar tu seguridad. Chris mencionó algunos de esos. También recomendaría buscar herramientas que puedan ayudar con análisis de código estático o dinámico . Hay varios vendedores comerciales en este espacio con bastante buena reputación. Lamentablemente, las alternativas de código abierto generalmente se quedan atrás en esta área en particular.

Si está realmente interesado en conectar algunas herramientas automatizadas, sugeriría que eche un vistazo a Arachni . Hay muchos escáneres de aplicaciones web, pero este es probablemente uno de los pocos que está prácticamente construido desde cero con una API. Esto probablemente lo convierte en un candidato ideal para integrarse con su proceso de desarrollo / lanzamiento / integración continua. No significa que sea necesariamente mejor o la única herramienta con la que debe contar, pero al menos debería ser fácil (o más fácil) de integrar con.

De lo contrario, siempre intente ampliar su conocimiento, leer más, ver las preguntas y herramientas mencionadas aquí y asegurarse de que todo su equipo esté al tanto de esos problemas de seguridad. También recomendaría pasar tiempo con sus evaluadores de penetración cuando entren a escanear. Siempre hay algunos trucos nuevos que puedes aprender de esta manera.

    
respondido por el Yoav Aner 03.04.2012 - 21:21
fuente
15

Me gustaría indicarle que abra herramientas de código fuente que usamos en aplicaciones web de prueba de lápiz:

  • Arachni , ya mencionado en una respuesta anterior.
  • w3af , uno de los escáneres gratuitos de código abierto más famosos. Este está escrito en python y tiene una interfaz de usuario consistente (GUI y CLI). El proyecto está patrocinado por Rapid7, propietarios de Metasploit y NeXpose
  • Skipfish , un escáner de línea de comandos que se enciende y se olvida y que se destaca en el rastreo y la navegación forzada, produce informes HTML sofisticados
  • OWASP Zed Attack Proxy , el proxy de ataque web de código abierto de facto. ZAP tiene una API e integra el código y las características de otras herramientas de referencia como JBroFuzz y DirBuster. Es más adecuado para pruebas semiautomáticas

Las siguientes herramientas de código abierto pueden ayudar a explotar las vulnerabilidades de inyección SQL (SQLi) y Cross Site Scripting (XSS):

  • SQLmap : esta herramienta CLI de python es ideal para explotar fallas de inyección de SQL, es decir, volcar la base de datos, ejecutar comandos de SQL e incluso comprometer el back-end Sistema operativo de la base de datos. Es similar en su propósito a Havij y se usa a menudo en la naturaleza por niños de script para explotar objetivos vulnerables
  • BeEF : la herramienta perfecta para demostrar el riesgo de fallas de XSS, su nueva y brillante interfaz web Ruby on Rails le permite aprovechar las vulnerabilidades de XSS para poder comandar buscadores de víctimas

Hay una gran cantidad de herramientas comerciales en el mercado de exploración de vulnerabilidades web con precios que van desde un par de cientos de dólares hasta decenas de miles de dólares. Éstos pueden obtener mejores resultados que los de código abierto y pueden combinar características de open Herramientas de escaneo y explotación de fuentes. Sin embargo, siempre necesitarás ese probador de penetración de sangre y silla para intentar romper la lógica de la aplicación, algo que una herramienta, sin importar cuánto valga, nunca puede hacer.

    
respondido por el lisa17 04.04.2012 - 22:49
fuente
8

No. No debe utilizar herramientas como Zeus o Havij u otras herramientas de sombrero negro para evaluar la seguridad de su sitio. Zeus no está diseñado para la evaluación de la vulnerabilidad; están diseñados para colocar una puerta trasera una vez que estás dentro. En general, mi experiencia es que los sombreros negros no tienen mejores herramientas de evaluación de vulnerabilidad que las pruebas de penetración de sombrero blanco y los servicios de evaluación de vulnerabilidad. Además, es peligroso usar software escrito por la comunidad de blackhat; es posible que te encuentres con un troyano autoinfligido.

En cambio, si desea ver cómo su organización puede hacer más, empezaría a investigar cómo integrar la seguridad en el ciclo de vida del desarrollo de software. Microsoft tiene algunos recursos excelentes sobre esto.

    
respondido por el D.W. 04.04.2012 - 00:04
fuente
7

Creo que estás un poco confundido sobre algunas de las herramientas, por ejemplo Zeus es un troyano y no se utiliza para la prueba general de la pluma del sitio web.

Pero a pesar de eso, no hay un kit de herramientas mágico que puedas usar para la evaluación del sitio web. Debido a la naturaleza dinámica del desarrollo web, realmente se necesita una presencia humana para analizar y encontrar la mayoría de las vulnerabilidades. Confiar únicamente en un conjunto de herramientas lo configurará para el fracaso. Estas herramientas a menudo están desactualizadas y no son lo suficientemente complejas para sus requisitos.

Claro, podría descargar / crear un programa que analice una vulnerabilidad web específica y ejecutarlo en miles de sitios con la esperanza de un éxito, pero para los ataques dirigidos necesitas mantener el factor humano involucrado.

Dicho esto, creo que lo mejor sería comenzar con algunos cursos de capacitación en el mundo de la seguridad. Por ejemplo, la certificación CEH cubre el pirateo de aplicaciones web a un alto nivel y se incluye en el curso un gran conjunto de herramientas de herramientas de explotación.

Todavía digo que lo mejor es usar un probador de penetración capacitado que pueda identificar y comunicar las vulnerabilidades de manera efectiva. De esta manera, tus desarrolladores aprenderán de sus errores y todos ganarán.

    
respondido por el Chris Frazier 03.04.2012 - 19:19
fuente

Lea otras preguntas en las etiquetas