Vulnerabilidades encontradas en el algoritmo hash MD5 permiten la creación de certificados fraudulentos

Vulnerabilidades encontradas en el algoritmo hash MD5 permiten la creación de certificados fraudulentos, esto podría traer consigo la creación de sitios phishing con certificados aparentemente válidos.

Una vulnerabilidad encontrada en el algoritmo hash MD5 es aprovechada para generar certificados digitales fraudulentos, esto en gran medida puede conllevar al engaño por la creación de sitios phishing que aparentemente son válidos. El problema fue dado a conocer en el evento «chaos Communications Conference» celebrado en Berlin el pasado mes

Las autoridades certificadoras que implementen el uso de este algoritmo deben de cambiar hacia el uso de SHA1 para poder proteger la integridad de sus certificados. Un gran numero de autoridades certificadoras utilizan el algoritmo MD5 para la generación de sus certificados, y un 14% de sitios web estan utilizando certificados que fueron generados con este algoritmo.

Para muchos, los ataques que derive esta vulnerabilidad no es de gran sorpresa debido a que la debilidad descubierta sobre el algoritmo MD5 habia sido conocida desde el 2004.

Uno puede ver el historial de esta vulnerabilidad en la siguiente liga :
http://isc.sans.org/diary.html?storyid=5590, ahora bien si se quiere verificar el certificado de nuestro sitio podemos hacerlo online mediante site http://www.networking4all.com/nl/helpdesk/tools/site+check/

Otros sitios de interes con respecto a esta nota :

http://gcn.com/Articles/2008/12/31/SSL-certs-busted.aspx?p=1
http://www.securityfocus.com/news/11541
http://www.heise-online.co.uk/security/25C3-MD5-collisions-crack-CA-certificate–/news/112327
http://www.securityfocus.com/brief/880

Saludos Cordiales

Creacion de VirtualHost falso en Apache para mejorar la seguridad

Como todos sabemos, existen multiples aplicaciones que intentan descubrir vulnerabilidades de seguridad de una manera automatizada.

La inmensa mayoria intentan averiguar si está el mod_proxy activado y desprotegido para poder redirigir peticiones a otros servidores. Desgraciadamente, existen muchos servidores con una seguridad muy baja que son usados para atacar otros servidores web.

Ademas muchos virus se sirven de vulnerabilidades conocidas en servidores web sin parchear para propagarse.

Existe un pequeño hack poco utilizado para librarse del 99% de estas conexiones. Y es tan sencillo como crear un VirtualHost que dirija a un directorio vacio, y ponerlo el primero en la cadena de VirtualHost en nuestro httpd.conf.

Por ejemplo:

NameVirtualHost IP_de_mi_server:80
<VirtualHost IP_de_mi_server:80>
DocumentRoot /opt/null
ServerName mivhostnulo.com
</VirtualHost>

Seguido del resto de nuestros hosts.

Si quereis ver las peticiones que ese Virtualhost esta rechazando (no os asusteis) añadid una linea de log:

CustomLog /var/log/httpd/archivo_error_hostnulo.log combined

Software para la auditoria de sistemas

Aqui les dejo una lista de software que les ayudara en la auditoria de sistemas, servidores, ordenadores….

Copypastea el siguiente comando en una sola linea:

sudo apt-get install netcat hping3 kismet tcpdump ettercap nikto dsniff p0f ntop tripwire ngrep xprobe2 etherape lsof rkhunter chkrootkit yersinia nmap nmapfe wireshark aircrack-ng airsnort john kismet

*** si algun programa te dice que no lo encuentra .. eliminalo de la lista y copia y pega la misma orden sin ellos, es posible que con nuevas versiones de UBUNTU, cambien algunos nombres.

Con esta orden de arriba se instalar los siguientes programas en vuestro servidor UBUNTU/DEBIAN, con lo que abreis transformado de una forma muy simple vuestro equipo en una sofisticada maquina para auditar vulnerabilidades y posibles fallos en sistemas.

Explicacion de lo que se instala :

Netcat: Utilidad que te permite abrir puertos, leer y escribir en conexiones TCP o UDP, asociar una shell a un puerto. A menudo se usa para abrir backdoors en sistemas remotos.

Hping3: Utilidad capaz de enviar cualquier tipo de paquetes ICMP/UDP/TCP y mostrar la respuesta de la máquina de destino.

ettercap: Es un sniffer que puede capturar contraseñas y producir ataques de man-in-the-middle de forma sencilla.

nikto: Escáner de servidores web que identifica versiones y detecta vulnerabilidades.

dsniff:
Sniffer especializado en la captura de passwords transmitidos a través de varios protocolos. Incluye herramientas adicionales que permiten llevar a cabo ataques de spoofing y man-in-the-middle.

p0f: Utilidad que identifica sistemas operativos de forma pasiva, es decir, escuchando el tráfico que generan sin introducir paquetes en la red.

ntop: Muestra estadisticas de uso de la red. Es como el top de unix pero aplicado a las comunicaciones en red.

tripwire: Verifica la integridad de los archivos del sistema. Detecta cambios en los ficheros ejecutables a fin de informar sobre posibles acciones no autorizadas como la instalación de backdoors.

ngrep: Es un sniffer que implementa el tradicional grep pero buscando en los paquetes que se escuchan en la red.

xprobe2: Identifica sistemas operativos de forma activa, es decir, enviando una serie de tests al sistema remoto y determinando su tipo en base a las respuestas recibidas.

etherape: Muestra graficamente estadísticas sobre la actividad de la red.

lsof: Muestra una lista de los archivos abiertos en el sistema. Util para detectar arccesos no autorizados o para ver qué ficheros está utilizando una aplicación determinada.

rkhunter: Es un detector de rootkits.

chkrootkit: Otro detector de rootkits.

yersinia: Utilidad que se aprovecha de diversas flaquezas en algunos protocols de red (STP, CDP, DTP, DHCP, HSRP. ISL, VTP…) para provocar ataques de diversos tipos.

nmap: Es el mejor escáner de puertos que existe. Implementa una gran variedad de técnicas y un excelente sistema de deteccion de sistemas operativos y versiones. Para el que no la conozca , es «LA HERRAMIENTA QUE UTILIZABA TRINITY, EN LA PELICULA MATRIX, para hackear uno de los sistemas».

nmapfe: Front-end para nmap. Una interfaz gráfica basada en GTK.

wireshark: (antes se llamaba ethereal). Es el mejor sniffer en modo gráfico que existe. Es muy potente y sus capacidades para filtrar el tráfico lo hacen indispensable para cualquier administrador de red. Tambien hay version para Windows.

aircrack: Suite de utilidades para crackear las claves WEP utilizadas en las redes 802.11. Permiten la escucha del tráfico de la red, la inyección de paquetes y el crackeo de claves WEP de cualquier longitud.

airsnort: Utilidad para crackear claves WEP, similar a aircrack.

john: (John the Ripper) Es un excelente crackeador de contraseña. Soporta un gran numero de formatos distintos y permite bien el uso de diccionarios o el crackeo por fuerza bruta.

kismet: Identifica redes inalambricas de forma pasiva recolectando paquetes, detecta redes ocultas, clientes asociados y es capaz de sniffar el tráfico de las redes no encriptadas. Kismet es el sistema de monitorización de redes inalambricas más potente que existe en la actualidad.

Instalando DDoS Deflate para evadir ataques DoS

Medialayer sufria ataques de denegación de servicio. Para atajar ese problema, uno de los chicos de Medialayer pensó en crear una solución Open Source para mitigar estos ataques. Ese día nació DDoS Deflate, un script en Bash bastante efectivo para mitigar ataques de denegación de servicio.

Instalando DDoS Deflate

DDoS Deflate requiere que APF 0.96 este instalado si queremos usar que las IP´s sean baneadas a traves de APF.
La instalación de APF va mas allá del objetivo de esta guia.

wget http://www.inetbase.com/scripts/ddos/install.sh
chmod 0700 install.sh
./install.sh

Configurando DDoS Deflate

Abrimos el fichero ddos.conf localizado en /usr/local/ddos

Editamos las rutas para que encajen con la estructura de nuestro sistema:

PROGDIR=”/usr/local/ddos”
PROG=”/usr/local/ddos/ddos.sh”
IGNORE_IP_LIST=”/usr/local/ddos/ignore.ip.list”
CRON=”/etc/cron.d/ddos.cron”
APF=”/etc/apf/apf”
IPT=”/sbin/iptables”

Posteriormente, tendremos que adecuar las opciones restantes según la naturaleza de la situación en la que estemos inmersos:

FREQ=1
# Frecuencia en minutos en la que el script sera ejecutado

NO_OF_CONNECTIONS=150
# Número de conexiones para proceder a banear una supuesta IP atacante

APF_BAN=1
# 1 indica que DDoS Deflate usara APF para banear, 0 llama directamente a Iptables

* Es necesario APF 0.96 como minimo si queremos activar el baneo por APF

BAN_PERIOD=600

# Tiempo durante el cual el atacante estará baneado. En segundos

EMAIL_TO=”root”

# Dirección a la cual se enviara un correo cuando alguien sea baneado

KILL=1

# Con la opción en 0, los atacantes no seran baneados. 1 esta activo por defecto

Securizar el directorio /tmp a noexect

Buenas como todos sabeis hay un colectivo de gente que se dedica a explotar exploits de scripts estilo php-nuke pos bla bla que lo que hace es colarte en tu directorio /tmp del server un script muy chulo que o se te logea como root o te hace mil putadas bien la mejor manera de evitar esto es hacer que nada se pueda ejecutar desde ese directorio aparte de configurar bien tu firewall y tener una vigilancia constante como es lógico

Como ROOT haceis estos pasos:

cd /dev
dd if=/dev/zero of=tmpMnt bs=1024 count=100000
/sbin/mke2fs /dev/tmpMnt
(Contestad y a la pregunta que os hace)
cp -R /tmp/ /tmp_backup
mount -o loop,rw,nosuid,noexec /dev/tmpMnt /tmp
chmod 0777 /tmp
cp -R /tmp_backup/* /tmp/
rm -rf /tmp_backup

Ahora hay que modificar el /etc/fstab para hacer que el /dev/tmpMnt se monte al reiniciar el server. Es añadir esta linea:

/dev/tmpMnt /tmp ext2 loop,rw,nosuid,noexec 0 0
(OJO: los espacios de esta linea son tabuladores).

Reiniciad los servicios como por ejemplo postgresql , mysql, el clamantivirus, etc… para que se recreen bien los sockets y locks en el dir tmp si es ahi donde los creaban.

Para probarlo cread un shell en el /tmp e intentad ejecurtarlo. Ejemplo:
pegad esto dentro:

#!/bin/sh
echo prueba

lo guardais como en /tmp/test.sh y le haceis un chmod 0755 e intentad ejecutarlo desde dentro del /tmp, y os ha de dar esto:

[root@server tmp]# ./test.sh
bash: ./test.sh: bad interpreter: Permission denied

chapucillas que tb funciona y es bueno tenerlas.
Una formna rápida si no te quieres liar mucho con el asunto es anulando el acceso a wget linx y derivados, si no los usas y al compilador de C.

Para lo primero tienes una forma facil de hacerlo, cambiales el nombre wget ->wlee pr ejemplo y no lo encontrarán.

O chmod -ax cuando no lo utilizes con lo que anulas el acceso a ejecutar.

Es mas facil, mas rápido y menos dolores de cabeza que el poner tmp en noexec.

o bien:

Te creas un archivo de texto pones esto

chmod 000 /usr/bin/wget
chmod 000 /usr/bin/lynx
chmod 000 /usr/bin/*cc*
chmod 000 /usr/sbin/*cc*

Y luego le das permisos de ejecucion, nadie podra utilizar el wget ni el lynx ni compilar, puedes añadir todos los que quieras.

Despues creas el mismo (con otro nombre, por ejemplo abrir)

y le pones

chmod 755 /usr/bin/wget
chmod 755 /usr/bin/lynx
chmod 755 /usr/bin/*cc*
chmod 755 /usr/sbin/*cc

Tambien le das permisos de ejecucion, asi cuando quieras compilar o descargar algo solo tu podras dar esos permisos.
Espero que os guste amigos sysadmins