viernes, 30 de mayo de 2008

CONFIGURANDO FIREWALL-VPN 3COM

Este firewall posee las siguientes caracteristicas:
--> realiza filtrado de paquetes.
--> posee soporte de NAT.
--> proxy cache.
--> soporte vpn.

En esta entrada enseñare como fue la configracion de un firewall- VPN de 3com para los siguientes parametros.


--> conexion a internet
--> publicacion de servicios http, ftp
--> peticion y respuesta de ping.
--> proxy transparente.
--> vpn LAN to LAN- LAN to CLIENT.

para poder comenzar a utilizar el firewall comenzamos leyendo los manuales, que por cierto son en ingles, para poder saber que funciones cumplia y como accediamos a el ya que no habiamos trabajado con uno. luego procedimos a conectarlo y a configuarar los requerimientos anteriores, es recomensable no cambiar el password ya que otros compañeros seguiran trabajando con ellos y el firewall no tiene la posibilidad de resetiarlo.

comenzaremos conectando un cable directo desde un punto de red al puerto ADSL del firewall, luego el cable de utp que trae el firewall desde un puerto lan del dispositivo al puerto ethernet del pc que se configurara el firewall y puedes añadir otros cables de la misma forma para los equipos que seran clientes y probar la configuracion.

luego accedemos con el cd para entrar a configurar todos los parametros por medio del navegador con la direccion ip que nos asignara el dhcp y recuerden porner la ip para que no utilice proxy.

A continuacion estan las imagenes de la configuracion.
Cuando introducimos el cd que acompaña al dispositivos iniciamos la aplicacion seleccionada en la siguiente imagen para comenzar con la configuracion inicial .

luego seleccionamos la interfaz de la tarjeta de red para el firewall en caso de tener dos.

ahora veremos la ip que tiene configurada el dispositivo que es por la que accederemos via web a configurar el dispositivo.
progreso de la instalacion
Finalizamos la instalacion y accedemos a la consola de administracion a traves del navegador

Ahora para poder configurar el firewall debemos estar en el mismo rango de la ip en que se encuentra el dispositivo, lurgo agregamos al navegador que no utilice proxy para las direcciones ip locales en este caso la del firewall.

firewall 3com
Encuentra mas informacion de configuracion en los siguientes enlaces
--Configuracion VPN Gateway to Gateway
--Configuracion VPN Client to Lan

miércoles, 28 de mayo de 2008

IPsec UTILIZANDO RACOON EN LINUX

racoon permite emplear autenticacion basada en claves compartidas (autenticacion) con anterioridad, basicamente cuando utilizamos racoon estamos utilizando el protocolo IKE.

Puedes obtener mas informacion del tema en los siguientes enlaces
--Que es IPsec ???
--Configurando IPsec LINUX - LINUX
--Configurando IPsec WINDOWS - WINDOWS

para utilizar racoon comenzamos instalando.
#apt-get install racoon

luego de esta instalacion nos debe crear una carpeta en etc llamada racoon y dentro de esa carpeta se encuentramos los archivos de configuracion psk.txt, racoon.conf, racoon.conf.save, racoon-tool.conf

los unicos que configuraremos sera psk.txt, racoon.conf

procedemos a configurar racoon.conf de la siguiente manera.
#
# NOTE: This file will not be used if you use racoon-tool(8) to manage your
# IPsec connections. racoon-tool will process racoon-tool.conf(5) and
# generate a configuration (/var/lib/racoon/racoon.conf) and use it, instead
# of this file.
# Simple racoon.conf
#
# Please look in /usr/share/doc/racoon/examples for
# examples that come with the source.
# Please read racoon.conf(5) for details, and alsoread setkey(8).
# Also read the Linux IPSEC Howto up at
# http://www.ipsec-howto.org/t1.html
#path pre_shared_key "/etc/racoon/psk.txt";
#path certificate "/etc/racoon/certs";

#agregamos las siguientes lineas al archivo

remote 10.3.16.69 {
exchange_mode main;
proposal {
encryption_algorithm 3des;
hash_algorithm md5;
authentication_method pre_shared_key;
dh_group modp1024;
}
generate_policy off;
}

sainfo address 10.3.16.101[any] any address 10.3.16.69[any] any {
pfs_group modp768;
encryption_algorithm 3des;
authentication_algorithm hmac_md5;
compression_algorithm deflate;
}

la dir 10.3.16.101 la maquina local
la dir 10.3.16.69 ip del equipo con quien aremos la prueba

Ahora configuramos psk.txt

