Hoy en día es muy común la escalada de privilegios en sistemas GNU/Linux debido a diferentes fallos de seguridad que se descubren en el kernel de linux. Sin embargo existe una herramienta llamada NINJA que nos permite detener y prevenir este tipo de ataques, monitoreando toda la actividad de los procesos locales y además […]
Hoy en día es muy común la escalada de privilegios en sistemas GNU/Linux debido a diferentes fallos de seguridad que se descubren en el kernel de linux. Sin embargo existe una herramienta llamada NINJA que nos permite detener y prevenir este tipo de ataques, monitoreando toda la actividad de los procesos locales y además guardando un log con la informacion de todos los procesos ejecutados como root. Adicionalmente Ninja puede matar todo aquel proceso que haya sido creado por usuarios no autorizados.
Ninja actualmente se encuentra en la versión 0.1.3 y se instala desde los repositorios.
apt-get install ninja
La configuración de NINJA consta de el 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.
Haciendo una pequeña prueba
Después de reiniciar, y ver que ninja se esta ejecutando haremos una pequeña prueba:
Cuando detecta un proceso prohibido:
Cabe resaltar que es fundamental leer toda la documentación del paquete ya que pueden haber configuraciones diferentes para cada situación y sistema. Recordemos que en el campo de la seguridad, no solo basta con instalar la aplicacion sino que también es importante personalizar la configuración, es decir, evitar las configuraciones por default.
Mas Información:
Pagina Oficial del NINJA