Menos buffer overflows,más SQL injections
El documento discute cómo los desarrolladores de software ahora tienen más conocimientos de seguridad y los sistemas operativos modernos incluyen protecciones como ASLR y NX bit que reducen los riesgos de vulnerabilidades de buffer overflow. Sin embargo, la mayoría de las aplicaciones web aún carecen de pruebas de seguridad y son vulnerables a inyecciones SQL debido a la falta de capacitación en seguridad de los desarrolladores. El documento concluye que los ataques se dirigen ahora a los eslabones más dé
1. Menos buffer overflows,más SQL injections Andrés Riancho – Ekoparty 2010 Desayuno de los CIOs http://www.bonsai-sec.com/
2. andres@bonsai-sec.com$ whoami Fundador @ BonsaiInformation Security Director of Web Security @ Rapid7 Programador (python!) Open SourceEvangelist Con conocimientos en networking, diseño y evasión de IPS Líder del proyecto open sourcew3af
3. Muchos buffer overflows En el pasado, servicios como IIS, Apache, Oracle, Sendmail y Bind han tenido innumerables problemas de seguridad debido a bugs de seguridad introducidos durante el proceso de desarrollo. Los equipos de desarrollo que trabajaban en estos proyectos introducían al código vulnerabilidades de corrupción de memoria como: Stack overflows Heap overflows Format strings Off by one Esto se debía a falta de conocimiento, desinterés de las compañías y falta de inversión en seguridad.
4. Menos buffer overflows En la actualidad hay tres factores principales que reducen los riesgos de ser vulnerables a buffer overflows: Los equipos de desarrollo de grandes proyectos han evolucionado e integrado la seguridad en el desarrollo del software. Los lenguajes de programación de más alto nivel evitan que el desarrollador introduzca (la mayoría)de las vulnerabilidades de corrupción de memoria. Los sistemas operativos modernos implementan ASLR (Addressspacelayoutrandomization)y NX bit (No eXecute), funciones que reducen la probabilidad de poder ejecutar códigoen base a una vulnerabilidad que haya llegado a un release productivo.
5. Menos buffer overflows ¿Recuerdan la última vez que sufrimos una vulnerabilidad crítica con la cual fuera posible ejecutar código en IIS? Fuente: www.exploit-db.com
7. Más SQL injections Tanto en el pasado como en la actualidad, la gran mayoría de las aplicaciones Web son desarrolladas por equipos que desconocen por completo los conceptos básicos de seguridad en aplicaciones. No se implementan procedimientos de QA para verificar que el código desarrollado sea seguro. Instituciones de todos los tamaños encomiendan el desarrollo de aplicaciones transaccionales a “garage“ software factories y confían su seguridad en ellos.
8. Más SQL injections Una vez detectada una vulnerabilidad en una aplicación Web, la explotación es trivial en la mayoría de los casos. Los frameworks de desarrollo de aplicaciones Web han mejorado su seguridad, pero todavía se encuentran lejos de ser seguros por defecto. Las empresas recién ahora comienzan a tomar conciencia de los riesgos. En cuanto a seguridad en aplicaciones Web, estamos como en los ‘90 comparado con proyectos como IIS y Apache.
9. Más SQL injections La minoría de las empresas adopta soluciones de seguridad antes de que ocurra un incidente grave, aunque hay numerosas soluciones disponibles en el mercado. Consultoría: Participación de un experto de seguridad en aplicaciones en las reuniones de diseño del equipo de desarrollo Web Application Penetration Tests CodeReview Capacitación a desarrolladores y testers Seguridad en el ciclo de vida del software
10. Más SQL injections Las “silverbullets” ofrecidos por nuestro proveedor preferido de software y hardware: Web Application Security Scanners StaticCodeAnalyzers Web Application Firewalls En manos experimentadas, son de gran ayuda para prevenir las intrusiones de atacantes con conocimientos medios y hasta quizás altos. Insuficientes en su totalidad para reducir el riesgo de vulnerabilidades en la lógica del negocio asociada a la aplicación.
13. Preguntas sugeridas ¿Qué tips de seguridad se deben tener en cuenta a la hora de desarrollar una aplicación web? ¿Cuantasempresasnacionalesconocesquetengan un plan definidoparadesarrollaraplicaciones Web queincluyaseguridad? ¿En tuexperiencia, comocalificarías la seguridad de lasaplicaciones Web de Argentina con respecto a la de otrospaises?
14. Gracias por su atención!Slides en:http://www.bonsai-sec.com/blog/