La puerta trasera (en iOS) de la discordia

lunes, 28 de julio de 2014

Jonathan Zdziarski, en una conferencia en el Hackers On Planet Earth afirmó que ciertos servicios de iOS no documentados oficialmente pueden ser usados para eludir el cifrado y acceder a los datos de usuario. La noticia corre en los medios: "Apple instala una puerta trasera en todos los teléfonos". Y lo cierto es que en los matices (como siempre) se encuentra la verdad. No es para tanto.

Resumiendo, Zdziarski mostró un estudio (según él, en una sala llena de "hackers") sobre servicios que llevaban ya un tiempo corriendo en iOS (e incluso en otros sistemas operativos de Apple)  y que permitían obtener información muy sensible del teléfono a terceras partes. Las intenciones del estudio/recopilación quedan aquí descritas:

Un extracto de la presentación que aclara las intenciones

Y la propuesta parece bien resumida y matizada como declaración de intenciones. También ofrece una breve lista de lo que no es el estudio, con la intención de que no se confundan los términos. Sin embargo, consigue justo lo contrario, centrar la polémica en la palabra "back door". Esta palabra no se vuelve a citar en todo el documento... excepto en el título, que es lo que todo el mundo va a leer (probablemente en exclusiva): "Identifying Back Doors, Attack Points, and Surveillance Mechanisms in iOS Devices"

Un extracto de la presentación para aclarar lo que no es

Y aquí aparece (además de en el título) por segunda y última vez la palabra. La omisión de respuesta de Tim Cook a lo que él llama "puertas traseras" parece confirmar sus sospechas. Al menos es la impresión que da en la transparencia expuesta. ¿Por qué los cita como "puertas traseras"? Parece que él mismo la elige ateniéndose a la definición de "puerta trasera" que ofrece OWASP:
  • Una entrada en el sistema que permite eludir políticas de seguridad.
  • Una forma no documentada de acceder al ordenador o los datos que contiene.
  • Una forma de entrar en el sistema protegido sin la contraseña.
Y parece que sus investigaciones pueden incluirse dentro de esas definiciones. Y no es mentira... pero tampoco es del todo cierto. Siendo estrictos, muchas funcionalidades aceptadas de gran cantidad de software, podría incluirse bajo esa definición. Incluso cualquier vulnerabilidad entraría en la segunda acepción. Si Zdziarski no quería que se confundieran los términos, apelando a la paranoia que sugiere hoy la palabra "puerta trasera", no debería haber llamado a su estudio "Identifying Back Doors, Attack Points, and Surveillance Mechanisms in iOS Devices". Tendría que haber trabajado el énfasis en que en realidad, se trata del uso (o abuso) de ciertos servicios de diagnóstico no documentados, y que para sacar provecho de ellos es necesario tener acceso al dispositivo.

Un ejercicio sano

El investigador realiza un ejercicio sano y necesario: comienza cuestionando todos los servicios que corren en iOS, preguntándose qué hacen y por qué están ahí. También cómo podrían servir a un tercero (un forense, que es su especialidad) para obtener información sensible. Teoriza sobre posibles funcionalidades y para qué pueden servir. Evidentemente, deben tener algún fin legítimo, de lo contrario, sí que estaríamos hablando de un mecanismo de espionaje. Zdziarski argumenta y se defiende frente a la confusión con dos postulados:
  • Algunos de los servicios de los que habló solo han sido explicados oficialmente después de su presentación y por tanto, tras "la acusación".
  • El problema con otros servicios encontrados en el teléfono no es que sean puertas traseras, sino grandes oportunidades de ataque porque están muy mal programados o ideados. Esto ya está expuesto en la primera imagen de la presentación.

La defensa de Apple

Apple emitió un comunicado. Fundamentalmente, algunas de las funcionalidades que cuestiona Zdziarski están pensadas para el diagnóstico profesional o para entornos corporativos, donde la información del teléfono debe estar disponible para un hipotético administrador y, bajo ciertas circunstancias controladas, es legítimo que este pueda recuperar información. Dados los titulares de los medios, sería como acusar a Microsoft de poner una puerta trasera en todos los Windows porque, bajo ciertas condiciones, un administrador de dominio puede llegar a eludir el sistema de cifrado integrado BitCrypt de un Windows. Podemos discutir sobre si están mejor o peor implementados, o si necesitan mejorar su seguridad o si su lógica contiene algún problema que permitiría aprovecharlos para algún ataque (se trataría de alguna vulnerabilidad entonces) pero no por ello podemos hablar necesariamente de "puertas traseras".

Una de las acusaciones más graves es que en realidad, se podría acceder a la información del teléfono aunque estuviera cifrada, protegida con código PIN o huella dactilar. Pero para ello el atacante debería tener acceso físico y estar conectado al teléfono a través de un sistema con el que previamente se haya pareado. Aunque luego Zdziarski explica que se puede eludir el pareo... De hecho, Apple se ha defendido alegando que son servicios necesarios para el diagnóstico, fundamentalmente. Pero Zdziarski siempre ha creído que esto iba más allá y sugirió que podría ser usado por terceros (la NSA), pero sin acusar directamente a Apple de trabajar con ellos. Quizás esta frase no ha hecho más que lanzar más leña al fuego y alimentar conspiraciones

Porque según afirma, estas funcionalidades están disponibles para todos y cada uno de los usuarios, independientemente de que se encuentren en un entorno corporativo. Y a los usuarios ni se les pregunta ni los pueden apagar. ¿Es esto una puerta trasera entonces? Es cierto que este es el punto que Apple no ha explicado realmente.

En cualquier caso Zdziarski aclara más tarde su postura, hablando de que no sugiere ningún tipo de conspiración. Que es posible que algunas compañías se hayan aprovechado de la existencia e implementación de esos servicios, y que simplemente sugiere a Apple que hay servicios que requieren una explicación más detallada y que podrían ser mejorados.

Lecciones

Zdziarski ha hecho un excelente trabajo. Pero sabía muy probablemente que sus palabras serían confundidas y quizás aprovechó el tirón mediático. Argumentar que una charla se ofrece en una sala llena de hackers es ingenuo, puesto que evidentemente sabe que sus palabras trascenderán (y serán malinterpretadas) si no se trata de una conferencia privada. Apple por su parte, simplemente defiende sus intereses, como es lógico y no parece que vaya a reconocer errores si los ha habido (no es muy abierta en ese sentido).

Zdziarski nos ha recordado algo interesante que no conviene olvidar, en cualquier caso. Los teléfonos contienen cada vez más información privada. El acceso físico es mucho más sencillo para el atacante y las posibilidades de acceder a la información son mucho mayores. En estos casos el bloqueo por PIN o huella dactilar no solucionan nada.

Pero sobre todo, que el periodismo y la industria de la seguridad están siempre "condenados a entenderse" (unos generan noticias, otros ofrecen difusión) y ambos deben realizar una mejor labor de comunicación y transparencia. Zdziarski afirma que lo explicó correctamente, dejando que la audiencia sacara sus propias conclusiones... y quizás ahí se ha originado el problema.

Sergio de los Santos
ssantos@11paths.com