Mostrando entradas con la etiqueta Criptografía impresentable. Mostrar todas las entradas
Mostrando entradas con la etiqueta Criptografía impresentable. Mostrar todas las entradas

jueves, 1 de marzo de 2012

Las tontas claves de Stratfor y asociados

Como personas modernas y bien informadas que sois, imagino que estaréis al tanto de la última revelación de Wikileaks: varios millones de emails de la empresa Stratfor. Se trata de una empresa dedicada a la recogida y procesado de datos de inteligencia.  Algunos la consideran una CIA privada, aunque oficialmente se dedica a realizar análisis geopolíticos: Nuestro fin es simple, hacer que la complejidad del mundo sea comprensible para un lector inteligente, al margen de ideología, agenda y prejuicios nacionales.

Se supone que una agencia como Stratfor debería mantener una férrea seguridad en sus comunicaciones.  Pero sorpresa, sorpresa, en navidad de 2011 el propio fundador reconoció que su empresa había sufrido una intrusión informática.  Los atacantes consiguieron una lista de miembros y clientes, incluyendo números de tarjetas de crédito y, como se reconoció posteriormente, casi un millón de direcciones de email y contraseñas de acceso. 

Por supuesto, un archivo con las contraseñas de los usuarios es un botín muy jugoso para los atacantes.  ¿Cómo lo protegemos?  Lo mejor es ... no tener un archivo de contraseñas. En su lugar, se guardan los valores hash de las contraseñas.  Las funciones hash, muy útiles en diversos campos de la criptografía, sirven para comparar las contraseñas sin revelarlas. 

Una empresa con conciencia de seguridad hace lo siguiente: toma todas las contraseñas de los usuarios, somete cada una a la función hash, y guarda el resultado.  Cuando el usuario entra una contraseña C, el sistema usa una función hash H y determina su valor para ese caso, digamos h.  A continuación, el sistema consulta la base de datos de hashes.  Si el correspondiente al usuario coincide con h, eso significa que el usuario ha usado una contraseña válida.

Aunque el uso de hashes en lugar de contraseñas aumenta la seguridad de sistema, tiene diversos fallos.  El más gordo sigue siendo el hecho de que las contraseñas habituales son sencillas y predecibles.  Un atacante podría tomar su “diccionario” de contraseñas y aplicar la función hash H a cada una de ellas.

Eso fue lo que sucedió en el caso de Stratfor.  Una de las cosas que se llevaron los asaltantes fue la base de datos con las contraseñas.  Éstas se guardaban en forma de hash (no en texto llano).  Un análisis del diario online The Tech Herald utilizó un conjunto de diccionarios (términos comunes en varios idiomas) y una lista de contraseñas reveladas en anteriores ataques informáticos, y los combinó con el programa hashcat, similar al ya mencionado Jack The Ripper.   

El resultado es demoledor: de los 860.160 hashes que obtuvieron para estudio, consiguieron recuperar casi 82.000 contraseñas en algo menos de cinco horas, usando un sencillo ordenador de trescientos euros.  Algunas contraseñas eran tan absurdas como ****** (seis asteriscos).  Diversos usuarios utilizaron contraseñas lo bastante largas como para proporcionarles seguridad, pero luego lo estropearon escogiendo términos como 111222333444, qwerty123456, lawenforcement, surveillance4u o intelligence.

También se vio cómo algunos usuarios, en un intento por aumentar su seguridad, utilizaban sustituciones de caracteres fácilmente adivinables, como sustituir O por 0, o poner @ en lugar de a. Eso es algo desaconsejado porque proporciona solamente una sensación de seguridad, no más seguridad en sí mismo. Una de las contraseñas de seis caracteres más utilizadas en el caso Stratfor era ¡@#$%^ … que no es más el resultado de pulsar 123456 con el bloqueo de mayúsculas y la tecla AltGr; otras elecciones poco inteligentes incluían $intel, @gn0st!c [agnóstico], @irF0rce [airforce], @tt0rn3y [attorney].  Por supuesto, la cadena de cinco dígitos más utilizada fue nuestra conocida 12345, con 55555 en segundo lugar.

El uso de contraseñas tontas es un tópico tan extendido que forma parte del folklore de Hollywood.  Sheldon Cooper, el protagonista de la la exitosa serie de TV The Big Bang Theory, no encuentra gran dificultad en acceder al ordenador de una tienda de informática: “puede entrar hasta un niño, 1234 no es una contraseña muy segura” En la parodia La Loca Historia de las Galaxias, el planeta Druidia protege su atmósfera mediante un escudo que tiene el código 12345.  Cuando el malvado planeta Spaceballs consigue el código, su presidente no sale de su asombro: “¿12345?  ¡Es la misma contraseña que tengo en mis maletas!”

El presidente Skroob nos parece un tonto redomado, y de hecho fracasó en sus malévolos planes (a pesar de tomar la precaución de cambiar la combinación de sus maletas), pero en nuestro planeta Tierra no lo hacemos mucho mejor.  En febrero de 2012, el grupo Anonymous hackeó la cuenta de correo electrónico del presidente sirio Bashar al-Assad.  Más concretamente, entraron en el servidor de correo del ministro sirio de asuntos presidenciales y accedieron a casi ochenta carpetas de mensajes.  Lo crean o no, la contraseña que custodiaba toda esa información era … 12345.

Seguro que su colaborador, el que creó la contraseña, pensó algo así como "la gente pensará que cualquier idiota la podría en sus maletas, así que nadie creerá que vamos a usarla realmente."  O, por supuesto, es un luser redomado que se merece ser azotado con un látigo LART.  Por cierto, señor presidente sirio, convendría que fuese revisando usted sus maletas.  Por si acaso.

miércoles, 15 de febrero de 2012

Ojo con la Google Wallet

Si es usted usuario de Google Wallet, cuidado, su dinero puede estar en peligro.  Ah, te has dado cuenta tú también ...

