Spiga

Asegurando tu servidor Raspbian: cazando rootkits

Todos sabemos que lo más importante en un servidor es la seguridad, de ahí que Linux sea una de las decisiones más acertadas a la hora de montar uno. Por si no lo sabías Linux está prácticamente libre de virus, y en caso de salir alguno poco sentido tendría al trabajar siempre desde una cuenta de usuario que no puede infectar nada del sistema (por no hablar que en horas tendríamos un fantástico parche para él en los repositorios) pero... no estamos tan seguros como pueda parecer. 

Generalmente el mayor peligro de un servidor es un usuario que no lo sabe administrar, esto suele acabar con puertos ofreciendo servicios sin protección adecuada, cuentas sin contraseñas seguras o incluso sistemas no actualizados vulnerables a fallos de seguridad (exploits) por lo que nuestras reglas de oro van a ser las siguientes:

  • No trabajar de forma habitual con cuenta de administrador. Es decir, el usuario root. Es uno de los mayores problemas de la gente que viene de Windows, acostumbrada a tener privilegios en todo el sistema sin necesidad de hacer nada en especial.
  • Tener nuestros paquetes al día mediante apt-get (en Debian -Raspbian en nuestro caso-, que ya me veo a algún lector saltándome al cuello por no especificar).
  • No dejar contraseñas por defecto en nada.
  • No instalar servicios que no necesitamos.
  • De forma regular revisar nuestros ficheros log, en busca de intentos de logueo erróneos (podéis ver un registro de todo en /var/log/auth.log).
  • Utilizar rkhunter.
La ventaja de rkhunter es que tanto es válido en nuestra Raspberry Pi con distribuciones basadas en Debian, en máquinas normales y prácticamente hasta en la tostadora de pan, ya que disponemos del código fuente de la aplicación para poderla compilar en caso de no existir el paquete en nuestros repositorios.

Instalando rkhunter desde repositorios:

Para empezar voy a explicaros qué es rkhunter y para qué sirve. rkhunter es un detector de rootkits, backdoors y similares en nuestro sistema, mostrándonos un completo informe y avisos de posibles "infecciones" o fallos en el sistema. Si no sabéis el significado de dichas palabras os las he enlazado con su correspondiente definición en Wikipedia, que está perfectamente explicado. En pocas palabras, rkhunter va a ser nuestro chivato de aplicaciones no deseadas en nuestro servidor.

Afortunadamente la instalación es sencillísima en Raspbian, ya que contamos con los paquetes de la aplicación en los repositorios por defecto. Para ello abriremos una terminal y escribimos:

sudo apt-get install rkhunter


Analizando el sistema:

Una vez finalizada la instalación lanzaremos un análisis completo de la máquina con:

sudo rkhunter -c


Veremos una pantalla similar a la siguiente:

rkhunter en pleno análisis


Mientras nos salga todo en verde, ya sea con "OK", "Not found", etcétera no deberemos preocuparnos de nada, de hecho incluso algunos "Warning" no deben escandalizaros, ya que simplemente nos avisan de un peligro potencial que, de estar todo bien hecho y configurado, no entrañará ningún riesgo en nuestra máquina.

rkhunter puede analizar la máquina de forma desatendida, es decir, sin que tengáis que ir dando al "Enter" en cada fin de sección e incluso puede analizar de forma independiente lo que nos interese. Si necesitáis más información de lo que puede hacer bastará con que escibáis en una terminal:

man rkhunter


Y consultéis el manual del programa. Cuando finalice de analizar todo os generará un resumen de vuestra máquina en el directorio de logs (recordad: /var/log) con ruta /var/log/rkhunter.log.

Espero que con este tutorial exprés haya conseguido hacer de vuestra máquina un lugar más seguro y libre de indeseables aplicaciones o usuarios.

Nos leemos muy pronto y recordad que me tenéis en Twitter en @drkbcn.

2 comentarios:

  Unknown

5 de junio de 2013, 20:38

Un par más en los repos: chkrootkit y unhide.

  DaRKnSiS

6 de junio de 2013, 17:23

Gracias por el aporte extra :)