Archivo

Archive for 28 septiembre 2012

kismet + gpsd + gpsdrive = wardriving!

septiembre 28, 2012 Deja un comentario

Y para los que no saben lo que es el Wardriving:

Se llama wardriving a la búsqueda de redes inalámbricas Wi-Fi desde un vehículo en movimiento. Implica usar un coche o camioneta y un ordenador equipado con Wi-Fi, como un portátil o una PDA, para detectar las redes. Esta actividad es parecida al uso de un escáner para radio.
(Citado textualmente desde Wikipedia.)

La idea de este post, es hacer un mini tutorial de cómo hice funcionar (gracias a la ayuda de Nozelf) el GPS en GNU/Linux junto a las herramientas de sniffing kismet y a gpsdrive. Debo dejar claro que no enseñaré a configurar el bluetooth ni nada por el estilo, asumo que todo eso ya está configurado.

 

Lo primero que haremos será buscar el dispositivo y asociarlo a nuestra máquina, para esto usaremos hcitool y rfcomm.

[root@balcebu ~]# hcitool scan
Scanning ...
00:02:C7:15:B3:A3 BTGPS 15B3A3
[root@balcebu ~]# rfcomm bind /dev/rfcomm0 00:02:C7:15:B3:A3
[root@balcebu ~]#

Para ver si el GPS está entregando algún tipo de información, podemos hacer un cat directamente al dispositivo.

[root@balcebu ~]# cat /dev/rfcomm0
PGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000211.991,V,0000.0000,N,00000.0000,E,0.000000,,101102,,*0A
$GPVTG,,T,,M,0.000000,N,0.000000,K*4E
$GPGGA,000212.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*76
$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000212.991,V,0000.0000,N,00000.0000,E,0.000000,,101102,,*09
$GPVTG,,T,,M,0.000000,N,0.000000,K*4E
$GPGGA,000213.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*77
$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000213.991,V,0000.0000,N,00000.0000,E,0.000000,,101102,,*08
$GPVTG,,T,,M,0.000000,N,0.000000,K*4E
$GPGGA,000214.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*70
$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000214.991,V,0000.0000,N,00000.0000,E,0.000000,,101102,,*0F
$GPVTG,,T,,M,0.000000,N,0.000000,K*4E
$GPGGA,000215.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*71

Hasta ahora todo en orden. Ahora debemos configurar el kismet, el fichero de configuración que tengo yo es:

version=2007.09.R1
servername=Kismet
suiduser=zerial
networkmanagersleep=true
source=iwlagn,wlan0,iwl
vapdestroy=true
channelhop=true
channelvelocity=5
channelsplit=true
defaultchannels=IEEE80211b:1,6,11,2,7,3,8,4,9,5,10
defaultchannels=IEEE80211g:1,6,11,2,7,3,8,4,9,5,10
defaultchannels=IEEE80211a:36,40,44,48,52,56,60,64
defaultchannels=IEEE80211ab:1,6,11,2,7,3,8,4,9,5,10,36,40,44,48,52,56,60,64
tcpport=2501
allowedhosts=127.0.0.1
bindaddress=127.0.0.1
maxclients=5
gps=true
gpshost=localhost:2947
gpsmodelock=false
alert=NETSTUMBLER,10/min,1/sec
alert=WELLENREITER,10/min,1/sec
alert=LUCENTTEST,10/min,1/sec
alert=DEAUTHFLOOD,10/min,2/sec
alert=BCASTDISCON,10/min,2/sec
alert=CHANCHANGE,5/min,1/sec
alert=AIRJACKSSID,5/min,1/sec
alert=PROBENOJOIN,10/min,1/sec
alert=DISASSOCTRAFFIC,10/min,1/sec
alert=NULLPROBERESP,10/min,1/sec
alert=BSSTIMESTAMP,10/min,1/sec
alert=MSFBCOMSSID,10/min,1/sec
alert=LONGSSID,10/min,1/sec
alert=MSFDLINKRATE,10/min,1/sec
alert=MSFNETGEARBEACON,10/min,1/sec
alert=DISCONCODEINVALID,10/min,1/sec
alert=DEAUTHCODEINVALID,10/min,1/sec
allowkeytransmit=true
writeinterval=300
trackivs=false
sound=false
soundplay=/usr/bin/play
sound_new=${prefix}/share/kismet/wav/new_network.wav
sound_traffic=${prefix}/share/kismet/wav/traffic.wav
sound_junktraffic=${prefix}/share/kismet/wav/junk_traffic.wav
sound_alert=${prefix}/share/kismet/wav/alert.wav
speech=false
festival=/usr/bin/festival
flite=false
darwinsay=false
speech_voice=default
speech_type=nato
speech_encrypted=New network detected, s.s.i.d. %s, channel %c, network encrypted.
speech_unencrypted=New network detected, s.s.i.d. %s, channel %c, network open.
ap_manuf=ap_manuf
client_manuf=client_manuf
metric=false
waypoints=true
waypointdata=/home/zerial/.gpsdrive/way.txt
waypoint_essid=true
alertbacklog=50
logtypes=dump,network,csv,xml,weak,cisco,gps
trackprobenets=true
noiselog=false
corruptlog=true
beaconlog=true
phylog=true
mangledatalog=true
fuzzycrypt=wtapfile,wlanng,wlanng_legacy,wlanng_avs,hostap,wlanng_wext,ipw2200,ipw2915
fuzzydecode=wtapfile,radiotap_bsd_a,radiotap_bsd_g,radiotap_bsd_bg,radiotap_bsd_b,pcapfile
netfuzzycrypt=true
dumptype=wiretap
dumplimit=0
logdefault=Kismet
logtemplate=%n-%d-%i.%l
piddir=/var/run/
configdir=%h/.kismet/
ssidmap=ssid_map
groupmap=group_map
ipmap=ip_map