Recientemente, Google ha inventado una aplicación llamada Google Wallet para poder controlar los pagos por medio del móvil.  Google Wallet está diseñado para ser utilizado con los móviles que tengan capacidad NFC.  Eso significa Near Field Communications, y es una actualización del sistema RFID que tan criticado fue en el pasado.  La idea es convertir el móvil en una especie de tarjeta de crédito.  De conseguirlo, darían un paso de gigante, ya que ahora la gente usa el móvil para todo, y podría incluso permitirles entrar en el campo de los micropagos.

Pero claro, hay que hacer las cosas bien y con cuidado.  La tecnología NFC permite a un atacante espiar los datos del usuario, así que hay que meter cripto en el asunto.  La información sensible como el número de tarjeta de crédito es almacenada de manera cifrada en un elemento llamado SE (Secure Element), protegido contra todo tipo de espionaje electrónico, y el acceso al SE está fuertemente controlado.  Para poder acceder al SE, el sistema Google Wallet pide al usuario un número PIN de cuatro dígitos, y aunque un ladrón se llevase nuestro móvil del bolsillo, necesitaría ese PIN para poder darse un atracón de chuletones a nuestra costa.

Un análisis realizado en diciembre por viaforensics.com muestra un nivel de seguridad elevado.  Intentaron un ataque de intermediario (MITM, Man In The Middle), sin éxito. Tampoco consiguieron obtener información importante del propio móvil.  Pero Android es un sistema operativo basado en Linux, y como tal es posible obtener acceso de administrador ("root access"); no es algo que las operadoras hagan de forma habitual, pero un usuario con conocimientos podría obtenerlo, por ejemplo, para hurgar en las tripas de su móvil, configurarlo de forma especial o instalar ciertos programas.

Cuando los investigadores "rootearon" el móvil, inmediatamente comenzaron a recuperar información sobre las transacciones efectuadas: fecha, nombre del usuario, límite de crédito, tipo de tarjeta de crédito vinculada, etc.  No consiguieron información sensible, como el número de cuenta corriente, el de la tarjeta o el PIN (que se guarda en la SE, es decir, fuera del acceso normal), así que de momento todo va bien.  

Pero otros grupos se envalentonaron y comenzaron sus propios análisis.  Uno de ello, de la web zvelo.com, puso los pelos de punta.  Consiguieron recuperar el PIN.

Para ser justos con Google, hay que reconocer que lo intentaron hacer bien.  En lugar de guardar el PIN en el móvil, lo que hicieron fue lo siguiente: el usuario teclea el PIN, Google Wallet lo pasa por una función hash, y el resultado se compara con otro valor hash guardado en Wallet.  La función hash usada era la robusta SHA256, y usaron el truco de "sal" (una pequeña cadena de datos que se une al PIN antes de someterlo a la acción del hash); es decir, hicieron bien sus deberes.

El problema es que el PIN tiene cuatro dígitos solamente, es decir, solamente hay 10.000 posibles valores del PIN ... y 10.000 posibles valores de hash.  Los investigadores encontraron el valor de la "sal" y se limitaron a probar los 10.000 posibles valores de hash(PIN+sal), uno para cada valor del PIN.  De ese modo, cuando encuentran un PIN "hasheado" en Google Wallet, ya saben a qué PIN pertenece.

Google Wallet permite solamente cinco intentos de introducción de PIN; al quinto fallo, el sistema se bloquea.  Pero el ataque zvelo.com no necesita ir probando, ya que basta con leer el hash y determinar a qué PIN corresponde.  Nuevamente, este ataque requiere acceso root.  Incluso los usuarios que no juegan con sus móviles (no al juego de destriparlos, quiero decir) podrían estar en peligro, si alguien le "pide prestado" su móvil y le abre acceso root.

Sorprendentemente, parece que Google se lo ha tomado de forma muy responsable.  Y digo sorprendentemente, porque lo habitual en estos casos es que la empresa perjudicada se haga el sueco, niegue la mayor y/o amenace con demandas judiciales.  No parece haber sido el caso.  Google ha tomado muy buena nota de ello, y mientras prepara sus actualizaciones ha emitido un comunicado en el que reconoce y describe el problema. La respuesta podría pasar por almacenar la información vital (PIN y sal) en la propia SE, así como impedir o hacer más difícil el acceso root.

Cualquier solución tendrá sus problemas.  En primer lugar, evitar acceso root no será nada fácil, sobre todo si tenemos en cuenta que los móviles que ahora llevan Wallet son el Galaxy Nexus y Nexus S, que se venden como "móviles de desarrolladores," esto es, gente con conocimientos técnicos altos, mucha curiosidad y ganas de comprobar hasta dónde puede llegar su móvil.  Un segundo problema es el legal: si Google impone una solución técnica al sistema, los bancos pueden declinar la responsabilidad en el caso de que algo salga mal.

Para mayor desesperación de Google, pronto se desveló un segundo ataque.  Es tan estúpido que apenas se le puede llamar hacking.  El problema es que Google Wallet está ligado al móvil, no a la cuenta de Google, así que cuando el ladrón.  Digamos que un ladrón le ha robado su móvil, lector.  Lo único que tiene que hacer es entrar en Ajustes y borrar los datos de la aplicación Google Wallet. A continuación, abre Google Wallet.  Como el PIN estaba guardado en los datos borrados, la aplicación actuará como si estuviese recién instalada, así que ¡le pedirá un nuevo PIN!  Sí, así es: borre los datos de Wallet y ábrala, el sistema le pedirá un nuevo PIN, usted mete el que más le guste, y voilá.  Como los datos de la cuenta corriente y la tarjeta de crédito estaban en el SE, no han sido borrados.  A comprarse el Bugatti Veyron se ha dicho, que paga la víctima.  Y lo peor de todo es que no necesita acceso root.

En estos momentos, más de un ingeniero de Google está sudando la gota gorda intentando resolver el problema.  Lo conseguirán o no, eso ya lo veremos.  Pero, como mínimo, hemos de aplaudir el comportamiento de Google.  No es tan común ver a una gran empresa agachar la cabeza y reconocer "sí, es cierto, la cagamos, lo siento, estamos arreglándolo, aquí tienen mi número si tienen algún problema."  Mientras tanto, si usted es usuario de Google Wallet ... no lo rootee, por la cuenta que le trae.

sábado, 4 de febrero de 2012

El teléfono satélite ya no mola

Imagino que lo habréis visto en el cine.  Uno de los protagonistas habla por teléfono con un móvil grande y pesado, de esos que recuerdan a un ladrillo.  Es grueso, negro y tiene una antena enorme.  No se parece en nada a esos smartphones finos y estilizados que nos regalan al cambiarnos de operadora.

Se trata de un teléfono satélite, que se basa en una red de satélites de comunicación para poder llamar desde todo el mundo.  Cuando comenzaron a desarrollarse, parecían tener un nicho comercial asegurado.  Pero la telefonía GSM ha tapizado el planeta de punta a rabo, y los ejecutivos agresivos no tienen más que bajarse del avión, buscar la red adecuada y usar su móvil.

Sin embargo, el negocio de teléfonos satélite, aunque muy disminuido, sigue existiendo.  Resulta particularmente útil en zonas donde la cobertura de móvil tradicional es escasa o inexistente.  Thuraya, por ejemplo, proporciona servicio telefónico en zonas de Oriente Medio y África; y la más conocida red Inmarsat permite comunicar en prácticamente cualquier lugar de la tierra y del mar.

De estos dos operadores vamos a hablar hoy, porque un grupo de investigadores alemanes les acaban de sacar los colores.  Benedikt Driessen y Ralf Hund, de la Universidad del Ruhr - Bochum decidieron averiguar qué tipo de sistemas de cifrado utilizan los teléfonos de Thuraya e Inmarsat.  Descubrieron que los principales algoritmos criptográficos tenían los nombres código de GMR-1 (Thuraya) y GMR-2 (Inmarsat), pero oficialmente no había más información disponible.  Esos algoritmos son propietarios y se mantienen en secreto.  La creencia es que, si el enemigo no sabe cómo es tu sistema de cifra, no podrá atacarlo.

Este supuesto, que suele conocerse con el nombre de seguridad mediante oscuridad, ha sido desacreditado hasta la extenuación.  Nos llevaría mucho tiempo listar siquiera todos los sistemas de seguridad criptográfica que han sido mantenidos en secreto, pero que al final se han hecho públicos.  Sencillamente, no sirve.  El adversario puede capturar una copia de tu sistema, o bien reconstruirlo analizando cómo funciona (ingeniería inversa).  Si los alemanes fueron incapaces de mantener el secreto de la máquina Enigma, ¿pueden hacerlo mejor los operadores de telefonía actuales?

Para destripar GMR-1, Driessen y Hund tuvieron un par de elementos a su favor.  El primero consiste en cómo utiliza el sistema de cifrado en el móvil.  Como la telefonía satélite no tiene tantos usuarios y había que ahorrar, la operadora decidió implementar el cifrado en software, no en hardware.  Eso significa que resulta mucho más fácil hacer ingeniería inversa.  Solamente tienes que extraer el programa donde esté guardado (normalmente, un chip estándar), o mejor aún, esperar a que hagan una actualización de firmware.

El segundo paso es tan sencillo que resulta increíble.  Resulta que el algoritmo de cifrado de GMR-1 es muy similar al A5/2, usado en telefonía móvil GSM.  Imagino que esto sería por motivos de interoperabilidad: según la Wikipedia, el último teléfono de Thuraya puede usar una tarjeta SIM convencional (como la de su móvil, lector) y operar con redes GSM además de con los satélites.  El problema es que A5/2 es tan seguro al criptoanálisis actual como una hoja de papel frente a una motosierra.

Si desea ampliar información, puede usted leer los detalles en este artículo (lo escribí en 2004, pero sigue siendo útil).  Le haré un resumen.  A5 es el algoritmo usado por los teléfonos GSM para el cifrado de voz.  Una serie de ataques criptoanalíticos llevados a cabo durante los últimos 10-15 años  ha hecho que no se pueda considerar inútil para proporcionar seguridad.  Cualquier persona con conocimientos técnicos y algunos medios sencillos podría descifrar las comunicaciones GSM sin mayor inconveniente.

Para empeorar las cosas, el algoritmo A5 tiene dos "sabores."  El fuerte, llamado A5/1, es el que proporciona mejor seguridad.  Una versión más débil, llamada A5/2, fue autorizada para su venta en países que pudieran ser un riesgo para Occidente.  Vamos, que ni Estados Unidos ni Europa querían que un dictador del Tercer Mundo utilizase criptografía fuerte en sus móviles.

Como ya he dicho, incluso la variante A5/1 es, en la práctica, poco mejor que nada; pero usar A5/2 a estas alturas en un sistema reciente es de un catetos.  Peor aún, los investigadores alemanes dedujeron que el algoritmo GMR-1 es aún más débil que el A5/2, hasta tal punto que solamente requiere texto cifrado (es decir, captar las comunicaciones ya cifradas).  Todo el ataque puede llevarse a cabo en apenas treinta minutos de tiempo de un PC normal y corriente.

El sistema de Inmarsat no es mucho mejor.  Aunque no parece basarse en A5, tiene también sus rarezas: parece que tiene elementos del sistema de cifrado DES, un algoritmo de cifrado simétrico que no tiene nada que ver con telefonía.  Con una cantidad mínima de texto cifrado y de computación, se puede extraer la clave del sistema.

Desafortunadamente, los autores todavía no han publicado su descubrimiento, así que carecemos de más detalles.  Lo que sabemos, no obstante, deja claro que los teléfonos móviles de Thuraya e Inmarsat son más inseguros que el zapatófono del Superagante 86. 