# IPv4/v6 addresses
#10.160.94.3 mekmitasdigoat
#172.16.1.133 0x12345678
#194.100.55.1 whatcertificatereally
#3ffe:501:410:ffff:200:86ff:fe05:80fa mekmitasdigoat
#3ffe:501:410:ffff:210:4bff:fea2:8baa mekmitasdigoat
# USER_FQDN
#foo@kame.net mekmitasdigoat
# FQDN
foo.kame.net hoge
#agregamos lo siguiente
#clave 128 bits 16 caracteres
#Direcciones IPv4
10.3.16.69 clave precompartida simple
10.3.16.101 "ana-alex41pqow05"; (clave precompartida)
#USER_FQDN
ani@misena.edu.co clave precompartida para direccion de correo
#FQDN
www.spenneberg.net clave precompartida

Recargamos Racoon

# /etc/init.d/racoon restart

para ver cuando racoon establece la fase 1 y 2 ejecutamos lo siguiente en la maquina local mientras que la otra maquina nos hace un ping
# tcpdump -i eth1 src host 10.3.16.69 or dst host 10.3.16.69
Captura con racoon

martes, 27 de mayo de 2008

ERROR EN EL SNORT

Se ha descubierto un fallo de seguridad en Snort que podría permitir a un atacante remoto saltar restricciones de seguridad.
Snort es uno de los IDS (Sistema de Detección de Intrusos) más extendidos, Distribuido de forma gratuita como Open Source, Snort puede detectar muchos posibles ataques basándose en el análisis de los paquetes de red según unas bases de datos, además de reglas genéricas.

El fallo reside en el reensamblado de paquetes IP fragmentados. Cuando Snort recibe paquetes fragmentados compara sus valores TTL. Snort tiene un valor predefinido para la diferencia de valores TTL entre paquetes, si el valor de la diferencia entre el primero de ellos y el resto es mayor que este valor los descartará y no aplicará ningún filtro o examen sobre ellos. Un atacante remoto podría aprovechar este fallo para saltar restricciones de seguridad modificando los valores TTL de los paquetes IP.

El problema se ha confirmado en Snort 2.8 y 2.6. Snort 2.4 no es vulnerable. Como contramedida en el archivo de configuración snort.conf, se puede establecer el valor ttl_limit a 255 con la siguiente línea:
preprocessor frag3_engine: ttl_limit 255

Además el fallo queda corregido en la versión 2.8.1

Tomado de una-al-dia

lunes, 26 de mayo de 2008

CONFIGURANDO IPsec WINDOWS - WINDOWS

Para empezar la configuración de IPsec en windows utilizamos una consola de administración

Puedes encontrar mas informacion del tema en los siguientes enlaces
--Que es ipsec ??
--Configuracion de IPsec Linux - Linux
--Configuracion de IPsec en Linux con Racoon

  • Inicio
  • Ejecutar
  • mmc

Luego nos aparece esta nueva consola
Archivo
  • agregar o quitar programas

Seleccionamos la opcion agregar

Buscamos las consola que deseamos administrar
  • Administrador de directivas de seguridad

Elegimos la opcion que administrara el complemento anterior


Seleccionamos el otro complemento que supervisara la seguridad
  • Monitor de seguridad IP

ya seleccionados nuestros dos complementos seleccionamos Aceptar

Componentes de nuestras opciones elegidas
Seleccionamos
  • Directivas de seguridad IP en equipo local y podemos ver las opciones que trae por defecto

Damos clic derecho para comenzar a crear nuevas reglas


Este asistente nos guiara en la configuracion

Seleccionamos un nombre y una descripcion que identifique a nuestra regla



Usamos claves precompartidas configurada manualmente que debe ser la misma en los dos equipos para que no se presenten errores


Editamos las propiedades

Agregamos un nuevo filtro

Asistente para comenzar

Modo en el que funcionara IPsec
  • Modo transporte
Esta regla sera aplicada a todas las conexiones de red

Lista de filtros IP

Asignamos un nombre para el nuevo filtro

Seleccionamos el direccionamiento que tendra en filtro

En la pestaña de protocolos seleccionamos el protocolo que utilizara el filtro

Damos una breve descripcion

Ahora observamos los componentes que tiene nuestro filtro ya creado



Comenzamos a crear una respuesta para nuestra accion de filtrado

Nombre para la accion de filtrado


Seleccionamos la accion de filtrado

Solo permitimos la comunicacion de equipos con IPsec

Escogemos el metodo de seguridad para el trafico IP

Finalizando
Nuestra accion ya esta creada


Finalizar por completo