Nota: Tuve que instalar una version antigua de Kismet ya que tuve conflictos con la más nueva.
Cuando tengamos configurado kismet y, antes de ejecutarlo, debemos setear nuestra interfáz en modo monitor y correr gpsd. Lo primero va a depender del driver que estemos usando.
En los casos más comunes son:

Intel, broadcom, ralink, realtek, entre otas:
# iwconfig wlan0 mode monitor
En la mayoría:
# airmon-ng wlan0 start
En las con madwifi (atheros, zydass)
# wlanconfig ath create wlandev wifi0 wlanmode monitor
Y el gpsd lo corremos:
# gpsd -F /tmp/gps.socket /dev/rfcomm0
Ya podemos arrancar el kismet. La pantalla que veremos será algo similar a:

kismet

Son todas las redes que captura nuestra interfáz wireless. Pero a lo que nosotros nos interesa, es el fichero Way Points que se está guardando, según nuestro kismet.conf, en el directorio ~/.gpsdrive/way.txt.

[zerial@balcebu ~]$ cat ~/.gpsdrive/way-ssid.txt
GASPAR -33.442875 -70.598656
RED_ANDRES -33.442886 -70.598724
EDSOIT -33.442875 -70.598656
jaguar house 0.000000 0.000000
Visitas Jaguar 0.000000 0.000000
Rodrigo_2008 -33.442875 -70.598656
<no ssid> -33.442886 -70.598724
costa2 -33.442881 -70.598656
SUPERTALDO -33.442886 -70.598724
Fidelizador.com -33.442881 -70.598656
CDAguilucho -33.442875 -70.598656
CDAguilucho -33.442875 -70.598656
CDAguilucho -33.442881 -70.598656
CDAguilucho -33.442881 -70.598656
WebSTAR -33.442875 -70.598656
Prueba -33.442881 -70.598656</no>

Lo que vemos son los nombres de las señales, longitud y latitud. Ya con toda ésta información, podemos “graficarla” en algun mapa, por ejemplo, el de gpsdrive.

gpsdrive

Aún no configuro bien ni cargo los mapas que corresponden, por lo que el GPSDrive me muestra la información un tanto ilegible, pero podemos ver que si está posicionando la información capturada por kismet. Lamentablemente no puedo hacer más zoom.
Otra opción sería traspasar los datos de WayPoints a KML para que pueda ser interpretado por Google Earth, tambien podemos introducir las coordinadas manualmente para ir graficando.

La idea es la siguiente, montar una antena en un auto y salir con los portátiles a recorrer la ciudad capturando éste tipo de información y graficandolo en un mapa para luego compartirla y tener un mapa con las redes de la ciudad. El próximo post relacionado a este tema, será cuando haga wardriving, subiré fotos y todo eso.

Fuente: http://blog.zerial.org/

Categorías:Wardriving Etiquetas: , , ,

Servidor Apache – MOD_SECURITY – Parte X

septiembre 28, 2012 Deja un comentario

MOD_SECURITY es una robusta librería que se encuentra disponible para servidores web Apache y que permite a un administrador, extender la seguridad del servidor con mecanismos adicionales incluidos en este módulo. Se encuentra dentro de la categoría de los WAF (Web Application Firewall) dado que contiene directivas que permiten detectar y filtrar ataques comunes contra la infraestructura de un servidor web. Una de las principales características de este módulo es su capacidad para capturar y analizar de forma dinámica el trafico HTTP, esto es una gran ventaja, dado que estas características le permiten monitorizar, registrar y controlar el acceso de todas las peticiones HTTP que son llevadas a cabo por los clientes, filtrando aquellas que son legitimas y aquellas que tienen altas probabilidades de no serlo. Este módulo es importante habilitarlo en servidores web ya que permite habilitar una capa extra de protección, sin embargo es también importante tener en cuenta que este módulo no puede proteger por completo un servidor web, ya que su contexto de ejecución esta limitado solamente a las aplicaciones web y hay mucho código (propio del servidor web) que se ejecuta antes de que MOD_SECURITY entre en acción.

 

Para comprender como funciona este módulo antes de proceder a instalar y llevar a cabo tareas más concretas como las de establecer reglas y explicar las directivas disponibles, se indica cual es el ciclo de vida de este módulo, explicando cada uno de los pasos involucrados:

  1. Request Headers.Este es el primer paso para el procesamiento de MOD_SECURITY, el principal objetivo de esta etapa es interceptar la petición de un cliente y enviar los headers y el body de la petición del cliente al motor de reglas de ModSecurity, todo esto antes de que se lleve a cabo el procesamiento propiamente dicho de la petición por parte del servidor web.
  2. Request Body.Este paso es uno de los más importantes, ya que se pone en marcha el proceso de análisis de la petición anteriormente interceptada, en este punto las reglas definidas en el motor tienen a su disposición toda la información relacionada con el cuerpo de la petición, es aquí donde las reglas determinan si la petición debe continuar siendo procesada por el servidor, si debe interrumpirse la interacción o debe llevarse a cabo alguna acción adicional.
  3. Response Headers.Este paso entra en acción después de que el servidor web genera la respuesta para una petición dada, donde los headers ya se encuentran generados pero el body aun no se ha leído, en este punto el motor de reglas define que campos deben ser inspeccionados en el cuerpo de la repuesta.
  4. Response BodySe trata de la principal fase de análisis del cuerpo de la respuesta, esta fase toma como insumo la fase anterior (Response Headers) donde el motor de reglas para la respuesta ha sido inicializado y ahora el cuerpo de la respuesta se ha tenido que leer completamente para que con toda la información de la respuesta, el motor de reglas pueda tomar decisiones sobre los datos leídos.
  5. LoggingSe trata de la única fase del ciclo de vida que no puede ser bloqueada, ya que cuando esta fase se ejecuta, la transacción habrá finalizado y es poco lo que el administrador podrá hacer al respecto, las reglas definidas en este paso, solamente definen la forma en la que el logging se llevará a cabo.

