martes, 1 de julio de 2008

Vulnerabilidad

Este es el analizis de una vulnerabilidad hecho con Nessus.

problema:

La red física está configurada en una forma potencialmente inseguras.

Descripción:

La máquina remota está en una lógica de red diferentes. Sin embargo, esta
en la misma subred física.

Un atacante se conectan a través de la misma red como su Nessus
hace un escáneo y puede reconfigurar su sistema para forzarlo
a pertenecer a la subred del host remoto.

Esto hace que cualquier filtración entre las dos subredes sea inútil.

Solución:

Use VLANs para separar las diferentes redes lógicas.

Factor de riesgo:

Bajo

Plugin de salida:
La dirección MAC de la máquina remota se 00:1 c: b0: 3c: d0: 00

Nessus ID: 23971


*Identificación del sistema operativo

Remote sistema operativo: Microsoft Windows Server 2008
Microsoft Windows Vista
Nivel de confianza: 59
Método: SinFP

El host remoto se está ejecutando uno de estos sistemas operativos:
Microsoft Windows Server 2008
Microsoft Windows Vista

Nessus ID: 11936

Descripcion del analisis:

Este analisis nos muestra que el equipo con direccion ip 10.3.19.49 tiene una vulnerabilidad con el rango de direcciones ip porque tiene una configuracion fisica insegura.
esta vulnerabilidad tiene un Factor de riesgo BAJO y la solucion es usar VLANs.
Con nessus podemos darnos cuenta de que sistema operativo tiene la maquina.
La maquina que scaneamos tiene un sistema operativo Windows Vista y Windows server 2008.

Desde este link podemos descargar Nessus y encontrar documentacion:
http://es.wikipedia.org/wiki/Nessus

viernes, 27 de junio de 2008

Configuracion de IPsec con Racoon en Linux.

Racoon es una herramienta para el manejo del intercambio de llaves en internet, se conoce como IKE (internet key Exchange) y utiliza un protocolo criptografico como ISAKMP.

Racoon es utilizado para establecer conexiones seguras en equipos.

Acontinuacion comenzaremos con la instalacion de racoon:

*primero debemos instalar el paquete de la siguiente forma

#apt-get install racoon


despues de instalarlo este crea unos archivos de configuracion que se alojan en la ruta /etc/racoon

*segundo debemos de establecer las llaves precompartidas para poder establecer la conexion esto se hace en el siguiente archivo /etc/racoon/psk.txt

#pico /etc/racoon/psk.txt



asi debe quedar el archivo:


# Direcciones IPv4
192.168.0.20 clave precompartida simple 192.168.0.10 "abcdefghijklmnopqrstuvwx"
# USER_FQDN
#sgarcia@misena.edu.co Esta es una clave precompartida para una dirección de correo
# FQDN
#www.spenneberg.net Esta es una clave precompartida

# 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

-Lo que se encuentra en negrilla son las direcciones ip de las maquinas que van a utilizar racoon para su comunicacion y lo otro resaltado es la llave precompartida que debe de estar en las dos maquinas la misma llave porque sino no va haber comunicaion.



*Tercero debemos de configurar que tipo de algoritmo de encriptacion y autenticacion vamos a utilizar esto se encuentra en la ruta /etc/racoon.

#pico /etc/racoon/racoon.conf

este es el archivo ya configurado, la parte que se encuentra en negrilla son la ip de mi maquina que es (192.168.0.10) y de la maquina con la cual vamos a establecer la comunicacion que la ip es ( 192.168.0.20) , los tipos de algoritmo de cifrado y autenticacion que en este caso son: de cifrado 3des y de autenticacion hmac_md5:


# 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";

remote 192.168.0.20 {
exchange_mode main,aggressive;
proposal {
encryption_algorithm 3des;
hash_algorithm md5;
authentication_method pre_shared_key;
dh_group modp768;
}
generate_policy off;
}

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



*cuarto para terminar debemos configurar el archivo de ipsec que se encuentra en el directorio /etc

#pico /etc/ipsec-tools.conf


-este es el archivo ya terminado:

#!/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;
#

# Políticas de seguridad
spdadd 192.168.0.10 192.168.0.20 any -P out ipsec
esp/transport//require;
# ah/transport//require;
spdadd 192.168.0.20 192.168.0.10 any -P in ipsec
esp/transport//require;
# ah/transport//require;

-Ya con esto hemos terminado de configurar IPsec con racoon ya debemos reiniciar IPsec y racoon con los siguientes comandos

#setkey -f ipsec-tools.conf

#/etc/init.d/racoon restart

esta imagen es una muestra de la comunicacion utilizando racoon.

debemos de escribir el siguiente comando:

#tcpdump -i eth1 src host 10.3.16.69 or dst host 10.3.16.69

martes, 24 de junio de 2008

Configuracion De IPsec en Linux

primero debemos instalar el paquete de IPsec.

#apt-get install ipsec-tools

-El archivo de configuracion que aparece cuando instalamos ipsec es ipsec-tools.conf y este aparece en el directorio /etc esta es una muestra de lo que contiene este archivo.


-ahora miremos que lineas son las que debemos modificar:

primero debemos descomentar las lineas

# flush;

# spdflush;


NOTA: ipsec trabaja con AH (AUTHENTICATION HEADER) y ESP (ENCAPSULATION SECURITY PAYLOAD). y vamos a configurar IPsec con cada uno de ellos.

* Configuracion IPsec con AH.

AH es un protocolo que proporciona en el ámbito de IPSec la autenticación del emisor y la integridad del mensaje mediante el cálculo de un código HMAC.

-Para que nuestro IPsec trabaje con AH debemos agregar las siguientes lineas en el archivo de configuracion (las direcciones IP utilizadas aqui son para el caso del ejemplo, para otra configuracion debes tener en cuenta el rango de direccionamiento de tu red):

add 192.168.0.10 192.168.0.20 ah 0x200 -A hmac-md5 "abcdefghijklmnop";
add 192.168.0.20 192.168.0.10 ah 0x300 -A hmac-md5 "abcdefghijklmnop";

192.168.0.10 es mi direccion IP y 192.168.0.20 es la direccion del equipo con el estableceremos la conexion IPsec, hmac-md5 es el algoritmo que usaremos y "abcdefghijklmnop" es la clave precompartida que debe ser de 1024 bits ya que esto es lo que soporta md5. La longitud varia dependiendo del algoritmo que se utilize.
La segunda linea se agrega para establecer la conexion en sentido contrario, estableciendo asi la comunicacion en doble sentido.

-Tambien debemos configurar las siguientes lineas del archivo ipsec-tools.conf

spdadd 192.168.0.10 192.168.0.20 any -P out ipsec
ah/transport//require;

spdadd 192.168.0.20 192.168.0.10 any -P in ipsec
ah/transport//require;

Asi especificamos nuevamente la comunicacion en ambos sentidos y tambien que trabajaremos con AH.

Asi queda el archivo de configuracion correcto:

#!/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
add 192.168.0.10 192.168.0.20 ah 0x200 -A hmac-md5 "abcdefghijklmnop";
add 192.168.0.20 192.168.0.10 ah 0x300 -A hmac-md5 "abcdefghijklmnop";

#
spdadd 192.168.0.10 192.168.0.20 any -P out ipsec
ah/transport//require;

#
spdadd 192.168.0.20 192.168.0.10 any -P in ipsec
ah/transport//require;

#

-Algo que debemos tener en cuenta es que en el equipo con el que vamos a establecer la conexion IPsec debe tener los mismos parametros configurados pero en sentido contrario al nuestro, por ejemplo, veamos como se veria el archivo de configuracion del equipo 192.168.0.20:


#!/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
add 192.168.0.20 192.168.0.10 ah 0x300 -A hmac-md5 "abcdefghijklmnop";
add 192.168.0.10 192.168.0.20 ah 0x200 -A hmac-md5 "abcdefghijklmnop";

#

