domingo, 24 de abril de 2011

Servidor Web + Base de Datos = ?


Probablemente no hayamos escuchado de Barracuda Networks. Es un fabricante de productos de seguridad: anti-spam, web application firewall y VPN entre otras soluciones. Siguiendo la tendencia de las últimas semanas (me refiero a los hackeos de compañías relacionadas con seguridad como HBGary, RSA, Comodo, Ashampoo, etc.), el sitio web de esta empresa fue hackeado.

Una precisión: el hackeo no fue tal cual al sitio web de la empresa, sino a la base de datos conectada al sitio. Este tipo de penetraciones a las bases de datos las estamos viendo cada vez más seguido desgraciadamente. Lo que llama la atención es que Barracuda es una empresa de seguridad cuyo sitio web estaba protegido precisamente con uno de sus propios productos WAF (Barracuda Web Application Firewall). Los atacantes lograron extraer información de las bases de datos como nombres, correos de clientes, partners y empleados. Tal vez no fueron datos de altísima importancia, pero vaya que el asunto resultó vergonzoso para la compañía.

La historia resumida es que apagaron su producto de seguridad por cuestiones de mantenimiento por aproximadamente un día. Se podrán imaginar el resto. Quisiera atraer su atención a los siguientes puntos:

Scanners automáticos. Aunque no lo creamos, existen scanners de atacantes que automáticamente “revisan” los sitios web en Internet. Una de estas herramientas fue la que detectó que el sitio web estaba desnudo. Dejar nuestro web pelón aunque sea por unos minutos (y peor.. algunas horas) puede tener consecuencias. Y sorpresa: esto sucede automáticamente.

Guarura personal. Podemos poner nuestro sitio web con alguna protección (por ejemplo algún firewall a nivel aplicación). Podemos no protegerlo de esta manera, así que entonces tendremos que pensar en controles compensatorios (endurecimiento del servidor web, contenido estático, etc.). Poner hoy en día un sitio web “ahí no más” es ser muy temerario. Ejemplos sobran.

Con el guarura..basta? Los filtros web como los llamados WAF -web application firewall- van a dar la cara por el web y sus contenidos. ¿Quiere decir esto que puedo ignorar al SQL injection? ¿Podemos dejar que las aplicaciones web se codifiquen para que sean funcionales y no seguras? La respuesta se basa en qué tanto confiamos en nuestras protecciones perimetrales (web firewall) y sobre qué deseamos que descanse nuestra tranquilidad. Idealmente deberíamos perseguir una seguridad en ambos frentes y no depender del WAF solamente. Pero ya saben, una vez que contamos con esta herramienta, ahí tendremos a los desarrolladores diciendo que para qué se esfuerzan tanto “psss si ahí stá la protección esa”.

Protégete continuamente. Si tienes protección a la mano, úsala. No la apagues y si lo haces, realiza lo mismo con el bien que está protegiendo (apagas el firewall del web.. apagas el web) o lleva a cabo otra acción. Los señores de Barracuda apagaron su protección .. “nomas tantito”.

Compañías de seguridad seguras. Err, no realmente. Que vendas productos o servicios de seguridad no se traduce así no más en tener infraestructuras confiables. Pregunten a RSA, Ashampoo, Comodo o a Barracuda. Lo anterior nos lleva a pensar que todos compartimos problemáticas similares en cuestión de seguridad. Es un consuelo (¿en serio?) saber que no estamos solos.

Web + Base de datos= SQL injection? Las bases de datos conectadas al web son candidatas al SQL injection con lo cual por medio de comandos SLQ es posible extraer, borrar o modificar información guardada en ellas. Así de simple.

¿Qué estás haciendo contra los SQL injection? ¿Cómo proteges tu web?

2 comentarios:

Luis Colunga dijo...

Muy buen post.

Otro punto a rescatar de este incidente es que por ese día que Barracuda Networks "bajo la guardia" fue vulnerado. Hay muchos casos que la habilidad del atacante no permite que pueda acceder al sistema por las defensas que han sido puestas, pero si este atacante es lo suficiente determinado, puede esperar a este “tipo de oportunidades” para lograr su objetivo.

Fausto Cepeda dijo...

Cierto Luis. De ahí que es importante no bajar la guardia o si es necesario por ejemplo por mantenimiento, llevar a cabo acciones que no permitan al atcante tener una ventana de oportunidad.