Genial todavía no me había enterado de este hack
Hack de VestaCP y correcciones
Esta semana comenzamos con un pequeño gran problema muchos de los que tenemos servidores propios: surgió un hack 0day, es decir, fresquito y sin aviso, que atacaba a VestaCP, el sistema de administración de hosting que muchos utilizamos.
Esto impactó fuerte en proveedores como Digital Ocean que sencillamente dieron de baja cientos de "droplets" de servidores enteros dejando "en bolas" a muchos. En un día ya estaba el fix de seguridad de VestaCP pero obviamente afectó a muchos.
Tuve la suerte de que me avisaron muy rápido, gracias Alberto!, y que rápidamente muchos proveedores cerraron el puerto TCP 8083 que utiliza habitualmente VestaCP. A continuación les dejo los pasos para, primero saber si te infectaron, luego para actualizar desde terminal el VestaCP y tercero para cambiar el puerto a otro que no sea tan fácil de encontrar ya que el ataque masivo se realizó en típico modo "bobo" de pasearse por rangos de IP con un script y no mucho más.
Primero que nada si todavía tienen un VestaCP en la versión vieja APAGUENLO! maten el servicio ya mismo:
service vesta stopo
systemctl stop vesta
Esto no detendrá el Apache ni el NGinX que maneja los sitios, éstos no deberían verse afectados directamente.
Si pueden bloquear todo acceso al puerto 8083 es lo ideal, pueden corroborar si el servidor fue afectado porque el ataque agrega en el cron una línea medio extraña para un servicio con un nombre desconocido, lo ven en
/etc/cron.hourly/gcc.sh
o cualquier cosa nueva que uds. no tengan como normal.
Si utilizan ClamAV como antivirus éste seguramente dertectará algo en
/lib/libudev.so: Unix.Trojan.DDoS_XOR-1 FOUND
Si no lo sacan del cron vuelve a instalarse a sí mismo.
El ataque apuntó a usar los droplets de Digital Ocean para procesar criptomonedas y por eso saltó rápidamente a la luz ya que, obviamente, los CPUs se fueron al tope.
Para actualizar VestaCP vamos a:
cd /usr/local/vesta/bin/
sudo ./v-update-sys-vesta-all
Esto debería actualizarlo a 0.9.8-20 que es la versión que ya tiene el parche, si quieren pueden iniciar el servicio:
sudo service vesta start
Ahora bien, supongamos que quieren cambiar el puerto para que, por las dudas, no vuelva a suceder, esto está en la configuración del NGinX:
/usr/local/vesta/nginx/conf/nginx.conf
Cambian el puerto aquí:
# Vhost
server {
listen 8083;
...
}
Siendo 8083 el default manden cualquiera y está igual, obviamente si tienen el firewall activo tienen que agregar una regla para aceptar conexiones en el nuevo puerto
ACCEPT TCP/ VESTA XXXX 0.0.0.0/0
Siendo XXXX el puerto nuevo
O si usan UFW como en mi Ubuntu Server:
sudo ufw allow xxxx
Aquí tienen un comando en una sóla línea (pensado para Ubuntu) que lo cambia al puerto 5600
sed -i 's/8083;/5600;/' /usr/local/vesta/nginx/conf/nginx.conf && v-add-firewall-rule ACCEPT 0.0.0.0/0 5600 TCP && service vesta restart
Otros posts que podrían llegar a gustarte...