spdadd 192.168.0.20 192.168.0.10 any -P out ipsec
ah/transport//require;

#
spdadd 192.168.0.10 192.168.0.20 any -P in ipsec

ah/transport//require;

#

-Despues de tener listo el archivo de configuracion recargamos IPsec

#
setkey -f /etc/ipsec-tools.conf

Ahora podemos comprobar si esta funcionando capturando paquetes con el comando tcpdump.

Si la configuracion esta correcta debemos ver un resultado como este:



ya con esto finalizamos la configuracion de ipsec con AH.


* Configuracion de IPsec con ESP.


ESP es un protocolo que proporciona en el ámbito IPSec confidencialidad, autenticación y protección de integridad utilizando llaves cifradas.

Asi queda el archivo terminado con esp:

#!/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

add 192.168.0.10 192.168.0.20 esp 0x201 -E 3des-cbc "abcdefghijklmnopqrstuvwx";
add 192.168.0.20 192.168.0.10 esp 0x301 -E 3des-cbc "abcdefghijklmnopqrstuvwx";

#
spdadd 192.168.0.10 192.168.0.20 any -P out ipsec
esp/transport//require;

#
spdadd 192.168.0.20 192.168.0.10 any -P in ipsec
esp/transport//require;

#

Las 2 diferencias principales en comparacion con la configuracion de AH son: El algoritmo de cifrado cambio de md5 a 3des y por eso la longitud de la clave precompartida cambia a 2048 bites, es decir 24 caracteres y que ahora la opcion "-A" cambio a "-E" para encriptar.


-ahora recargamos ipsec

#setkey -f /etc/ipsec-tools.conf

-Luego hacemos la misma prueba que con AH usando tcpdump.


si todo esta bien configurado nos debe aparecer el siguiente resultado:



con esto hemos terminado la configuracion de ipsec con esp y seguiremos con:

* Configurcion de IPsec con AH y ESP.

Es posible que IPsec funcione con AH y ESP juntos para hacerlo mucho mas seguro. Para hacerlo simplemente juntamos las dos configuraciones que hicimos anteriormente, veamos como queda el archivo de configuracion:

#!/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
add 192.168.0.10 192.168.0.20 ah 0x200 -A hmac-md5 "abcdefghijklmnop";
add 192.168.0.20 192.168.0.10 ah 0x300 -A hmac-md5 "abcdefghijklmnop";
add 192.168.0.10 192.168.0.20 esp 0x201 -E 3des-cbc
"abcdefghijklmnopqrstuvwx";
add 192.168.0.20 192.168.0.10 esp 0x301 -E 3des-cbc "abcdefghijklmnopqrstuvwx";


#
spdadd 192.168.0.10 192.168.0.20 any -P out ipsec
esp/transport//require
ah/transport//require;

#
spdadd 192.168.0.20 192.168.0.10 any -P in ipsec
esp/transport//require
ah/transport//require;

#

-Ahora recargamos ipsec:

#setkey -f /etc/ipsec-tools.conf


-Capturamos trafico con tcpdump y nos debe mostrar un resultado como este, debemos copiar el siguiente comando esto se hizo tambien con las anteriores capturas:

#tcpdump -i eth0 src host 192.168.0.20 or dst host 192.168.0.20




ya con esto hemos finalizado la configuracion de ipsec con ah y esp.

esta configuracion fue hecha con el compañero Stiven Garcia http://chavosec.blogspot.com/

lunes, 23 de junio de 2008

configuracion de IPsec en Windows

Que es IPsec

1.Damos clic en inicio, ejecutar, copiamos mmc y damos enter esto es para que nos aparesca una consola de administracion.


2.Después de haber dado enter nos aparecerá la siguiente ventana en esta ventana damos clic en en archivo y en agregar o quitar complemento.


3.luego nos saldrá el siguiente recuadro en el cual escogeremos que consola de administracion queremos.

-en este recuadro le damos clic en agregar.

