Hackeo a un servidor WEB de TECNOCIENCIA

Haciendo un revisión de rutina a uno de los servidores que tengo bajo mi administración me lleve una desagradable sorpresa. La dirección IP de uno de estos servidores se encontraba registrada en por lo menos 3 listas negras por estar realizando ataques de fuerza bruta a otros servidores ubicados en distintas partes del mundo. Inmediatamente una idea paso por mi cabeza:

Hackearon mi servidor y lo convirtieron en un ZOMBI que ataca a otros servidores

Los ataques que estaba llevando a cabo este servidor eran muy diversos, como podemos ver en la pagina:

https://www.abuseipdb.com/check/161.132.100.84?page=8#report

centos server hackeado

Como se puede ver en la captura de abuseipdb.com mi servidor era una maquina imparable de ataques por fuerza bruta. En este momento ya no tenia dudas, habían vulnerado toda la seguridad de mi servidor pero aun no sabia como.

PRIMER ANALISIS DEL SERVIDOR INFECTADO.

Lo primero que recordé es que en este servidor había olvidado cambiar el puerto por default del servicio SSH ya que a veces solía conectarme desde mi casa y por puro descuido permaneció así por varios días. Recuerdo que ya no se me hacia raro ver tantos intentos fallidos de LOGIN desde que abrí el puerto 22 en la WAN de este servidor confiado en la seguridad de mi Firewall y la complejidad de mi clave de root.

Debo confesar que ver esta situación incluso me había causado algo de gracia.

centos server hackeado

Las primeras cosas que hice para intentar detener los ataques que estaba realizando mi servidor fueron en este orden:

  • Reinicie el servidor y cambie el puerto 22 a otro muy alto pensando ingenuamente que esto resolvería el problema, estaba actuando de forma automática.
  • Espere unas horas luego de las primeras acciones y revise nuevamente el estado del servidor y al ver que continuaba atacando decidí que no seguiría trabajando por terminal ssh pensando en que esta ya era una puerta abierta para el que me había hackeado. En adelante y a pesar de que sabia que me iba a costar mas tiempo y trabajo todo lo iba a hacer por medio de WEBMIN, ya que no me encontraba físicamente al lado del servidor.

IDENTIFICANDO EL NOMBRE DEL PROCESO INFECTADO Y SU PID.

Lo siguiente que realizamos para buscar pistas a fue ver el listado completo de las conexiones del servidor mediante la ejecución del comando netstat -nputw usando como interface WEBMIN.

netstat -nputw

El resultado en pantalla no dejaba dudas, el servidor se encontraba en pleno trabajo de ataque intentando realizar conexiones salientes al puerto 22 a una serie de direcciones IP.

Este resultado a parte de confirmarnos la gravedad del problema nos revelo esta valiosa información:

El PID del proceso que ejecutaba el ataque era el 32680.

Con este dato ya teníamos una gran pista para confirmar el nombre del proceso entonces ejecutamos el siguiente comando desde la consola de webmin:

ps -p 32680 -o comm=
centos server hackeado

Y listo ya sabíamos 2 datos muy importantes el PID del proceso infectado ” 32680 “y su NOMBRE “TSM

UBICANDO LA RUTA DEL PROCESO INFECTADO

A continuación y con el proceso infectado ya identificado debíamos encontrar donde nuestro buen amigo el hacker lo había escondido.

Para ubicar la ruta del archivo infectado y ya conociendo que el proceso se llamaba TSM ejecutamos el comando:

ps ax | grep tsm 
ps ax server hacked

Y como por arte de magia nuestro infectado servidor nos mostro la ruta donde se escondía su malicioso virus. Ojala así actuara el cuerpo humano no ?

La ruta completa era:

/tmp/.X25-unix/.rsync/c/lib/64/tsm –library-path /tmp/.X25-unix/.rsync/c/lib/64/ /usr/sbin/httpd rsync/c/tsm64 -t 515 -f 1 -s 12 -S 10 -p 0 -d 1 p ip

Ahora nos quedaba ir por la ruta para eliminar el archivo.

ELIMINANADO LOS ARCHIVOS INFECTADOS EN EL SERVIDOR WEB.

Ingresamos a la ruta de la carpeta /tmp de nuestro server y efectivamente encontramos la carpeta .X25 y otros bichos raros.

