lunes, diciembre 08, 2008

GrSecurity 2ºParte

GrSecurity nos permite crear ACLs o como ellos lo llaman "roles", esto nos permite tener el sistema funcionando con los servicios necesarios pero siempre con el menor número de privilegios posibles.
Hay que tener en cuenta que con estas ACLs habilitadas incluso el todo poderoso root también verá sus acciones limitadas.

Nos bajamos la utilidad gradm:
wget http://http://www.grsecurity.net/gradm-2.1.11-200804142058.tar.gz

Instalamos algunas dependencias:
apt-get install flex bison libpam0g-dev chpax

Descomprimimos gradm:
tar xvzf gradm-2.1.11-200804142058.tar.gz
cd gradm-2.1.11-200804142058.tar.gz

Compilamos e instalamos el programa:
make
make install

Asignamos un password de administrador:
gradm -P admin

Entramos como administrador:
gradm -a

Ahora viene lo realmente interesante del asunto, ponemos gradm a "aprender" para luego aplicar estas ACLs.
gradm -F -L /etc/grsec/learning.log

Hacemos un uso normal del sistema durante algunos días, debemos evitar actualizaciones de software o programas que rasquen mucho de disco duro como un find y tareas administrativas.
Cuando creamos que está listo(unos 2 o 3 días de aprendizaje son suelen ser suficientes) salimos, nos mostrará un error sobre el fichero learning.log, el directorio /etc/grsecurity ya no será visible ni tan siquiero para root.

Aplicamos las ACLs generadas:
gradm -a
gradm -F -L /etc/grsec/learning.log -O /etc/grsec/learning.roles
mv /etc/grsec/learning.roles /etc/grsec/policy
chmod 0600 /etc/grsec/policy
gradm -E

Para que funcionen las ACLs en cada arranque añadimos gradm -E en /etc/rc.local

Si nos da algún tipo de problema y queremos deshabilitar las ACLs entramos como administrador y ejecutamos:

gradm -D

Para permitir pasar aplicaciones por encima de PAX:
chpax –spmr "Ruta hasta el binario"

No hay comentarios: