La técnica de manipulación «Snowblind» podría ahuyentar a los usuarios de Android
Hackers del Sudeste Asiático han utilizado contra sí mismos el mejor mecanismo de seguridad de aplicaciones de Android cortando la conexión entre el kernel y la aplicación para realizar cualquier tipo de manipulación a su elección.
Este método está siendo utilizado por un nuevo malware llamado «Snowblind», que tiene como objetivo al menos una aplicación bancaria en el sudeste asiático. Snowblind abusa de la omnipresente y excelente característica de seguridad de Linux «seccomp» (abreviatura de «computación segura») para interceptar y modificar llamadas al sistema en tránsito. Esto aísla una aplicación de los protocolos y la información que necesita para detectar manipulaciones maliciosas.
«Cuando se trata de seguridad, nada es a prueba de balas», dice Jan Vidar Krey, vicepresidente de ingeniería de Promon, lamentando el uso de una característica de seguridad tan central de Android como arma. «Todo se puede eludir hasta cierto punto, lo cual es una forma dura y brutal de verlo, pero esa es la realidad».
El juego del gato y el ratón de Android contra la manipulación
Como Promon en su informe sobre SnowblindLa forma más común que utilizan los piratas informáticos para minar los dispositivos Android es engañar a los usuarios, concédeles permisos de accesoque pueden utilizar para diversos fines maliciosos.
Sin embargo, como esto es tan común, los desarrolladores experimentados ya saben cómo solucionarlo. Por ejemplo, las aplicaciones pueden consultar el sistema operativo para buscar servicios de accesibilidad que no sean de confianza y luego responder en consecuencia, explica Promon en su informe.
Los atacantes, a su vez, pueden intentar identificar y sabotear las partes del código de una aplicación que realizan esta tarea «Reempacar» ellos: descargar, modificar y volver a cargar versiones maliciosas de aplicaciones legítimas.
Para evitar el reempaquetado, los desarrolladores pueden ser proactivos protegiendo su código mediante ofuscación, o pueden ser reactivos abriendo el archivo de paquete de Android (APK) de una aplicación en el disco e inspeccionando su contenido.
Sin embargo, los atacantes tienen sus propios métodos para ocultar su reempaquetado malicioso. Por ejemplo, puede conectarse a este proceso de lectura de archivos a prueba de manipulaciones y redirigirlo a una versión no modificada de la misma aplicación. Pero los desarrolladores lo saben y también pueden responder implementando las llamadas al sistema necesarias en bibliotecas nativas en lugar de la biblioteca estándar C.
En este punto, los atacantes se vieron acorralados y necesitaban una nueva forma de evitar que las aplicaciones seguras detectaran su manipulación.
Protección contra manipulaciones de persianas
Snowblind, la próxima evolución de este gran juego, intenta algo nuevo. La atención no se centra en los servicios de accesibilidad en sí ni en el código de la aplicación, sino en la función de seguridad Seccomp intermedia.
«Este mecanismo Seccomp es la base de todo lo que se ve hoy en la nube», señala Krey. Además de Android, desde la versión 8.0 Oreo, lo utilizan tecnologías de contenedorización como Docker (por defecto) y Kubernetes, navegadores Chromium y más.
Funciona ejecutando aplicaciones en un sandbox que permite o bloquea llamadas al sistema operativo definido por un administrador del sistema. Pero hoy, explica Krey, “en Android, vemos malware que utiliza los mismos trucos de seguridad para evitar que una aplicación vea lo que realmente está sucediendo en el resto del sistema. Y básicamente sólo muestra lo que el atacante quiere ver”.
Primero, Snowblind vuelve a empaquetar una aplicación con una biblioteca que se carga antes de que se pueda ejecutar cualquier mecanismo de protección contra manipulaciones. Esta biblioteca contiene un «filtro» Seccomp que busca e intercepta muy pocas llamadas al sistema seleccionadas, como «open()» utilizada para abrir archivos u otros recursos. Antes de que se pueda ejecutar la llamada, utiliza un controlador de señales para modificarla y apuntar a un archivo que es la versión original sin modificar de la aplicación.
En otras palabras, como un hombrecito en medio del dispositivo, el malware intercepta y desvía las señales que una aplicación necesita para detectar si ha sido manipulada.
No hay soluciones perfectas
Una vez que una aplicación está completamente aislada, un troyano bancario puede usar libremente los Servicios de Accesibilidad para realizar una variedad de acciones maliciosas en un dispositivo, incluido el robo y la exfiltración de credenciales, la interceptación de códigos de autenticación de dos factores (2FA) y más. Deshabilite las funciones de seguridad de la aplicación.
Y Promon señaló que la estrategia de Snowblind se puede utilizar para algo más que eludir las protecciones contra manipulaciones en los teléfonos Android. En entornos de nube o contenedores, navegadores Chromium o cualquier otro tipo de sistema basado en Seccomp, en teoría se puede utilizar para rastrear y manipular cualquier código que dependa de llamadas al sistema por cualquier motivo.
¿Cómo reaccionarán entonces los defensores? No existe una solución obvia e integral para Krey, ya que Seccomp es fundamental para proteger estos sistemas. “Seccomp es una parte integral de muchas aplicaciones diferentes”, explica, “así que no sé realmente cómo lo solucionarían. Y la verdad es que tampoco veo que deban arreglarlo, la verdad. Es algo paradójico”.
Dark Reading se acercó a Google para obtener toda la información posible sobre la protección contra manipulaciones de Snowblind.
Este contenido de ciberseguridad nos ha llegado de: DarkReading
Podrás encontrar la noticia original en el enlace que sigue: https://www.darkreading.com/remote-workforce/snowblind-tampering-technique-may-drive-android-users-adrift