Un error en la GPU de los Samsung Galaxy S9 puede provocar reinicios

Escrito por Nacho Teso (@nachoteso)

Los Samsung Galaxy S9 Galaxy S9 Plus son los actuales tope de gama de Samsung. La firma coreana los ofrece en dos versiones según utilicen un procesador Exynos o un procesador Qualcomm. En el caso de este segundo, la GPU puede dar problemas y provocar reinicios.

El problema: los Samsung Galaxy S9 con Snapdragon 845 sufren un fallo en la GPU

Como decimos, los Samsung Galaxy S9 están a la venta en diferentes modelos. Mientras que en algunos territorios se utiliza una CPU propia, el  Exynos 9810; en otros territorios se utiliza un chip de Qualcomm, el Snapdragon 845. La construcción de estos chips hace que incluyan una GPU distinta, que en este caso es el Adreno 630.

En líneas generales, un Galaxy S con CPU Snapdragon se comporta mejor que uno con CPU Exynos. Sin embargo, al tener diferentes componentes, es más probable encontrar fallos en uno y que no aparezca en el otro. Esto pasa en el caso que nos ocupa hoy, con ese Adreno 630 siendo la causa de los reinicios del Samsung Galaxy S9.

El motivo: el navegador de Samsung y la memoria compartida de la CPU y la GPU

¿Cómo se producen estos reinicios? Si utilizas un Galaxy S9 con CPU Snapdragon y utilizas el navegador web de serie de Samsung, es posible que un certificado WebGL (Web Graphics Library, un estándar para renderizar gráficos 3D) provoque un reinicio total del dispositivo. Concretamente, a la hora de renderizar un shader, un programa que permite crear las imágenes.

Como decimos, esto ocurre con el navegador de Samsung. Sin embargo, al usar Chrome o Edge en Android, el navegador también se congelará antes de cerrarse. Opera congelará el teléfono, mientras que Firefox simplemente cerrará la aplicación. Todo esto es peligroso, dado que, básicamente, se pueden introducir estos shaders en sitios web para provocar los bloqueos y explotar vulnerabilidades.

¿Y por qué solo ocurre con el Snapdragon 845? Por la construcción de estos chips. Tanto el Snapdragon como el Adreno deben valerse de la misma memoria RAM. Al intentar renderizar estos certificados, el Adreno no puede completar el proceso para acceder a la RAM, y eso es lo que acaba provocando los reinicios.

La solución: Samsung y Qualcomm ya están al corriente

Por el momento no existe solución para evitar estos reinicios, lo que convierte este asunto en una vulnerabilidad que podría ser explotada. Aun así, tanto Samsung como Qualcomm están al corriente de la situación y ya se está trabajando en una solución. Por tanto, recomendamos que estéis al tanto de actualizaciones del sistema y del propio navegador de Samsung para estar protegidos lo antes posible.

Fuente > XDA-Developers