Seguridad y privacidad

Un fallo de SMS en Android sin clic provoca una denegación de servicio persistente

Un mensaje WAP Push malformado bloquea los servicios de telefonía de Android, creando un bucle de reinicio que impide las llamadas de emergencia y puede provocar el bloqueo por parte de los operadores.

Ilustración de un smartphone comprometido por un mensaje SMS malicioso
Ilustración generada para este artículo

Traducido automáticamente del original en inglés.

Una vulnerabilidad crítica sin clic en Android permite a los atacantes desactivar remotamente dispositivos móviles mediante el envío de un único SMS de datos malformado. Descubierto y reportado a mediados de 2026, este fallo afecta a múltiples fabricantes de dispositivos y persiste tras los reinicios hasta que se elimina manualmente o se aplica un parche. Google abordó el problema en la actualización de seguridad de octubre de 2026, pero los dispositivos sin parchear siguen expuestos al riesgo de interrupción permanente del servicio.

Qué ocurrió

La vulnerabilidad explota la forma en que Android procesa los mensajes WAP Push, un protocolo heredado utilizado para entregar configuraciones y contenido multimedia a través de SMS. A diferencia de los mensajes de texto estándar, estos SMS de datos se procesan silenciosamente en segundo plano sin interacción del usuario ni notificaciones visibles. Al atacante solo le hace falta el número de teléfono de la víctima para enviar un paquete especialmente diseñado que provoca un fallo en el subsistema de telefonía.

Cuando llega el mensaje malicioso, el proceso com.android.phone falla inmediatamente. Esto provoca que las llamadas de voz activas se corten con un error DisconnectCause CS_DEATH y genera un apagón telefónico breve de uno a dos segundos. Como los operadores reenvían automáticamente los mensajes no confirmados, el teléfono entra en un ciclo destructivo. Cada intento de reenvío vuelve a provocar el fallo, lo que conduce a cortes intermitentes que pueden durar días. En pruebas, aproximadamente veinte mensajes de este tipo dejaron los dispositivos completamente inutilizables durante periodos prolongados.

El impacto es particularmente grave porque el mensaje malformado permanece en cola en el sistema. Cada vez que el dispositivo arranca, intenta procesar el mensaje pendiente, vuelve a fallar y se reinicia. Este bucle continúa hasta que el mensaje se elimina o se restablece el dispositivo de fábrica. El problema se reprodujo con una consistencia del 100% en dispositivos Pixel 9 con firmware de abril de 2026, así como en varios modelos Samsung Galaxy y de la serie A.

Cómo funciona

La causa raíz reside en cómo el framework de Android decodifica las Unidades de Datos del Protocolo WAP Push (PDU). Concretamente, el componente WapPushOverSms.java no valida la longitud de los datos de cabecera antes de convertirlos a entero. Cuando una PDU maliciosa contiene un valor de longitud de cabecera negativo o superior al tamaño real del paquete, el sistema lanza una excepción que previamente no era capturada por la lógica de manejo de errores. Esta excepción no controlada bloquea todo el proceso de telefonía.

La solución recomendada inicialmente por Google implicaba añadir una comprobación de límites para validar la longitud de la cabecera antes del procesamiento. Sin embargo, el parche final incluido en la versión de seguridad de octubre de 2026 adoptó un enfoque diferente. En lugar de limitarse a validar la entrada, los ingenieros ampliaron el manejador de excepciones para capturar todos los errores RuntimeException durante la decodificación. Crucialmente, el código actualizado ahora elimina el mensaje tóxico de la tabla de almacenamiento sin procesar si la decodificación falla. Esto evita que el mensaje sea reintentado en arranques posteriores o reenvíos del operador, rompiendo efectivamente el bucle de denegación de servicio.

Detalles clave

  • Explotación sin clic: No se requiere interacción del usuario; el mensaje nunca aparece en la bandeja de entrada.
  • DoS persistente: El mensaje malformado sobrevive a los reinicios, provocando un bucle de fallos cada ~90 segundos mediante Android RescueParty.
  • Fallo en llamadas de emergencia: Las llamadas activas se cortan y el dispositivo no puede conectarse de forma fiable a servicios de emergencia como el 000.
  • Amplificación por parte del operador: El reenvío de red de mensajes no confirmados sostiene el ataque sin necesidad de mayor intervención del atacante.
  • Complejidad de recuperación: Eliminar el mensaje requiere acceso ADB para borrar filas específicas de content://sms/raw, lo cual es difícil para usuarios no técnicos.
  • Disponibilidad del parche: La corrección está incluida en la actualización de seguridad de Android de octubre de 2026 para Android 14 a 17.

Por qué importa

Para ingenieros de software y profesionales de seguridad, esta vulnerabilidad destaca los peligros de la confianza implícita en protocolos heredados. WAP Push es una tecnología antigua, pero sigue integrada en las pilas modernas de Android. La falta de validación de longitudes de entrada antes de la conversión de tipos es un error clásico que condujo a una denegación de servicio remota y persistente. Demuestra que incluso procesos silenciosos en segundo plano pueden tener efectos catastróficos sobre la disponibilidad del dispositivo si el manejo de errores es insuficiente.

Las implicaciones más amplias van más allá del inconveniente técnico. En Australia, el acceso a las llamadas de emergencia es un requisito regulatorio obligatorio. Bajo la Determinación de Servicios de Llamadas de Emergencia de Telecomunicaciones, los operadores deben identificar y bloquear dispositivos que no puedan alcanzar los servicios de emergencia. Si un teléfono queda atrapado en un bucle de fallos, no puede marcar el 000. En consecuencia, los operadores están obligados a cortar el servicio al terminal afectado después de 28 días si el problema no se resuelve. Esto crea un resultado perverso donde un ataque exitoso lleva a que el dispositivo de la víctima sea excluido completamente de la red, en lugar de estar simplemente interrumpido temporalmente.

Qué puedes hacer

  • Actualiza inmediatamente: Asegúrate de que tu dispositivo tenga instalado el parche de seguridad de Android de octubre de 2026 o posterior.
  • Verifica el nivel del parche: Comprueba Configuración > Seguridad > Actualización de seguridad para confirmar tu nivel de parche actual.
  • Usa ADB para la recuperación: Si estás atrapado en un bucle de reinicio, usa Android Debug Bridge para consultar y eliminar filas de content://sms/raw donde el puerto de destino sea 134020.
  • Evita el restablecimiento de fábrica: No selecciones "borrar datos" en modo de recuperación salvo que sea absolutamente necesario, ya que esto borra todos los datos del usuario.
  • Restringe permisos de SMS: Aunque no es una solución completa, limitar qué aplicaciones pueden enviar o recibir SMS puede reducir la exposición a otros vectores.
  • Monitorea avisos del operador: Ten en cuenta que la incapacidad prolongada para realizar llamadas de emergencia puede resultar en la suspensión automática del servicio por parte de tu operador.
  • #android security
  • #zero-click exploit
  • #denial of service
  • #mobile vulnerabilities
  • #wap push

Herramientas de la Tienda de Bytechap

Seguir leyendo

Todos los artículos