Información práctica y de utilidad para personas involucradas en la administración y soporte de redes de computadoras. Deseo comentar sobre técnicas, herramientas y en general sobre lo que sucede alrededor de esta fascinante profesión, si tienes dudas o sugerencias o incluso problemas especificos que deseas resolver, no dudes en contactarme al email: lmunguia@soportederedes.com, también puedes seguir los updates y noticias de este sitio en twitter @soportederedes
1/10/07
o3 Magazine
Ha pasado algun tiempo (casi un mes), desde mi ultimo post, Septiembre fue un mes muy cargado de actividades de trabajo, espero que Octubre no lo sea tanto y encuentre el tiempo para dedicarlo a este blog.
En esta oportunidad quisiera recomendar a los lectores la revista O3, una revista gratuita en PDF, que se enfoca en el uso del Software Open Source en ambientes empresariales y de negocios.
Si bien el enfoque de esta revista no es el software para redes (que es lo que al menos a mi, mas me interesa), en general creo que es un muy buen recurso, para aquellos que estan pensando implementar soluciones open source en su empresa, en la revista podran encontrar articulos interesantes con ejemplos de implementación y con análisis que pueden ayudar a tomar una desición a favor de algun paquete de software en particular, o incluso podrán descrubir alguna aplicación que resuelva algun problema especifico.
Como ejemplo el ejemplar más reciente, el número 9, se enfoca en el uso de herramientas de publicación como Open Office que es un suite con herramienta de oficina de primer nivel, también tiene un articulo muy interesante sobre la aplicación GIMP un editor de gráficos también muy potente, que es uno de los estandartes del software open source.
Ya en un temas más enfocado en las redes, el ejemplar número 8, describe soluciones para correo eléctronico empresarial, también el ejemplar número 4, tiene varios temas de redes, por ejemplo como priorizar tráfico de VoIP con Linux QoS (un articulo que se ve muy interesante y que espero leer en los próximos días).
Como mencione al inicio, esta revista esta disponible gratuitamente en formato PDF y al igual que la revista Insecure, que mencione en un post hace algunas semanas, no hay necesidad de suscribirse ni nada por el estilo, probablemente la unica desventaja de esta revista para el mundo hispano, es que esta en ingles, pero como tantas otras veces he mencionado, el ingles en estos días, no es opcional.
Así que los invito a visitar el sitio de O3, hasta el momento se han publicado 9 ejemplares, alguno de ellos podría tener algun tema que sea de su interes.
3/9/07
Nanspy Worm en mi laptop
Resulta que la semana pasada la laptop de mi casa fue infectada por un virus, la conexión a Internet, empezo a dar problemas de manera intermitente, por lo que como acostumbro, decidi ejecutar Wireshark, para tratar de determinar el problema, al hacerlo, pude observar que la pc establecia conexión a algunos sitios en internet, y además estaba tratando de establecer conexión con todo el rango de Ips de la subnet de mi PC (es una red clase B, por lo que facilmente podría pasar varias horas escaneando las 65,534 posibles host y efectivamente dejando mi conexión a Internet practicamente inutilizable).
Inmediatamente desconecte el cable de red, y como no tenia el tiempo suficiente para lidiar con el problema, salio al rescate una distribución de linux en livecd, si eres lector frecuente de este blog, podrás imaginar, que lo que utilice fue Backtrack 2.0 por supuesto, no podia ser otro, con este estuve navegando en internet (que en realidad resulta ser la función principal de esta laptop), hasta que el sabado finalmente tuve tiempo para lidiar con el problema.
Pero antes de describir como logre solucionar el problema, quisiera comentar, porque un virus tuvo chances de infectar mi pc, la respuesta es muy sencilla, recientemente tuve que formatear la PC, y por ser algo viejita (Pentium III 650 MHZ, con 384 MB de RAM), decidi instalarle Windows 2000, con Service Pack 3 (que era el que tenia disponible) y pues aun no había tenido tiempo de instalar un antivirus, ni patchs de seguridad que fueran pertinentes, asi que utilizar un sistema operativo que para estas alturas ya esta casi obsoleto, y sin todos los parches de seguridad apropiados, es una invitación al desastre.
Valga decir, que estoy conciente de los riesgos y no tenia información trascendental en la PC, asi que la posibilidad de un virus era un riesgo que podía correr (aunque honestamente no estaba en mis planes que un virus infectara la máquina).
En cuanto a la desinfección, la estrategia fue sencilla, encendi la máquina sin conexión a la red y active el wireshark, luego conecte el cable y observe el tráfico que estaba capturando, nuevamente pude ver que la PC se estaba conectando a algunos sitios de red, bajo algunos archivos y luego empezo a escanear una subnet clase B buscando otros hosts para infectar (el tipico comportamiento de un worm), uno de los archivos que la pc bajo se llamaba bbot.exe (suena intimidamente no?), así que con esta información volvi a encender la máquina esta vez ejecutando Windows ME (si, esta laptop tiene los dos sistemas operativos, por razones que no vale la pena discutir en este post), ejecute internet explorer e hice una busqueda en Google, en poco tiempo, descubri que este es un archivo asociado al virus Nanspy, y esto me llevo a una página en Trend Micro donde se explicaba que hacía el virus y lo más importante como desinfectarlo.
5. Utilizar un Firewall para protección de la red, obviamente esto por si solo no es una solución, como mínimo debe ir acompañado de adecuadas políticas de uso de Internet y de recursos de red y debe monitorearse constante los logs.
24/8/07
Backtrack 2.0
Los livecd tienen muchos usos prácticos, en esta oportunidad quisiera introducir a los lectores que aún no han tenido la oportunidad de conocerlo, uno de los mejores livecd con herramientas orientadas a la seguridad, la distribución en mención es backtrack 2.0
Como mencione en el párrafo anterior, esta es una distribución orientada a la seguridad, más especificamente a "penetration testers", esto es hackers (espero que con buenas intenciones) que se dedican a mejorar la seguridad poniendola a prueba mediante ataques (algo que dicho sea de paso, no esta excento de polémicas).
Esta es una distribución cargada de herramientas de seguridad divida en categorías, si deseas ver una lista de todas las herramientas disponibles puedes verla aquí.
Lo que encuentro interesante de los livecd, específicamente para el área de soporte de redes, es la posibilidad de experimentar con herramientas que solo estan disponibles en sistemas operativos como linux o las variantes de BSD. Definitivamente no soy experto en Linux, sin embargo me he aventurado a experimentar y puedo dar fe de que instalar aplicaciones no es nada sencillo, tampoco es muy dificil, pero consume tiempo y el tiempo es lo que normalmente esta más escaso, asi que un livecd provee la oportunidad de tener a disposición una gran cantidad de herramientas, con solo insertar un cd y bootear la pc con el, despues de utilizarlas, se extrae el cd, y nuevamente tenemos el sistema operativo con el que trabajamos normalmente.
Entre las muchas herramientas del backtrack, quiero resaltar el excelente soporte a tarjetas de red wireless, también tiene incluidas las herramientas para análisis de redes wireless más populares, como Kismet, Air crack, Airsnort entre otras, de hecho, la principal razón por la que me intereso el backtrack en primer lugar, fue por la posibilidad de ejecutar Wireshark, para análisis de redes wireless, ya que el soporte para estos análisis es mucho mejor en Linux y hasta el momento no me ha defraudado, lo he utilizado en un par de veces para estos propósitos con análisis sencillos sin problemas.
Tal vez la dificultad principal, para sacarle más provecho a este livecd, es la documentación que no es tan abundante, sin embargo, el wiki proporciona lo básico y si lo que te interesa son algunas herramientas específicas, estas normalmente cuentan con bastante documentación.
Hay muchas otras distribuciones de Livecds, en el segmento específico de la seguridad, de acuerdo con el top 10 publicado por Darknet.org, backtrack es la número uno, pero hay algunas otras que vale la pena considerar, sin embargo, si solo puedes bajar una, te recomiendo backtrack.
16/8/07
Solidaridad con el pueblo Peruano
Lamentablemente hay victimas, hay perdidas materiales, y es una herida que seguro dejara una huella en la historia del pueblo Peruano, desde la distancia quiero expresar mis condolencias a las familias de las victimas, personalmente no puedo hacer nada por estar allá y contribuir en algo, pero a la distancia puedo elevar mis oraciones e invito a los lectores del blog a hacerlo, a elevar nuestras oraciones para que Dios de consuelo a las familias de las victimas.
9/8/07
Wireshark 101 - Estadísticas Parte I
En esta primera parte, se describen dos tipos de estadística, reservando algunos más para futuros postst, el primero de ellos es la opción Protocol Hierarchy y Conversations, ambas disponibles desde el menú Statitiscs.
La opción de Protocol Hierarchy despliega todos los protocolos detectados en la captura, indicando el porcentaje encontrado de cada uno, por ejemplo en la figura abajo, muestra que para esta captura en particular, el 100% del trafico es ethernet, lo cual no es de sorprender ya que ethernet es el protocolo dominante, aunque si se captura con una máquina que tenga la capacidad de tener visibilidad en una red WLAN se encontraria un porcentaje diferente.
En el caso ilustrado en esta figura, también se puede ver que el protocolo dominante es IP con el 97.3%, el otro 0.3% corresponde a ARP (no mostrado en la figura). En el siguiente nivel, el protocolo dominante es el TCP con 94.87%, el resto es tráfico UDP, desglosando el TCP, se observa que el http ocupa casí el 10% del tráfico.
Espero que este breve ejemplo sirva para ilustrar el potencial de esta estadística, para identificar que protocolos son los que más estan consumiendo el ancho de banda, también podríamos detectar protocolos que en realidad no deberían estar pressentes, por ejemplo si se tiene restricción sobre algun protocolo específico, acá se puede detectar con mayor facilidad y observar el impacto que tiene sobre la red.
La segunda estadística a describir en este post, es la de conversations, esta proporciona información sobre las conversaciones presentes en la red, con quien se esta comunicando cada host, en el caso especifico ilustrado se puede observar que se detectaron 25 conversaciones ethernet, 197 conversaciones ipv4, 1141 conversaciones tcp y 779 conversaciones udp.
En el ejemplo ilustrado se pueden ver las conversaciones de ipv4, para cada conversación es posible ver la cantidad de packetes y byte transmitidos en cada dirección, esto puede ayudar a identificar que hosts son los que estan acaparando más el ancho de banda, es posible ordenar en orden ascendente o descendente, en este caso, se ordeno por la mayor cantidad de bytes (observar el pequeño triangulo en el campo bytes), con un clic en cualquiera de los campos se ordena en basea a ese parametro, otro click en ese mismo campo invierte el orden, por ejemplo otro click en bytes, ordeara en forma ascendente.
En la parte inferior aparece un boton de copy, con este se copia el contenido de estadisticas y se puede pegar en un documento de texto con todos los valores separados por comas, por lo que posterioremente es posible abrir el archivo en excel o en cualquier hoja de calculo, para genera gráficas, o hacer un análisis más a fondo.
Para que las estadísticas tengan sentido, es importante situar a wireshark en una ubicación que haga sentido y hay que recordar que estas estadísticas serán utilies de acuerdo al contexto de captura, por ejemplo, si unicamente se esta capturando tráfico entre dos hosts, la estadística será valida para estos dos hosts, si se esta capturando tráfico en un enlace de salida, esta estadística tendrá sentido en el contexto del tráfico que esta pasando por ese enlace, el mensaje aquí es que hay que interpretar las estadísticas de acuerdo a su contexto.
Eso es todo por el momento, en al menos dos post futuros se discutiran más opciones para análizar estadísticas de la red con Wireshark.
29/7/07
Algunos recursos en Español
Sin embargo, en esta oportunidad si tengo un par de recursos en nuestro idioma, que pueden ser de interes y utilidad para los visitantes de este blog, se trata de el sitio Aprenda Redes y del blog Mis libros de newtworking (es el titulo del blog, no es que sean libros mios, valga la aclaración)
Aprenda redes, es un sitio que me parece apropiado para estudiantes, o técnicos que estan introduciendose al área de redes, tampoco tiene muchisima información, pero algo podrán encontrar que les ayude a aprender algo nuevo, entre los recursos que tuve la oportunidad de hojear, esta un video introductorio de wireshark, y algunos articulos sobre temas que pienso que pueden interesar a los lectores de este blog que buscan material basico, conceptos y algunas sugerencias para realizar mejor su trabajo como administradores de redes.
En cuanto al blog Mis libros de Networking, ya lo había mencionado en un post previo, este creo que proporciona información para usuarios un tanto más avanzados, con algunas noticias y análisis de tendencia y articulos técnicos muy buenos.
Una de las razones por las que comparto estos dos links (aunque es probable que algunos de ustededes ya los conozcan), es porque tienen algunos articulos que tocan temas sobre los que pienso publicar algo al respecto por ejemplo, el modelo OSI, que es un modelo conceptual de esos que resultan con mucha aplicación práctica a la hora de resolver problemas, o describir protocolos, o equipamiento de red, pues en aprenda redes hay una buena introducción al modelo OSI, aplicado a la resolución de problemas de red.
Nuevamente hago la invitación a los lectores del blog, si han encontrado sitios de interes, con información sobre Redes, en Español, compartanla, puede ser de beneficio para otros, pueden hacerlo dejando un comentario en este blog, o escribirme a lmunguia@soportederedes.com
Tampoco quiero dejar pasar la oportunidad de invitar a los lectores de este blog a dar sus sugerencias sobre los temas que les gustaría ver publicados, esto permitirá orientarnos a lo que realmente les interesa, tanto para los que quieren aprender algo nuevo, como para los que desean resolver un problema específico, nuevamente, pueden hacerlo a traves de un comentario, o enviandome un mensaje a la dirección indicada en el parráfo anterior.
27/7/07
(IN)SECURE Magazine - Una revista en PDF gratuita
Para obtenerla, unicamente tienes que ir al sitio http://www.insecuremag.com/ y listo ahí puedes bajar la versión más actual (en estos momentos la edición 12), y también en el archivo puedes encontrar todas las ediciones anteriores, con un breve listado de los titulos disponibles, así que si ves alguno de interes, puedes bajar esa edición específica.
25/7/07
El Iphone pone en evidencia vulnerabilidad en Access Points de Cisco
20/7/07
Wireshark 101 - Time Display Format
Las opciones de tiempo, se encuentran en el menú View -> Time Display Format esto despliega un cuadro adicional donde se muestran las diferentes opciones que se describen a continuación
Date and Time of Day - Muestra la fecha y la hora, puede ser de utilidad, cuando le fecha y hora en la que ocurrio el evento son importantes, por ejemplo en análisis forense de paquetes.
Time of Day - Unicamente muestra la hora del día, para utilizarlo en casos en los que estamos analizando un evento que ocurre a determinadas horas del día
Seconds Since Beginning of Capture - Esta es la opción predeterminada, muestra el tiempo tomando como referencia el inicio de la captura.
Seconds Since Previous Captured Packet - Muestra el tiempo transcurrido tomando como referencia el paquete previo, es decir, muestra las diferencias de tiempo entre cada paquete capturado, muy útil para troubleshooting de problemas de desempeño en la red, ya que se puede identificar que equipos están respondiendo con tiempos altos.
Seconds Since Previous Displayed Packet - Sin filtros de visualización aplicados, no hay diferencia entre la opción anterior y esta, sin embargo, es de utilidad cuando tenemos aplicado un filtro ya que permite analizar diferencias de tiempo entre los paquetes que se están desplegando en pantalla.
Seconds Since Epoch - Muestra el tiempo transcurrido tomando como referencia inicial el 1 de enero de 1970, esta es una opción relativamente nueva en Wireshark, la verdad no le he utilizado antes, se me ocurre que puede ser de utilidad al comparar capturas en diferentes tiempos, ya que provee un tiempo de referencia común, puede ser de utilidad en análisis forenses.
Adicionalmente se puede variar la precisión de la medición de tiempo, en segundos, decimas de segundo, centesimas de segundo, milisegundos, microsegundos y nanosegundos.
Otra característica de mucha utilidad en la medición de tiempo, es la posibilidad de establecer referencias en puntos determinados, por ejemplo al inicio de una transferencia de archivos, o de una petición de una página web, para esto, selecccionar el paquete que queremos establecer como referencia y luego ir a menú Edit -> Time Reference (toggle) o alternativamente ctrl + T, la ventaja es que se pueden establecer diferentes referencias de tiempo, esta opción únicamente tiene sentido utilizarla con la opción Seconds Since Beginning of Capture, de hecho si esta selecciónada otra opción al tratar de establecer un Time Reference, aparece un cuadro de dialogo que da la opción de volvera setear Seconds Since Beginning of Capture.
Así que sin más, los invito (si no lo han hecho antes), a experimentar con los diferentes formatos de despliegue del tiempo, les aseguro que lo utilizarán con más frecuencia de lo que se imaginan, si has usado antes estas opciones y han encontrado combinaciones para despliegue de tiempo o escenarios en los que una combinación en particular puede ser de utilidad para otros lectores, pueden dejar un comentario, será bienvenido.
17/7/07
Como obtener la certificación CCNA
De entrada quiero aclarar que no hay camino fácil para obtener esta certificación, por algo es una de las certificaciones respetadas en la industria, por otra parte, tampoco es algo extremadamente dificil o imposible, tampoco hay un solo camino para obtener la certificación (aunque todos los caminos, tienen que pasar por el mismo punto, léase el exámen de certificación).
En mi caso, me inicie en el mundo del networking, en la división de datacom, de una empresa de telecomunicaciones, en esta empresa conocí sobre Cisco, sobre los routers, los switches, y también sobre los conceptos fundamentales, estuve un año en esta empresa, cumpliendo con un año de práctica obligatorio por la universidad en la que estudie, durante ese año, inverti muchas horas navegando por el sitio de Cisco y también tuve la experiencia práctica configurando equipos.
Esta experiencia me abrio las puertas, para trabajar administrado la red para un organismo estatal, la red estaba basada en equipo cisco, así que ahí tuve la oportunidad de seguir experimentando, trabajando aquí también se presento la oportunidad de recibir la capacitación oficial de Cisco de 40 horas, que en aquel entonces, era la capacitación necesaria para certificarse, la capacitación incluia un libro muy bueno de Todd Lammle (uno de los autores más vendidos de guías de certificación para examenes de Cisco), sin embargo, en esos momentos, no tuve la oportunidad de presentar el examen de certificación.
Aproximadamente un año despues de haber recibido la capacitación, y trabajando para otra empresa, se presento la oportunidad (y la necesidad) de certificarme, ya que era requerido por la empresa para la que trabajaba, asi que desempolve la guía de estudio que mencione en el parrafo anterior y con una semana de estudio estaba listo para el examen, esta guía de estudio incluia un cd, con examenes de prueba, eso me ayudo mucho para comprobar que realmente estaba listo para el examen.
Así que de mi experiencia, creo que los pasos para obtener la certificación CCNA se pueden resumir así:
1. Tener experiencia práctica y un background general en aspectos de networking
2. Si es posible, recibir una capacitación formal (creo que no es estrictamente necesario, pero indudablemente ayuda).
3. Conseguir una buena guía de estudio para repasar los conceptos fundamentales.
4. Practicar con simuladores de examen para comprobar que se esta listo, o repasar las áreas debiles.
Ahora, comprendo que no todos han seguido el mismo camino, o tienen intereses diferentes al perseguir la certificación, así que a continuación algunas recomendaciones adicionales.
Si no es posible obtener experiencia práctica, mi recomendación es conseguir un simulador y practicar con redes simuladas, de hecho aunque se tenga experiencia práctica, no esta de más el uso de estos simuladores, ya que se pueden practicar muchos escenarios que no se ven comunmente en la vida real, por ejemplo, en mi caso, que me he orientado más a redes LAN, tengo pocas oportunidades de configurar protocolos de ruteo, esto se puede complementar muy bien con un simulador.
Para los que son principiantes absolutos creo que la mejor opción es una Academía de Cisco (como lo sugiere otro lector), son cuatro semestres, para mi es muy largo, pero para quien se esta iniciando, creo que proporciona los fundamentos sólidos para entrar al área de redes, la certificación ya será solo un paso adicional.
A continuación algunos Links donde se puede obtener más información
Cisco Technical documentation - Este sitio esta siendo migrado por cisco a una nueva área, sin embargo, en la forma como aparece en esta página, es como empece a conocer sobre cisco y sobre las tecnologías fundamentales, así que considero que es un buen punto de entrada.
Cisco Press - La editorial de Cisco, que de acuerdo con ellos, tienen las guías de estudio autorizadas para los examenes de certificación.
Global Net Training - Una empresa de Todd Lammle (si el gurú de las certificaciones Cisco), en la que ofrece capacitaciones, libros, examenes de práctica y muchos recursos, hay algunas versiones demo que se pueden bajar.
Cisco Network Academy - Para encontrar información sobre este programa de Cisco, si deseas buscar una academía cerca de tu ciudad, puedes buscar aquí.
Boson - Simuladores de equipo y de examenes, también opciones de capacitación.
Router Sim - Otro simulador de equipos, videos y recursos adicionales
Mis libros de networking - Un blog en español, que puede tener información relevante, hay un articulo interesante, que describe los contenidos que se evaluan en el examen de certificación, según vi en el sitio, el autor ha publicado algun material de preparación para el CCNA, asi que puede ser muy valioso.
Lamentablemente, creo que tampoco hay una forma "barata" o de bajo costo, tal vez la unica excepción es cuando se trabaja para una empresa, que decide certificar a sus empleados, y estas oportunidades hay que aprovecharlas, de lo contrario, pues si tendrá un costo, pero vale la pena la inversión.
Como siempre, invito a los lectores del blog a expresar sus opiniones, sería interesante conocer la experiencia de otros que estan preparandose para la certificación, o que ya la obtuvieron, o que han tenido la oportunidad de estar en una academia de Cisco, considero que es un buen programa, pero lo mejor sería la opinión de alguien que esta actualmente estudiando en una de ellas.
16/7/07
Verificando conectividad con Tracert
En primer lugar me gustaría explicar un poco que es el comando tracert y como funciona, finalmente como podemos interpretar sus resultados y algunos escenarios en los que tracert nos puede ayudar a diagnosticar y resolver problemas en la red.
El comando tracert permite trazar la ruta desde el origne hasta un destino remoto, mostrando todos los routers que hay de por medio y la latencia aproximada en cada salto, esta disponible en la mayoria de sistemas operativos, en windows se le conoce como tracert, en linux y en el IOS de cisco se le conoce como traceroute. En este post se da mayor enfásis a la versión de windows.
Para encontrar los routers intermedios, el tracert se vale de la opción time to live (TTL) de los paquetes IP, el TTL es un campo dentro de un paquete IP que fue diseñado para prevenir loops de enrutamiento (routing loops), una red mal diseñada a con problemas puede generar un loop, en el que un paquete va y viene entre dos routers, para prevenir que un paquete quede atrapado en un loop infinitamente, cada router que recibe un paquete es responsable de reducir el TTL en uno, cuando un router recibe un paquete con TTL de 0, lo descarta y debe responder con un paquete icmp tipo 11 (time to live exceeded).
En base a lo anterior, para encontrar la ruta hacia un destino, el comando tracert lo que hace es generar pings sucesivos hacia el ip destino, con valores de TTL que se van incrementando, el primer paquete ping generado tiene un TTL=1 por lo que el primer router que lo recibe lo descarta y devuelve un paquete icmp tipo 11, en este paquete de respuesta, el ip de destino es el de este primer router, así que ya tenemos la dirección del primer router, en realidad windows genera tres paquetes de ping con ttl=1 y de esta manera produce la salida ya conocida del tracert con tres columnas, los siguientes tres paquetes de ping generados tienen valor TTL=2, con lo que el que respondera será el segundo router, este proceso continua, hasta que se obtiene un icmp echo reply, que es el del destino, en el que estamos interesados.
En la siguiente figura, se ilustra el resultado de un tracert hacia google.com, en este caso el destino esta a 15 saltos, como mencione en el parrafo previo, siempre se generan tres solicitudes de ping, por lo que para cada salto tenemos tres resultados, esto ayuda a determinar la latencia promedio entre cada router, de manera predeterminada windows también trata de resolver el nombre, por lo que en algunos casos además del IP, aparece el nombre del router.
Ahora, volviendo a la pregunta original, como interpretar la salida del tracert, escencialmente lo que nos dice este comando, es los routers que debemos atravezar hacia el destino, para cada caso nos proporciona el IP (y en algunos casos el nombre) de los routers intermedios, y también nos da un estimado de la latencia.
Cuando utilizar tracert?, supongamos que no podemos llegar hasta un sitio remoto, si hacemos un ping hacia la dirección de este sitio y no responde, el siguiente paso es un tracert, el cual determinara el punto donde se deja de recibir una respuesta, puede ser un router local, o un router en el camino, el tracert nos dirá cual es el router con problemas.
Lo anterior es el uso más común del tracert, pero hay otros, suponiendo que el tiempo de respuesta es muy lento, un tracert puede ayudar a determinar el punto donde se está experimentando alta latencia y en base a este resultado investigar más a fondo, otro uso interesante, es por ejemplo en una red privada en la que se tiene más de una vía de llegada, por ejemplo un enlace principal y otro de backup, un tracert nos puede decir de manera rápida si estamos llegando al sitio a través del enlace principal, o del enlace de contingencia.
También me gustaría hacer algunas advertencias, algunos routers bloquean el paso del tracert, por lo que los resultados no siempre son confiables, especialmetne al trazar rutas en internet, de igual manera algunos routers dan baja prioridad a los paquetes icmp, por lo que los resultados de latencia no siempre van a ser confiables.
Creo que la mayor utilidad del tracert esta en una red privada, donde podemos establecer el comportamiento normal de la red, que saltos tenemos hacia el destino, que latencias aproxiamadas tenemos, en estos casos, a la hora de tener problemas, el tracert es una herramientas invaluable.
Para ver las opciones disponibles en la línea de comando, favor consultar el siguiente documento para un troubleshooting más avanzado, también se puede utilizar el comando pathping, y si te interesa ver como funciona el tracert en la vida real, te sugiero capturar tráfico en tu máquina utilizando wireshark en el momento de hacer un tracert, el resultado habla por si solo.
11/7/07
Wireshark 101 - Capturando tráfico utilizando una maquina en medio
10/7/07
Habilitando RIP en Vyatta
La consulta específica se puede ver aquí, en corto, es sobre como habilitar RIP en una red con tres routers vyatta, y dos clientes, como lo muestra el diagrama siguiente
Los detalles de numeración IP para cada subnet involucrada no estan en la consulta original, los puse para facilidad, obviamente no es un plan de numeración muy eficiente tener una red clase C en las subnet entre cada router, pero lo deje así por facilidad y para no entrar en detalles sobre prefijos, numeración IP etc, que no es el objetivo de este post
Básicamente lo que se desea en la red anterior, es configurar RIP para anunciar rutas en todos los routers, por ser una red muy pequeña, se pueden configurar simplemente rutas estáticas, pero configurar RIP también es una opción y es lo que desea hacer el amigo que hizo la consulta.
Asumo que cada PC tiene instalado el Vyatta y que todas sus interfaces han sido reconocidas y configuradas, siendo así, para habilitar RIP se debe configurar para cada interface en los routers A, B y C el siguiente comando (acá se ejemplifica el router B)
root@Router_B#set protocols rip interface eth0 address 192.168.1.2
root@Router_B#set protocols rip interface eth1 address 192.168.3.1
Con lo anterior se habilita el protocolo rip en las interfaces 0 y 1 del router B, en la tercera interface (la que conecta con el cliente D), no hay necesidad de configurar protocolo rip, ya que la PC cliente no estará ejecutando este protocolo.
La misma configuración debe aplicarse en los routers A y B, siempre con las interfaces que conectan con el otro router.
Para poder anunciar las rutas a través de RIP es necesario un paso adicional, se debe configurar una política para exportar rutas estaticas y rutas directamente conectadas, para esto, tome el ejemplo de la guía de configuración de Vyatta, básicamente estas políticas permiten redistribuir rutas, en nuestro caso específico lo que deseamos es poder anunciar a través de RIP las rutas estáticas y las rutas directamente conectadas, esto se logra con los siguientes comandos:
root@Router_B#set policy policy-statement EXPORT_STATIC term 1 from protocol static
root@Router_B#set policy policy-statement EXPORT_STATIC term 1 then action accept
root@Router_B#commit
root@Router_B#set policy policy-statement EXPORT_CONNECTED term 1 from protocol connected
root@Router_B#set policy policy-statement EXPORT_CONNECTED term 1 then action accept root@Router_B#commit
EXPORT_STATIC y EXPORT_CONNECTED, son definidas por el usuario, por lo que es la única parte del comando anterior que se puede cambiar a voluntad, lo demás debe ir tal como esta.
Los anteriore comandos deben permitir que cualquier ruta estatica o que esta directamente conectada, sea anunciada por RIP y con esto debería funcionar, para verificarlo se pueden utilzar los siguientes comandos:
root@Router_B#show route protocol rip - Muestra las rutas aprendidas a través de RIP
root@Router_B#show rip peer statistics all - Muestra estadísticas del protocolo
root@Router_B#show protocols rip - Para ver la configuración del protocolo
Finalmente, solo quiero hacer la advertencia de que no cuento con el equipo como para simular esta configuración en un laboratorio, por lo que no puedo garantizar que funcione, sin embargo invito al amigo que hizo la consulta y que tengo entendido que esta implementando esta configuración que la ponga en práctica y que nos valide si esta configuración funciona. La prueba de que todo trabaja bien, es que el cliente C debería poder hacer un ping al cliente D, propagando las rutas dinamicamente con RIP y sin necesidad de configurar rutas estaticas en ninguno de los routers.
Actualizado 12/07/2007
Gracias a la validación que hizo el amigo Ramón, de estos pasos de configuración, el esta en lo cierto, al decir que omiti el paso final, el ultimo paso mostrado en el post, era para configurar la política, sin embargo hay que aplicar esta politica al protocolo rip para que pueda utilizarla y pueda redistribuir rutas conectadas y rutas estáticas, así que como lo menciona el amigo, el paso final es el siguiente comando:
root@Router_B#set protocols rip export EXPORT_STATIC,EXPORT_CONNECTED
Así que, si estas configurando RIP con Vyatta, favor incluir el ultimo comando.
6/7/07
Wireshark 0.99.6 Disponible
Esta nueva versión no introduce cambios revolucionarios, los detalles específicos se puden encontrar aquí, si bien no hay cambios tan trascendentales, sugiero a los usuarios del programa, actualizar a la nueva versión, ya que siempre introduce corrección de bugs, algunas características nuevas, soporte para nuevos protocolos y actualización del soporte de algunos protocolos.
Entre las características nuevas que me llamarón la atención, esta la posibilidad de guardar macros de filtros de visualización, en corto esto significa poder resumir un comando de filtrado muy extenso en una frase corta significativa, más detalles se pueden encontrar aquí.
Adicionalmente, esta versión nueva, tiene soporte para otros formatos de archivos de captura, ahora es posible abrir archivos mp3, interesante, esto no lo he probado, pero seguro que lo voy a hacer pronto.
Así que sin pensarlo más, los invito a bajar esta actualización de Wireshark.
26/6/07
CCENT Nueva Certificación Cisco y nuevo examen para CCNA
El contenido del exámen y la capacitación recomendad por Cisco, para obtener esta certificación se puede encontrar aquí, de acuerdo con el sitio de Cisco, este examen estará disponible a partir del primero de agosto de este año.
Adicionalmente al lanzamiento de esta certificación Cisco a anunciado un nuevo exámen para obtener la certificación CCNA, este nuevo examen cubre nuevos temas, y deja de lado algunos temás que en realidad ya no tienen mucha relevancía el día de hoy (como la configuración de ISDN), entre los nuevos temás cubiertos, estan la configuración de Redes Wireless, Cisco Network Assistant, ipv6, VPNs, y conceptos más avanzados de seguridad.
El nuevo examen es el 640-802 CCNA, alternativamente se puede realizar el examen 640-822 (que de paso otorga la certificación CCENT) y luego el exámen 640-816 ICND. Todos estos examenes estarán disponibles a partir del 1 de Agosto de 2007.
Para los que se han estado preparando para la certificación Cisco y el exámen 640-801, este estará disponible hasta el 6 de noviembre de 2007, asi que si ya han invetido bastante tiempo preparandose para este examen, más vale que consideren hacerlo pronto, o tendrán que estudiar de nuevo.
En lo personal, logre mi certificación CCNA hace algunos años, pero a estas alturas esta vencida y debo renovarla, digo debo por asuntos de trabajo, creo que voy a optar por esta nueva certificación, ya que se ve más completa, en realidad no soy un fanático de las certificaciones, pero creo que son de utilidad para poder demostrar los conocimientos, y para tener un poco más de credibilidad, muchas certificaciones es posible obtenerlas unicamente con una guía de estudio, pero normalmente las certificaciones de Cisco son un poco más complejas, y realmente se necesita tener experiencia en el campo para poder obtenerlas, adicionalmente la certificación no se trata unicamente de configurar routers y switches, también proporcionan una buena base para el soporte y administración de redes, asi que en general, considero provechoso obtener esta certificación.
El parrafo anterior es mi opinion personal en cuanto a las certificaciones y en particular en cuanto a la certificación Cisco, me gustaria saber que opinan los lectores de este blog, tienes equipo Cisco en tu red?, tienes la certificación CCNA?, o has considerado certificarte en Cisco o con algún otro fabricante?, tus opiniones son bienvenidas, puedes hacerlo dejando un comentario o escribiendo a lmunguia{arroba}soportederedes.com
20/6/07
Wireshark 101 - Recursos del Wiki
Por su propia naturaleza, un Wiki permite a muchos autores editar un documento, asi que este es un recurso vivo, con mucha información interesante, y si no lo habías hecho antes, recomiendo darle una visita. a Continuación se describen algunos de los documentos que he encontrado interesantes y con toda seguridad hay más.
El primero que voy a mencionar es la página con información sobre Capture Setup (como en otras oportunidades las páginas del wiki estan en inglés), acá se proporcionan 4 pasos para poder iniciar la captura de paquetes, el paso 3 aplica para capturar el tráfico de la máquina en la que se tiene instalado el wireshark, el paso 4 para capturar tráfico destinado a otras máquinas y el paso 5 da algunas sugerencias para capturar tráfico remotamente, al final hay varios links para más información, por ejemplo el setup para capturar tráfico Wireless, capturar tráfico en VLANs y algunos otros interesantes, capturar tráfico de Bluetooth? bueno, de acuerdo con el wiki, no esta soportado del todo, pero algo se puede analizar
Otra página recomendable, es la que describe como setear el Wireshark para capturar tráfico en una red ethernet (por muchisimo la técnología LAN más utilizada), este es un buen recurso para los que encontraron interesante mi post como capturar tráfico, ya que describe métodos adicionales para poder capturar tráfico, uno que me parecio muy interesante y que espero poner a prueba próximamente es el de capturar insertando una pc (con dos tarjetas de red), entre las dos fuentes de tráfico (referido como Capture using a machine-in-the-middle, en esta página del wiki). También se describen algunos métodos más propios de hackers que otra cosa, recomiendo muchisima precaución al utilizar estos métodos (Capture using a MITM (Man-In-The-Middle) software y MAC Flooding) ya que sus resultados pueden ser impredecibles.
Probablemente estas con todo el deseo de abrir el wireshark y empezar a examinar paquetes, pero también es probable que no cuentes con el permiso para hacerlo en tu red, o simplemente no hay tráfico interesante que examinar, pues bien, no hay más excusas ya que en el Wiki también puedes bajar capturas de paquetes, hay un bonito listado y links hacia donde se pueden obtener más, es una manera interesante de estudiar diferentes protocolos. Conocer como se comporta un protocolo normalmente ayuda para detectar comportamientos anómalos a la hora de resolver problemas.
Hay muchos recursos más, sin embargo por razones de tiempo y espacio, unicamente voy a mencionar una más, y es una página con links de ayuda para resolución de problemas de redes, no es muy amplia, pero puedes encontrar algun recurso que sea de utilidad.
Si encuentras algún recurso que te sea de utilidad y consideras que puede ayudar a otros, no dudes en compartir tus experiencias dejando un comentario.
18/6/07
Wireshark 101 - Filtros de Visualización Parte II
En esta parte, se describen algunas opciones que nos proporciona Wireshark, que nos facilitan mucho construir filtros.
Existe una manera muy fácil de determinar que filtros se pueden aplicar para un campo específico dentro de un paquete, como habrán notado, la pantalla principal de Wireshark consta de tres areas, en la parte superior, estan los paquetes capturados, con información sobre el tiempo, el origen, destino, protocolo y una línea con información básica del paquete, cuando un paquete se selecciona en la la parte superior, en la parte media se muestra el detalle de los protocolos presentes y en la parte inferior, se muestran los valores hexadecimales contenidos en el paquete.
Supongamos que quisieramos determinar, que páginas web se han accesado utilizando el método GET de http, como lo muestra la figura a continuación se tiene seleccionado el paquete No 7, que muestra la petición de una página web con el método GET. Desglosando el protocolo http en la parte media de la pantalla, se observa como parte del paquete el "Request Method", al seleccionar esto, se observa en la parte inferior izquierda de la pantalla de Wireshark (que he resaltado con un ovalo para facilidad), se observa el filtro que reconoce Wireshark para esta porción del paquete, en este caso se ve que el filtro apropiado sería http.request.method y nos indica que es de 3 bytes.
Como en el caso de los filtros de captura, es posible guardar las expresiones más utilizadas, esto se puede hacer dando un clic en el boton Filter ubicado a la izquierda del área donde se escribe el filtro, por ejemplo si tenemos aplicado el filtro anterior, y deseamos guardarlo, unicamente dar un clic en Filter, poner un nombre al filtro, en el campo filter string ya debe aparecer el filtro que tenemos aplicado, un clic en Apply y listo.
Así que de esta manera sencilla podemos construir filtros de visualización, como lo he mencionado en oportunidades anteriores, en realidad el potencial de Wireshark solo lo vamos a poder aprovechar en la medida que estemos familiarizados con los protocolos, ya que al conocer las interioridades de cada protocolo, nos ayudara a construir expresiones de filtrado más especificas y podremos realizar análisis más efectivos.
12/6/07
Wireshark 101 - Filtros de visualización Parte I
En esta oportunidad es el turno de los filtros de visualización (display filters), estos son los filtros que nos sirven para analizar el tráfico capturado, y son diferentes a los filtros de captura, én este caso, los filtros de visualización son más amplios y más potentes, incluso son más fáciles de aplicar, y son de mucha utilidad, para analizar el tráfico capturado.
En esta primera parte, quisiera mencionar los aspectos básicos de los filtros de visualización, empezando por el área donde podemos escribir un filtro, esto se ilustra en la siguiente figura:
Como puede verse en la figura, el área para escribir un filtro de captura es la ubicada abajo de la barra de herramientas. Para los filtros de visualización Wireshark nos proporciona una retroalimentación visual, si la expresión de filtrado que escribimos es correcta, el area se colorea en verde (como el caso del filtro ilustrado en la figura previa) si la expresión es incorrecta, el area se colorea en rojo, y al tratar de aplicarlo obtendremos un mensaje de error.
Los operadores que podemos utilizar para construir expresiones de filtro son los siguientes:
> ó gt Mayor que
< ó lt Menor que >= ó ge Mayor o igual que
<= ó le Menor o igual que == ó eq Igual a != ó ne No igual a Hay otro par de operadores, contains y matches que los reservaremos para otra oportunidad.
Dicho lo anterior, solo nos resta empezar a escribir filtros de visualización, hay busquedas que pueden ser muy sencillas y similares a los filtros de captura, por ejemplo:
arp - Para visualizar todos los paquetes de arp
http - Para visualizar paquetes cuyo protocolo de aplicación es http
tcp - Para visualizar todos los paquetes tcp
udp - Para visualizar todos los paquetes udp
icmp - Para visualizar paquetes icmp por ejemplo paquetes de ping.
Si lo que deseamos es filtrar direcciones especificas podemos utilizar los siguientes filtros:
ip.addr == 192.168.0.1 - Buscar paquetes cuyo ip de origen o destino es 192.168.0.1
ip.src == 192.168.01 - Buscar paquetes cuyo ip de origen es 192.168.0.1
tcp.port == 80 - Buscar paquetes tcp cuyo puerto de origen o destino es el 80
tcp.srcport == 80 - Buscar paquetes tcp cuyo puerto de origen es el 80
Los filtros de visualización son muchos, así que no tiene mucho sentido listarlos, sin embargo en la segunda parte vamos a estudiar como facilitarnos la vida al escribir filtros de visualización para poder encontrar justo ese paquete que estamos buscando.
6/6/07
Open Books
La revolución del Open Source, no se esta dando unicamente a nivel de software, también esta alcanzando el área de la publicación de libros, en esta oportunidad quisiera dedicar unas líneas, a algunos sitios donde podran encontrar libros completamente gratis para bajar en formato PDF, son libros que se han publicado bajo diferentes licencias open source, nuevamente una desventaja es que estan en Ingles, pero como he dicho en otras oportunidades, si el idioma no es una barrera, vale la pena hecharle un vistazo a estos libros, seguro encontraras algo que sea de utilidad en tu trabajo o estudio.
En primer lugar quisiera mencionar a la editorial Prentice Hall, que tiene una serie completa de libros open source, esta serie ha sido bautizada como "Bruce Perens Open Source series", en honor a Bruce Perens, autor de la definición de open source, un personaje muy respetado en la comunidad open source. Esta serie cuenta actualmente con 24 libros, todos con temas relacionados al open source. Por la orientación de este blog, los lectores podrían estar interesados en el libro Open Source Security Tools, un libro que describe como asegurar una red utilizando herramientas open source, el capitulo 6 esta dedicado a los network sniffers, donde se describe ethereal (ahora wireshark) y usos practicos del mismo.
Otra editorial importante que disponde de algunos titulos bajo licencia open source, es O'Reilly, estan disponibles 49 libros, 30 de los cuales ya estan fuera de impresión, pero que tratan temas interesantes, nuevamente por la orientación del blog, pude ser de interes el libro Asterisk The Future of Telephony, libro publicado en el 2005, que describe como instalar y configurar Asterisk, un PBX que maneja telefonía IP y que realmente como lo sugiere el titulo, promete mucho para el futuro de la telefonía IP.
Finalmente quisiera mencionar el libro Security Engineering, del autor Ross Anderson, es un libro que muchos expertos en seguridad recomiendan tanto para principiantes como para estudiantes intermedios y avanzados de la seguridad de redes, así que también vale la pena darle un vistazo, el libro esta disponible en capitulos individuales y además los primeros 7 capitulos estan disponibles en formato mp3, asi que si no tienes mucho tiempo para leer, puedes escucharlos en tus ratos libres.
Si alguien conoce otros libros disponibles bajo licencias open source, especialmente en español, su aportación será bienvenida, solo deja un comentario en este blog, o escribeme a lmunguia {arroba} soportederedes.com
16/5/07
3Com Open Services Networking
Hace poco, conoci sobre una iniciativa de 3Com, que esta bastante interesante, se trata del programa Open Services Networking (OSN).
Detalles sobre esta iniciativa se pueden encontrar en el sitio web de 3Com al inicio tuve un poco de dificultades en entender que es exactamente esto, y de hecho aún estoy leyendo e investigando sobre las implicaciones de esta iniciativa, pero navegando por el sitio he logrado captar más o menos la idea, y me gustaria compartirlo
La estrategia esta siendo orientada a 3 elementos principales,:
1. Productos habilitados para OSN - Esto es routers y switches estan siendo preparados como el fundamento de estos servicios, la siguiente figura, extraida del sitio de 3com nos da una mejor idea:
Como puede verse en la figura, el fundamento es el router o switch habilitado para OSN, sobre este un Módulo de hardware de hecho ya existe un módulo disponible se trata del Open Service Networking Module que viene con Linux preinstalado, un disco duro de 80 Gb, que habilitan al router para ejecutar diferentes aplicaciones, ya sea propietarias de 3com, comerciales, o lo más importante open source!
2. Aplicaciones OSN - Los verdaderos beneficios de este programa, se empiezan a apreciar en las aplicaciones, el hecho de poder instalar aplicaciones open source, en un rotuer, permiten ampliar la plataforma más allá de lo que es posible en un dispositivo con código cerrado, las posibilidades son inmensas, y para demostrarlo, 3Com ofrece "bundles" de software previamente probado y soportado para uso en el modulo OSN, actualmente esta disponible un paquete con software para monitoreo que incluye herramientas open source muy conocidas y respetadas, MRTG, ntop, tshark (la versíon de línea de comandos de wirehsark), y Nagios, un popular y respetado sistema para monitoreo de redes.
3. Open Network Program- Finalmente esta el programa Open Network, que provee de recuersos y soporte para partners que deseen contribuir a desarrollar aplicaciones que se integren con 3Com, el día de hoy llene un formulario para suscribirme a este programa, pero aun no tengo los detalles, si lo logro, podré tener una mejor visión sobre en que consiste exactamente este programa.
Quisiera hacer notar 2 cosas sobre esta iniciativa, la primera es el grado de madurez que ha alcanzado el software open source, que lo hacen una opción viable y a considerar seriamente en entornos empresariales, especialmente aquellas soluciones orientadas al monitoreo de redes, un área en la que software comercial esta más allá del alcance de los bolsillos de muchas de las empresas al menos en mi país, si 3com, se interesa y desarrolla su plataforma tecnológica para soportar estas aplicaciones, creo que nos dan la pauta que el software open source ha dejado de ser una curiosidad y se esta convirtiendo en una herramienta esencial.
Lo segundo es, la tendencia que estoy observando en la actualidad, en el caso de 3Com, el router o switch es la plataforma sobre la que se desarrollaran servicios open source, pero también hay otras empresas, que estan desarrollando software como plataforma, ejemplo de esto es GroundWork y Cobia, dos plataformas que estoy evaluando y sobre las que comentaré en futuros post.
Si tienes algun comentario sobre esta iniciativa de 3Com, o el impacto que aplicaciones open source pueden representar en tu empresa, no dudes en hacerlo.
8/5/07
Vyatta Live CD
Ayer finalmente tuve la oportunidad de experimentar un poco y mis primeras impresiones son realmente muy buenas y quisiera describirlas a continuación.
Inicie bajando la versión 2.0 "comunitaria", que es la disponible para instalación libre, se trata de una imagen de aprox 97 Mb. Pase esta imagen a un cd, con Nero (y la opción de utilizar imagen de cd), en unos minutos tenía listo un cd booteable (que es básicamente un live cd, tan común en estos días).
Para probar el software utilize una laptop con las siguientes características:
Modelo: Compaq Armada E500
Procesador: Pentium III a 500 Mhz
Memoria RAM: 384 MB
Disco Duro: 10 Mb
Despues de insertar el cd, y configurar la laptop para que seleccionara la unidad de cd como primera opción de arranque, el proceso de carga del software duro unos pocos minutos (menos de 5 minutos sino mal recuerdo), y listo!, con estos sencillos pasos tenía un router listo para ser configurado.
El login predeterminado es vyatta, password vyatta y se accede a la interface para configuración, estoy bastante familiarizado con la línea de comandos de los routers Cisco, y aunque tiene sus diferencias, la linea de comandos de Vyatta tiene algunas similitudes, y considero que la curva de aprendizaje para alguien que ya ha configurado routers cisco desde la línea de comandos, no debe ser muy grande.
Esta prueba la hice sin ninguna conexión a la red, asi que el siguiente paso, será instalarlo en una red, configurar algunos parámetros y verificar su funcionalidad.
Por la documentación disponible en el sitio de vyatta, tengo entendido que existe la opción de configurar el router desde html, ese es otro feature que me gustaría estar experimentando proximamente.
Si deseas ver una introducción más completa, con comandos para una configuración incial, sugiero la guía rápida de evaluación, donde se describe paso a paso, el procedimiento para instalar y configurar Vyatta, también esta disponible una guía de configuración y una referencia de comandos, considero que es la documentación minima necesaria para hechar a andar el router, de momento la documentación esta disponible en ingles, ojalá pronto haya algo en español.
Entre las multiples aplicaciones que se me ocurren para este software, esta la de tener una pc lista para contingencias, en caso de falla de un router, otra que puede ser de mucha utilidad es la posibilidad de segmentar una red mediante vlans y utilizar el software para rutear entre ambas subnets, también se puede utilizar como un servidor dhcp, o en casos que se necesita hacer una NAT, o como firewall, en fin, las posibilidades son bastante amplias.
Así que si te interesa este software, y ves potencial en el, bajalo, instalalo, pruebalo, comparte tus experiencias y chequea este sitio con alguna frecuencia, ya que más adelante seguire haciendo pruebas y publicandolas para que podamos sacarle provecho a este router open source de Vyatta.
2/5/07
Wireshark - Filtros de Captura Parte III
Como se podrá haber visto en la segunda parte de este tutorial, los filtros pueden convertirse en algo complejo, para evitar estar escribiendo una y otra vez, largos filtros de captura, Wireshark nos proporciona la opción de asignarle un nombre y guardarlo, esto se puede hacer dando un click en la ventana de opciones de captura, en el botón Capture Filter: el cual despliega el siguiente cuadro de dialogo:
Para agregar un filtro personalizado, escribir un nombre descriptivo en el campo Filter name, luego escribir la sintaxis del filtro en Filter string, y finalmente dar un click en New, en este momento se agrega el nuevo filtro al listado de filtros disponibles, Wireshark ya incluye los que se muestran en esta pantalla.
Finalmente quiero agregar un par de links de lugares donde se puede obtener información, en la página principal de Wireshark, hay un link hacía el Wiki, en este puede encontrarse bastante información sobre el uso de wireshark, esta disponible una página con información sobre filtros de captura, que incluye algunos ejemplos interesantes, por ejemplo como construir un filtro para observar el tráfico de la red en busca de virus tipo worm.
Otro lugar muy interesante es un tutorial sobre filtros de captura, de Mike Horn (lamentablemente al momento de editar este post la página no esta disponible, estaré monitoreandola porque supongo que es algo temporal, ya que ayer estuve navegando en esta página), en este tutorial, se presentan ejemplos desde filtros sencillos, hasta filtros avanzados de varías lineas, en realidad la información esta muy interesante, para aquellos interesados en filtros complicados de captura.
Así que por los momentos eso es todo de mi parte referente a filtros de captura, por supuesto que si la demanda lo justifica, podríamos continuar con este tema en futuras oportunidades, de momento creo que enfocare los esfuerzos en la otra parte de filtrado, los filtros de visualización sobre los que estaré publicando algunos post en los próximos días.
1/5/07
Analyzer, otro analizador de protocolos gratuito
Este software es desarrollado por el Politecnico de Torino, y disponible bajo licencia BSD. Es un analizador de protocolos que tiene algunas características interesantes. En realidad creo que no sería justo compararlo con Wireshark, ya que este ultimo se ha ganado un lugar muy respetable como una de las herramientas open source más utilizadas en la actualidad.
La versión actual es la 3.0, que aún esta en fase alpha, de acuerdo con el sitio web, esperan tener la versión oficial en algunos meses.
En esta oportunidad me gustaria comentar sobre una característica interesante que puede ser de utilidad, y es la posibilidad de monitorear la disponibilidad de una serie de hosts (mediante envio de paquetes ping), esto desde el modulo End-to-end monitor, Vale aclarar que es una característica con algunas limitaciones, sin embargo, es fácil de utilizar y puede estar configurado y monitoreando hosts en cuestion de minutos.
El software se puede obtener directamente desde la página web, si ya tienes instalada la versión más reciente de Wireshark, ya tendras instalado el winpcap 3.1 por lo que no es necesario instalarlo, de lo contrario, tendrá que instalarlo como paso previo. Una vez instalado, ejecutar el programa y desde el menú principal, elegir statistics - End-to-end monitoring (o directamente Alt+T) y se abre la pantalla siguiente:
Para esta evaluación, establecí el monitoreo de dos host (la flecha verda al inicio de cada línea indica que estan Up), agregarlos es tan sencillo como hacer un clic en host - add new host, acá abre una ventana en la que podemos agregar el ip address y listo, una característica más avanzada es la posibilidad de monitorear vía http, pero eso implica pasos adicionales.
En la configuración predeterminada, esta herramienta enviara 10 paquetes ping, cada 5 minutos, para editar los parámetros configurables ir a Settings - End-to-end Monitoring settings. Entre las opciones configurables, cabe mencionar la posibilidad de cambiar el intervalo default de 5 minutos, aunque en lo personal me parece apropiado, también la cantidad de paquetes que se envían en cada prueba. también es posible cambiar el tamaño de los paquetes (32 bytes el default) y el timeout (default 2000 ms).
Los resultados se pueden exportar a un archivo csv, txt o xml, también se puede enviar un reporte por correo eléctronico diariamente (aun no he probado esto ultimo).
En resumen, en poco minutos podemos tener un monitoreo de disponibilidad de diferentes hosts, asi puedes tener un ojo sobre tu red, sin la necesidad de estar abriendo diferentes líneas de comando para ejecutar pings cada vez que deseas verificar que un host este activo.
Existen otras características interesantes en este software, que serán descritas en futuros posts, de hecho End-to-end monitoring es una de las más sencillas pero a mi juicio, es razón suficiente para bajar y experimentar con el Analyzer 3.0
26/4/07
Wireshark - Filtros de Captura Parte II
He tenido una semana un tanto ocupada, pero acá estoy con toda la intención de completar el tema de los filtros de captura de Wireshark, algo que es de mucha utilidad, para capturar unicamente el tráfico que nos interesa para el análisis. Como recomendaba en la parte I, muchas veces lo mejor, es capturar todo el tráfico, pero en algunas ocasiones no es posible, o no es deseable y debemos aplicar algunos filtros, asi que sin más, iniciamos:
La sintaxis soportada por Wireshark, permite capturar algunos protocolos unicamente especificandolo, de esta manera podemos detectar la presencia de este protocolo o hacer un troubleshoting de algo específico, algunos de los más relevantes son:
arp - Para capturar tráfico del Address Resolution Protocol
icmp - Para capturar tráfico icmp, por ejemplo captura de paquetes de ping
ip - Captura todo el tráfico IP
ipx - Capturar tráfico ipx, este comando puede ser util para determinar si este protocolo esta corriendo en la red (algo que ya no es nada comun en estos días).
netbeui - Capturar tráfico de NetBIOS extendede user interface
stp - Capturar tráfico de spanning tree protocol (a veces es útil usar la forma no stp para evitar este tráfico que pudiera no ser relevante para el análisis)
tcp - Captura todo el tráfico tcp
udp - Captura todo el tráfico udp
Por supuesto, existen algunos otros protocolos, pero considero que estos son los más relevantes, también recordar, que se puede utilizar operaciones lógicas, por ejemplo arp or icmp para capturar tráfico de arp y de icmp.
Existen opciones de filtrado aun más avanzadas, por ejemplo, vimos que se puede capturar todo el tráfico icmp, que nos permitira capturar paquetes de ping, sin embargo, ping no es el único tipo de tráfico icmp, a continuación se muestran los campos de un paquete icmp como estan definidos en la rfc 792.
Destination Unreachable Message
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type Code Checksum
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
unused
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Internet Header + 64 bits of Original Data Datagram
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Como puede verse en este diagrama, los primeros 8 bits (primer byte), tiene el campo Type,
que define el tipo de paquete icmp, para referencia sobre los diferentes valores de icmp ver la rfc 792 anteriormente mencioanda.
En el caso particular de ping el type 8 indica un echo request y el type 0 indica un echo replay, asi que si queremos capturar exclusivamente paquetes de ping, el comando sería:
icmp [0] == 8 or icmp [0] == 0
El valor dentro de [] indica que estamos evaluando el byte 0, y que su valor sea igual a 8 o igual a 0, de esta manera estaríamos capturando exactamente el tráfico de ping.
Este ejemplo nos abre nuevas posibilidades, ya que posible probar bytes especificos de otros protocolos aunque no de todos, de la lista de protocolos desplegada previamente ipx, netbeui y stp no lo soportan es decir no podemos usar el comando ipx[0], pero los demás si.
En el fitrlo de ejemplo anterior, se utilizo == para designar igual a, otros operadores que se pueden utilizar en la extracción de bits son:
> Mayor que
< Menor que
>= Mayor o igual
<= Menor o igual
!= No igual a
Esto también nos lleva a otro asunto muy importante a considerar, para el análisis efectivo de una red, es importante conocer los protocolos que estamos analizando, si estas interesado en conocer la estructura de paquetes de los protocolos más importantes, un buen recurso es Protocols.com, en este sitio se da una descripción básica de una gran cantidad de protoclos, así como línks hacia los RFCs, que son la autoridad final en cuanto a como esta definido cada protocolo.
En una tercera parte, me gustaría profundizar sobre la extracción de bits, por ejemplo en el protocolo tcp, de momento por acá nos quedamos, espero que este tutorial este siendo de utilidad en tu trabajo, si deseas dejar tu comentario no dudes en hacerlo, igualmente si tienes alguna duda, estoy a la orden, en la dirección lmunguia [arroba] soportederedes.com