Luego seleccionamos la politica y la asignamos
Despues de haber creado nuestras politicas y haberlas asignado probamos como funciona. si la politica fue creada para http entonces visitamos el sitio Web de algun companero o si por el contrario fue creada para ftp accedemos a un sitio ftp, y capturas los paquetes para saber como fue la comunicacion. la politica anterior la creamos para comprobar el ping, a continuacion esta la captura.


CONFIGURANDO IPsec LINUX - LINUX

Puedes obtener mas informacion del tema en los siguientes enlaces
--Que es IPsec ???
--Configuracion de IPsec en Linux con Racoon
--Configuracion de IPsec Windows - Windows

Para empezar con nuestra configuracion instalamos el siguiente paquete

# apt-get install ipsec-tools

Ahora editamos el archivo que tiene la configuracion y lo encontramos en la siguiente ruta por defecto /etc/ipsec-tools.conf

# pico ipsec-tools.conf
este es nuestro archivo por defecto.

#!/usr/sbin/setkey -f
# NOTE: Do not use this file if you use racoon with racoon-tool
# utility. racoon-tool will setup SAs and SPDs automatically using
# /etc/racoon/racoon-tool.conf configuration.
## Flush the SAD and SPD
# flush;
#spdflush;
## Some sample SPDs for use racoon
# spdadd 10.10.100.1 10.10.100.2 any -P out ipsec
# esp/transport//require;
# spdadd 10.10.100.2 10.10.100.1 any -P in ipsec
# esp/transport//require;
#


Ahora procedemos a agregar las siguientes lineas para nuestra configurar de IPsec. comenzamos descomentando las siguientes lineas
# flush;
# spdflush;

Luego procedemos con nuestra configuracion. las direcciones ip que apareceran a continuacion son las de nuestra maquna local y la de la maquina con la que realizaremos las pruebas.
10.3.16.101 maquina local.
10.3.16.69 otra maquina.

la palabra entre comillas "alexandra$analz-"; sera la clave que tendran los dos equipos, que para este caso sera de 128 bits(16 catacteres) ya que utilizaremos el protocolo md5.
Agregamos las siguientes lineas

# Some sample SPDs for use racoon

# add 10.3.16.101 10.3.16.69 ah 0x200 -A hmac-md5 "alexandra$analz-";
# add 10.3.16.69 10.3.16.101 ah 0x300 -A hmac-md5 "alexandra$analz-";

como utilizaremos el protocolo AH lo especificamos en las siguientes lineas

# Políticas de seguridad

# spdadd 10.3.16.101 10.3.16.69 any -P out ipsec
# ah/transport//require;


#spdadd 10.3.16.69 10.3.16.101 any -P in ipsec
# ah/transport//require;

Luego guardamos los cambios y recargamos IPsec asi:
# setkey -f ipsec-tools.conf

Procedemos a realizar el ping a otra maquina que en nuestro caso es la 10.3.16.69
en la otra maquina ejecutas el siguiente comando.
# tcpdump -i eth1 (interfaz) que estemos utilizando

al ejecutar este comando nos dimos cuenta que el ping hacia la peticion pero no recibia respuesta entonces procedimos a ejecutar el siguiente comando
# setkey -D y veras la siguiente informacion.

10.3.16.69 10.3.16.101
ah mode=transport spi=768(0x00000300) reqid=0(0x00000000)
A: hmac-md5 616c6578 616e6472 6124616e 616c7a2d
seq=0x00000000 replay=0 flags=0x00000000 state=mature
created: May 22 07:49:54 2008 current: May 22 09:11:18 2008
diff: 4884(s) hard: 0(s) soft: 0(s)
last: May 22 08:00:29 2008 hard: 0(s) soft: 0(s)
current: 141376(bytes) hard: 0(bytes) soft: 0(bytes)
allocated: 2209 hard: 0 soft: 0
sadb_seq=1 pid=6929 refcnt=0

10.3.16.101 10.3.16.69
ah mode=transport spi=512(0x00000200) reqid=0(0x00000000)
A: hmac-md5 616c6578 616e6472 6124616e 616c7a2d
seq=0x00000000 replay=0 flags=0x00000000 state=mature
created: May 22 07:49:54 2008 current: May 22 09:11:18 2008
diff: 4884(s) hard: 0(s) soft: 0(s)
last: May 22 07:50:40 2008 hard: 0(s) soft: 0(s)
current: 300888(bytes) hard: 0(bytes) soft: 0(bytes)
allocated: 2786 hard: 0 soft: 0
sadb_seq=0 pid=6929 refcnt=0

Entonces procedimos a comparar con el otro equipo las primeras dos lineas de cada uno de los parrafos

10.3.16.69 10.3.16.101
ah mode=transport spi=768(0x00000300) reqid=0(0x00000000)

