lunes, 7 de diciembre de 2009

Hablando sobre contraseñas... una vez más!

Es un tema al que pocas personas en el área de seguridad informática quieren dedicarle tiempo. Suena a algo que uno ya (supuestamente) conoce tan bien que no hay necesidad de conversarlo nuevamente... de qué estamos hablando? Contraseñas, por supuesto! Sin embargo, el tema aparece recurrentemente en distintas publicaciones y conversaciones con colegas. Y con justa razón. Veamos por qué.

Las contraseñas son y serán por un buen tiempo más (en mi opinión) una medida de seguridad importante. Sin embargo y a pesar de lo antigua y discutida que es esta herramienta, todavía se encuentran muchos estudios e implementaciones de políticas que no utilizan las ventajas que las contraseñas pueden brindar. Es por esta situación que continua el debate (estéril en muchos casos) sobre la eficacia de utilizar contraseñas.

El Microsoft Malware Protection Center (MMPC) publicó recientemente los resultados de un estudio que realizaron por un año sobre ataques contra usuarios regulares en el Internet. Uno de los principales comentarios hechos fue sobre ataques a contraseñas [disponible aquí]. Utilizando un servidor FTP falso, MMPC registró ataques de fuerza bruta y diccionarios hechos al servidor, buscando encontrar cuentas de usuarios y sus correspondientes contraseñas. Los resultados indican que el tamaño promedio de las contraseñas utilizadas por los atacantes es de tan sólo 8 caracteres. La pregunta es por qué tan pequeña? La causa de esta situación somos nosotros mismos, los encargados de la seguridad de los sistemas ya que diseñamos y/o implementamos malas políticas de contraseñas.

Para definir correctamente una política de contraseña, se deben considerar todas las propiedades que esta herramienta posee:
  1. Complejidad: cuántos y qué tipos de caracteres se requieren en la contraseña? Esta es posiblemente la propiedad mas popular debido a nuestro interés de que los usuarios no utilicen palabras encontradas en los diccionarios como contraseñas.

    Otro parámetro que maneja indirectamente el tema de la complejidad es el número de intentos para introducir la contraseña. Aunque no dice nada sobre la contraseña misma, si limita la oportunidad de adivinarla. Esto sumado a la complejidad de la contraseña, ayudan a protegerla.

  2. Duración: por cuánto tiempo puedo usar una contraseña? Adicionalmente, cada cuanto tiempo puedo reciclar/reutilizar una contraseña? Esta propiedad es posiblemente la mas abusada hoy en día por los administradores de seguridad. No me sorprendería encontrar un sistema en que obliguen a cambiar las contraseñas cada semana!

  3. Longitud: cual es el tamaño mínimo que debe tener una contraseña? Esta pregunta es usualmente la única que los sistemas permiten definir y nosotros, equivocadamente, intentamos responder. Sin embargo, para dar una respuesta que aproveche mejor esta propiedad, se debe también considerar cual es el tamaño máximo que permite el sistema. Esta ultima condición es frecuentemente ignorada por los administradores de sistemas lo que da por resultado que las políticas resultantes dependan mas de lo necesario en alguna de las otras propiedades (duración y/o complejidad).
Utilicemos la gráfica tipo radar de abajo para comparar tres políticas distintas. Cada eje representa una propiedad de la contraseña por lo que cada política será representado por un triángulo. Como una regla básica, mientras más pequeña sea el área del triángulo, la política permite contraseñas más débiles.

La política representada por el triángulo verde representa la peor política. Permite contraseñas muy cortas y de muy larga duración. Aunque si posee algunas reglas sobre la complejidad requerida, esto no es suficiente ya que las otras dos propiedades no son definidas apropiadamente. La política representada por el triángulo rojo prácticamente ignora los requisitos de longitud y complejidad y se enfoca exclusivamente en la duración de la contraseña. Nuevamente esta es una mala estrategia de diseño/implementación para la política de contraseñas. Finalmente, la política representada por el triángulo azul utiliza ampliamente las tres propiedades, creando una estrategia balanceada. Como esta gráfica es una simple representación abstracta de una política (yo ni siquiera he definido métricos para cada eje), ninguna política es graficada como un triángulo equilatero.

Para determinar entonces una buena política de contraseñas se deben considerar los tres factores o propiedades y no uno o (tal vez) dos solamente. De lo contrario el uso de contraseñas no cumplirá su cometido o el sistema donde se implementa la política será subutilizado.

Recientemente utilice un sistema Microsoft Windows configurado para contraseñas con sólo dos tipos de caracteres (complejidad), mínimo de ocho caracteres (longitud), que debías cambiar cada 30 días y no podías reutilizar por 120 días (duración). Al no impedir que se usaran palabras del diccionario, un usuario podía escoger la siguiente combinación de contraseñas: chile001, chile002, chile003, chile004. Esta combinación es claramente un problema de seguridad ya que puede ser fácilmente adivinada por medio de un ataque de diccionario o fuerza bruta.
Esta politica es un ejemplo del triángulo rojo en la gráfica de arriba. Además, representa una política que subutiliza las capacidades del sistema. Por ejemplo, el Directorio Activo en Windows Server 2008 permite contraseñas de hasta 127 caracteres (lo que se puede aprovechar utilizando oraciones, las cuales son más fáciles de recordar para el usuario) y permite la implementación de distintas políticas dentro de un mismo dominio.

Para los interesados, el reporte de MMPC esta disponible aquí. Hay tambien un enlace a una página donde puedes verificar la fortaleza de una contraseña.

martes, 29 de septiembre de 2009

Microsoft Security Essentials: Opción gratuita para protección contra malware

Microsoft Security Essentials (MSE) está disponible desde hoy, cortesía de los amigos de Redmond. MSE consiste en un sistema para proteger una computadora personal de malware (por ejemplo: virus, gusanos, rootkits, troyanos, etc.). Permite detectar y remover el código malicioso que intente instalarse en tu computadora y reemplaza las otras ofertas que Microsoft anteriormente ofrecía: Onecare y la instalación estándar de Microsoft Defender que venía en Windows Vista.

MSE es una excelente oportunidad para toda computadora personal que tenemos en casa o cuando hay que administrar un pequeño número de computadoras en la oficina. Las razones? Es gratuito, realiza una labor necesaria para toda computadora conectada al Internet y según reportes iniciales (enlace), lo hace bien. MSE no es para organizaciones con número grande de computadoras ya que no posee la opción de administración centralizada de computadoras que utilizen el software.

Bajar el archivo de instalación es relativamente rápido, dependiendo de tu conexión, ya que tiene un tamaño de 4.28MB (cuando lo baje para mi PC con Vista). La instalación es bastante sencilla, primero revisa que el sistema operativo Windows instalado sea genuino y luego de terminar su instalación, procede inmediatamente a actualizarse (razón por lo cual es bueno tener la computadora conectada al Internet).


En promedio, Microsoft espera publicar diariamente 3 actualizaciones de firmas de malware. Comentarios y reportes en el Internet (enlace) indican que el porcentaje de detecciones alcanzado por MSE es bueno. Estas son muy buenas noticias para usuarios que estén buscando protección contra malware, efectiva y gratuita, para computadoras con sistemas Windows. Muchas personas entonces recibirán positivamente la noticia, yo me incluyo. :)

viernes, 31 de julio de 2009

Vistazo a América Latina con el Microsoft Security Intelligence Report, Volumen 6


Recientemente, Microsoft publicó el sexto volumen de su reporte sobre el estado de la seguridad y que publican semestralmente. Este volumen cubre el periodo de Julio a Diciembre de 2008 y trata básicamente dos grandes áreas de la seguridad: vulnerabilidades en software y malware. Entre los detalles a mencionar sobre el problema de las vulnerabilidades, están:
  • El número de vulnerabilidades publicadas bajó 12% en el 2008, en comparación con 2007. De igual manera, el numero de vulnerabilidades de alta severidad también bajó, 16%, con respecto al año anterior.
  • El número de vulnerabilidades que son más fáciles de explotar o ejecutar aumentó en el período y representan el 56% de todas las vulnerabilidades reportadas.
  • Cerca del 87% de las vulnerabilidades afectan aplicaciones distintas al sistema operativo o el navegador web.
La sección sobre malware me pareció muy interesante ya que presenta un panorama sobre la situación en América Latina. A pesar de la naturaleza global que posee el Internet, existen claras diferencias entre los tipos de amenazas que debe enfrentar el usuario en distintas partes del mundo. Y en el reporte de Microsoft, América Latina no es la excepción.

Microsoft utiliza un métrico llamado "computadoras limpiadas por millar" (CCM, siglas en inglés para "computer cleaned per mil") para describir la popularidad de computadoras con problemas de malware y poder comparar la situación en distintas partes del mundo. CCM representa el número de computadoras desinfectadas por cada mil ejecuciones de productos anti-malware, como el Microsoft Removal Tool (MSRT). Debido a las capacidades telemétricas que este tipo de software típicamente posee, Microsoft puede reunir la actividad que se reporta desde los distintos lugares en donde se utiliza MSRT. Para dar un ejemplo, el reporte indica que Panamá obtuvo un CCM promedio de 8.9 durante los últimos seis meses del 2008. Esto significa que MSRT eliminó algún malware existente en 8.9 ocasiones por cada mil veces que fue ejecutado, en computadoras localizadas en Panamá.

Entonces, cuál fue la situación en América Latina? Nuestra región presentó un CCM promedio de 9.2, con una desviación estándar de 4.61. Esto representa un valor ligeramente mayor que el promedio mundial de 8.8. La desviación estándar global no fue publicada por Microsoft; la de America Latina la calculé yo, con la observación de que los valores para cada país son promedios [sería interesante ver el comportamiento mes a mes, por país]. Aunque no sabemos cuan representativa es la muestra (principalmente, porcentaje de computadoras con Windows) en cada país, el CCM ayuda a comprender la situación de malware de la región y permite comparaciones básicas entre los países. Adicionalmente, Microsoft ha estado incluyendo este métrico desde el volumen 4 del reporte por lo que también se podrían determinar tendencias en la región y los países [esta podría ser una tarea para futuras entradas en el blog].

He aquí la tabla que presenta la tasa de infección, expresada en CCM, para los países de América Latina:


























































































PAÍS
CCM
Brasil20.9
México
15.9
Guatemala13.9
Honduras12.9
Ecuador12.6
Nicaragua11.2
Colombia10.0
El Salvador9.6
Panamá
8.9
Costa Rica8.8
Perú
7.8
Rep. Dominicana7.1
Bolivia6.8
Paraguay6.6
Chile6.3
Venezuela5.5
Argentina4.4
Uruguay2.9
Puerto Rico2.5
Promedio9.2
Desviación Estándar
4.61


En los casos de Argentina, Brasil, Chile, Colombia, México y Venezuela, MSRT reportó al menos un millón de ejecuciones (en promedio) lo que podría sugerir que de alguna manera los respectivos CCM son representativos de la situación en estos países. Aquí simplemente utilizo el argumento de que estos países reportan igual orden de magnitud (millones) para el número de usuarios del Internet (Fuente: CIA, EEUU). Similar situación se presenta para Uruguay, Panamá y El Salvador, pero en menor orden de magnitud (cientos de miles) ya que Microsoft reporta al menos 100,000 ejecuciones mensuales de MSRT en cada uno de estos tres países.

En términos de jugar un rol en el hospedaje para sitios de malware o phishing, América Latina parece ser una región relativamente tranquila... o pacífica? ;) En el hospedaje de sitios de malware sólo Brasil y Argentina reportan actividad a considerar y aún así, están muy por debajo de EEUU, Europa y Asia. Además, países como México, Colombia, Chile y Venezuela aparecen con actividad extremadamente baja (cada país representa menos del .016% de la actividad mundial). Para el resto de la región no hay suficiente información disponible.

En el caso de sitios de phishing, la región se presenta como un área relativamente "amigable". Sólo Argentina y (particularmente) Brasil reportan actividad a considerar. El caso de Brasil es fascinante ya que parece existir toda una industria dedicada al robo de credenciales para banca en línea, utilizando métodos de ingeniería social. Brasil es un claro ejemplo de como los países puede enfrentar distintas amenazas, a pesar de estar todos conectados por medio del Internet.

El reporte termina con un análisis individual a varios países, que incluye México y Brasil. Es posible que estos países son presentados debido a que Microsoft posea suficiente información que considere representativa para cada uno de los casos. El resumen del reporte en español, así como el reporte completo en inglés, están disponibles aquí.