sábado, 19 de febrero de 2011

[PTE DE REVISION] Como detectar escalada de privilegios en Linux

¿Que protección dispone nuestro linux una vez que un  atacante se hace con un usuario no administrador de nuestro PC?

En principio no disponemos mas que de la "Lista de Control de Acceso" propia de nuestro linux. aun asi es bueno disponer de alguna herramienta que nos avise cuando algún binario, demonio, etc intenta ejecutarse en modo root..

Ninja es un programa que nos avisa de cuando algun binario, demonio, etc está intentando ejecutarse con derechos de Root. Ninja, además es capaz de detener este proceso por seguridad.

                                                                                              Fuente: http://www.dragonjar.org



Desde la consola de Linux , instalamos el programa:
apt-get install ninja
La configuración de NINJA consta del archivo de configuración  y un archivo llamado whitelist donde se almacenaran los ejecutables el grupo y los usuarios que podrán correrlos, estos dos se encuentran en la carpeta /etc/ninja. Adicionalmente debemos crear un archivo que guardara el log de nuestra herramienta, para esto hacemos lo siguiente:
touch /var/log/ninja.log
chmod o-rwx /var/log/ninja.log
Ahora creamos un grupo llamado ninja(por favor tomen nota del GID):
addgroup ninja
El siguiente paso consiste en agregar nuestro usuario y el usuario root al  grupo que acabamos de crear:
usermod -a -G tusuario
usermod -a -G root
usermod -a -G messagebus
Editamos el archivo de configuración:
gedit /etc/ninja/ninja.conf
Buscamos las siguientes lineas y hacemos los cambios respectivos
group= GID -> aquí debe ir el GID que guardaste cuando creaste el grupo ninja
daemon=yes
interval=0
logfile=/var/log/ninja.log // asegúrese de quitar el # del comentario
whitelist=/etc/ninja/whitelist
no_kill = no      
no_kill_ppid = no
El turno es para la lista blanca abrimos el archivo  y borramos la linea de SUDO ya que en Debian no se utiliza, quedaría de esta forma:
/bin/su:users:
/bin/fusermount:users:
/usr/bin/passwd:users:
/usr/bin/pulseaudio:users:
/usr/sbin/hald:haldaemon:
/usr/lib/hal/hald-runner:haldaemon:
Por ultimo agregamos  ninja al inicio, adicionamos la siguiente linea en el archivo /etc/rc.local:
/usr/sbin/ninja /etc/ninja/ninja.conf
Solo nos queda reiniciar  y probar que nuestro ninja este funcionando como debería.

No hay comentarios:

Publicar un comentario