10.3.16.101 10.3.16.69
ah mode=transport spi=512(0x00000200) reqid=0(0x00000000)

entonces nos dimos cuenta que nuestro compañero tenia tenia el siguiente numero en parrafos diferentes

10.3.16.101 10.3.16.69
ah mode=transport spi=512(0x00000200) reqid=0(0x00000000)

10.3.16.69 10.3.16.101
ah mode=transport spi=768(0x00000300) reqid=0(0x00000000)

procedimos a cambiar el numero (0x00000xxx) para que quedara igual a nuestro otro equipo.

luego guardas cambios, recargas ipsec y realizar de nuevo el ping y ya responde de la siguiente manera, tambien veras que aparece que estamos utilizando el protocolo AH.
# setkey -f ipsec-tool.conf
# ping 10.3.16.69 y la otra maquina ejecuta el siguiente comando.
# tcpdump -i eth1(interfaz) que estemos utilizando.

Peticion y respuesta del ping


CONFIGURACION CON ESP

En este parrafo lo que hacemos es cambiar -A por -E y el protocolo md5 por 3des-cbc, este protocolo utiliza una clave de 168 bits (24 caracteres) "qazxswedcvfrtgbnhyujmiko";


# Some sample SPDs for use racoon
add 10.3.16.101 10.3.16.69 esp 0x200 -E 3des-cbc "qazxswedcvfrtgbnhyujmiko";
add 10.3.16.69 10.3.16.101 esp 0x300 -E 3des-cbc "qazxswedcvfrtgbnhyujmiko";


En este segundo parrafo solo cambiamos ah por esp

# Políticas de seguridad

spdadd 10.3.16.101 10.3.16.69 any -P out ipsec
esp/transport//require;

spdadd 10.3.16.69 10.3.16.101 any -P in ipsec
esp/transport//require;

recargamos y realizas el ping y veras que ya estas utilizanso ESP.


jueves, 22 de mayo de 2008

QUE ES IPsec ???

IPsec es una extension del protocolo IP. proporciona servicios criptográficos de seguridad, permitiendo autenticación, integridad, y confidencialidad.
IPsec proporciona encriptación y autenticación a nivel de red, dando lugar a una solución de seguridad.

Metodos de funcionamiento
Modo Túnel:
este modo se usa cuando uno de los extremos de la comunicacion es un gateway. se encripta el paquete IP en su totalidad, convirtiendo el resultado en los datos de un nuevo paquete IP. el router de origen encripta el paquete y lo reenvía por el túnel IPsec. el router de destino desencripta el paquete IP original y lo reenvía al sistema destino.

Modo Transporte: se usa cuando es un host el que genera los paquetes. solo se encriptan los datos, y la cabecera IP original se deja intacta. este modo tiene la ventaja de que añade pocos bytes a cada paquete. además permite a los dispositivos de la red publica ver el origen y el destino del paquete. esto también implica que un atacante que este realizando un análisis del trafico que circula por la red, pueda ver nuestro paquete.


PROTOCOLOS DE IPSEC

IPsec emplea dos protocolos diferentes - AH y ESP - para asegurar la autenticación, integridad y confidencialidad de la comunicación. Puede proteger el datagrama IP completo o sólo los protocolos de capas superiores.

Authentication Header (AH) cabecera de autenticación, proporciona integridad, autenticación y no repudio si se eligen los algoritmos criptográficos apropiados.

Encapsulating Security Payload (ESP) protocolo de encapsulado de datos seguros, proporciona confidencialidad y la opción altamente recomendable de autenticación y protección de integridad.

Autenticación: Confidencialidad: Intregridad:
Los algoritmos criptográficos definidos para usar con IPsec incluyen HMAC- SHA1 para protección de integridad, y Triple DES-CBC y AES para confidencialidad.

PROTOCOLO IKE
El protocolo IKE resuelve el problema más importante del establecimiento de comunicaciones seguras: la autenticación de los participantes y el intercambio de claves simétricas. Tras ello, crea las asociaciones de seguridad. El protocolo IKE suele implementarse a través de servidores de espacio de usuario, y no suele implementarse en el sistema operativo. El protocolo IKE emplea el puerto 500 UDP para su comunicación.

El protocolo IKE funciona en dos fases: la primera fase establece un isakmp sa(asociación de seguridad del protocolo de gestión de claves de Internet)

En la segunda fase
, el ISAKMP SA se emplea para negociar y establecer las asociaciones de seguridad de IPsec.

Puedes encontrar mas informacion en los siguientes enlaces
--Configurando IPsec Linux - Linux
--Configuracion de IPsec en linux con Racoon
--Configuracion de IPsec Windows - Windows