Wednesday, May 28, 2008

OpenID tocado

Hace un tiempo escribí un poco sobre OpenID y aunque teníá curiosidad de profundizar un poco en el tema, no pude sacar tiempo para ello.

Hoy sin embargo, en muchos sitios veo enlaces a un post que ataca sin piedad a OpenID. El contenido es bastante técnico y la verdad es que muchos de los argumentos parecen ser de peso.

Entre los mas importates yo destacaría:
  • Falta se seguridad: vulnerable a DNS poisoning, XSS al proveedor, CSRF.
  • Perdida de privacidad: tanto por reuso de credenciales (que muchos proveedores no hacen y lo resaltan explicitamente) como por seguimineto por parte del proveedor, inherente al funcionameinte del protocolo.
  • Problemas de confianza, ya que OpenID no se basa en un sistema de autenticación previa.
  • Problemas de usabilidad: como casi siempre, lo nuevo es dificil, aunque ni siquiera se haya intentado. PEBKAC.
  • Bajada de disponibilidad: al downtime propio del servicio que queramos usar hay que sumarle el del proveedor de OpenID.
El articulo tiene una conclusión clara:

OpenID: Fail

Muchos de los argumentos son muy solidos y por desgracia inevitables, como el de la resistencia de los usuarios a todo lo que huela, suene o parezca nuevo. Pero por otro lado hay que tener en cuenta que el autor es empleado de una empresa que hace productos que compiten contra OpenID y no es del todo imparcial por ello.

A primera vista parece que alguno de los problemas se podria solucionar con SSL y otros usando un proveedor fiable, ya sea propio, del ISP, etc, pero el tema es bastante complejo y puede que se me escape algun detalle del funcionamiento, así que antes de escribir nada prefiero consultarlo con la almohada y documentarme un poquito mas. Espero que no necesitar otros 6 meses para ello ;)

Tuesday, May 27, 2008

La psicologia de la seguridad

Curiosa e interesante explicación de Bruce Schneier sobre como procesa el ser humano (y no sólo el ser humano) los riesgos. La aplicación sobre la seguridad informática es inmediata.

Thursday, May 22, 2008

Synergy, casi perfecto

Ultimamente he vuelto a usar el portatil en el escritorio y resulta que dado que la pantalla del sobremesa esta un poco elevada, al poner el portatil en el escritorio la pantalla de 13" se queda justo debajo de la de 19". Teniendo una bandeja deslizable bajo el escritorio para el teclado y un raton super cómodo, me resultaba bastante molesto tener que subir los brazos para poder alcanzar el teclado y touchpad del portatil.

Se me ocurrio que sería una buena idea poder usar un solo teclado y ratón para controlar ambos PCs. Un KVM esta bien, pero aparte de ser caro y ser hardware, hay que estar pulsando botones para cambiar de PC y es mas bien para controlar dos maquinas con un solo terminal (teclado, raton y monitor). Lo que seríá una idea estupenda sería hacerlo por software, y que detecte automaticamente cuando se pasa de los bordes de la pantalla para pasar de un monitor (y ordenador) a otro. Y siendo una idea tan buena seguro que a alguien se le habia ocurrido antes. Google -> synergy. Multiplataforma, portapapeles... ¡perfecto! Y realmente facil de usar, arrancar el server en Windows (XP, por supuesto), especificar como estan las pantallas, escribir "synergyc SERVERNAME" en linux ¡y listo! Sin tocar xorg.conf ni nada.

Pero por desgracia, enseguida dejo de funcionar bien. Cada poco, el cursor del raton se quedaba congelado 5 o 6 segundos y luego volvia a funcionar. Pensé que era por la wifi, interferencias, etc, pero con un ping -f vi que la red estaba bien. Otra vez San Google mostró que problema es por una actualización del kernel. Así que de momento hay que arrancar el cliente en linux con permisos de root, que como dicen resuelve el problema, hasta que salga una nueva version que lo solucione y a ser posible, que no se coma la CPU.

El otro problema es la seguridad, ya que synergy envia la informacion en claro (lo cual es MUY MALA IDEA) así que dado que sigo con redes WEP, hay que volver a teclear las contraseñas en el teclado del portatil. Entre este problema y ya que estaba trasteando con el server Debian por el tema de las claves SSL, decidi vovler a montar la VPN, pero eso ya lo explicare otro día...

Friday, May 16, 2008

Random made in Debian

Es curioso como es posible meter la pata hasta el fondo con la mejor de las intenciones.

Allá por mayo del 2006 alguien decidió limpiar un poco la biblioteca openssl, usada para casi cualquier cosa relacionada con la seguridad en un sistema Linux. Pero aparte de la llamada que era errónea, se cargó también otra que era vital para la inicialización del generador de numeros pseudoaleatorios (PRNG). El proceso fue en resumidas cuentas, tal como:
  • Versión principal usa ingeniosas chapuzas usando memoria no inicializada para obtener aleatoriedad.
  • Versión principal usa el mismo código y los mismos nombres de variables para hacer otras cosas.
  • Versión principal no usa comentarios para distinguir entre ambos.
  • Responsable de mantenimiento pregunta en la lista de openssl-dev y obtiene una respuesta algo ambigua.
  • Responsable de mantenimiento generaliza en exceso el cambio (y se carga ambas llamadas).
  • El bug se le escapa a todos en el proceso de revisión.
