Novedades Desafíos Papers y H-Zine Proyectos Foro
foros de discusión

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Wireshark, By Crispunk
Farid
post Nov 2 2008, 07:11 PM
Post #1


Farid
Group Icon


Group: Root Admin
Posts: 1,490
Joined: 1-June 07
From: Argentina
Member No.: 2,479



// Este artículo aparece en la H-zine #3 //
// Autor: Crispunk //

Wireshark (Ethereal), es un analizador de protocolos (sniffer) utilizado para realizar análisis y solucionar problemas en redes de comunicaciones para desarrollo de software y protocolos, y como una herramienta didáctica para educación. Es un sniffer que te permite capturar tramas y paquetes que pasan a través de tu interfaz de red. Cuenta con todas las características estándar de un analizador de protocolos.




Breve Historia de Wireshark




A finales de 1997, Gerald Combs nescesitaba una herramienta para hacer el seguimiento de los problemas de red y quería aprender más acerca de la creación de redes, por lo que empeso a escribir Ethereal (el antiguo nombre del proyecto Wireshark) como una forma de resolver ambos problemas.

Ethereal fue inicialmente fue lanzado, después de varias pausas en el desarrollo, en julio de 1998 como la versión 0.2.0. Dentro de días, parches, informes de error, y palabras de aliento empezaron a llegar, Ethereal iba por el camino al éxito.





No mucho tiempo después de que, Gilbert Ramírez vio su potencial y contribuyó con un disector de nivel bajo.





En octubre de 1998,Guy Harris de Network Appliance fue en busca de algo mejor que tcpview, por lo que se inició la aplicación de parches y contribuyendo con disectores para Ethereal.

In late 1998, Richard Sharpe, who was giving TCP/IP courses, saw its potential on such courses, and started looking at it to see if it supported the protocols he needed. A finales de 1998, Richard Sharpe, quien estaba dando TCP / IP cursos, vio su potencial en este tipo de cursos, y empezó a mirar a ver si apoya los protocolos que necesitaba. While it didn't at that point, new protocols could be easily added. Si bien no en ese momento, los nuevos protocolos pueden ser agregados fácilmente. So he started contributing dissectors and contributing patches. Así que empezó a contribuir dissectors y contribuir parches.

The list of people who have contributed to Ethereal has become very long since then, and almost all of them started with a protocol that they needed that Ethereal did not already handle. La lista de personas que han contribuido a Ethereal se ha convertido en mucho tiempo desde entonces, y casi todos ellos se inició con un protocolo que necesitaban que Ethereal no ya manejar. So they copied an existing dissector and contributed the code back to the team. Así que copiar un disector y contribuyó el código de nuevo al equipo.

In 2006 the project moved house and re-emerged under a new name: Wireshark. En 2006, el proyecto se trasladó la casa y reapareció con un nuevo nombre: Wireshark.




Que puedo hacer con wireshark?

  • Instalar en UNIX y/o Windows.
  • Capturar en vivo paquetes de datos apartir de una interfaz de red.
  • Abrir y guardar paquetes de datos capturados.
  • Importar y exportar paquetes de datos desde y hacia un montón de diferentes programas de la captura.
  • Filtrar paquetes a tu criterio.
  • Búsqueda de paquetes en muchos criterios.
  • Colorear paquete de visualización basados en filtros.
  • Crear diversas estadísticas.
  • Obtener datos de forma promiscua en grupos de redes.
  • ....y mucho más!
Que puede hacer wireshark por mi?
  • Muestra paquetes con una informacion de protocolo muy detallada.
  • Navegar en modo promiscuo o normal.
  • Ejecutar desde Root o cualquier Usuario.
  • Escanear diferentes tipos de protocolos.
<h3 class="title">¿Qué no es Wireshark? </h3>
  • Wireshark no es un sistema de detección de intrusos. No te avisará cuando alguien hace cosas extrañas en la red que alguien no está autorizada a hacer. Sin embargo, en caso de ocurrir cosas, Wireshark te puede ayudar a averiguar lo que realmente está pasando.
  • Wireshark no manipula las cosas en la red, sólo "mide" las cosas de ella. Wireshark doesn't send packets on the network or do other active things (except for name resolutions, but even that can be disabled). Wireshark no enviara paquetes en la red u otras cosas (a excepción de las resoluciones de nombre, aún así puede ser desactivado).



Funcionamiento de wireshark

Para empezar a capturar paquetes nos dirigimos a Capture/Interfaces. Aparecerá una lista de nuestras interfaces de red.



Pulsando el botón “Start” de una de las interfaces, empezaremos a capturar paquetes de esa tarjeta de red. Para detener la captura haremos clic sobre Capture/Stop. En la ventana principal de la aplicación aparecerán entonces los paquetes capturados.




Wireshark muestra la información capturada en tres secciones principales.






En la primera sección aparece un listado de los paquetes capturados con su información más relevante. En la segunda sección podemos observar los detalles del protocolo seleccionado en la sección 1. En la última sección se muestran los paquetes en bruto, es decir, tal y como fueron capturados por la tarjeta de red.




Filtrando paquetes con Wireshark




Como la información obtenida puede ser muy grande, podemos filtrar los paquetes para mostrar sólo aquellos que cumplen los requisitos indicados. Para filtrar paquetes debemos dirigirnos a Capture/Options y escribir el filtro que queramos en “Capture Filter”.






Veamos a continuación algunos ejemplos de filtros. Para filtrar paquetes en base a una dirección IP o nombre de equipo se utiliza la palabra reservada “host”. Por ejemplo, si quiero capturar solamente el tráfico que vaya hacia o desde la dirección IP 192.168.10.1, escribiría lo siguiente:

  • host 192.168.10.1
