Mostrando entradas con la etiqueta Seguridad. Mostrar todas las entradas
Mostrando entradas con la etiqueta Seguridad. Mostrar todas las entradas

domingo, 22 de marzo de 2009

OSSEC 2.0 un buen analizador de logs para Linux

OSSEC es un IDS Open Source, analiza los logs del sistema, la integridad de archivos, con políticas de supervisión, detección de rootkit, alerta en tiempo real y respuesta activa.

Funciona en los siguientes sistemas operativos:
  • GNU/Linux (todas las distribuciones, incluyendo RHEL, Ubuntu, Slackware, Debian, etc)
  • Windows XP,2000,2003,Vista,2008
  • VMWare ESX 3.0,3.5 (incluyendo CIS checks)
  • FreeBSD (Todas las versiones)
  • OpenBSD (Todas las versiones)
  • NetBSD (Todas las versiones)
  • Solaris 2.7,2.8,2.9 y 10
  • AIX 5.3 y 5.3
  • HP-UX 10, 11, 11i
  • MacOSX 10
Soporta los siguientes dispositivos a través de syslog remoto
  • Cisco PIX, ASA and FWSM (Todas las versiones)
  • Cisco IOS routers (Todas las versiones)
  • Juniper Netscreen (Todas las versiones)
  • SonicWall firewall (Todas las versiones)
  • Checkpoint firewall (Todas las versiones)
  • Cisco IOS IDS/IPS module (Todas las versiones)
  • Sourcefire (Snort) IDS/IPS (Todas las versiones)
  • Dragon NIDS (Todas las versiones)
  • Checkpoint Smart Defense (Todas las versiones)
  • McAfee VirusScan Enterprise (v8 y v8.5)
  • Bluecoat proxy (all versions)
  • Cisco VPN concentrators (Todas las versiones)
Monitorización de bases de datos:
  • MySQL (Todas las versiones)
  • PostgreSQL (Todas las versiones)
  • Oracle, MSSQL (Muy pronto)
Y otros formatos de logs
  • Unix solo:
    • Unix Pam
    • sshd (OpenSSH)
    • Solaris telnetd
    • Samba
    • Su
    • Sudo
    • Xinetd
    • Adduser/deluser/etc
    • Cron/Crontab
    • Solaris BSM Auditing
    • Dpkg (Debian package) logs
    • Yum logs
  • Servidores FTP:
    • Proftpd
    • Pure-ftpd
    • vsftpd
    • wu-ftpd
    • Microsoft FTP server
    • Solaris ftpd
    • Mac OS FTP server
  • Servidores de correo:
    • Imapd and pop3d
    • Postfix
    • Sendmail
    • vpopmail
    • Microsoft Exchange
    • Courier imapd/pop3d/pop3-ssl
    • vm-pop3d
    • SMF-SAV (Sendmail Sender Address Validator)
    • Procmail
    • Mailscanner
  • Servidores Web:
    • Apache web server (logs de acceso y error)
    • IIS 5/6 web server (NSCA y W3C extentido)
    • Zeus web server
  • Aplicaciones Web:
    • Horde imp
    • Modsecurity
  • Firewalls:
    • Iptables firewall
    • Shorewall (iptables-based) firewall
    • Solaris ipfilter firewall
    • AIX ipsec/firewall
    • Netscreen firewall
    • Windows firewall
    • Cisco PIX/ASA/FWSM
    • SonicWall firewall
    • Checkpoint firewall
  • Bases de datos:
    • MySQL
    • PostgreSQL
  • NIDS:
    • Cisco IOS IDS/IPS module
    • Snort IDS
    • Dragon NIDS
    • Checkpoint Smart defense
  • Aplicaciones de seguridad:
    • Symantec Anti Virus
    • Symantec Web Security
    • Nmap
    • Arpwatch
    • McAfee VirusScan Enterprise (v8 and v8.5)
  • Otros:
    • Named (bind)
    • Squid proxy
    • Bluecoat proxy
    • Cisco VPN Concentrator
    • Cisco IOS routers
    • Asterisk
    • Vmware ESX
  • Windows event logs
  • Windows Routing y Remote Access logs
  • Generic unix authentiction (adduser, logins, etc)
Consume muy pocos recursos y envía avisos a través de correo electrónico de las alertas y sus niveles, todo esto es configurable, la instalación es muy sencilla.

Después de descargar OSSEC 2.0 y descomprimir el archivo, con privilegios de root se debe ejecutar "./install.sh"

Después ejecutar el siguiente comando para arrancarlo:

/var/ossec/bin/ossec-control start

Hay mucha información y muy detallada de su funcionamiento en la página oficial de Ossec, la seguridad total es imposible de conseguir, pero con esta herramienta podemos estar algo más tranquilos.

domingo, 8 de marzo de 2009

Bloquear IP en Linux (Fedora 10)

Es muy útil bloquear puntualmente a ciertas IPs molestas, que por ejemplo no paran de hacer ataques de denegación de servicio cuando tenemos el emule, o cualquier tipo de ip molestas con actividades molestas.

Sin necesidad de utilizar IPTABLES directamente, de una forma más sencilla podemos hacerlo con el archivo rc.firewall.blocked situado en /etc/rc.d y una lista de ips plana como la siguiente.

Este es un ejemplo de rc.firewall.blocked:
111.222.333.111 # Comentario sobre la ip
444.555.666.777 # algún comentario más
# Es recomendable anotar el motivo de cada denegación.

Paso 1
Crear el archivo rc.firewall.blocked ( touch /etc/rc.d/rc.firewall.blocked ) y dentro anotar todas las ips que queramos bloquear.

Por ejemplo pongamos una serie de ips a bloquear.
89.254.45.9 # Web de Cracker prioridad 01.
87.231.11.5 # Web Spam prioridad 5.
#84.34.144.4 # Temporalmente desactivada, verificar el log.
Con las anotaciones podemos recordar porque se denego y que futuras acciones se deben tomar con ips sospechosas.

Paso 2
Una vez que se ha creado el archivo rc.firewall.blocked es hora de darle permisos y cambiar el propietario a root.

Para hacer este archivo ejecutable y cambiarle los permisos y el propietario ejecutar los siguientes comandos:

[root@nexus7 /]# chmod 644 /etc/rc.d/rc.firewall.blocked
[root@nexus7 /]# chown 0.0 /etc/rc.d/rc.firewall.blocked

viernes, 6 de febrero de 2009

Asegurar el arranque de servicios en linux ( /etc/init.d )

Reasignar los permisos de los ficheros que son responsables de iniciar y detener todos los procesos que necesita ejecutar en el momento del arranque.

Para arreglar los permisos de los archivos, utilizar el siguiente comando:
[nexus7@nexus7 /] # chmod-R 700 /etc/init.d/*

Con esto se consigue que sólo al super-usuario "root" se le permita leer, escribir y ejecutar scripts en los archivos de este directorio.

¿Es normal que los usuarios normales del sistema se enteren del código interno de los scripts?, pues no.

Si instala un nuevo programa o actualización que utilice el script de inicio System V ubicado en en directorio /etc/rc.d/init.d/ , no se olvide de cambiar o comprobar la autorización de este archivo de nuevo.

viernes, 30 de enero de 2009

Histórico de comandos en linux ( Shell logging )

La lista de comandos que memoriza linux hace que sea más fácil recuperar hasta más de 500 comandos del archivo de historico (~/.bash_history).
Cada usuario que tiene una cuenta en el sistema contiene este archivo, donde se almacenan no solo comandos, sino por ejemplo una contraseña fallida, estos datos permanecen en .bash_history durante bastante tiempo.

Es posible ajustar la dimensión del archivo para todos los usuarios del sistema modificando el parámetro HISTSIZE del archivos de configuración situado en (/etc/profile), es recomendable un máximo de 10 comandos.

[nexus7@nexus7 ~]$ vim /etc/profile

HISTSIZE=500

modificar a

HISTSIZE=10

De esta forma cualquier curioso solo podrá hurgar en un histórico de 10 comandos, reduciendo el riesgo de contraseñas mal introducidas.

También y como otra medida de seguridad es posible que ese histórico se elimine cada vez que salimos del sistema, así nadie podrá visualizar el histórico de un usuario que esta desconectado del sistema.

HISTFILESIZE=0

domingo, 25 de enero de 2009

Como protegernos en la red con linux (2)

Habilitando IP spoofing protection

Evita una técnica de ataque que obtiene acceso no autorizado, el atacante envía paquetes a un ordenador, modificando los encabezados de los paquetes utilizando datos de un host fiable. Esto protege únicamente nuestra red interna.

1.Editar el archivo de configuración del sistema (vim /etc/sysctl.conf) y añadir las siguientes lineas:

#Habilitar IP spoofing protection
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.lo.rp_filter = 1
net.ipv4.conf.eth0.rp_filter = 1
#net.ipv4.conf.eth1.rp_filter = 1 (Si se tiene un segundo interface de red)
net.ipv4.conf.default.rp_filter = 1


2.Reiniciar la red manualmente el sistema usando el siguiente comando:

[root@nexus7 /]# /etc/init.d/network restart
Setting network parameters [OK]
Bringing up interface lo [OK]
Bringing up interface eth0 [OK]
Bringing up interface eth1 [OK]


Habilitar Source Routed, Log Spoofed y redireccionar paquetes

Este cambio enviará al log los Spoofed Packets y Source Routed Packets, debe configurarse para todas las interfaces de red.

#Habilitar Log Spoofed Packets, Source Routed Packets, Redirect Packets
net.ipv4.conf.all.log_martians = 1
net.ipv4.conf.lo.log_martians = 1
net.ipv4.conf.eth0.log_martians = 1
net.ipv4.conf.eth1.log_martians = 1
net.ipv4.conf.default.log_martians = 1


Como simpre hay que reiniciar la red después de efectuar estos cambios (/etc/init.d/network restart).

viernes, 23 de enero de 2009

Como protegernos en la red con linux (1)

Evitar que nuestro sistema responda a un ping es una muy buena forma de ocultarse, porque nadie sabe que estamos ahí.

1.Editar el archivo de configuración del sistema (vim /etc/sysctl.conf) y añadir la siguiente linea:

#Desabilitar la respuesta a un ping
net.ipv4.icmp_echo_ignore_all = 1


2.Reiniciar la red manualmente el sistema usando el siguiente comando:

[root@nexus7 /]# /etc/init.d/network restart
Setting network parameters [OK]
Bringing up interface lo [OK]
Bringing up interface eth0 [OK]
Bringing up interface eth1 [OK]


Rechazar solicitud de respuesta de difusión (broadcast), evitar ataques de Denegación de servicio (DOS)

Cuando un paquete es entregado a la dirección de difusión de nuestra red local, por ejemplo 192.168.1.255, ese paquete es entregado a todas las máquinas de nuestra red, todas responden a esa solicitud de eco ICMP produciendo una congestión o cortes en la red (Denegación de servicio)

1.Editar el archivo de configuración del sistema (vim /etc/sysctl.conf) y añadir la siguiente linea:

#Rechazar solicitud de respuesta de difusión (broadcast)
net.ipv4.icmp_echo_ignore_broadcasts = 1


2.Reiniciar la red manualmente el sistema usando el siguiente comando:

[root@nexus7 /]# /etc/init.d/network restart
Setting network parameters [OK]
Bringing up interface lo [OK]
Bringing up interface eth0 [OK]
Bringing up interface eth1 [OK]


El enrutamiento y los protocolos de enrutamiento pueden crear varios problemas. En el enrutamiento de origen cuando un paquete IP contiene detalles de la ruta, es peligroso porque el host de destino debe responder por el mismo camino. Si el atacante envía una serie de paquetes de enrutamiento a la red sería capaz de interceptar las respuestas, de esta forma podría pensar que se está comunicando con un host de confianza y no es así.

El archivo que hay que editar es (vim /etc/sysctl.conf) y se debe reiniciar la red (/etc/init.d/network restart).

# Desabilitar IP source routing
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.lo.accept_source_route = 0
net.ipv4.conf.eth0.accept_source_route = 0
net.ipv4.conf.eth1.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0


Habilitar la protección (TCP SYN Cookie)

Un "SYN Attack" es un ataque Denial of Service (DoS), este tipo de ataque consume todos los recursos de la máquina forzando su reinicio, aumentan el tráfico de red hasta que la máquina no puede responder a tantas solicitudes, no es un ataque peligroso pero si bastante molesto, se puede evitar de la siguiente forma.

El archivo que hay que editar es (vim /etc/sysctl.conf) y se debe reiniciar la red (/etc/init.d/network restart).

# Habilitar la protección (TCP SYN Cookie)
net.ipv4.tcp_syncookies = 1

domingo, 28 de diciembre de 2008

Seguridad Linux -- "bit inmutable"

Existe una buena opción de seguridad para linux y consiste en aplicar un bit inmutable a los archivos del sistema sensibles a los ataques, de esta forma pueden ser protegidos, impedirá que se cree un link simbólico a ese archivo, que pueda ser sobreescrito, modificado o borrado accidentalmente.

Para aplicar el bit inmutable, usa los siguientes comandos:

[root@nexus7 /]# chattr +i /etc/passwd
[root@nexus7 /]# chattr +i /etc/shadow
[root@nexus7 /]# chattr +i /etc/group
[root@nexus7 /]# chattr +i /etc/gshadow

Debes tener en cuenta que al intentar instalar algunos programas RPM y que esos programas creen usuarios, grupos o cualquier archivo que sea inmutable, la instalación dará un error, se deberá desabilitar la opción.

[root@nexus7 /]# chattr -i /etc/passwd
[root@nexus7 /]# chattr -i /etc/shadow
[root@nexus7 /]# chattr -i /etc/group
[root@nexus7 /]# chattr -i /etc/gshadow

Referencia: Securing and Optimizing Linux: The Ultimate Solution by Gerhard Mourani and Open Network Architecture, Inc.