F-Droid y la vulnerabilidad de Janus

La Vulnerabilidad de Janus ha surgido en el mundo de Android, y nos hemos apresurado a mantenerlo lejos.

1 2

3

Primero, f-droid.org, guardianproject.info/fdroid and apt.izzysoft.de/fdroid fueron escaneados en busca de posibles aplicaciones afectadas por Janus y no fue encontrada ninguna. La mayor proteccion de f-droid.org en contra de malware es el requisito de que todo tiene que estar construido de fuente, humanos revisan todas las aplicaciones que son agregadas, y una fuente tarball por cada creacion es almacenada para siempre. Los programadores maliciosos no quieren entregar el codigo fuente de su malware y no quieren que sus actividades sean grabadas permanentemente en git, asi que este proceso los mantiene alejados. Ningun malware ha sido encontrado en f-droid.org en 7 años de operacion.

F-Droid es tambien un ecosistema abierto, lo que significa que muchas personas estan obteniendo aplicaciones de otras fuentes. Por esta razon, estamos trabajando para agregar deteccion de Janus a la aplicacion cliente Android F-Droid. Cuando una APK afectada con Janus es encontrada, requirira al usuario installarla en la lista de “ Actualizaciones” . Si una APK afectada por anus es descargada de un repositorio que le ha permitido entrar, la instalacion sera bloqueada.

Tambien hay algunas buenas noticias relacionadas: resulta que ninguna de los 10 ejemplos de Janus que tenemos pueden pasar fdroid update. La mayoria de ellos fallaron la verificacion cuando F-droid lla la actualizacion calls aapt dump badging. El unico archivo que paso esas pruebas fue el lanzamiento publico Janus demo APK. Pero tenia fechas extrañas como 2042-14-03 00:62:15 en las entradas del ZIP, probablemente por los trucos necesarios para armar el archivo DEX+ZIP. Esto detono un fallo en fdroid update, durante el analisis de la fecha de AndroidManifest.xml. Python señala que no existe el mes 14. Este error evita que la APK sea instalada en el repositorio. Tambien hemos agregado un bloqueo explicito para APKs intentando explotar Janus.

Tambien, apksigner es mejor verificando firmas de APK, y muchos ejemplos de Janus fallaron. Si apksigner esta instalado, entonces fdroid build lo usa. Si una APK esta firmada con una firma APK v2, entonces cosas como explotaciones de Janus no son posibles, Asi que si estas trabajando con APKs que no has construido de la fuente, asegurate de instalar apksigner.

Asi que podemos asegurar que seria muy dificil poner una aplicacion afectada por Janus inadvertidamente en un repositorio F-Droid. Y con las medidas de seguridad nuevas en la aplicacion cliente de Android, un repositorio no puede obligar a un usuario a instalarlo.