Voy a capturar, por ejemplo, los paquetes que se envíen o se reciban desde la dirección IP 200.23.168.10. Esta IP corresponde al servidor que contiene una página web (www.aaaaaaa.com). Así pues, voy a Capture/Options y escribo “host 200.23.168.10″ en “Capture Filter”. Pulso a continuación sobre el botón “Start” para comenzar a capturar paquetes. Si ahora voy a la dirección www.aaaaaaa.com, podré ver que Wireshark comienza a mostrar una lista de paquetes. En la imagen he seleccionado un paquete capturado. Si observáis detenidamente la información (abajo, en la tercera sección), veran que el paquete contiene capturado contiene texto que aparece en la web.










Después de la palabra reservada “host” podemos poner una dirección IP o el nombre de un equipo. Por ejemplo:

  • host www.aaaaaaa.com



Para filtrar los paquetes que tienen una dirección exclusivamente como origen podemos utilizar src host. Ejemplo.

  • src host 192.168.10.1



O como destino:

  • dst host 192.168.10.1



Así mismo, es posible filtrar de acuerdo a la dirección de capa 2, es decir, la dirección MAC (en el caso de ethernet). Por ejemplo, para filtrar todo lo que tenga como destino ff:ff:ff:ff:ff:ff

utilizariamos el siguiente filtro:

  • ether host ff:ff:ff:ff:ff:ff



O podemos indicar si queremos que capture solo el tráfico que tiene una dirección exclusivamente como origen o destino usariamos alguno de los siguientes:

  • ether src 11:22:33:44:55:66
  • ether dst 11:22:33:44:55:66



Podemos incluir más de una condición en los filtros que utilicemos. Para ello nos ayudaremos de los operadores lógicos and, or y not. Por ejemplo, si queremos filtrar todos los paquetes que tengan como origen la dirección 192.160.10.1 y tengan como destino la dirección 192.160.10.2, utilizariamos el siguiente filtro:

  • host src 192.160.10.1 and src 192.160.10.2



Filtros de display




Otro tipo de filtros que podemos utilizar son los filtros de display, que son mucho más completos y flexibles. Los filtros de display se escriben en el lugar en que se indica en la siguiente imagen. Una vez escrito el filtro, tan sólo hay que pulsar sobre el botón “Aplicar”. Para eliminar el filtro hay que pulsar sobre el botón “Limpiar”.










Wireshark cuenta con un asistente para crear filtros de display. Si hacemos clic sobre el botón “Filter”, aparecerá la siguiente ventana en la que aparecen algunos filtros ya predefinidos. Si queremos capturar, por ejemplo, todo el tráfico HTTP, tendríamos que seleccionar HTTP en la lista de filtros.










Para utilizar filtros de display también podemos hacer clic sobre el botón “Expression”. Aparecerá entonces una ventana como la siguiente.










En esta ventana se muestran una lista enorme de campos para que seleccionemos aguno. Así mismo, es necesario indicar como lo vamos a comparar usando la columna “Relation” y finalmente el valor con el que se será comparado que se indica en “Value”.




Descubriendo contraseñas con Wireshark




En una página web se ah creado un pequeño formulario en el que hay que rellenar dos campos, nombre de usuario y contraseña. El formulario lo podes ver en la siguiente dirección: www.aaaaaaa.com/validacion.htm

En mi red de área local sospecho que hay varios usuarios que están conectándose a esa página introduciendo su nombre de usuario y contraseña. Vamos a ver cómo podríamos capturar la contraseña que escriben en el campo “Password” muy fácilmente con Wireshark.

En primer lugar empezamos a capturar tramas con Wireshark y esperamos un tiempo prudencial hasta que pensemos que alguien se ha conectado ya a la página y escrito su contraseña.

En mi caso he capturado más de 10000 paquetes en total, ya que hay otros ordenadores de la red que están transmitiendo y recibiendo paquetes. Así pues, tengo que filtrar paquetes de alguna forma para lograr mi propósito.




Lo primero que se me ocurre es filtrar paquetes HTTP. Así pues, escribo http en “Filter” (filtro de display). De esta forma obtengo un total de 140 paquetes, así que tengo que filtrar aún más la información. Lo siguiente que se me ocurre es obtener la dirección IP de www.alejandrox.com para filtrar los paquetes que van dirigidos a esa dirección. ¿Cómo obtengo la dirección IP de www.aaaaaaa.com? Pues muy sencillo, con un simple ping a www.aaaaaaa.com:

  • ping www.aaaaaaa.com
Haciendo un ping obtengo la dirección IP 200.23.168.10. Voy ahora a Wireshark y escribo el siguiente filtro: http and ip.dst==200.23.168.10. !Ahora salen tan sólo tres tramas!. Examino la información de las 3 tramas y me encuentro con esto:







Ya he obtenido la contraseña! (hackerss). Obviamente la contraseña la he podido averiguar porque se transmite en texto plano sin ningún tipo de codificación y a través de una página no segura. La cosa sería muy diferente si ésta fuera encriptada por la red…




--------------------
QUOTE
Much like a baby is comforted by the rhythmic heartbeat and protective arms of a mother, so too am I comforted by monitors, logs, throughput graphs, scrolling shells; the dull background thrum of my infrastructure, all speaking the steady pulse of the network.
Go to the top of the page
 
+Quote Post
Bucio
post Nov 3 2008, 10:30 AM
Post #2


Descaradamente Guapo =Þ
Group Icon


Group: Colaborador
Posts: 3,823
Joined: 26-April 06
From: Chiapas México.
Member No.: 382



wink.gif muy buena herramienta hayy una que se llama trapper jjii esta bonnita too


--------------------
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic

 

- Lo-Fi Version Time is now: 7th January 2009 - 09:17 AM