viernes, 4 de febrero de 2011

Más sobre la PS3: mangas verdes

La guerra de Sony con relación al epic fail que comenté hace algunos días está en la fase de movilización total.  Se han oído ya algunos disparos, tanto en el frente legal como en el técnico.

Los abogados se pusieron prontamente en acción.  El día 11 de Enero, Sony presentó en un juzgado de  San Francisco, California, una orden cautelar de restricción (TRO, Temporary Restriction Order) contra George Hotz y otros.  Lo extraño es que Holz vive en Nueva Jersey.  ¿Por qué Sony cree que puede demandarle en California?  Los motivos son curiosos.  En primer lugar, Sony afirma que Hotz está sujeto a los Términos de servicio y acuerdo de usuario de la Red Playstation, según el cual, cualquier disputa será resuelta en el Condado de San Mateo, California.  En segundo -y aquí viene la parte divertida-, supuestamente Hotz ha usado una cuenta de PayPal, empresa radicada en San José (California), "y por tanto se deriva un beneficio financiero debido a su conducta ilícita en dicho distrito."  Para rematar la faena, se supone que también usó Twitter y Youtube, ambas radicadas también en California.

Según tan tortuosos razonamientos, de haber comido churros aquella mañana también sería competente la Audiencia Nacional española.  La juez encargada del caso debió entenderlo así, ya que en principio denegó la TRO a Sony.  Según sus propias palabras: Si tener una cuenta de PayPal fuese suficiente, entonces este tribunal tendría jurisdicción personal sobre todos, y eso no puede estar bien.  Significaría que todo el universo estaría sujeto a mi jurisdicción, y eso es un concepto que me resulta muy difícil de aceptar.

Sin embargo, Sony ha acabado ganando el primer asalto.  Sus abogados consiguieron abrirse paso invocando un concepto legal norteamericano denominado dirección intencionada (purposeful direction), un principio establecido por el Tribunal Supremo de EEUU en 1984 (Calder vs. Jones).  En ese fallo, el tribunal establece los requisitos de "contacto mínimo" requerido para poder invocar el poder jurisdiccional de un tribunal de otro estado.  El acusado debe haber cometido un acto:
- De modo intencionado,
- Expresamente dirigido al Estado donde se halla el tribunal,
- causando daños en dicho Estado, y siendo el acusado consciente de dichos daños.

Según eso, si alguien desde Nevada lanzase un misil hacia California, podría ser procesado por los tribunales californianos.  Esto es lo que estimo el tribunal en el caso de Hotz, concediendo la TRO a Sony.

Hay que recalcar que una orden de restricción TRO es lo que aquí denominaríamos "medidas cautelares."  No presuponen culpabilidad, sino que responden al hecho de que, sin ella, el demandante sufriría fuertes pérdidas, y que es una medida cautelar necesaria en tanto se dirime el problema en los tribunales.  George Hotz, por tanto, debe abstenerse de proporcionar ningún tipo de información sobre su "Epic Fail", seguir trabajando en el asunto y ayudar a nadie a hacerlo.  También debe entregar cualquier material informático en el que tal información esté guardada, incluidos sus ordenadores y discos duros.

En España, los representantes de Sony se han explayado a gusto.  En unas declaraciones a Libertad Digital, Cristina Infante, de Sony Computer España, afirmó que están especialmente preocupados porque España es un país en el que por tradición hay mucha piratería.  No creo que lleguen al punto de presentarse en la Audiencia Nacional para atacar a Hotz desde aquí (el concepto de Justicia Universal no llega a tanto), pero sigue siendo representativo de la postura de la industria, a saber: la consola la hemos fabricado nosotros, la usaréis como os digamos, y todavía somos generosos.

No es ese el único movimiento de Sony.  Ya está intentando silenciar a otros.  El 27 de Enero, envió un "DMCA takedown" (orden de retirada de contenidos) a github.com, un repositorio de código informático, exigiéndoles que retiren todo el material relativo al caso PS3 que había sido creado por un hacker llamado KaKaRoTo.  Se incluía una actualización de firmware hecha por él para implementar el Epic Fail y permitir la reproducción de cualquier código, firmado o no.  El material ya ha sido retirado. Sin embargo, una búsqueda en Google de la clave (BA 90 55 91 68 61 B9 77 ED CB ED 92 00 50 92 F6 6C 7A 3D 8D) arroja, en el momento de escribir estas páginas, 121.000 resultados).  Por si las moscas, que sea uno más: 

erk: C0 CE FE 84 C2 27 F7 5B D0 7A 7E B8 46 50 9F 93 B2 38 E7 70 DA CB 9F F4 A3 88 F8 12 48 2B E2 1B
riv: 47 EE 74 54 E4 77 4C C9 B8 96 0C 7B 59 F4 C1 4D
pub: C2 D4 AA F3 19 35 50 19 AF 99 D4 4E 2B 58 CA 29 25 2C 89 12 3D 11 D6 21 8F 40 B1 38 CA B2 9B 71 01 F3 AE B7 2A 97 50 19
R: 80 6E 07 8F A1 52 97 90 CE 1A AE 02 BA DD 6F AA A6 AF 74 17
n: E1 3A 7E BC 3A CC EB 1C B5 6C C8 60 FC AB DB 6A 04 8C 55 E1
K: BA 90 55 91 68 61 B9 77 ED CB ED 92 00 50 92 F6 6C 7A 3D 8D
Da: C5 B2 BF A1 A4 13 DD 16 F2 6D 31 C0 F2 ED 47 20 DC FB 06 70
 


Según parece, Sony no ha oído hablar del Efecto Streisand

Pero, tras la de cal, la de arena.  El masivo ataque de Sony está recibiendo múltiples críticas.  La EFF, por ejemplo, afirma que Sony se está extralimitando al pretender tener control universal sobre cualquiera de sus productos en cualquier lugar del mundo.  Según ellos, el mensaje que están transmitiendo ("búscanos las cosquillas e iremos a por tí") es estremecedor. Muchos usuarios de Sony se están replanteando su "lealtad a la marca."  La verdad, yo mismo estoy rodeado por productos Sony, pero creo que no les daré más hermanitos.

Mientras tanto, en el frente técnico, Sony confirma que está tomando medidas para, si no arreglar, sí al menos mitigar el problema.  Incluso cuando terminé de escribir el post anterior sobre la PS3, Sony confirmó que estaba intentando resolver el lío mediante actualizaciones de red.  La idea es reprogramar de algún modo las PS3 actuales por medio de una actualización de firmware, la 3.56.  Disponible desde el 27 de enero, su misión es introducir un parche de seguridad, y la documentación indica a los usuarios que harían bien en aceptarla, ya que de otro modo algunos juegos podrían no funcionar.

En el post pasado, yo ya apunté a los problemas derivados de un paso así.  Si se conoce la clave de la PS3, ¿cómo impedir que cualquiera publique sus propias actualizaciones?  El propio KaKaRoTo se expresa así en una entrevista: Las modificaciones al Firmware siempre serán posibles. Como ahora sabemos las llaves para firmar actualizaciones de Firmware, también significa que no importa qué nuevo Firmware publique Sony, los antiguos necesitarán descifrar y autenticar el próximo, así que las llaves siempre serán las mismas. Como tenemos las llaves, podemos crear cualquier Firmware que se parezca al oficial, y luego podemos “actualizar” nuestra PS3 a cualquier Firmware modificado o personalizado. Es decir, el Epic Fail es tan profundo que, cualquier cosa que haga Sony, los hackers podrán deshacerlo.

Y es que la situación es de desastre total.  Obtener las claves de la PS3 es como tener la llave maestra del edificio.  El nuevo amo del calabozo es ... bueno, cualquiera que tenga algo de conocimientos técnicos y acceso a la clave.  De hecho, la actualización 3.56 no llevaba 24 horas de vida cuando KaKaRoTo anunciaba por twitter que había liberado las herramientas para "desempaquetar" el nuevo firmware.

En mi opinión, Sony está intentando un control de daños bastante inteligente, ya que en lugar de intentar remediar el problema (que no tiene remedio) apunta contra los usuarios ignorantes de este fallo, los que solamente quieren jugar y punto.  La reciente actualización de firmware 3.56 está dirigida directamente contra la jugabilidad en red.  Quien no se actualice, tendrá problemas para jugar online a través de la PlayStation Network (PSN).  Ese puede ser un buen punto para que Sony minimice pérdidas, ya que la jugabilidad en red es uno de los mayores atractivos de las videoconsolas.  En la PSN, Sony puede detectar quién no se ha actualizado, y por supuesto, quién ejecuta su consola con un firmware hecho en casa (homebrew).  Los jugadores que deseen seguir jugando con su amigo japonés, y que no sepan del asunto, se limitarán a hacer clic en el botón correspondiente, se descargarán una actualización en apariencia inocente, y nada más ... salvo que les deseo suerte si alguno desea usar su consola para algo más que para jugar.

Otros rumores [ATENCIÓN: no confirmados] apuntan a que, entre otras alegrías, el firmware 3.56 contiene una función oculta que permite a Sony escaner a distancias una consola PS3, en busca de firmware no oficial ("homebrew").  También se dice que introduce una clave de cifrado especial que hará prácticamente imposible volver a la versión anterior, es decir, no se podrá "desactualizar" la consola. Quien intente "desactualizarse" de nuevo a la versión 3.55, descubrirán que no pueden hacerlo.  Y si la jugada le sale bien, Sony podrá desactivar la opción de juego online (!y quién sabe si incluso la capacidad de usar la PS3) a los que descubra sin la actualización.  Suena paranoico, pero estamos hablando de una empresa que ya insertó código rootkit en sus CDs.

Incluso se rumorea que la 3.56 hará que las partidas se guarden "en la nube" [ATENCIÓN: No está confirmado].  Eso, supuestamente, se hace para liberar espacio en el disco duro de la PS3, pero también tiene el efecto secundario de que el usuario no controlará sus propias partidas, ya que la información estará en algún otro lugar.  Si a Sony se le cruzan los cables, nada mejor que borrar los datos de los propietarios desactualizados.  Una inquietante posibilidad, que hace que nos planteemos seriamente hasta qué punto nos beneficia ceder el control de nuestros datos a esa entidad nebulosa que ahora llamamos "la nube."

Queda por saber cuánto tardarán los KaKaRoTos de Internet en destripar el nuevo firmware, modificarlo y reestablecer el acceso para la PSN.  Si el famoso tweet de KaKaRoTo se confirma, eso ya ha sucedido, aunque en el momento de escribir estas líneas no hay nada confirmado.  Lo que sí es claro es que se está corriendo como la espuma el aviso: no se actualicen a la 3.56.  Veremos qué sucede en los próximos días..

Por supuesto, seguiremos informando.

martes, 11 de enero de 2011

Las claves (desveladas) de la PlayStation 3

Uno de los puntos de fricción más activos en la eterna guerra de usuarios contra fabricantes compete las videoconsolas.  Los grandes fabricantes desean que los usuarios se limiten a comprar el aparato, comprar los juegos y callarse.  Sin embargo, una Wii, una Xbox360 o una PS3 tienen tanta potencia de cómputo como un ordenador.  Y hay por ahí mucha gente con conocimientos técnicos, que piensan que usar una consola solamente para jugar es un desperdicio.  Puede sonar raro a algunos que alguien quiera instalar Linux en una PS3, ya que no están diseñadas para eso.  Pero si puede hacerse, ¿por qué no hacerlo?

Hasta la fecha, la PlayStation3 era la videoconsola más resistente a "usos no autorizados".  Sony la ha protegido criptográficamente hasta el límite, de forma que lo único que puedes hacer con ella es jugar y punto pelota.  Pero incluso ella ha sucumbido al "chipeado."  Esto es, se le pueden introducir chips modificados para poder realizar operaciones prohibidas, como por ejemplo jugar con juegos piratas o instalar Linux en ellas.  El problema para los fabricantes es que, al menos en España, eso no es legal.  La ley prohibe la fabricación, venta o uso de medios técnicos diseñados específicamente para neutralizar protecciones informáticas, pero la clave está en la palabra "específicamente".  Los jueces han dictaminado que usar un dispositivo que tenga también otros fines legítimos son legales.  Es decir, digamos que yo tengo un chip que me permite hacer copias de seguridad de mis partidas.  Si además sirve para reproducir juegos piratas, es otra cuestión.

Recomiendo a los interesados en el aspecto legal la excelente web del bufete Almeida, que de esto sabe la tira.  Lean las últimas sentencias sobre el asunto.  En el fondo, se trata del viejo asunto de quién controla la consola: ¿el fabricante o el usuario?  El primero la vende para ganar pasta, y pretende que el segundo la use de forma limitada y controlada; pero el usuario no es tonto, y piensa que si la consola es suya, debería poder hacer con ella lo que quiera.

Y no es solamente una tontería de cuatro frikis con demasiado tiempo libre.  Una Playstation3 es un ordenador por derecho propio, y si los usuarios pudiesen usarlo como ordenador. el propio mercado informático podría cambiar sustancialmente.  Hasta tal punto es eficiente, que se han llegado a unir diversas PS3 en un "cluster" para realizar tareas de supercomputación.  Vean, por ejemplo, cómo se pueden combinar ocho PS3 para formar un superordenador. Un proyecto de la Universidad de Stanford reclutaba voluntarios para que donasen su tiempo no usado de PS3 con fines de computación científica, como el antiguo Seti@home.  Las posibilidades solamente estaban limitadas por la imaginación...

... y por Sony.  En este punto, y antes de continuar, es interesante resaltar que la PlayStation 3 tuvo en un principio la capacidad de ejecutar Linux y otros sistemas operativos desde su disco duro.  De hecho, Sony se ha aprovechado de esta capacidad y la ha usado como argumento de ventas desde 2000, cuando la PS2 era su videoconsola estrella.  Por algún motivo, Sony acabó hartándose, y en la revisión 3.21 del firmware (1 de abril de 2010) eliminó dicha posibilidad.  Se acabó usar la PS3 para supercomputar, ejecutar Linux o cualquier otra cosa que no fuese jugar y callar.

Este fue un punto de no retorno, puesto que impulsó a muchos hackers a lanzarse sobre la PS3 para volver a convertir esta máquina en un aparato interactivo más allá de lo que sus fabricantes impusieron.  Que no se queje Sony ahora, porque en los próximos meses recogerán las tempestades que han sembrado en 2010.

La ventaja para Sony y otras empresas, dentro de lo malo, es que la modificación de consolas requiere algún tipo de chip, ya sea en USB o insertado en la consola.  Es lo que se denomina Jailbreaking.  Es algo que no puedes hacer en tu casa, así que tienes que ir a una tienda, pagar la modificación ... y esperar que funcione, cosa que no siempre está asegurada.

Ahora bien, en una reciente reunión de hackers (de los de verdad) en Alemania, varios de ellos han mostrado las claves criptográficas de la PlayStation3. Ello permite ejecutar cualquier tipo de software, incluidos juegos piratas, caseros, todo.

Para entenderlo, hemos de entender cómo funciona el mecanismo interno de la PS3.  Seguro que es un jaleo tremendo, pero vamos a ir al cogollo.  La consola no ejecuta cualquier cosa, así que debe tener un procedimiento para poder discriminar las aplicaciones autorizadas. Las webs gubernamentales lo llaman pomposamente "certificados," pero en general se conoce con el término de firma digital. Una firma digital es una operación que involucra un archivo y una clave privada.  El procedimiento consiste en tomar el archivo, convertirlo en un "destilado" muy pequeño (gracias a las denominadas funciones hash), cifrar dicho destilado con una clave privada, y listo.  He aquí, por ejemplo, el resultado de firmar el primer párrafo de este post con mi clave privada:

-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 6.5.8 for non-commercial use <http://www.pgp.com>

iQA/AwUBTSWLog7Y43Xkw2u9EQI/HACgoekeVXhZ5KKlWkzdp6Q8Rmjn3rQAoKzW m+e7oh1JPdH4hJ4yS6rYwPNX=BAjH
-----END PGP SIGNATURE-----

Otros usuarios podrán verificar mi firma, es decir, comprobar que la he firmado yo y que el archivo que he firmado no ha sido alterado. Eso es lo que hace la PlayStation3.  En algún lugar de Sony Corporation hay una cámara acorazada con una clave criptográfica guardada.  Cuando hay que "firmar" un juego, usan dicha clave y luego le dan el resultado al programador del juego para que la incluya en el disco. Al insertar el disco en la consola, ésta verifica la firma digital.  Si no coincide con lo que tiene que dar, una de dos: o se ha firmado con otra clave distinta no autorizada, o bien el juego ha sido modificado.  En cualquiera de los dos casos, rechaza ejecutar el juego.  De ese modo, la firma digital permite a la consola determinar qué programas de pueden ejecutar en ella.  Imagínense lo que podría hacer Ethan Hunt con dicha clave.  El desafío de robarla sería una auténtica Misión Imposible, pero los resultados serían espectaculares.

El problema consiste en el tipo de firma digital escogida por Sony.  En lugar de usar criptografía de clave pública (más adecuada en algunos aspectos, pero que consumen más memoria y tiempo de computación), la PS3 incorpora un sistema de firma denominado ECDSA (Elliptic Curve Digital Signature Algorithm).  Esta firma tiene como elementos secretos una clave k y un número aleatorio m.  A partir de ahí se obtienen dos elementos R,S que forman la firma digital.  No voy a detallarles los entresijos del sistema de curvas elípticas porque, sinceramente, apenas los entiendo yo mismo.  Pero voy a decirles un detalle importante: cada firma digital precisa de un número aleatorio m.