Y tenemos cachondeo para rato. La parte seria del asunto es MUY seria, dado que las claves "aleatorias" que genera obtienen su aleatoriedad de uan sola fuente, el identificador de proceso. Y ya que generalmente esto son 15 bits (32k posibilidades) tenemos que en unos 20 minutos se puede adivinar la clave generada. Accesos SSH con claves de usuario generadas en sistemas vulnerables, certificados SSL, VPN's con secretos compartidos... todos ellos con un nivel de entropia de 15 bits. Terrorífico. Por suerte las sesiones SSL de los navegadores no se han visto afectadas, supongo que porque usaran GNUTLS o alguna otra biblioteca para generar las claves de sesion.

Para más info mirar en el DSA de debian o en el blog de Luciano Bello, el que descubrió el bug.

Para arreglar el problema basta con el clásico apt-get update && apt-get upgrade, que actualizará openssl a una versión parcheada y openssh invalidará las claves vulnerables y generará otras seguras. En la wiki de debian se puede consultar sobre la actualización de las claves de otros programas y leer algo sobre testeo y resumen técnico.

Y ya que hemos hablado de la parte seria, (y antes de eso, actualizado el server debian con acceso ssh) ahora toca el cachondeo:


Meta-incertidumbre


Incertidumbre certificada

Si no os habeis actualizado ya, ¡¿a qué esperais?!

Wednesday, May 14, 2008

Centro Nacional de ¿QUÉ?

Via wtf.microsiervos.com le he echado un vistazo a la página del CNI: Centro Nacional de Inteligencia. Y el resultado desde luego merece un WTF, un LOL y ponerse a llorar.

Para empezar el Centro Nacional de Inteligencia tiene un certificado SSL no válido, emitido por una entidad no reconocida por los navegadores. Como si lo hubiera firmado el tio del bar vamos. Pero ahi no queda la cosa, ya que una vez en la página el diseño es pa mear y no echar gota. El logo con el escudo y el texto de "Gobierno de España" borroso, las letras que no acaban de salir de los bordes aunque se haga scroll hasta abajo del todo, en el menu de la izquierda,el escudo de España solo es visible de mitad para arriba...

Pero el colmo es el currículum vitae del "Secretario de Estado Director":

Nacido en Cuenca en 1953.

Ingeniero de Montes.

- En 1982 inicia su trayectoria laboral en la Administración como técnico del Instituto de Conservación de la Naturaleza.
- En 1986 ejerce funciones técnicas en la Dirección General de Montes, Caza y Pesca de la Consejería de Agricultura de la Junta de Comunidades de Castilla-La Mancha.
- Funcionario de carrera desde 1989, ejerce como Jefe de Servicio de Montes de la provincia de Albacete .
- En 1995 es nombrado Director General del Medio Ambiente Natural de la Consejería de Agricultura y Medio Ambiente de la Junta de Comunidades de Castilla La Mancha.
- En 1999 fue nombrado Director General del Medio Natural de la Consejería de Agricultura y Medio Ambiente de la Junta de Comunidades de Castilla La Mancha.
- En el año 2003 es nombrado Consejero de Industria y Trabajo de la Junta de Comunidades de Castilla La Mancha.

¿Y que es eso de ""Secretario de Estado Director"? Pues según la propia página, es la persona responsable de (negritas mías):

Por Real Decreto 607/2004, de 19 de abril, es nombrado Secretario de Estado Director del Centro Nacional de Inteligencia, nombramiento que le hace titular de las siguientes funciones:
  • Autoridad Delegada de Seguridad de la Información Clasificada OTAN (Acuerdo del Consejo de Ministros de 18 de abril de 2002)
  • Miembro de la Comisión Delegada del Gobierno para Asuntos de Inteligencia (Ley Orgánica 11/2002 de 6 de mayo, reguladora del CNI)
  • Autoridad de Inteligencia y Contrainteligencia (Real Decreto 436/2002 de 10 de mayo, que establece la estructura orgánica del CNI)
  • Director del Centro Criptológico Nacional (Real Decreto 421/2004 de 12 de mayo, regulador del CCN)
  • Miembro de la Comisión Delegada del Gobierno para Situaciones de Crisis (Real Decreto 1194/2004 de 14 de mayo, por el que se determina la composición de las Comisiones Delegadas del Gobierno)
A todo esto, el texto en la pagina original solo se puede leer hasta la mitad de la ultima frase, ya que el resto esta oculto con un frame de pie de pagina.
Como iba diciendo, la persona responsable de gran parte de la seguridad nacional en España es... Ingeniero de Montes. Y tiene 20 años de experiencia en... ¡el Ministerio de Agricultura!. Im-presionante. Así está la página del CNI, que no tiene ni certificado de seguridad válido. A saber a que agricultor le habran dejado crear la página. Por si acaso ni miro el código, solo espero todo sea contenido estático y no se use ninguna base de datos, porque la que se puede montar si alguien se pone a toquetear es de órdago.

Y mientras muchos informaticos, reinstalando Windows....

Tuesday, May 13, 2008

kio_media_mounthelper error

Un pequeño truco: si al dar al botón de "Extracción Segura" de un disco usb en linux da un error de "El dispositivo se desmontó correctamente, pero no se pudo expulsar" se debe editar el siguiente archivo:
/usr/kde/3.5/share/apps/konqueror/servicemenus/media_safelyremove.desktop

Y cambiar la linea final de:
Exec=kio_media_mounthelper -s %u

a:
Exec=kio_media_mounthelper -u %u

Con este sencillo cambio ya no volverá a salir el molesto mensaje al extraer los usb ya que en vez de desmontar y expulsar solo intentará desmontar el disco.