elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Informática
| |-+  Tutoriales - Documentación (Moderadores: r32, ehn@)
| | |-+  Seguridad en Linux Mandriva
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Seguridad en Linux Mandriva  (Leído 15,736 veces)
el-brujo
ehn
***
Desconectado Desconectado

Mensajes: 21.639


La libertad no se suplica, se conquista


Ver Perfil WWW
Seguridad en Linux Mandriva
« en: 16 Enero 2004, 19:36 pm »

Versión 1.92

WindowsUpdate con Mandrake 9.2/10.0

Si queremos tener Mandrake 9.2 actualizado con los últimos parches, al más puro estilo "WindowsUpdate", podemos seguir estos sencillos pasos.

Paso Previo)

Necesitamos la herramienta "urpmi" explicada anterioramente. Debemos añadir la fuente "updates", que no es más que un directorio dónde están las actulizaciones de Mandrake 9.2

Citar
urpmi.addmedia --update updates http://ftp://ftp.cica.es/pub/Linux/Mandrakelinux/official/updates/9.2/RPMS with ../base/hdlist.cz

Para Mandrake 10.0:

Citar
urpmi.addmedia --update updates10 http://ftp://ftp.surfnet.nl/pub/os/Linux/distr/Mandrake/official/updates/10.0/RPMS with ../base/hdlist.cz

Más mirrors de updates:

http://www.mandrakesecure.net/en/ftp.php

Nos dirijimos a la página web:

Citar

o

Citar

Miramos los últimos "advisories", para saber que paquete rpm ha sido actualizado. Si el paquete tal tiene una vulnerabilidad, procedemos a actualizarlo.

Acto seguido vamos a a la consola y escribimos:

Citar
urpmi --media updates nombre_paquete

Se actualizarán todos los paquetes vulnerables.

Si falla algo, quizás tenemos que actualizar las fuentes:

Citar
urpmi.update --all

Niveles de Seguridad en Mandrake

Mandrake tiene 5 niveles de seguridad. Estos niveles de seguridad incluyen unos scripts (msec) que revisan el sistema.

El nivel normal es el 3. El nivel 1 y 2 no son nada aconsejables (sería para un ordenador sin conexión a internet). El nivel 4 es para un servidor (aunque también se puede usar el 3 con algunas modificaciones) y el nivel 5 es el modo paranóico.

Código:
msec 3

También existe una herramienta gráfica:

Código:
draksec

La configuración del msec se guarda en:

Código:
/var/lib/msec/security.conf.

Más info:
http://mandrakeuser.org/docs/mdoc/ref/prog-msec.html

Actualizando el kernel en Mandrake

Explicación de tipos de kernel en Mandrake:

kernel-2.4 = Optimizado para i589, un solo procesador, soporta menos de 1GB de RAM, aproximadamente 880MB máximo.

kernel-enterprise-2.4 = Optimizado para i686, con soporte SMP (multiprocesador), admite hasta 4GB de RAM.

kernel-i686-up-4GB-2.4 = Optimizado para i686, un solo procesador, admite hasta 4GB de RAM.

kernel-p3-smp-64GB-2.4 = Optimizado para PentiumIII, soporte SMP (multiprocesador), admite hasta 64GB de RAM.

kernel-secure-2.4 = Optimizado para i586, soporte multiprocesador, no admite memorias grandes, asegurado con grsec.

kernel-smp-2.4 = Optimizado para i586, soporte multiprocesador, no admite memorias grandes

kernel2.4-marcelo-2.4 = Optimizado para i586, uniprocesador, no admite memorias grandes.

Más info sobre esto:
http://mandrake.badopi.org/node/view/1320

Tenemos que tener configurada nuestra "fuente" de "updates"

Citar
urpmi.addmedia --update updates10 http://ftp://ftp.surfnet.nl/pub/os/Linux/distr/Mandrake/official/updates/10.0/RPMS with ../base/hdlist.cz

Actualizamos la fuente (aunque ya lo hemos hecho antes con el --update.
Citar
# urpmi.update -a


Bajamos el nuevo kernel, podemos elegir entre la rama 2.4 o la nueva rama 2.6:

Código:
 # urpmi kernel-2.4.25.4mdk-1-1mdk.i586.rpm

Código:
 # urpmi kernel-2.6.3.9mdk-1-1mdk.i586.rpm

Si te aparece un error como éste:

Citar
Can't call method "L" without a package or object reference at /usr/sbin/detectloader line 127.

Prueba de hacer:

# detectloader

y te saldrá lo mismo.

La manera de arreglarlo es usar -l en vez de -L:

Busca el archivo /usr/sbin/detectloader

Código:
        $return = $1 if m|^boot=(\S*)$| and not $return;
     }
     close F;

quita esta linea
Código:
    $return = readlink($return) if -L $return;

y pon esta:

Código:
    $return = readlink($return) if -l $return;

lo demás igual:  

  return $return;
 }

Ahora solo tenemos que configurar correctamente el Lilo, para añadir el nuevo kernel, y el viejo por si algo falla.

Antes de hacer el urpmi, teniamos algo así:

Código:
image=/boot/vmlinuz
label="linux"
root=/dev/hda7
initrd=/boot/initrd.img
read-only

Ahora debería quedar algo así:

Código:
image=/boot/vmlinuz-2.4.25.4mdk-1-1mdk
label=2419-24
root=/dev/hda1
read-only
optional
initrd=/boot/initrd-2.4.25.4mdk-1-1mdk

Este es el nuevo kernel. Recuerda que vmlinuz y initrd.img suelen ser enlaces simbólicos (así que mira su destino).

Ahora añadimos el viejo (por si a caso):

Código:
image=/boot/vmlinuz-2.4.19-16mdk
label="linux-oldkernel"
root=/dev/hda7
initrd=/boot/initrd-2.4.19-16mdk.img
read-only

Y por últimos, lo probamos y ejecutamos el lilo claro:

Código:
# lilo -v

Es un poco cutre, pero es sencillo y no es necesario compilar, ni bajar módulos, ni nada más.

Otra manera es bajar el kernel-src.mdk y reconstruirlo:

Código:
rpm --rebuild --target ARCH kernel.VERSION.src.rpm

Dónde ARCH puede ser: noarch, i386, i486, i586, i686, athlon, ...

Código:
rpm -ivh /usr/src/RPM/RPMS/ARCH/kernel.VERSION.ARCH.rpm


Linux kernel patch from the Openwall Project
http://www.openwall.com/linux/README.shtml

Características generales

Non-executable user stack area.
Restricted links in /tmp.
Restricted FIFOs in /tmp.
Restricted /proc.
Special handling of fd 0, 1, and 2 (Linux 2.0 and 2.2 only).
Enforce RLIMIT_NPROC on execve(2).
Destroy shared memory segments not in use
Privileged IP aliases (Linux 2.0 only).

Libsafe

Libsafe is a middle-ware solution to format string attacks and buffer overflows. It provides a dynamically loadable LD_PRELOAD replacement. The LD_PRELOAD replacement is used to replace common functions known to have format string or BOF issues. LibSafe is an ideal solution to stop many issues in simple and basic software – for example the Linux x86 'traceroute' utility has had a history of format string issues, libsafe essentially puts a lid around most of those past/present/future issues.

http://www.research.avayalabs.com/project/libsafe/
http://forums.ev1servers.net/showthread.php?s=7915a47f5ce451541ec152a7f399a085&threadid=13009


APF (Advanced Policy Firewall)
http://www.r-fx.org/apf.php

Entorno Chrooted (Jail)
http://www.jmcresearch.com/projects/jail/howto.html

# Remove SUID or SGID bits, if any exist:
find . -type f -exec chmod ug-s {} \;