Anotar que todos los estos pasos, son llevados a cabo por medio de filtros Input/Output de Apache (que se han explicado en una publicación anterior) y de esta forma, el ciclo de vida se mueve por cada una de sus etapas

Ahora se procede a indicar el proceso de instalación de MOD_SECURITY en un servidor web Apache.

Instalación Mod_Security

En primer lugar la instalación recomendada (y la que explicaré a continuación) es la instalación partiendo del código fuente del módulo, también es posible instalar MOD_SECURITY utilizando alguna versión pre compilada disponible para cada sistema operativo (Debian, backTrack, Ubuntu, etc.) o versiones pre compiladas de terceros.

En primer lugar se deben cumplir las dependencias exigidas por MOD_SECURITY, en sistemas basados en Debian, basta con ejecutar

>apt-get install libcurl3-dev liblua5.1-dev libxml2-dev

Ahora ejecutar el script configure indicando la ruta donde se encuentra disponible APXS.

>./configure –with-apxs=/opt/WebServerFull/httpd-2.2.22/bin/apxs

Finalmente ejecutar

>make>make install

Con las instrucciones anteriores será suficiente para tener instalado Mod_Security en el servidor web, con lo anterior, se ha debido generar el fichero mod_security2.so en el directorio de módulos del servidor web ubicado en <APACHE_INSTALL>/modules.

Ahora que MOD_SECURITY se encuentra instalado en el servidor web, se puede comenzar a utilizar sus directivas (obviamente después de cargar el módulo).

Conocer las directivas, permite tener un mejor entendimiento y conocimiento sobre como funciona este módulo y cuales son las características que implementa, antes de pasar a esa parte, es aconsejado crear una estructura de directorios especifica para este módulo, de tal forma que sea fácil de identificar los ficheros de configuración necesarios y cual será el espacio de trabajo definido para las operaciones que lleve a cabo el módulo. En este caso, se ha creado la siguiente estructura de directorios dentro del directorio de instalación de Apache:

<APACHE_INSTALL_DIR>/etc

<APACHE_INSTALL_DIR>/var

<APACHE_INSTALL_DIR>/var/audit

<APACHE_INSTALL_DIR>/var/data

<APACHE_INSTALL_DIR>/var/log

<APACHE_INSTALL_DIR>/var/tmp

<APACHE_INSTALL_DIR>/var/upload

Esta estructura de directorios cobrará sentido en la medida que se avance con el estudio de las directivas. Ahora, para tener una configuración limpia, en el directorio etc se incluirán todos los ficheros de configuración que se utilizarán, el primero de los ficheros será llamado mainConfig.conf

Ahora, en el de configuración del Apache (httpd.conf) se deben incluir las siguientes lineas:

# Load libxml2LoadFile /usr/lib/libxml2.so

# Load Lua

LoadFile /usr/lib/liblua5.1.so

# Finally, load ModSecurity

LoadModule security2_module modules/mod_security2.so

Include /opt/WebServerFull/httpd-2.2.22/modsecurity/etc/mainConfig.conf

Ahora bien, el contenido del fichero mainConfig.conf, inicialmente puede ser el siguiente:

SecDataDir /opt/WebServerFull/httpd-2.2.22/modsecurity/var/dataSecTmpDir /opt/WebServerFull/httpd-2.2.22/modsecurity/var/tmp

Ahora que se encuentra correctamente instalado y configurado este módulo en el Apache, es el momento de conocer las principales directivas disponibles para conocer su alcance y lo que se puede hacer con él.

DIRECTIVAS EN MOD_SECURITY

Algunas de las directivas más interesantes y las que seguro serán utilizadas.

Directivas para Procesamiento de Peticiones

SecRequestBodyAccess

Sus posibles valores son “on” y “off” y le indica a mod_security cuando debe y cuando no debe acceder al cuerpo de las peticiones, tal como se recordará de los apartados anteriores, dentro del ciclo de vida hay una separación en los datos a los que puede acceder con mod_security, en cualquier caso, los headers de la petición siempre estarán disponibles, (paso 1 del ciclo de vida) sin embargo el cuerpo de la misma esta disponible solamente en el siguiente paso (paso 2 del ciclo de vida). En el caso de que esta directiva tenga un valor de “off” indica que no será posible acceder a los valores que viajan en el cuerpo de la petición (como por ejemplo parámetros que viajan por POST) lo cual desde luego, no es siempre deseado. Sin embargo hay una “desventaja” cuando esta directiva se encuentra activada (con valor “on”) y es que los buffers de los cuerpos de las peticiones son almacenadas en memoria volátil (RAM) lo cual puede ser un problema cuando MOD_SECURITY se ejecuta como un módulo embebido en el Apache. Es aquí donde entran otras directivas que permiten controlar los tamaños de los buffers en memoria, estas directivas se explican a continuación.

SecRequetsBodyInMemoryLimit

Esta directiva, como su nombre indica, permite definir el tamaño en bytes que será reservado en la memoria RAM para que MOD_SECURITY almacene allí los buffers correspondientes a los cuerpos de las peticiones, para que esta directiva tenga alguna efecto, la directiva SecRequestBodyAccess debe encontrarse activada.

#512 KBSecRequetsBodyInMemoryLimit 524288

En el caso de que una petición multipart/form-data superé este tamaño en memoria, automáticamente se comenzarán a volcar bytes a un fichero temporal en disco.

SecRequestBodyLimit

Indica el tamaño máximo de bytes permitido para los buffers correspondientes a los cuerpos de las peticiones, cualquier petición que superé este limite, será rechazada con un error HTTP 413 (Request Entity Too Large)

En el caso de que alguna de las aplicaciones alojadas en el servidor web tenga FileUploads o componentes similares en los que se permita a los usuarios subir ficheros, el tamaño que se le debe asignar a esta directiva debe de ser igual al tamaño máximo de los ficheros que se podrán subir.

#131072 KBSecRequestBodyLimit 134217728

SecRequestBodyNoFilesLimit

Esta directiva es similar a la anterior, con la diferencia de que en este caso, no se toman en cuenta las peticiones que transfieran archivos al servidor (FileUploads), en tales casos toma preferencia la directiva SecRequestBodyLimit. Normalmente este valor debe de ser más pequeño que el establecido en la directiva anterior, ya que el procesamiento de ficheros (que normalmente suelen tener un peso mucho mayor que las peticiones simples)

SecRequestBodyNoFilesLimit 131072

El valor por defecto de esta directiva es de 1 MB.

Esta directiva se ha introducido a partir de la versión 2.5 con el fin de evitar ataques DoS con el uso de la directiva SecRequestBodyLimit.

SecRequestBodyLimitAction

Permite controlar cual será el comportamiento del módulo cuando una petición alcanza o supera el limite definido en la directiva SecRequestBodyLimit en este caso pueden definirse dos valores posibles Reject y ProcessPartial. El valor por defecto es Reject a menos que la directiva SecRuleEngine tenga el valor DetectionOnly en cuyo caso el valor que tomará esta directiva será ProcessPartial

Directivas para Procesamiento de Respuestas

Del mismo modo que existen directivas para controlar los tamaños de los buffers para las peticiones y permitir que MOD_SECURITY haga un análisis de sus contenidos, también existen directivas que permiten tomar control sobre las respuestas que son emitidas por parte del servidor. Aunque en algunos entornos, toman como buenas practicas, desactivar el filtrado de MOD_SECURITY para el análisis de las respuestas que genera el servidor web, esto con el fin de mejorar el desempeño general del servidor ya que el uso de CPU se verá reducido (si, la seguridad cuesta). En algunos casos esto puede ser útil, pero en otros casos, puede convenir analizar las respuestas que esta generando el servidor para verificar que no existen fugas de información o se producen respuestas que exponen información sensible del servidor.

SecResponseBodyAccess

Esta directiva activa o desactiva el procesamiento de MOD_SECURITY para las respuestas generadas por el servidor web. Los posibles valores de esta directiva son “On” y “Off”. El valor por defecto es “Off”

SecResponseBodyLimit

Se trata de una directiva que permite establecer el limite en bytes de las respuestas generadas por el servidor. Es importante tener en cuenta que si este valor es muy pequeño, se pueden “romper” páginas en el servidor, es decir, si las respuestas a peticiones a dichas páginas tienen un tamaño superior al permitido por esta directiva, la respuesta al final será un error HTTP 500 (Internal Server Error)

#512 KB.SecResponseBodyLimit 524288

SecResponseBodyLimitAction

Si el cuerpo de una respuesta es demasiado grande y supera el tamaño definido en la directiva SecResponseBodyLimit se lanzará un error, sin embargo esto no siempre resulta conveniente, por este motivo existe esta directiva que permite indicarle al módulo que acción se debe llevar a cabo en el caso de que se presente esta situación. Los valores posibles para esta directiva son Reject y ProcessPartial, en el caso de que se establezca ProcessPartial la respuesta generada llegará solamente hasta el limite establecido en bytes, el resto de la respuesta será cortado.

SecResponseMimeType

Con esta directiva, se le puede indicar al modulo, los tipos de contenidos MIME que podrán ser almacenados en buffers de memoria, lo cual es bastante útil para indicar al servidor web que se debe procesar y que no. Esta directiva permite la definición de varios tipos MIME.

SecResponseMimeType text/plain text/html text/xml

Esta ha sido una introducción al uso de Mod_security en Apache, en la próxima publicación se hablará más sobre otras directivas interesantes y configuraciones que pueden aplicarse con este módulo.

Fuente: http://thehackerway.com

Wireless Hacking – Listado de Herramientas para redes inalámbricas – Parte XXIII

septiembre 28, 2012 Deja un comentario

A lo largo de esta serie de publicaciones se ha hablado muchísimo de la importancia que tiene conocer sobre las vulnerabilidades y los vectores de ataque que pueden ser empleados con el fin de comprometer una red inalámbrica, ese era el principal objetivo de esta serie artículos, sin embargo en esta ocasión, hablaré sobre algunas aplicaciones disponibles que permiten optimizar y agilizar todo el proceso de hacking/cracking de una red inlambrica, omitiendo de esta lista, herramientas como las disponibles en la suite de aircrack-ng, dado que ya se ha hablado suficiente sobre dicho conjunto de aplicaciones y merece la pena dar espacio a otras aplicaciones que son también bastante interesantes.

NetStumbler – ViStumbler

Se trata de una herramienta para sistemas Windows que permite detectar redes inalámbricas y marcar su posición relativa con GPS. Se trata de un software que es bastante simple de utilizar (sin ejecutar nada desde linea de comandos). Pueden especificarse filtros, SSID y canales para realizar un Escaneo. Ademas de las opciones anteriores, también es posible establecer ajustes de configuración un poco más avanzados tales como posicionamiento por GPS. Para descargar e instalar esta herramienta ver: http://www.netstumbler.com/downloads/netstumblerinstaller_0_4_0.exe

No obstante es una herramienta que ya lleva un tiempo de desarrollo y en versiones recientes de Windows (Windows Vista o 7) se han encontrado algunas dificultades en su uso, por este motivo se menciona también ViStumbler que se trata de una herramienta con funcionalidades bastante similares a las de NetStumber, sin embargo puede ser utilizada en versiones recientes de Windows y soporta un numero mucho mayor de tarjetas de red inalambricas. Cuenta con una interfaz mucho más completa y con mayores prestaciones, además de que permite visualizar muchos más detalles sobre las redes inalambricas detectadas que NetSumbler. Para descargar esta herramienta ver:

http://www.vistumbler.net/

Sin dudas, se trata de dos herramientas que son extremadamente útiles sobre plataformas Windows.

Kismet

Kismet es un sniffer para redes inalámbricas desarrollado para plataformas Linux y BSD que permite localizar puntos de acceso y sus correspondientes localizaciones GPS, funcionando de un modo muy similar a NetStumbler y ViStumbler sin embargo ofrece muchas más funcionalidades también. Kismet es una herramienta de detección pasiva en la red que recorre los canales inalámbricos disponibles buscando paquetes 802.11 que indican la presencia de una red inalámbrica.

Ahora, el primer paso es descargar, compilar e instalar, para ello ir a: http://kismetwireless.net/download.shtml y seleccionar la ultima versión disponible, posteriormente ejecutar

>./configure>make dep>make

>make install

NOTA: Para que se cumplan todas las dependencias obligatorias, es necesario instalar la librería libnl-dev que puede ser fácilmente instalada utilizando aptitude o apt-get

Ahora es posible ejecutar el comando kismet desde linea de comandos. Se trata de una herramienta muy completa que cuenta con muchas opciones sobre redes inalámbricas, para mayor información sobre su uso y opciones avanzadas, ver la documentación oficial aquí: http://kismetwireless.net/documentation.shtml

JiGLE

Se trata de un cliente Java que permite visualizar información desde la base de datos de redes inalámbricas de WiGLE.net la base de datos WiGLE (The Wireless Geographic Logging Engine) actualmente tiene mapeadas más de 15 millones de redes, esto significa que si el AP de alguien se encuentra en una área con datos de WiGLE, no será necesario utilizar técnicas de war-driving para encontrar dicha red.

JiGLE lee en red y GPS los datos desde los paquetes de mapas de WiGLE, por defecto viene con un mapa para Chicago, pero solamente es necesario registrarse y descargar cualquier otro paquete de mapas disponibles para otros sitios.

Una vez descargado JiGLE desde aquí: http://wigle.net/gps/gps/main/download/ se debe ejecutar el script run.bat o run.sh dependiendo del sistema operativo utilizado.

La imagen anterior enseña un ejemplo de como se visualiza un mapa en JiGLE, cuando se inicia este cliente, se debe contar con una cuenta valida en WiGLE para realizar el proceso de autenticación necesario con los servidores de WiGLE.net. Por otro lado, es posible interactuar este cliente desde linea de comandos, desde donde se pueden indicar opciones como el mapa que se desea visualizar, indicar propiedades de propiedades del proxy, etc. Todas estas opciones pueden encontrarse en fichero README.txt localizado en el directorio raíz del software.

Finalmente, para mayor información sobre mapas y actualizaciones, visitar WiGLE.net

DISTRIBUCIONES WIFISLAX Y WIFIWAY

Las utilidades anteriores (y todas las que se han mencionado a lo largo de esta serie de publicaciones) son herramientas que se pueden ejecutar desde linea de comandos en cualquier distribución de Linux (y en algunos casos, también de Windows). Sin embargo, era casi un deber hablar de WifiSlax y WifiWay como soluciones integrales para auditoria y pentesting de redes inalambricas WIFI, Bluetooth y RFID.

Se trata de distribuciones basadas en Linux que incluyen un buen conjunto de utilidades para pentesting wireless, además de que cuentan con un muy buen nivel de actualización y corrección de bugs. En el caso de Wifiway se habla de una distribución independiente que no se basa en ninguna de las distribuciones de Linux disponibles en el mercado, esto es lo que se conoce como una distribución Linux from the Scratch, es decir, que la distribución entera solamente se basa en Linux para su funcionamiento y no deriva de ninguna otra distribución. En el caso de WifiSlax, tal como su nombre lo indica, deriva de Slax y cuenta con un amplio conjunto de herramientas para realizar auditorías de seguridad inalambricas, así como también comprende herramientas para análisis forense y varias etapas relacionadas con pentesting.

Wifiway puede descargarse desde aquí http://www.wifiway.org/category/download/nuevas-versiones/ y wifislax desde aquí: http://www.wifislax.com/category/download/nuevas-versiones/

En ambos casos es posible utilizar cualquiera de estas distribuciones desde una maquina virtual con VirtualBox por ejemplo o VMWare

Ahora, se procede a hablar sobre las principales utilidades incluidas en ambas distribuciones.

WIFISLAX

Siguiendo un modelo similar al de distribuciones como BackTrack, las utilidades principales de WifiSlax se encuentran en el menú principal en la opción wifislax

Como se puede apreciar de la imagen, las principales opciones disponibles son:

Cifrados: Se trata de una buena colección de cifrados para muchas de las redes inalámbricas actuales ordenadas por operador, entre otras utilidades varias para el descifrar redes wifi.

Gestores de Conexión: Contiene utilidades esenciales para gestionar recursos como interfaces de red, se incluyen utilidades tales como wicd, wifi radar y un asistente para redes inalámbricas propio de wifislax.

Redes: Cuenta con utilidades para realizar ataques básicos contra un segmento de red, incluyendo utilidades como Ettercap, Macchanger, Wireshark, Zenmap

Suite Aircrack: Como su nombre lo indica, contiene la suite completa de aircrack-ng.

Wireless: Contiene algunas utilidades para realizar tareas concretas sobre redes inalambricas tales como escaneos por SSID, GeoLocalizacion, etc. Incluye herramientas tales como Kismet y FeedingBottle

WPA:

Contiene una buena colección de herramientas enfocadas exclusivamente a ataques contra redes WPA, incluye herramientas que se han mencionado con anterioridad en esta serie de publicaciones tales como Pyrit, CowPatty, genpmk, John the Ripper, entre otras.

WPA – WPS

Contiene Reaver y algunas utilidades incluidas en dicha herramienta para realizar ataques contra redes inalámbricas con WPA y WPS habilitado.

Ahora bien, estas son las principales utilidades que se incluyen en esta distribución, sin embargo se puede utilizar como cualquier otro sistema Linux, donde se pueden instalar aplicaciones, servicios, programar, etc. Cualquier cosa que se pueda imaginar, con la ventaja de que se ha pensado para redes inalámbricas, por este motivo, normalmente no se encuentran mayores inconvenientes a la hora de reconocer dispositivos de hardware (como redes interfaces de red).

WIFIWAY

Se trata de una distribución que incluye algunas funcionalidades adicionales a WifiSlax y por lo tanto es mucho más completa y probablemente de un manejo más simplificado. Contiene el mismo menú que WifiSlax con las mismas categorías, sin embargo, como se ha mencionado, en cada una de dichas categorías se incluyen más opciones, tal como se enseña en las siguientes imágenes.

Como se puede ver de las imágenes anteriores, esta distribución cuenta con un numero de herramientas mayor y que en la mayoría de los casos, estas herramientas son empleadas en entornos de redes inalámbricas. No obstante, llama especialmente la atención las herramientas relacionadas con WPA GPU Cracking las cuales permiten ejecutar ataques contra WPA (típicamente de fuerza bruta con diccionario) utilizando dispositivos de hardware específicos, como por ejemplo NVIDIA CUDA, AMD OpenCL, entre otros. Esto es bastante similar al funcionamiento de herramientas como Pyrit que permiten realizar este tipo de ataques utilizando tecnologías anteriormente mencionadas y que permiten que un ataque tan exigente en términos de recursos como un ataque por diccionario, pueda ser llevado a cabo en menos tiempo y de una forma mucho más eficiente.

Esta será la ultima publicación de esta serie, sin embargo, en un futuro no muy lejano, espero poder escribir más artículos relacionados con seguridad en redes inalámbricas con un nivel de dificultad y profundidad mayor.

Fuente: http://thehackerway.com

Espiando Conversaciones Windows Live Messenger con Linux

septiembre 28, 2012 Deja un comentario

espionaje-msn-linux

Intercepter-NG es una de las herramientas más poderosas para Espiar conversaciones de Mensajería Instantánea Microsoft Windows Live Messenger (MSN chat). Es de origen Ruso, totalmente gratuita, sin restricciones de funcionalidad y bastante universal: existen versiones para Windows, Linux, Mac OSX, iPhone, iPad y Android (muy pocas herramientas en el mundo pueden presumir este nivel de soporte).

Puede espiar conversaciones de Microsoft Windows Live Messenger / MSN, JABBER (Google Talk, Facebook Chat), YAHOO, ICQ, AIM, IRC y MRA.

En un tutorial anterior describí el procedimiento para usar Intercepter-NG en Windows. Antes de continuar, le recomiendo que consulte esa información, porque menciono aspectos relevantes de Espionaje.

Es este tutorial describo la instalación y uso de Intercepter-NG en Linux.

PROCEDIMIENTO DE INSTALACIÓN
1. Instale el software libpcap y ncurses. Abra una consola y ejecute el comando correspondiente a su distribución de Linux. Por ejemplo, en Fedora 17 el comando es:
yum install libpcap ncurses

El resto del procedimiento es universal y funciona en cualquier Linux.

2. Descargue Intercepter-NG hacia cualquier folder. En este ejemplo, voy a emplear el folder \hack
mkdir \hack
cd \hack
wget sniff.su/Intercepter-NG.CE.03.zip

3. Descomprima el archivo.
unzip Intercepter-NG.CE.03.zip

4. Asígnele permisos de ejecución.
chmod +x intercepter_linux

USO DE LA HERRAMIENTA
Existen dos usos principales: A) Monitorear las comunicaciones de todos los equipos. B) Monitorear comunicaciones de equipos específicos.

A continuación, describo el procedimiento para emplear cada modalidad.

A) Monitorear todos los Equipos.- Para lograr esto, ejecute la herramienta en forma automática con el siguiente comando:

./intercepter_linux 1 2

El primer parámetro indica la tarjeta de red local. Si aparece algún error, simplemente pruebe de nuevo con el número 2 o 3. El segundo parámetro es el Modo de operación, y tiene el siguiente significado:

1 captura sólo passwords, usando Intercepción.
2 captura passwords y archivos, usando Intercepción.
3 captura passwords y archivos, sin usar Intercepción (este modo es útil cuando la Intercepción va a realizarse con alguna otra herramienta).

(Tip: el máximo número de equipos que se recomienda interceptar en forma simultánea es de cinco. Exceder esta cantidad puede afectar el desempeño de la Red).

Al ejecutarla, la herramienta automáticamente inicia el scaneo de toda la Red. Poco después, detecta al equipo “Gateway” e inicia la Intercepción de comunicaciones:

Intercepter-linux-1

Cuando captura una conversación de Windows Live Messenger, en el renglón From muestra la cuenta origen del mensaje; en el renglón To al destinatario y en Message la conversación.

Durante las pruebas, usé la cuenta fjvillan@hotmail.com logeada a Live Messenger en una PC, y otra cuenta javier_vc@hotmail.com logeada en una iPad. Como puede observar, ambas partes de la conversación fueron capturadas exitosamente:

Intercepter-linux-2

Al terminar de usar la herramienta, presione las teclas ctrl-c para cerrarla y detener el monitoreo.

B) Monitorear Equipos Específicos.- Este modo se emplea cuando previamente se tienen identificados a los equipos que desea interceptar.

Para emplear este modo, se ejecuta la herramienta en forma interactiva, ejecutando el siguiente comando:

./intercepter

En el menú, seleccione la tarjeta local de Red. Use las teclas de cursor para avanzar y retroceder. Presione enter para aceptar la selección.

F5 sirve para identificar los equipos en la Red. Una vez identificados, seleccione a la víctima deseada, usando las teclas de cursor y presionando Enter. Puede repetir esta operación para seleccionar múltiples víctimas.

F6 inicia la intercepción de comunicaciones.

F7 captura las conversaciones.

F10 cierra la aplicación cuando termina el monitoreo.

DETECCIÓN Y PREVENCIÓN
Es casi imposible que las víctimas se percaten que sus conversaciones están siendo interceptadas, porque estas actividades de espionaje no ocasionan efectos visibles en sus equipos.

Además, es una técnica muy poderosa que funciona sin importar el dispositivo que usen las víctimas para chatear. Por ejemplo, la conversación que capturé en la imagen anterior fue realizada entre una PC conectada a la red local y una iPad, conectada a una red inalámbrica totalmente diferente.

En el caso de PCs, la técnica funciona aunque los equipos de las víctimas tengan instalado software como antivirus y firewall, o tengan todos los “parches” de seguridad del sistema operativo.

Detectar este tipo de Espionaje requiere conocimientos técnicos especializados. Por supuesto, en nuestros en Servicios de Consultoría y Adiestramiento analizamos cómo prevenir y detectar esta amenaza.

Fuente: www.villacorp.com

Tecnicas Modernas de Wardriving

septiembre 28, 2012 Deja un comentario

kismetEl descubrimiento de este nuevo ataque ha renovado bastante el interés de los Hackers por el Wardriving, actividad que en este caso resulta de gran utilidad para localizar Redes que usen alguna de las Marcas de Access Points identificadas como vulnerables.

En este artículo, describiré cómo usar Kismet, la herramienta open source más poderosa del mundo para actividades de Wardriving con técnicas modernas.

KIT DE WARDRIVING
– Laptop con Linux.
En este caso emplearemos Ubuntu 10.10 (Maverick). Por supuesto, existen versiones más recientes de este Linux, pero han despertado bastante controversia por sus confusas interfases gráficas. Para fines de Hacking y Auditoría, con Maverick es más que suficiente.

– Adaptador Bluetooth USB.
Cualquier adaptador puede funcionar. En este artìculo uso Linksys, simplemente por ser el que tengo a mi disposición. Este tipo de adaptadores es necesario sólo si su Laptop no cuenta con Bluetooth integrado.

– Smartphone Android.
En lugar de comprar un equipo GPS dedicado, ya podemos aprovechar nuestro Smartphone como dispositivo GPS para el mapeo de las Redes. Lo único que necesitamos es adquirir una económica aplicación que se llama Bluetooth GPS Output.

PROCEDIMIENTO
1. Configuración de Kismet.
Para que Kismet obtenga la información GPS de Android, necesitamos modificar su archivo de configuración kismet.conf. La ubicación de este archivo puede variar, pero típicamente lo encuentra en el directorio /usr/local/etc

Abra el archivo y edite las siguientes líneas, para que queden como indico a continuación:
gps=true
#gpstype=gpsd
gpstype=serial
gpsdevice=/dev/rfcomm0

2. Android como Dispositivo GPS Bluetooth.
Instale Bluetooth GPS Output para que su Smartphone Android pueda transmitir las coordenadas GPS hacia la Laptop a través de Bluetooth. Una vez instalada, abra la aplicación y seleccione Make Discoverable:

android

(Estuve buscando una aplicación similar en el Apple AppStore y en los sitios de “Jailbraking”, pero no localicé ninguna. Al parecer, iPhone no puede funcionar como adaptador GPS Bluetooth para una PC).

3. Conexión Bluetooth Android-Laptop.
Conecte el adaptador Bluetooth a su Laptop. En el menú System – Preferences de Linux, accese Bluetooth Manager y seleccione la opción Search. Después de unos segundos deberá aparecer su Smartphone:

ubuntu-bluetooth

Haga click derecho sobre el nombre de su Smartphone y seleccione Add Device. Nuevamente haga click derecho y ahora seleccione Serial Ports – Serial Device. Introduzca cualquier contraseña cuando se lo solicite. En su Smartphone aparecerá una notificación avisándole que su Laptop desea conectarse. Introduzca la misma contraseña para aceptar. Si la conexión es exitosa, aparece el mensaje “Serial port connected to /dev/rfcomm0”:

ubuntu-bluetooth2

Para verificar que su Laptop está recibiendo correctamente la información GPS, puede ejecutar el comando cat /dev/rfcomm0. Deberá aparecer algo similar a esto:

gps-data

4. Wardriving.
Listo! Para iniciar el Wardriving, simplemente ejecute Kismet. En el menu Windows, seleccione GPS Details. Aparecerá la cantidad de satélites y calidad de señal de cada uno. Con esto comprobamos que Kismet está procesando adecuadamente la información GPS enviada por Android:

