Vulnerabilidad crítica en protobuf.js amenaza miles de servicios en Google Cloud y Firebase
La popular biblioteca JavaScript protobuf.js, utilizada para trabajar con el formato Protocol Buffers, contiene una vulnerabilidad crítica que permite a los atacantes ejecutar código arbitrario en el servidor. El problema afecta a millones de servicios, especialmente aquellos que se ejecutan en Google Cloud y Firebase.
Cómo funciona el ataque
La vulnerabilidad está relacionada con el mecanismo de procesamiento de archivos de esquema protobuf. La biblioteca genera código JavaScript basado en la descripción de datos y lo ejecuta mediante una función similar a eval. Si se inserta código malicioso en el nombre del tipo o campo del esquema, se ejecutará sin validación.
El ataque no requiere acciones complejas: basta con que la aplicación cargue un archivo de esquema manipulado desde una fuente externa. Dichos esquemas a menudo se obtienen de servicios asociados, repositorios compartidos o a través de la autodescripción de gRPC. Después de la carga, un solo mensaje ordinario activa el código malicioso.
Alcance de la amenaza
- 52 millones de descargas semanales: esa es la cantidad de veces que se descarga protobuf.js.
- La biblioteca suele ser una dependencia oculta, por lo que el número real de proyectos vulnerables puede ser mayor.
- Las versiones hasta la 8.0.0 y 7.5.4 están afectadas.
- A la vulnerabilidad se le ha asignado el identificador GHSA-xq3m-2v4x-88gg y una puntuación CVSS de 9.4.
Puntos clave
- La vulnerabilidad permite la ejecución de código en el servidor sin autenticación.
- Es posible un ataque si la aplicación carga esquemas desde fuentes externas.
- Se han publicado correcciones en las versiones 8.0.1 y 7.5.5.
- Aún no se han reportado ataques públicos, pero la explotación es técnicamente simple.
- Los servicios en Google Cloud, Firebase y aquellos que usan gRPC son particularmente vulnerables.
Impacto empresarial
Si un atacante compromete una sola fuente de esquemas, puede:
- Obtener acceso a tokens y datos de usuario.
- Infiltrarse en servicios internos.
- Robar información confidencial.
Dada la popularidad de protobuf.js, el ataque podría afectar a miles de empresas. Los desarrolladores deben actualizar urgentemente la biblioteca y revisar todas las dependencias, especialmente aquellas que cargan esquemas desde fuentes externas.
Recomendaciones
- Actualice inmediatamente protobuf.js a la versión 8.0.1 o 7.5.5.
- Verifique todos los proyectos en busca de dependencias ocultas de versiones vulnerables.
- Revise los lugares donde la aplicación carga archivos de esquema desde fuentes externas.
- Considere validar los esquemas antes de cargarlos.
- Utilice mecanismos de control de integridad para los archivos descargados.
— Editorial Team
Aún no hay comentarios.