Keylogger en miles de sitios web WordPress
A mediados de año, se encontró un número bastante elevado de sitios web WordPress que presentaban un malware que era capaz de minar criptomonedas. Todo parece apuntar que este virus informático ha mutado y ahora se ha convertido en un keylogger capaz de recopilar la información introducida por los visitantes de estas webs.
Para encontrar el origen de esta amenaza, hay que volver hasta el pasado mes de abril, cuando miembros de la empresa de seguridad Sucuri descubrieron más de 5.500 sitios web que utilizaban este CMS infectados con un malware que era capaz de llevar a cabo el minado de criptomonedas, algo que cada vez está más de moda. Desde entonces, han sido muchos los cambios que la amenaza ha sufrido, sobre todo a nivel de comportamiento.
El primer cambio está en la página de inicio del dominio, que ahora dice:
“Este servidor es parte de un proyecto de algoritmos de aprendizaje automático experimental.”
en lugar de:
“Este servidor es parte de la Red de Distribución de Cloudflare.”
El segundo cambio está en el ejecutable cors.js, que cuando lo decodificas, no encuentras ningún código sospechoso como las imágenes (banners) de la versión anterior. Lo único sospechoso es que el ejecutable carga Yandex.Metrika (la alternativa de Yandex para Google Analytics). Probablemente para mantener un registro de los sitios infectados. Por cierto, el ID del ejecutable de Yandex es 43930119; este puede ser encontrado en la página de inicio del dominio.
URLs Falsas de linter.js Se Convierten en un Keylogger
Ahora, probablemente notarás dos URLs de cdnjs.cloudflare.com con parámetros hexadecimales largos:
Esta vez, el nombre de dominio realmente pertenece a CloudFlare y podrías pensar que es algo legítimo. Sin embargo, si verificas la URL https://cdnjs.cloudflare.com/ajax/libs/linter/linter.js, notarás que realmente no existe. Pero cuando verificas el código utilizando las variables linterkey, descubrirás que cdnjs.cloudflare.com es solamente una distracción, y que la verdadera carga son los números hexadecimales después del signo de interrogación en las URLs. El ejecutable las decodifica e inyecta lo siguiente en las páginas web:
Como puedes ver, es un keylogger. El ejecutable agrega un manejador de eventos a cada campo input de los sitios sitios web, esto para poder enviar los valores de dichos campos al atacante (wss://cloudflare[.]solutions:8085/) una vez que el usuario pasa al siguiente.
¿Qué tipo de datos se pueden robar de esta manera? Ya que estamos hablando de sitios web WordPress, estos sitios generalmente implementan campos de búsqueda y formularios para comentarios. Sin embargo, esto podría no llamar la atención de los malhechores. Pero, ¿qué tal si el sitio WordPress tuviera alguna funcionalidad ecommerce o incrustara un formulario de compra? En este escenario, el hacker podría llegar a robar información de pago.
Y por supuesto, cada sitio web WordPress tiene un formulario de inicio de sesión. Los hackers no se olvidan de esto, así que también inyectan el código del keylogger cloudflare[.]solutions a la página de inicio de sesión.
add_action('login_enqueue_scripts', 'add_js_scripts' );
El screenshot a continuación muestra el tráfico de websocket en la página de inicio de sesión de un sitio infectado.
Como puedes ver, tanto el nombre de usuario como la contraseña son enviadas al servidor cloudflare[.]solutions incluso antes de que el usuario haga clic en el botón de “Login”.
Mitigación
Como mencionamos, el código malicioso vive en el archivo function.php en el tema de WordPress. Tienes que eliminar la función add_js_scripts y todas las cláusulas add_action que mencionan a add_js_scripts. Y debido a la funcionalidad de keylogger de este malware, debes asumir que todas tus contraseñas de WordPress han sido comprometidas. El siguiente paso debe ser cambiar todas tus contraseñas (de hecho, deberías hacer esto después de cualquier hack). No te olvides de verificar tu sitio web y buscar otro tipo de infecciones; muchos de los sitios con el malware cloudflare.solutions también tenían inyectados ejecutables del minero de criptomonedas de CoinHive.
Fuentes: https://blog.sucuri.net/espanol/ – https://www.redeszone.net/