chkrootkit
+ info --> http://www.chkrootkit.org/
chkrootkit es una pequeña aplicacion que sirve para detectar los rootkits más comunes. No es infalible.

Instalación:

Citar
#necesitamos ser root
su -

#nos bajamos la ultima version
wget http://ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz

#comprobamos firma con http://ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.md5
md5sum chkrootkit.tar.gz

#descomprimimos
tar xvzf chkrootkit.tar.gz

#entramos al directorio
cd chkrootkit_version_tal

#compilamos
make sense

#probamos
./chkrootkit  

#el resultado tiene que ser "not found", "not infected",etc.

Hay más parametros para usar, consultar documentación.

Otra herramienta parecida al chkrootkit:

Rootkit Hunter

bajar:
wget http://downloads.rootkit.nl/rkhunter-1.2.8.tar.gz

descomprimir:
# tar zxf rkhunter-<version>.tar.gz

Instalar :D
# cd rkhunter
# ./installer.sh

rhkunter luego para hacerlo funcionar.

Tiger

http://www.nongnu.org/tiger/


Bastille

Bastille Linux
http://www.bastille-linux.org/

tar -xjvf Bastille.tar.bz2

2) Run the Install.sh script:

cd Bastille && ./Install.sh

Type: "bastille" to start the full custom hardening script.

AIDE

AIDE (Advanced Intrusion Detection Environment)

Otros: Nabou, Tripwire

Don't forget: Reboot the machine when you're done!
Montar /tmp con noexec
nosuid,noexec

Instalación de Force Brute Detection

BFD es un script que analiza los logs en busca de intentos fallidos de conexión y bloque las ips de los atacantes.

Instalación:

wget http://www.rfxnetworks.com/downloads/bfd-current.tar.gz

tar xvzf bfd-current.tar.gz

cd bfd-0.2

Ejecutar el instalador: ./install.sh

.: BFD installed
Install path: /usr/local/bfd
Config path: /usr/local/bfd/conf.bfd
Executable path: /usr/local/sbin/bfd

Editar el archivo de configuración:
pico /usr/local/bfd/conf.bfd

Activar alertas contra intentos de brute force hack:
Buscar: ALERT_USR="0" CAMBIALO A: ALERT_USR="1"

Busca: EMAIL_USR="root" CAMBIALO A: EMAIL_USR="mi_nombre@mimail.com"

Guarda los cambios: Ctrl+X then Y

Evitar que te banee a ti mismo
pico -w /usr/local/bfd/ignore.hosts y añade tus IPS. (con las que accedes al servidor, las de conexión a internet Ej: 192.168.1.1)

BFD usa la habilidad de inserción de APF' cli
y añadirá las IPS que intentan entrarte al archivo de IPS baneadas por lo que es importante añadir tus IPS al archivo de allow_hosts.rules para evitar que te blockee el acceso al servidor.

Ejecutar el Programa
/usr/local/sbin/bfd -s


UNIX Security Checklist v2.0
http://www.auscert.org.au/render.html?it=1935&cid=1920



Falta explicar cada cosa y poner fuentes (yo sólo traduzco del inglés, pero añado alguna cosa y lo explico a mi manera.)


« Última modificación: 17 Abril 2012, 17:33 pm por el-brujo » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Mandriva Linux 2010.1
Noticias
wolfbcn 1 2,000 Último mensaje 9 Julio 2010, 13:46 pm
por Akai
seguridad en linux
GNU/Linux
polarisone 3 2,744 Último mensaje 24 Mayo 2015, 14:05 pm
por polarisone
Seguridad en GNU/Linux
GNU/Linux
kub0x 2 2,422 Último mensaje 6 Noviembre 2016, 20:53 pm
por kub0x
Linux Hardening - Máxima seguridad en Linux
Tutoriales - Documentación
r32 0 2,191 Último mensaje 29 Noviembre 2020, 02:10 am
por r32
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines