GNU/Linux >> Tutoriales Linux >  >> Linux

Compruebe si hay un compromiso de seguridad:puertas traseras e intrusos

Los servidores en la nube pueden verse comprometidos por varios factores:contraseñas débiles, tablas de ip débiles, versiones de software antiguas con vulnerabilidades conocidas, etc.

Si su servidor en la nube se ha visto comprometido, no entre en pánico. El pánico conduce a malas decisiones, lo que podría empeorar la situación. En su lugar, intente comprender qué sucedió y asegúrese de que su servidor en la nube no se vea comprometido nuevamente de la misma manera. El objetivo de este artículo es ayudarte a aprender de tus errores y evitar repetir los mismos errores.

Este artículo describe algunas técnicas y herramientas que puede utilizar para investigar sus servidores si sospecha que se han visto comprometidos. Debe usar estas herramientas antes de pasar al modo de rescate (consulte Comprobación de un compromiso de seguridad:Investigación del modo de rescate para obtener más información sobre el modo de rescate). El servidor en la nube utilizado para este artículo ejecutaba Ubuntu® 8.10. Sin embargo, los pasos que se muestran son similares para otras distribuciones de Linux®.

Advertencia importante

Antes de continuar, debe tomar una decisión importante. ¿Planea involucrar a la policía y enjuiciar al atacante? Si lo hace, deje el sistema comprometido en paz y no realice cambios en él. Cualquier cambio que realice después del ataque podría contaminar la evidencia y complicar la investigación. Por eso, una política común es apagar un sistema después de que se detecta un compromiso y dejarlo así hasta que la policía esté lista para investigar.

Verificar conexiones de red

Comience su investigación comprobando las conexiones de red de su servidor en la nube.

Usa el netstat -an comando, que produce un resultado similar al siguiente ejemplo, para verificar si hay puertas traseras abiertas en su servidor en la nube.

netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q             Local Address                     Foreign Address            State
tcp        0               0                         0.0.0.0:22                               0.0.0.0:*                  LISTEN
tcp        0               0                         0.0.0.0:80                               0.0.0.0:*                  LISTEN
tcp        0               0                         0.0.0.0:25                               0.0.0.0:*                  LISTEN
tcp        0             284                      1.2.3.4:6697                           5.6.7.8:34506              ESTABLISHED

En este ejemplo, el puerto 6697 está abierto. Este puerto es comúnmente utilizado por los servidores de Internet Relay Chat (IRC). A menos que esté ejecutando su propio servidor de chat, esto no es una buena señal. Puede descubrir cualquier conexión a ese puerto usando el siguiente tcpdump comando:

tcpdump src port 6697

Este comando captura todos los paquetes con el puerto de destino 6697.

Usar lsof

Muchos sistemas basados ​​en UNIX® utilizan la lista de archivos abiertos (lsof ) utilidad de línea de comandos para informar una lista de todos los archivos abiertos y los procesos que los abrieron. De forma predeterminada, Linux trata todo, incluidos los dispositivos, como un archivo. Esto hace que lsof una herramienta muy poderosa.

No todas las máquinas virtuales (VM) tienen lsof instalado de forma predeterminada, por lo que es posible que deba instalarlo usando yum o apt-get si ve la siguiente respuesta:

-bash: lsof: command not found

Por ejemplo, puede usar lsof para ver qué usuario tiene abierto un archivo en particular:

sudo lsof /etc/passwd

Si descubre el nombre de usuario bajo el control del intruso, puede usar lsof para mostrar todos los procesos en ejecución del intruso:

sudo lsof -u hisUserName

lsof también le ayuda a comprobar sus conexiones de red. Es importante investigar varios aspectos de su servidor en la nube con múltiples herramientas porque si sospecha que el sistema está comprometido, no puede estar seguro de qué comandos proporcionarán resultados confiables. Además, lsof proporciona algunas opciones que netstat no lo hace.

Para enumerar todos los sockets de Protocolo de Internet (IP) abiertos asociados con el servidor Secure Shell (SSH) de su servidor en la nube, ejecute el siguiente comando:

sudo lsof -i:22

Resumen

En este artículo, aprendió algunas técnicas para descubrir puertas traseras y rastrear intrusos en su servidor. Estas técnicas lo ayudan a evitar repetir cualquier situación o error que condujo al compromiso, por lo que es menos probable que lo pirateen nuevamente de la misma manera. En el siguiente artículo, Comprobación de un compromiso de seguridad:investigación en modo de rescate, aprenderá a investigar su servidor en la nube en modo de rescate.


Linux
  1. Bash For Loop Guía y ejemplos

  2. Las 6 mejores distribuciones de Linux gratuitas y de código abierto para hackear

  3. Capacitación y certificación para administradores de sistemas Linux

  4. ¿Cómo verificar todo el disco duro en busca de errores y sectores defectuosos?

  5. ¿¡Regresar el retroceso a Nautilus (3.18+) de una vez por todas!?

Prácticas recomendadas de DNS para seguridad y rendimiento

Cómo verificar las vulnerabilidades Meltdown y Spectre y parchearlas en Linux

Fail2ban en Linux:una herramienta de utilidad y seguridad de Internet para la administración del servidor

Parrot OS Una distribución de Linux para pentesters, analistas de seguridad y piratas informáticos

Los 8 mejores teléfonos Linux seguros para privacidad y seguridad

Comprobar la validez de la IP