4.en la nueva ventana que nos aparecio escojemos la opcion ip security policy management y le damos add nos aparecera otra ventana la cual nos pregunta en que equipo vamos agregar el complemento, le damos en equipo local y finish, despues seleccionaremos el otro complemento que sera ip security monitor le damos clic en add y luego en close.


4.aqui nos muestran las consolas que seleccionamos y luego de estar seguros de que se escojieron bien damos clic en aceptar.


5.despues de terminar lo anterior nos aparecera las opciones de configuracion de ipsec. Ya con esto empesaremos a configurar politicas de ipsec.
-primero damos clic derecho en directivas de seguridad (ip security policy management) y le damos clic en crear directiva de seguridad ip


6.nos aparecera un asistente de configuracion.


-le damos clic en siguiente.

7.nos saldra una un recuadro donde nos pedira el nombre y la descripcion que le vamos a colocar a la directiva y le damos clic en siguiente.


8.luego nos saldra el siguiente cuadro el cual nos esta dice si queremos activar la regla de respuesta predeterminada, esto es para que los equipos remotos cundo soliciten seguridad se le responda y se le solicite seguridad en la comunicacion.


9.Luego nos aparecera un cuadro en el cual especificaremos la llave precompartida.

-damos clic en siguiente y nos aparecera que ya hemos terminado la de crear la directiva:


-y le damos clic en finalizar.

10.Al darle clic en finalizar nos aparecerá un cuadro donde podemos agregar reglas para nuestra directiva. para no tener inconvenientes desactivamos la opcion de usar asistente para agregar (use add Wizard) que se encuentra en la parte inferior de la ventana y luego damos clic en agregar.


11.nos aparecera este cuadro el cual nos permite hacer un filtrado de ip (IP filter list) y le daremos clic en agregar.


12.luego de que le dimos clic en agregar nos aparecerá un recuadro en el cual le colocaremos el nombre ala regla de filtrado y tambien desactivamos el asistente (use add Wizard) luego de colocar el nombre le damos cilc en edit.


13.en esta ventana especificaremos desde que direccion ip origen hacia cual direccion ip destino y pasamos ala siguiente pestaña.


14.en esta pestaña especificaremos que protocolo vamos a utlizar:


-si queremos podemos colocarle descripcion ala regla.y para finalizar le damos clic en ok a todas las ventanas que nos aparescan.

15.despues escogemos la pestaña Filter action (accion de filtrado) y le damos clic en agregar


16.despues de darle add nos aparecera esta ventana en la cual podemos escoger los metodos de seguridad en este caso escogemos negociar la seguridad (negotiate security) y damos clic en agregar


17.luego de darle en add nos aparecera esta ventana en la cual escogemos la opcion personalizada esto es para personalizar el metodo de seguridad y le damos clic en configurarion.


18.nos aparecera una ventana en la cual escogemos los algoritmos que vamos a utilar puede ser SHA1 O MD5 tambien podemos escoger el algoritmo de encriptacion que puede ser 3DES.

-luego de escoger los algoritmos le damos clic en ok a todas las ventanas que nos aparescan.

19.luego pasamos ala pestaña metodos de autenticacion y le damos clic en agregar.


-luego de darle cilc en agregar nos aparecera una ventana en la cual escogeremos la ultima opcion y colocaremos la llave precompartida.
20.y ya para terminar le damos clic derecho sobre la politica y damos clic en asignar.


NOTA:para que esta politica funcione debe de haber la misma configuracion en los equipos donde se va a implementar esta regla.

esta fue una prueba de la politica. Esta politica es para que negocien seguridad cuando se hace un ping y tengan comunicacion segura.

jueves, 19 de junio de 2008

Lista de correo APACHE

Cross site scripting a través de mod_negotiation en Apache 1.x y 2.x

Se ha encontrado un fallo de seguridad en Apache que podría permitir a un atacante provocar un problema de cross site scripting.

El fallo se da en el módulo mod_negotiation, que no filtra correctamente código HTML de nombres antes de mostrar la entrada como parte de un mensaje HTTP 406 (Not Accesptable) o como parte del mensaje HTTP 300 (Multiple Choices). Si un atacante pudiese controlar un nombre de fichero en el sistema Apache, y el visitante visitara una URL especialmente manipulada que apuntara a él, se podría ejecutar código HTML y Script en el navegador del usuario en el contexto de la página afectada.

No existe parche oficial. Se recomienda deshabilitar el módulo implicado si no se utiliza o deshabilitar el tipo de respuesta implicado.

Mas informacion en:
http://www.securitytracker.com/alerts/2008/Jan/1019256.html


Revelación de información sensible en Apache HTTP Server 2.x


Se ha encontrado un problema en Apache que podría ser aprovechado por atacantes para obtener información sensible.

Existe un problema en la función recall_headers() (en modules/cache/mod_mem_cache.c) que no copia correctamente los datos de la cabecera. Esto podría ser aprovechado por atacantes para obtener información sensible a través de peticiones especialmente manipuladas.

Sólo se ve afectada la rama 2.2.4.

Existe una solución en el SVC:
http://svn.apache.org/viewvc?view=rev&revision=543515

mas informacion en:
https://issues.apache.org/bugzilla/show_bug.cgi?id=41551

http://www.frsirt.com/english/advisories/2007/2231



Cross-site scripting en Apache 2.2.x

La vulnerabilidad que afecta a las versiones 2.2.x está localizada en la función mod_imagemap y está causada porque algunas entradas no se limpian de forma adecuada antes de ser devueltas al usuario. Esto podría ser explotado por un atacante remoto para inyectar código JavaScript o HTML arbitrario en el contexto de la sesión del navegador de un usuario que visita una página afectada. Para que la vulnerabilidad pueda ser explotada se requiere que mod_imagemap esté activado y sus ficheros accesibles de forma pública.

esta vulnerabilidad afecta las versiones de apache 2.2.5, 2.2.4, 2.2.3, 2.2.2 y 2.2.0.

Se recomienda actualizar a la versiones de desarrollo 1.3.40-dev o 2.2.7-dev, donde se han subsanado los problemas de seguridad. Están disponibles desde:
http://httpd.apache.org/download.cgi

mas informacion en:
http://httpd.apache.org/security/vulnerabilities_13.html

http://httpd.apache.org/security/vulnerabilities_22.html


informacion tomada de la pagina:

http://www.hispasec.com

miércoles, 18 de junio de 2008

Backtrack


Se presenta como un LiveCD (por lo que ni siquiera necesita instalación) que proporciona en un par de minutos acceso a más de 300 herramientas de todo tipo (sniffers, exploits, auditoría wireless, análisis forense, etc) perfectamente organizadas.

Backtrack es una distribucion GNU/linux pensada y diseñada para la auditoría de seguridad y relacionada con la seguridad informática en general. Actualmente tiene una gran popularidad y aceptación en la comunidad que se mueve entorno a la seguridad informatica.

Deriva de la unión de dos grandes distribuciones orientadas a la seguridad, el Auditor + WHAX.

whax es la evolución del Whoppix,(WhiteHat Knoppix) el cual pasó a basarse en SLAX en lugar de en Knoppix.

Fue incluida en la famosa lista Top 100 Network Security Tools del 2006 disponible en SecTools.Org

Puede encontrarse más información en la página de Backtrack, desde donde también es posible descargarla.

NMAP

Nmap es un programa de código abierto que sirve para efectuar rastreo de puertos TCP y UDP atribuído a fyodor. Se usa para evaluar la seguridad de sistemas informáticos, así como para descubrir servicios o servidores en una red informática.

Algunas Caracteristicas de NMAP

  • Descubrimiento de servidores: Identifica computadoras en una red, por ejemplo listando aquellas que responden ping.
  • Identifica puertos abiertos en una computadora objetivo.
  • Determina qué servicios está ejecutando la misma.
  • Determinar qué sistema operativo y versión utiliza dicha computadora, (esta técnica es también conocida como fingerprinting)
  • Obtiene algunas características del hardware de red de la máquina objeto de la prueba.
esta es una muestra del escaneo de los puertos que es tan abiertos: