Archive for May, 2007

Una más de seguridad

Este tema de la seguridad puede dar para muchas notas y hasta para… bueno, si no fuera tan extenso y cambiante no habría tantos libros y sitios diciendo algo sobre el tema.

Y ya que mencioné eso, uno de tantos sitios que existen, y que además vende software que auxilia en ese ámbito, publicó una lista de 10 recomendaciones de seguridad para usuarios Mac. No significa que la plataforma sea insegura, ya que de fábrica no necesariamente lo es, pero la configuración que hagamos de ella y nuestros hábitos de navegación pueden ser un vector de entrada.

La liga al sitio es:

Internet security for your Macintosh: the top 10

Comments

A propósito de contraseñas

En la entrada anterior comenté un poco sobre la seguridad que puede brindar una buena contraseña para mantener la información que guardamos en la computadora fuera del alcance de terceros.

La idea original para comenzar a escribir la nota anterior fue un comentario en el sitio MacInTouch en su foro sobre seguridad, donde aparece el comando que describí para saber quien llama a la puerta. Aunque en realidad el preámbulo tuvo más peso.

Puesto que me enfoqué un poco en la seguridad de las contraseñas, unos pocos renglones más abajo en el foro mencionado hay una liga a una explicación más detallada sobre el mismo tema:

Strong passwords: How to create and use them

Menciona algo de lo mismo que escribí, pero además contiene un enlace a una página que permite jugar con nuestra contraseña para saber si es buena, medio buena, medio mala o mala:

Password checker

Si acaso se pregunta uno por la seguridad de las contraseñas que uno escriba en ese verificador, no hay problema, el código de la página funciona de manera local en el navegador y en ningún momento realiza conexiones al exterior, por lo que cualquier cosa que escribamos se mantendrá ahí y solo ahí, no irá a parte alguna.

Comments

¿Quién toca a la puerta?

Cuando se conecta una computadora a una red se le expone a un entorno pocas veces amable. En algún momento mientras visitamos algún sitio web podemos exponer nuestro equipo a una página con elementos que provoquen la apertura de hoyos en la seguridad de nuestro navegador. Es posible también que algún juego que parecía inocente y decidimos instalar, resultara ser una puerta para llenar de anuncios la computadora, o peor aun, que se quede descansando sin percatarnos de ello y mientras capture todo lo que escribamos en el teclado (contraseñas y todo), en casos más extremos, pudieran enviar a algún otro sitio esa información o dejar abierta una puerta a nuestra computadora para que alguien más la use.

Aun quienes utilizamos una Mac no estamos libres de todos esos programas malignos (si, es cierto, también hay eso para la Mac, afortunadamente son prácticamente inexistentes), sin embargo no es excusa para no prevenirse un poco.

Recién salida de la caja una Mac es completamente segura, en realidad no comparte nada y supuestamente no hay puertas abiertas al exterior, pero por si acaso hemos activado el “compartir archivos”, “compartir impresora”, “compartir web”, “acceso remoto” o alguna otra cosa parecida ya tenemos una puerta abierta al mundo.

Lo mejor en esos casos es tener contraseñas “difíciles de adivinar”, pero no tanto como para que ni siquiera uno las recuerde. Por ejemplo algo como “aVerSiEntras” (a partir de este momento ni pensar en usar esa) puede ser una contraseña razonablemente buena, pero no completamente segura, usar más letras ayuda, y utilizar números y otros caracteres todavía más: aV{rSi3ntr]as (consejo: ya tampoco usar esta).

Si lo anterior no ha sido suficiente para pensar en mejores contraseñas, revisar el registro de seguridad del sistema puede ser otro incentivo. Dicho archivo se encuentra en /var/log/secure.log y sólo el súper-usuario lo puede leer.

Usando la Terminal o programas como TextWrangler se puede revisar el contenido del mismo. Tal vez en una computadora que no tiene muchos programas, no se le han activado las opciones de compartir y que rara vez ha solicitado que se escriba la contraseña del administrador, no aparecerá gran cosa en ese registro. Por el contrario, otro equipo donde se han instalado montones de programas y actualizaciones, comparte archivos y se cambia de usuario continuamente tendrá cientos de líneas en él.

Para poner un ejemplo extremo, el servidor web que sirve este blog es un objetivo seguro de cuanto zombie y hacker pueda toparse con él. Por supuesto que está activo el servicio web, pero también el servicio ssh y alguno más; se encuentra detrás de un cortafuegos y simplemente está ahí esperando que alguien solicite una conexión. No es un sitio de gran tránsito y principalmente es para uso interno, pero es visible desde el exterior.

Durante los últimos meses este servidor ha visto solicitudes de conexión por parte de 24,709 usuarios distintos, sorprendente si se toma en cuenta que en realidad solo hay poco más de 100 usuarios registrados, y no todos tienen permiso de conectarse. Para dar una idea del volumen de intentos de conexión, aquí va la lista de “los primeros 10″:

105901 root
6722 admin
2936 mysql
2477 test
2354 webmaster
1887 alex
1624 www
1331 nobody
1298 postfix
1135 guest

Por supuesto que el más atacado siempre va a ser root ya que se trata del mismísimo súper-usuario, pero por ejemplo mi propio usuario es uno de los más solicitados, por lo que tengo que mantener una contraseña razonablemente buena (y no, no es ninguna de las mencionadas arriba), además de cambiarla con regularidad.

Si se quiere conocer qué tan atacada ha sido una computadora el siguiente comando puede ayudar a obtener una lista como la anterior (todo en una sola línea):

sudo grep "failed to auth" /var/log/secure.log | sed "s/^.* user \(.*\)\.$/\1/" | sort | uniq -c | sort -nr

El comando usa grep para revisar el registro de seguridad por intentos fallidos, los pasa a sed parar dejar solo el nombre del usuario, con sort los ordena, uniq los cuenta y finalmente los vuelve a ordenar.

En la computadora de la oficina lo único que obtengo es mi propio usuario con un par de intentos, lo que indica que el ambiente de red es inofensivo comparado con el del servidor.

Un detalle a observar del comando anterior es que sólo busca por intentos fallidos, si acaso alguno de esos intentos logró obtener una conexión (consiguió dar con una contraseña válida), eso no se reportará en la lista. Para lidiar con esas situaciones se requiere de otras estrategias, aunque de eso trataré de hablar en otra entrada, ya que esta se ha convertido en la más larga que he escrito.

Comments (1)