kismet-gps

Como expliqué en el Curso Master Hacking, existen diversas técnicas para analizar la información generada por Kismet durante el Wardriving. En este caso, nos interesa la columna “Manuf“, porque es la que nos indica la Marca del Access Point.

Recuerde que los equipos vulnerables al nuevo ataque son: Cisco, Belkin, Buffalo, D-Link, Linksys, Netgear, Technicolor, TP-Link y ZyXEL. Si detecta alguno durante el Wardriving, es casi seguro que se puede atacar usando Reaver, como describí en el artículo anterior…

Fuente:  www.villacorp.com

Categorías:Noticias, Vulnerabilidades, Wardriving Etiquetas:

Nuevo Ataque Wireless

septiembre 28, 2012 Deja un comentario

wifi-hackingHace algunos días se descubrió una nueva técnica para atacar Redes Inalámbricas, que permite a un agente malicioso accesarlas, aunque se encuentren protegidas por mecanismos de seguridad como encriptación WEP y WPA.

Se considera de muy Alto Riesgo, porque facilita labores de Espionaje hacia Comunicaciones Empresariales en Redes marca Cisco, Belkin, Buffalo, D-Link, Linksys, Netgear, Technicolor, TP-Link y ZyXEL.

La técnica permite obtener el PIN secreto de la Red y la llave de encriptación WEP o WPA, atacando la funcionalidad WPS (Wi-Fi Protected Setup). Además, como efecto secundario, puede generar condiciones Denial of Service.

IDENTIFICANDO EMPRESAS VULNERABLES
Podemos detectar Redes vulnerables con las herramientas de Wardriving que describimos en el Curso Master Hacking. Usando Inssider, por ejemplo, la columna “Vendor” nos permite conocer rápidamente el fabricante del Access Point. Si aparece alguna de las marcas identificadas como vulnerables (en este ejemplo, “Cisco-Linksys”), es muy probable que el ataque tenga éxito:

image

 

ATAQUE
Por el momento, las únicas herramientas de ataque disponibles son Reaver y Wpscrack (ambas gratuitas, pero requieren instalarse en un sistema Linux). Al realizar pruebas, me pareció que Reaver es la más fácil de usar. El único parámetro que requiere es la dirección MAC del Access Point (que se puede obtener con Inssider, en la columna “MAC Address”).

El procedimiento de ataque es el siguiente:

1. Desactivar la tarjeta inalámbrica local en el equipo donde se va a lanzar el ataque:
ifconfig wlan0 down

2. Configurar la tarjeta en modo monitor:
iwconfig wlan0 mode monitor

3. Activar la tarjeta inalámbrica local:
ifconfig wlan0 up

4. Ejecutar el ataque:
reaver -i wlan0 -b 11:22:33:44:55:66

En la instrucción anterior, se sustituye 11:22:33:44:55:66 por la dirección MAC real del Access Point que desea atacar. La siguiente figura ilustra la prueba que realicé esta semana sobre una Red Linksys:

reaver2

Como puede observar, el ataque fue exitoso. En este caso, me tomó apenas una hora y veinte minutos obtener tanto el PIN como la contraseña encriptada WPA.

Debido a que se trata de un ataque por “Fuerza Bruta”, en ocasiones puede tomar más tiempo (se tienen reportes que puede tomar hasta diez horas, dependiendo de la Red).

Es muy importante que Audite su Red Empresarial para determinar si está en Riesgo. Pero recuerde que esta técnica puede ocasionar condiciones Denial of Service, por lo que es recomendable efectuarla en horario no laboral, para evitar afectar la Productividad de sus Empleados.

Increíblemente, desactivar WPS en el Access Point NO SOLUCIONA el problema. Varios Investigadores han reportado que los equipos de algunos fabricantes siguen vulnerables aún con WPS apagado.

Por supuesto, en Villacorp & Asociados ya incluimos Demos reales de este ataque en nuestro Curso exclusivo Master Hacking: Security Expert. También, nuestros Servicios Profesionales de Consultoría en Seguridad 2012 ya incluyen revisiones completas de infraestructuras Wireless Empresariales, así como técnicas efectivas para blindar a su Empresa contra este ataque.

 

COMENTARIOS
Las marcas de Modems inalámbricos que instala Telmex a sus clientes Empresariales y Residenciales no fueron probadas por los Investigadores que descubrieron este nuevo ataque. Sin embargo, por ser los más usados en México, Villacorp & Asociados ha realizado una Investigación Especial sobre una gran cantidad de redes Infinitum para determinar si son vulnerables.

Por la naturaleza confidencial de la Investigación, en nuestro Curso Master Hacking divulgaremos los resultados obtenidos, así como técnicas adecuadas para protegerse.

Fuente: villacorp.com

Análisis Informático Forence

septiembre 28, 2012 Los comentarios están cerrados

El análisis forense es una metodología de estudio ideal para el análisis posterior de incidentes, mediante el cual se trata de reconstruir cómo se ha penetrado en el sistema, a la par que se valoran los daños ocasionados. Si los daños han provocado la inoperabilidad del sistema, el análisis se denomina análisis postmortem.

Al mejor estilo investigador consiste en recuperar toda la evidencia posible para amar el rompecabezas del incidente.

Por ejemplo:

  • Quien uso el equipo
  • Que día, a que hora
  • Donde navego
  • Desde donde ataco
  • A quien comprometió
  • Ubicación geográfica del equipo
  • Con quien se conecto
  • Desde que cuenta
  • A travez de que nodos
  • Desde que IP
  • A que IPs se conecto
  • Que archivos abrió
  • Que archivos borro
  • Recuperación de los archivos que borro
Categorías:Capacitación Etiquetas: ,