Hackeo de un servidor WEB
Hackeo de un servidor WEB

No lo dudamos y procedimos a eliminar todo el contenido de esta y las demás carpetas:

A continuación reiniciamos el servidor y esperamos unos minutos para hacer una nueva revisión de todos los procesos. Nos dio algo de tranquilidad verificar que ya no existía el proceso TSM y al parecer habíamos logrado curar a nuestro servidor del virus que lo había convertido en un zombi.

Ejecutamos el comando netstat:

netstat -nputw
Hackeo de un servidor WEB  centos

Luego de la limpieza al parecer ya no había rastros del proceso infectado.

Las siguientes horas serian cruciales ya que no estaba yo seguro de haber controlado la infección. Me había parecido relativamente sencillo dar con la solución y por eso desconfiaba.

EL VIRUS SE REGENERA Y ATACA NUEVAMENTE.

Y efectivamente a las pocas horas el virus se activo nuevamente y el servidor reinicio todos sus ataques contra otros servidores, también la carpeta temporal se lleno de la misma basura que ya habíamos eliminado.

Sin embargo y afortunadamente para mi, mi cerebro ya estaba mas ágil y lucido en la batalla contra este enemigo. En ese momento recordé que toda tarea, servicio o proceso que se ejecuta de forma automática en el servidor debería estar dentro de CRON y es allí donde deberíamos buscar el origen del problema.

Si esto no funcionaba me resignaría al formateo del servidor.

BUSCANDO EL VIRUS DEL SERVIDOR EN EL DEMONIO CRON

Había estado en lo cierto, al revisar la estructura de CRON inmediatamente identificamos 5 tareas que de por si eran muy extrañas y que le pertenecían al usuario “prueba”.

Inmediatamente recordé que yo mismo había creado ese usuario con capacidad de login para hacer unos test de servicio ftp. Tremendo error ya que incluso la clave que le habia colocado era tambien prueba.

En ese momento entendí que me habían atacado por fuerza bruta y habían entrado a mi sistema a través de este usuario y su casi nula seguridad.

este es el contenido de CRON infectado:

Hackeo de un servidor WEB

Sin ninguna duda estas 5 tareas eran las líneas de programación creadas por el hacker utilizando al usuario prueba y que hacían que el virus se regenere continuamente.

/prueba/.configrc/a/upd>/dev/null 2>&1

/prueba/.configrc/b/sync>/dev/null 2>&1

/tmp/.X25-unix/.rsync/c/aptitude>/dev/null 2>&1

Eliminamos todas estas líneas del demonio CRON y por su puesto tendríamos también que eliminar al usuario prueba el cual ya había sido secuestrado por el hacker.

BUSCANDO EL USUARIO HACKEADO EN EL SERVIDOR

Como ya dijimos el usuario “prueba” lo habíamos creado nosotros mismos con una seguridad casi nula y esto había sido aprovechado por nuestro atacante.

Al revisar este usuario efectivamente estaba alterado, le habían cambiado la contraseña por una encriptada la misma fecha en que se registraron los primeros ataques del servidor hacia otros servidores. De esta manera el hacker podría ingresar en el momento que quisiera para infectarnos nuevamente.

Hackeo de un servidor WEB

Eliminamos el usuario todo su contenido y sus carpetas asociadas.

Nos curamos en salud y eliminamos además todo usuario abandonados u olvidados que teníamos por allí en el sistema.

Finalmente hicimos un escaneo total del sistema con CLAMAV.

Reiniciamos y la historia de este virus termino al menos para mi con la lección aprendida de que nunca dejamos de aprender algo nuevo.

Gracias amigos Hackers por hacernos recordar esto.

Eso ha sido todo amigos en este post “Hackeo de un servidor WEB ” esperamos que esta info en algun momento te se a de utilidad.

Recuerda que una manera de ayudarnos a mantener este contenido en linea es visitando los anuncios que aparecen a lo largo del post. Gracias!

Recuerda también que puedes visitar todo el contenido de nuestro blog en :

BLOG DE TECNOCIENCIA.

También puedes visitar nuestro canal de youtube en :

CANAL DE YOUTUBE TECNOCIENCIA

Agregue un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *