El increíble pero cierto caso de las noches de hotel gratis

Escribo esto totalmente sorprendida. No hace ni cinco minutos que me han llamado de una cadena de hoteles en la que supuestamente me he alojado para hacerme una gran promoción: me regalan dos noches de hotel para dos personas en cualquiera de sus hoteles por haber sido cliente.

¡Oh!,  ¡qué bien! ¡De cuando estuvimos en Nerja!, pienso yo acordándome del hotel rural “con encanto”. A continuación, la muchacha, muy educada ella, me dice que para ganar ¡dos noches de hotel para dos personas gratis! sólo tengo que darle una lista de mis contactos por teléfono (nombre y número de teléfono) y que por cada uno que les diga que sí a la misma promoción me regalan ¡otras dos noches de hotel! Ah, se le olvidaba decir que las noches son válidas por dos años en cualquier rinconcito agradable de España (que los hay y muchos).

[Read more…]

Programación segura

A la hora de hablar de seguridad informática a todos nos viene a la cabeza codificar información, supervisar la red, usar cortafuegos, etc… Sin embargo, solemos olvidar que nuestro sistema puede verse afectado por atacantes que se aprovechan de nuestro propio descuido. Me estoy refiriendo principalmente al código que creamos en las aplicaciones que luego vamos a tener visibles, como es el caso de las aplicaciones web.