Y aquí comienza el hackeo.  Debido a las características del algoritmo ECDSA, cada firma digital necesita usar un número m distinto; si dos firmas tienen el mismo valor de m, el parámetro secreto k puede ser recuperado.  !Pero la PS3 usa el mismo valor de m siempre!  Los hackers alemanes aprovecharon esa vulnerabilidad (que no es un fallo criptográfico, sino de implementación) y sus conocimientos técnicos sobre la consola (que Sony, en un habitual ejercicio de arrogancia, pensaba que nadie más sabría) para obtener la clave k.  Pueden ustedes ver la conferencia aquí (en inglés).  Me gustó especialmente el momento en la que el hacker dice: por alguna razón, Sony usa el mismo número todo el tiempo (parte 3, minuto 7:09).  !El auditorio estalló en risas y aplausos!  Era el momento en el que los asistentes proclamaban el descubrimiento como un epic fail, que es la forma técnica de decir "la gran cagada."

¿Y qué se puede hacer con la clave k?  Pues firmar cosas.  Y con ello se desmonta toda la seguridad de la Playstation 3.  Todas las capas de algoritmos, protocolos y cifrados que Sony ha instalado en la PS3 se vienen abajo, igual que un castillo de cartas.  Epic fail.

El problema es de solución muy difícil.  Aunque puede fabricarse una nueva clave k, en la práctica eso significaría un problema aún mayor.  Sony tendría que distribuir su clave nueva a todas las PS3 del mundo.  ¿Cómo harían eso?  La única forma práctica sería mediante una actualización del firmware, y a bote pronto se me ocurren cuatro motivos por los que no sería una buena idea:
  • La nueva clave sería muy vulnerable, ya que se debería transportar hasta la consola.  Cualquiera podría captar la actualización de firmware y obtener la clave. 
  • La nueva clave tendría que ser almacenada de forma segura en algún lugar de la PS3.  ¿Cómo hacerlo, y al mismo tiempo evitar que alguien la encuentre?
  • Las actualizaciones son voluntarias.  Si un usuario no puede o no quiere actualizar su firmware ¿cómo le van a obligar?
  • En el caso de que la actualización se llevase a caso correctamente, los juegos antiguos (que están firmados con la clave antigua) dejarían de funcionar.
La alternativa sería efectuar un "recall" a escala mundial y hacer que todos los usuarios llevasen sus antiguos juegos y PS3 a un centro autorizado por Sony para cambiar las claves y/o cambiar el juego antiguo por uno nuevo (que llevase la nueva clave).  Cualquiera que sea la opción escogida por Sony, se trataría de un problema de re-distribución de clave sin precedentes en la historia.  Los costes serían astronómicos, por no hablar de la pérdida de credibilidad y de cuota de mercado.  En los próximos meses, veremos cómo Sony intenta salir de esta.  Pero creo que, hagan lo que hagan, van a llevar el Epic Fail tatuado en la frente.

Es el tipo de cosas que pasan en nuestro interconectado siglo XXI cuando alguien olvida la regla de oro del buen vendedor: EL CLIENTE SIEMPRE TIENE RAZÓN.

PD: He aquí la clave k, escrita en lenguaje hexadecimal, (web original)

BA 90 55 91 68 61 B9 77 ED CB ED 92 00 50 92 F6 6C 7A 3D 8D

Actualización:  A los pocos minutos de escribir este post, me encuentro con un artículo en el que un portavoz de Sony reconoce el hackeo y afirman que "arreglaremos el asunto mediante actualizaciones de red, pero puesto que es un asunto de seguridad, no vamos a proporcionarle [al periodista] más detalles".

martes, 4 de enero de 2011

Censurando los ataques a tarjetas con chip

El uso de chips en tarjetas de crédito está creciendo como la espuma en los últimos tiempos.  La industria nos lo vende como un método más seguro, y ciertamente parece más difícil adivinar un PIN que leer una banda magnética.  Resulta curioso cómo les ha entrado a los bancos la prisa para colocarnos estas nuevas tarjetas.  Yo ya había oído en 2002 hablar a técnicos del BBVA sobre este sistema, y de cómo iban a implantarlo de hoy a mañana.  Por fin, se ha  decidido.Y ahora, yo mismo tengo dos tarjetas con chip en el cajón.  Me las ha enviado mi banco, sin yo pedirlas, un año antes de que las antiguas caduquen.  En el Mercadona de mi barrio, siempre que pueden, usan el chip antes que la banda magnética.

Resulta conmovedor lo que nos quieren los bancos.  Siempre pensando en nuestra seguridad.  Por supuesto, reducir el fraude también les beneficia a ellos. Pero hay un pequeño detalle que nos cuentan.  Resulta que la responsabilidad por un uso fraudulento o incorrecto de una tarjeta bancaria varía según el método utilizado.  Si usamos la banda magnética y firmamos el recibo, se supone que lo hemos hecho todo correctamente, y si hay algún problema, la culpa se achaca al vendedor o al banco emisor de la tarjeta.  Sin embargo, se supone que el PIN del chip es personal e intransferible, así que en caso de fraude el bando supone que el responsable del mal uso es el usuario.  De ese modo, transfieren la responsabilidad al usuario, quien se las verá canutas para demostrar que no le dejó a nadie su PIN.

En el contrato con mi banco, por ejemplo, hay una cláusula que dice que será mi responsabilidad custodiar en secreto mis elementos de seguridad identifativos (PIN).  Si alguien me los copia, deberé comunicarlo sin tardanza.  De otro modo, lo que compre el ladrón a mi nombre lo tendré que pagar yo.  Aunque una sentencia del Tribunal Supremo lo considera práctica abusiva y por tanto nula, tengo mis dudas sobre sus efectos.

