Top Banner
Menos buffer overflows, más SQL injections http://www.bonsai-sec.com/ Andrés Riancho Ekoparty 2010 Desayuno de los CIOs
14

Menos Buffer Overflows, más SQL Injections

Jul 03, 2015

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Menos Buffer Overflows, más SQL Injections

Menos buffer overflows,más SQL injections

http://www.bonsai-sec.com/

Andrés Riancho – Ekoparty 2010

Desayuno de los CIOs

Page 2: Menos Buffer Overflows, más SQL Injections

2

b0f--; SQLi++;

[email protected]$ whoami Fundador @ Bonsai Information Security

Director of Web Security @ Rapid7

Programador (python!)

Open Source Evangelist

Con conocimientos en networking, diseño y evasión de IPS

Líder del proyecto open source w3af

Page 3: Menos Buffer Overflows, más SQL Injections

3

b0f--; SQLi++;

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.

Page 4: Menos Buffer Overflows, más SQL Injections

4

b0f--; SQLi++;

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 (Addressspace layout randomization) y NX bit (No eXecute), funciones que reducen la probabilidad de poder ejecutar código en base a una vulnerabilidad que haya llegado a un release productivo.

Page 5: Menos Buffer Overflows, más SQL Injections

5

b0f--; SQLi++;

Menos buffer overflows ¿Recuerdan la última vez que sufrimos una vulnerabilidad crítica con

la cual fuera posible ejecutar código en IIS?

Fecha Software afectado

2006-07-21 Microsoft IIS ASP Stack Overflow Exploit (MS06-034)

2004-04-21 MS Windows IIS 5.0 SSL Remote buffer overflow Exploit

(MS04-011)Fuente: www.exploit-db.com

Page 6: Menos Buffer Overflows, más SQL Injections

6

b0f--; SQLi++;

Menos buffer overflows ¿Y en Apache?

Fecha Software afectado

2008-04-06 Apache Tomcat Connector jk2-2.0.2 (mod_jk2)

2006-08-21 Apache < 1.3.37, 2.0.59, 2.2.3 (mod_rewrite)

2003-04-04 Apache OpenSSL Remote Exploit

Fuente: www.exploit-db.com

Page 7: Menos Buffer Overflows, más SQL Injections

7

b0f--; SQLi++;

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 desconocenpor 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.

Page 8: Menos Buffer Overflows, más SQL Injections

8

b0f--; SQLi++;

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.

Page 9: Menos Buffer Overflows, más SQL Injections

9

b0f--; SQLi++;

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

Code Review

Capacitación a desarrolladores y testers

Seguridad en el ciclo de vida del software

Page 10: Menos Buffer Overflows, más SQL Injections

10

b0f--; SQLi++;

Más SQL injections

Las “silver bullets” ofrecidos por nuestro proveedor preferido de software y hardware:

Web Application Security Scanners

Static Code Analyzers

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.

Page 11: Menos Buffer Overflows, más SQL Injections

11

b0f--; SQLi++;

Conclusión: Atacando al eslabón más débil

Page 12: Menos Buffer Overflows, más SQL Injections

12

b0f--; SQLi++;

¿Preguntas?

Page 13: Menos Buffer Overflows, más SQL Injections

13

b0f--; SQLi++;

Preguntas sugeridas ¿Qué tips de seguridad se deben tener en cuenta a la hora de

desarrollar una aplicación web?

¿Cuantas empresas nacionales conoces que tengan un plan definidopara desarrollar aplicaciones Web que incluya seguridad?

¿En tu experiencia, como calificarías la seguridad de las aplicacionesWeb de Argentina con respecto a la de otros paises?

Page 14: Menos Buffer Overflows, más SQL Injections

14

b0f--; SQLi++;

Gracias por su atención!Slides en: http://www.bonsai-sec.com/blog/