Programar sin tener en cuenta unos mínimos estándares de calidad en cuanto a seguridad se refiere, puede ser tan desastroso como descargarse archivos desconocidos sin ser revisados por un antivirus. No hay más que pensar en el siguiente caso:
Supongamos que programamos una aplicación web de un banco que permite obtener los datos de una cuenta corriente a partir del identificador de la cuenta corriente (http://www.bancoChachi.com/aplic/vistaCuenta?id=XXXX). Si no tenemos malicia, lo normal sería programar la recogida de los datos de entrada de la siguiente manera:

String query = "SELECT * FROM cuentas WHERE idCliente='" + request.getParameter("id") +"'";.

Escrito así no parece que haya ningún problema. La consulta está bien formada y no hay nada incorrecto. Pero ¿qué pasa si se accede a la aplicación de esta manera?:

http://www.bancoChachi.com/aplic/vistaCuenta?id=’ or ‘1’=’1

Por si el lector aún no lo ha detectado, al realizar la sustitución nos encontramos con que la condición se cumple siempre, ya que ’1=1’ es cierto. Le estaríamos permitiendo a un atacante la posibilidad de acceder a todas las cuentas corrientes del banco.

Como este caso podemos encontrar cientos. Puede ser abrumador pensar en todos nuestros posibles errores o en la imaginación de un usuario malintencionado (los maleantes siempre van con un paso por delante de la policía). Pero por fortuna existen organizaciones que se dedican a detectar este tipo de problemas y ponerlos al alcance de todos. Una de estas organizaciones es The Open Web Application Security Project (OWASP), organización sin ánimo de lucro formada por voluntarios que se dedican a investigar posibles problemas de seguridad en la programación. Como actividad más relevante, la OWASP publica todos los años un top10 con los problemas más detectados durante los últimos meses, y por fortuna tiene voluntarios y páginas en muchos países (incluida España). Además la OWASP tiene publicadas una serie de metodologías a seguir para evaluar y mejorar la seguridad en nuestras infraestructuras y aplicaciones web.

Para no extendernos mucho más en este post, os dejamos con el último top10 publicado:

1. Inyección de código.
2. Gestión de las sesiones.
3. XSS (Cross site scripting).
4. Referencias a objetos inseguras.
5. Desactualización de componentes o partes de nuestro sistema.
6. Exposición de datos sensibles.
7. Pérdida de control de acceso.
8. CSRF (Cross site request forgery).
9. Uso de componentes con vulnerabilidades conocidas.
10. Redirecciones inválidas.

Se puede ver la lista completa en la página web de OWASP.

Evaluando la seguridad de la información

Como es bien sabido por todos (y en especial por nuestros lectores) la seguridad en la información ha ido cobrando importancia en los últimos años. Las empresas gastan cada vez más en mejorar su seguridad tanto como en mejorar la calidad del servicio. Sin embargo, a menudo falla la implementación de políticas y controles, entre otras cosas, que protejan la información.

La seguridad de la información se consigue estableciendo un conjunto de políticas, procedimientos, infraestructuras y programas, de forma que se pueda no sólo monitorizar la organización y sus procesos, sino revisarlos y mejorarlos. Sin embargo, a menudo las empresas no conocen en qué nivel de seguridad se encuentran.

Para ello, resulta útil establecer un modelo de madurez en cinco niveles, según una serie de métricas adaptables a nuestra organización, independientemente de lo grande que sea:

  • Nivel 0: “No existencia”. En este nivel se encuentran las organizaciones que no reconocen la necesidad de la seguridad. Es decir, hay una ausencia total de procesos de seguridad o no se han identificado. Es la situación peor en la que podemos encontrarnos.
  • [Read more…]

¿Cómo consiguen nuestros datos?

Siguiendo con la entrada que publicamos ayer sobre empresas que se dedican a recopilar digitalmente información de los usuarios, no podemos olvidar a otrasempresas más del “mundo analógico” que ejercen este tipo de actividades. Muchas veces estamos preocupados, y con razón, por nuestra privacidad en las redes sociales y en la vida real. Sin embargo, descuidamos otros aspectos que también pueden ser dañinos para nosotros o por lo menos bastante molestos. Esto es lo que a mí, que soy bastante cuidadosa con todo el que llama a mi puerta y con las fotos y comentarios que publico, me ha pasado.

Llevo un tiempo pensando en cambiar el seguro de mi coche a otra compañía más barata, así que se me ocurrió la feliz idea de solicitar información a un conocido comparador de seguros, llamémosle COMPARATUS.COM. Tras rellenar un formulario con ciertos datos personales obligatorios, ayer recibí el siguiente email:

Estimado usuario

Desde COMPARATUS.COM, Limited Sucursal en España, queremos trasladarte nuestros valores y energía, cuidando la relación que mantenemos contigo y que nos permite ofrecerte los servicios y productos que consideramos más adecuados a tus necesidades concretas.

Por ello necesitamos tu consentimiento para que COMPARATUS.COM, Limited Sucursal en España, a través de promociones, estudios de opinión, estadísticos, campañas o actividades de publicidad o marketing, basadas o no en estudios de mercado y análisis de perfiles de compra, utilice tus datos derivados de la relación comercial que mantienes con nosotros para ofrecerte, a través de cualquier medio o canal, incluso medios telemáticos de conformidad con el artículo 21 de la Ley de Servicios a la Sociedad de la Información, informaciones y ofertas personalizadas o no, sobre productos o servicios relacionados con los siguientes sectores: seguros, finanzas, automovilístico, agencias de viaje minorista, mayorista de viajes, servicios hoteleros, call center, aerolíneas, gestión de aeropuertos, alquiler de vehículos, telecomunicaciones, apuestas on line, centros especiales de empleo, gestión de eventos, transporte de pasajeros, financiero, legal, ocio, formación, gran consumo, automoción, energía, agua, ongs, ocio, viajes, hogar, servicios técnicos y reparaciones, así como cualesquiera otros de interés para ti, por parte de COMPARATUS.COM, Limited Sucursal en España.

Si no recibimos notificación alguna por tu parte en el plazo de 1 mes, entenderemos que das tu consentimiento, en las condiciones antes señaladas.

Resumiendo un poco el email, además de hacerme un poco la pelota me dicen que para adecuarse mejor a mis necesidades van a utilizar todos mis datos personales para venderlos a otros que me mandarán publicidad y usarán mis datos sin permiso a su conveniencia. Por supuesto, tengo que notificarles que no quiero ese “servicio” que me ofrecen, y no al revés.

Curiosamente, hace un par de meses recibí una llamada en mi móvil (número que supuestamente no tiene más que mi familia y amigos) preguntando por mí (con nombre y apellidos) para ofrecerme productos de una teletienda, a lo que me negué. Aquella vez me pregunté cómo habían conseguido mi número y por supuesto mis datos con tanta precisión, y pensé que había sido mi compañía de teléfono. Como dice el anuncio sobre sacar las migas de la tostadora cuando está enchufada: ¡Error! (o no). Tienen mis datos de alguna vez que he rellenado un formulario y o no he señalado que no quiero recibir publicidad ni que vendan mis datos o les he dicho que no quería y aún así lo han hecho.

Así que la próxima vez que tengáis que rellenar algún formulario, hacedlo con datos falsos. Y por supuesto, desconfiad de todas las promociones y concursos que te regalan una toalla o un MP4 sólo por participar (¿de verdad es necesario dar el DNI para eso?). Ese MP4 que regalan les sale más que gratis vendiendo todos esos datos que recopilan.