Todo esto no debería ser problema si el sistema de chip fuese realmente seguro.  Pero resulta que no lo es.  En Febrero de 2010, un grupo de investigadores de la Universidad de Cambridbe encontró una forma de solventar la seguridad del sistema.  El problema surge porque los sistemas de chip y de banda magnética deben coexistir.  En ciertas circunstancias, un intermediario malicioso puede introducirse en el sistema par que la tarjeta no verifique el PIN introducido, y al mismo tiempo engaña al terminal (el tarjetero de un restaurante, por ejemplo) para que se crea que el PIN es válido. El ataque, que yo denominé "Fish ´n chips" (ver el Boletín Enigma 74), se basa en una vulnerabilidad conocida desde al menos 1999, y no es sólo un ejercicio teórico sobre el papel.  Según los investigadores de Cambridge "contactan con nosotros, de forma regular, clientes bancarios que sufrieron transacciones fraudulentas poco después de que les robaran la tarjeta, que declaran que no escribieron en ninguna parte su PIN, pero que a pesar de eso el banco les acusa de negligencia y rehúsa cubrir las pérdidas. El ataque que describimos aquí puede explicar algunos de esos casos"

Ahora la industria bancaria da un nuevo giro de tuerca.  En lugar de reconocer el problema o intentar arreglarlo, intenta acallar a los mensajeros.  La víctima ahora es Omar Choudary.  De origen rumano (y madrileño de nacimiento), en la actualidad es doctorando en la Universidad de Cambridge, y trabaja en temas de autenticación y seguridad en móviles.  Una de las cosas que Choudary ha hecho es construir un aparato llamado "SmartCard Detective", diseñado para demostrar la vulnerabilidad antes mencionada en los sistemas EMV (se llama así al protocolo que utilizan las tarjetas con chip) y, más importante, para prevenirla.  Es un módulo de seguridad adicional.  El SmartCard Detective es su trabajo para obtener el título de Master of Philosophy.

Resulta que dicho trabajo (que pueden consultar aquí) ha irritado a la industria más de la cuenta.  La UK Cards Association (UKCA) envió el pasado 1 de Diciembre una nota a la Universidad de Cambridge, en la que afirman que la publicación de esa tesis sobrepasa las fronteras de la "revelación responsable", y piden que la investigación de Choudary "sea retirada del acceso público inmediatamente".  Los motivos son los de siempre en estos casos: los malos podrán usar esos conocimientos para perpetrar fraudes.  Como si no lo supiesen a estas alturas.

Cualquier universidad española se hubiera arrugado de inmediato y les hubiera puesto la cabeza del investigador en bandeja de plata.  No así Cambridge. Ross Anderson, investigador en Cambridge, co-tutor de Choudary y una autoridad mundialmente reconocida en el campo de la criptografía (además de ser co-autor del artículo de Febrero de 2010), les puso las peras a cuarto en una carta escrita el día de Nochebuena.  Negó que se hubiese revelado información nueva y rechazó las acusaciones de la UKCA.  Ante la acusación de que estaban minando la confianza del público, replicó:

"Lo que dará confianza del público a esos pagos es la prueba de que los bancos son francos y honestos al admitir sus debilidades, y diligentes al poner los remedios necesarios.  Su carta muestra que, por el contrario, sus bancos miembros hacen lamentables esfuerzos por denigrar el trabajo de los que se encuentran fuera de su club, y de hecho los censuran."

También, con cierto deje de sarcasmo, escribe: "Me alegro de constatar en su carta que el ataque ya no funciona, y alegre de que la industria haya conseguido tratar por fin con este problema de seguridad, aunque se tomaron su tiempo tras la revelación original allá por 2009"

Y añade con esta andanada, que creo vale la pena resaltar:

"Ustedes parecen creer que nosotros podríamos censurar una tesis que es legal y ya en dominio público, tan sólo porque un poderoso interés lo encuentra inconveniente.  Esto muestra una profunda incomprensión hacia lo que hacen las universidades y cómo trabajamos.  Cambridge es la Universidad de Erasmus, de Newton y de Darwin; censurar escritos que ofenden a los poderosos es de lo más ofensivo contra nuestros valores.  Aunque la decisión de poner la tesis online fue de Omar, no tenemos otra alternativa que la de respaldarle.  !Esto sería así aunque no estuviésemos de acuerdo con el material [de la tesis]!.  Por consiguiente, he autorizado que la tesis sea reproducida como Informe Técnico del Laboratorio Informático.  De esa forma será más fácil de encontrar y citar, y asegurará su presencia permanente en nuestra web

Aquí me temo que la cosa no pasaría de una nota de prensa, una Universidad atemorizada y un investigador amordazado.  Como profesor universitario, debo declarar que ojalá tuviésemos aquí ese coraje e independencia. !Qué envidia!

En cuanto a la UKCA, ya en Febrero de 2010 publicaron un comunicado en el que negaban la mayor: el sistema Chip+PIN es estupendo, no hay pruebas de que se esté usando en la práctica, lo estamos haciendo muy bien, gracias por llamar.  En lo que respecta a su intento de censura, guardan silencio.  Hasta el momento de escribir estas líneas, la última palabra la tiene Cambridge.  En el Light Blue Torchpaper (el weblog del grupo de seguridad de laboratorio informático de Cambridge), un artículo titulado Feliz Navidad a todos los banqueros, el propio Ross Anderson afirma que presentarán los resultados en la conferencia Financial Cryptography de 2011, el próximo 2 de Marzo.

Al menos, hay un consuelo.  El banco Barclays Bank ya ha arreglado esta vulnerabilidad.  Lo que demuestra que, si hay ganas, el problema se arregla.  Por lo menos, en el banco Barclays de Inglaterra.  Mientras no llegue aquí la solución, creo que mis relucientes tarjetas nuevas se van a quedar en el cajón una temporada.