Los actores de amenazas están aprovechando una mala configuración en Selenium Grid, un popular marco de prueba de aplicaciones web, para implementar una herramienta XMRig modificada para extraer la criptomoneda Monero.
Selenium Grid es de código abierto y permite a los desarrolladores automatizar las pruebas en múltiples máquinas y navegadores. Se utiliza en entornos de nube y tiene más de 100 millones de accesos a Docker Hub.
Las pruebas se distribuyen desde un centro central a los nodos de servicio a través de la interacción API, donde se ejecutan. Los nodos cuentan con diferentes sistemas operativos, navegadores y otras modificaciones del entorno para proporcionar un resultado integral.
Fuente: Wiz
Los investigadores de la startup de seguridad en la nube Wiz descubrieron que la actividad maliciosa que rastrean con el nombre “SeleniumGreed” se ha estado ejecutando durante más de un año y aprovecha la falta de autenticación del servicio en la configuración predeterminada.
SelenioAtaques de avaricia
Según la investigación de Wiz, Selenium Grid no tiene un mecanismo de autenticación activo por defecto. En el caso de un servicio expuesto públicamente, cualquiera puede acceder a instancias de prueba de aplicaciones, descargar archivos y ejecutar comandos.
Selenio advierte de los riesgos de las instancias expuestas a Internet en su documentación, aconsejando a quienes necesitan acceso remoto evitar el acceso no autorizado mediante la configuración de un firewall. Sin embargo, esta advertencia no es suficiente para evitar configuraciones erróneas a gran escala.
Fuente: selenio.dev
Wiz afirma que los actores de amenazas aprovechan la API Selenium WebDriver para modificar la ruta binaria predeterminada de Chrome en la instancia de destino, haciéndola apuntar al intérprete de Python.
Luego utilizan el “agregar_argumento‘método para pasar un script Python codificado en base64 como argumento. Cuando WebDriver emite una solicitud para iniciar Chrome, ejecuta el intérprete de Python con el script proporcionado.
Fuente: Wiz
El script Python establece un shell inverso, dando a los atacantes acceso casi remoto a la instancia.
Ensuite, les attaquants s’appuient sur l’utilisateur Selenium (« seluser »), qui peut exécuter des commandes sudo sans mot de passe, pour déposer un mineur XMRig personnalisé sur l’instance piratée et le configurer pour qu’il s’exécute en el fondo.
Para evadir la detección, los atacantes a menudo utilizaban cargas de trabajo de nodos Selenium comprometidos como servidores intermedios de comando y control (C2) para infecciones posteriores y también como servidores proxy de grupos de minería.
Los atacantes apuntan a versiones anteriores de Selenium (v3.141.59), pero Wiz confirma que es posible abusar de versiones posteriores a la 4.
Esto significa que es probable que la estrategia de los atacantes eluda la detección al apuntar a instancias menos mantenidas y monitoreadas en lugar de explotar una falla que solo existe en versiones anteriores.
“Cualquier versión del servicio Selenium Grid que no tenga políticas de seguridad de red y autenticación adecuadas es vulnerable a la ejecución remota de comandos”, explica Wiz en el relación.
“Según nuestros datos, la amenaza descrita en este blog apunta a Selenium v3.141.59, pero también puede evolucionar para explotar versiones posteriores, y es posible que otros actores de amenazas ya lo estén haciendo”, señalan los investigadores.
Los escaneos de red de Wiz en el motor de búsqueda FOFA en busca de activos de red expuestos muestran que actualmente se puede acceder a al menos 30.000 instancias de Selenium en la web pública.
Aunque los efectos de la actividad de criptominería son un mayor uso de recursos, los operadores de campañas podrían usar su acceso para implementar malware si los objetivos son lo suficientemente valiosos.
Para obtener ayuda sobre cómo habilitar la autenticación básica y proteger Selenium Grids del acceso externo no autorizado, siga las instrucciones del servicio. pautas oficiales aquí.