<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" >
<channel>
<title>Seguridad y Redes. Página Personal de Alfon.  </title>
<link>http://seguridadyredes.nireblog.com</link>
<description>Seguridad y Redes. Snort, Wireshark. Análisis de redes, IDS, Windump, Antisniffers... Página personal de Alfon. </description>
<pubDate>Sun, 08 Nov 2009 01:20:46 +0100</pubDate>
<image>
<title>Seguridad y Redes. Página Personal de Alfon.  </title>
<url>http://files.nireblog.com/blogs/seguridadyredes/gravatar.gif</url>
<link>http://seguridadyredes.nireblog.com</link>
</image>
<generator>http://nireblog.com</generator>
	<item>
	<title>Wireshark / Windump. Analisis capturas tráfico red. Interpretación Datagrama IP. (Actualización).</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/11/05/wireshark-windump-analisis-capturas-trafico-red-interpretacian-datagrama-ip-actualizacian</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/11/05/wireshark-windump-analisis-capturas-trafico-red-interpretacian-datagrama-ip-actualizacian</guid>
		<description><![CDATA[<p><a href="/es/admin/post/borrador/Analisis%20capturas%20tr%C3%A1fico%20red.%20Interpretaci%C3%B3n%20Datagrama%20IP.%20%28Parte%20I%29" target="_blank" title="Analisis capturas tráfico red. Interpretación Datagrama IP. (Parte I)"> </a></p>
<p>Ya vimos en el capítulo <a rel="bookmark" href="http://seguridadyredes.nireblog.com/post/2008/01/17/analisis-capturas-trafico-red-interpretacian-datagrama-ip-parte-i">Analisis capturas tráfico red. Interpretación Datagrama IP. (Parte I)</a> los campos contenidos en la <strong>cabecera de un datagrama IP</strong>. Ante la petición de aclaración y mejor explicación de estos conceptos en comentarios y algún correo, paso a actualizar el mencionado artículo, avanzar y explicar mejor todos los conceptos involucarados.</p>
<p>Decíamos en el artículo de referencia......:</p>
<p>Una de las tareas habituales de un administrador de red es el <strong>análisis de los logs<em> </em>de tráfico de la red</strong>. Análisis que puede ser de rendimiento ó seguridad. Tráfico de la LAN, entrante y saliente a través de cortafuegos, análisis de <a href="http://seguridadyredes.nireblog.com/cat/snort" target="_blank" title="sistemas de detección de Intrusos IDS Snort">Sistemas de Detección de Intrusos</a>, capturas de tráfico de red, etc.</p>
<p>Para ello contamos con variadas herramientas. Entre ellas <strong>Snort, TCPDump/Windump, <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="Wireshark en Seguridad y Redes">WireShark</a></strong>, etc. (Destaco estas tres últimas por estar basadas en la librería <strong>libpcap</strong>).</p>
<p>En este artículo vamos a <strong>analizar las capturas en hexadecimal</strong> de estas herramientas para obtener todos los datos posibles de las <strong>cabeceras IP</strong>, <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="SEGMENTO TCP"><strong>segmento TCP</strong></a>, además de comprender de forma más visual los conceptos TCP/IP.</p>
<p>En esta actualización del artículo, veremos también estos conceptos, no solo a través de una captura <a href="http://seguridadyredes.nireblog.com/post/2008/01/17/analizando-la-red-con-windump-tcpdump-iv-parte-avanzando-en-los-filtros" target="_blank" title="tcpdump windump trafico red">tcpdump / windump</a>, tambíen a través de <strong><a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="Wireshark en Seguridad y Redes">WireShark</a></strong>.</p>
<!--more-->
<p>Las herramientas mencionadas hacen uso de<strong><a href="http://www.tcpdump.org/"> Libpcap</a></strong>, que es una librería de código abierto que ofrece al programador una interfaz desde la que capturar paquetes en la capa de red. La implementación para windows es <strong><a href="http://www.winpcap.org/">Winpcap</a></strong>. Entre las utilidades más importantes de los analizadores de tráfico de red está la que nos proporciona la <strong>salida en hexadecimal</strong> de las capturas.</p>
<p>En este artículo vamos a <strong>analizar dichas capturas en hexadecimal</strong> para obtener todos los datos posibles de las cabeceras IP y segmentos TCP, además de comprender de forma más visual los conceptos TCP/IP.</p>
<p>Para ello usaremos <strong>TCPDump <em>(Linux/Unix)</em></strong> / <strong>Windump <em>(Windows)</em></strong>.También usaremos <strong>Wireshark</strong>.</p>
<p>Antes que nada recordar un poco como funciona TCPDump / Windump:</p>
<ul>
<li><strong>Seguridad y Redes</strong> <a href="http://seguridadyredes.nireblog.com/post/2008/01/11/analizando-la-red-con-windump-tcpdump-i-parte">Analizando la Red con WinDump / TCPDump <em>(I Parte)</em></a></li>
<li><strong>Seguridad y Redes</strong> <a href="http://seguridadyredes.nireblog.com/post/2008/01/11/analizando-la-red-con-windump-tcpdump-ii-parte">Analizando la Red Con WinDump / TCPDump <em>(II Parte)</em></a></li>
<li><strong>Seguridad y Redes</strong> <a href="http://seguridadyredes.nireblog.com/post/2008/01/14/analizando-la-red-con-windumptcpdump-parte-iii">Analizando la Red con WinDump/TCPDump <em>(Parte III)</em></a></li>
</ul>
<p><a href="http://seguridadyredes.nireblog.com/post/2008/11/25/analisis-de-red-con-wireshark-interpretando-las-graficas-i-parte" target="_blank" title="interpretar datos wireshark">Recordamos algo básico sobre el funcionamiento de Wireshak</a>.</p>
<p>Y recordar también los conceptos TCP/IP:</p>
<ul>
<li><a href="http://es.wikipedia.org/wiki/TCP/IP">http://es.wikipedia.org/wiki/TCP/IP</a></li>
<li><a href="http://www.saulo.net/pub/tcpip/">http://www.saulo.net/pub/tcpip/</a></li>
</ul>
<p>Para las salidas en hexadecimal usaremos la opción <strong><em>-x</em></strong> de tcpdump / windump que captura por defecto <strong>68 bytes</strong>.</p>
<p>Para capturar toda la información usamos el <strong>snaplen <em>(-s0)</em></strong>. A cero estamos cogiendo los paquetes completos.</p>
<p>Si hubiéramos puesto <strong>-s 512</strong> se capturarían sólo los primeros <strong>512 bytes</strong> de un determinado paquete.</p>
<p>Comenzamos.</p>
<h3><strong>Interpretación de un Datagrama IP.</strong></h3>
<p>Para mejor referencia tenemos abajo el formato de la cabecera de <strong>datagrama IP</strong>:</p>
<p><img id="image214950" class="imgcentro" src="http://seguridadyredes.nireblog.com/blogs1/seguridadyredes/files/datagrama-ip-alfon.png" alt="Datagrama IP" align="middle" /></p>
<p>Esta es una salida en hexadecimal de cualquiera de los analizadores<br /> de red mencionados más arriba, en este caso tcpdump, aunque podemos usar también Tshark:</p>
<pre><img id="image537324" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/hexa_ip_c.png" alt="captura hexadecimal datos cabecera ip windump tcpdump" align="middle" /></pre>
<p>En la primera línea tenemos ya algunos datos <em>(esto ya lo hemos visto en el artículo de tcpdump)</em>. Si embargo vamos a descifrar la cabecera para obtener los mismos y otros datos importantes.</p>
<p><u><strong>NOTA:</strong></u> Para no perder detalle, observemos al gráfico de la cabecera IP y la captura hexadecimal para ver a que corresponde cada valor quepaso a explicar a continuación. <strong><font color="#990033">Coloreo los primeros valores para que sea más facil localizarlos</font></strong>.</p>
<p><strong>DATAGRAMA IP</strong></p>
<p><strong>VERSION: <font color="#990033">4</font></strong> Tiene una longitud de 4 bits. En este caso 4 (0100 en binario) Se trata de la versión del formato de la cabecera IP. Vemos que 4 corresponde a la versión ipv4. si el valor fuera 6, se trataría de la versión ipv6.</p>
<p><strong>IHL: <font color="#009900">5</font></strong>  ó longitud de la cabecera en palabras de 32 bits. En este caso: 5*32=160 bits. El valor mínimo es <strong>5</strong>. Este campo indica en que punto o bit  termina la cabecera del datagrama. Esto es así porque al ser el datagrama de longitud variable devido a las opciones, también de tamaño variable, se necesita saber donde comenzará la parte de datos del paquete.</p>
<p><strong>TOS: <font color="#003399">00</font></strong> Tipo de servicio respecto a la fiabilidad, velocidad, retardo, seguridad, etc deseados. Tiene un tamaño de 8 bits, en este caso 00000000. Hay que tener en cuenta que algunas redes ofrecen <strong><em>prioridad de servicio</em></strong> para dar mayor importancia a este tipo de tráfico.</p>
<blockquote style="background-color: #ccccff"><p><u><font color="#000066">Tabla de valores para TOS</font></u></p>
<ul>
<li>
<p><font color="#000066"><strong>Bits 0-2</strong>  Prioridad.</font></p>
</li>
<li>
<p><font color="#000066"><strong>Bit    3</strong>  0 = Demora Normal, 1 = Baja Demora.</font></p>
</li>
<li>
<p><font color="#000066"><strong>Bit    4</strong>  0 = Rendimiento Normal, 1 = Alto rendimiento.</font></p>
</li>
<li>
<p><font color="#000066"><strong>Bit    5</strong>  0 = Fiabilidad Normal, 1 = Alta fiabilidad.</font></p>
</li>
<li>
<p><font color="#000066"><strong>Bits 6-7</strong>  Reservado para uso futuro.</font></p>
</li>
</ul>
</blockquote>
<p>En este caso:</p>
<p>prioridad <u>0</u> y demora, rendimiento y fiabilidad: <u>normal</u></p>
<p><strong>TOTAL LENGTH: <font color="#cc6600">0064</font></strong>  Longitud total del datagrama medida en octetos. Se incluyen los datos encapsulados, cabecera y datos.</p>
<p>La longitud del campo es de 16 bits. De esta manera la longitud máxima es (1111111111111111) = 65535 bytes. En este caso 100 bytes.</p>
<p><strong>ID: 8a01</strong> Número de identificación único por cada datagrama que permitirá el reensamblaje posterior al ser dividido en fragmentos más pequeños. Longitud 16 bits. En este caso Id=35329. Lo asigna el remitente en la conexión. El valor de este campo junto a la información de <strong>Source IP</strong> y <strong>Destination IP</strong>, resuelve la identificación única del paquete al que hace referencia.</p>
<p><strong>FLAGS: 4 </strong> Bandera (Flag) Campo de 3 bits.Indicadores de control. Usado en caso de defragmentación.</p>
<ul>
<li>El primer bit esta reservado y es siempre 0.</li>
<li>El segundo es el el bit de indicación de no fragmentación (DF). (010)</li>
<li>El tercero (MF) es de verificación que el datagrama llega a su destino (001) completo, está activo en todos los datagramas enviados excepto en el último para informar que ya no hay más fragmentos.</li>
</ul>
<p><strong>FRAGMENT OFFSET: 000 </strong> Posición. Longitud de 13 bits. Posición del fragmento dentro del datagrama en caso de fragmentación.</p>
<p><strong>TTL: 80 </strong>Tiempo de vida. Longitud 8 bits. Impide que un paquete esté indefinidamente viajando por la red. En este caso 128 indica que cada vez que un datagrama atraviese un router este numero se decrementa en 1. cuando el TTL llege a 0 el datagrama se descarta y se informa de ello al origen con un mensaje de tiempo excedido.</p>
<p><strong>PROTOCOL: 06</strong>  Protocolo. Se refiere al protocolo de siguiente nivel que se usa en la parte de datos. Longitud 8 bits. En este caso hex(06) (00000110) = TCP en decimal sería 6.</p>
<blockquote style="background-color: #ccccff"><p><u><font color="#000099">Valores para los protocolos</font></u></p>
<p><font color="#000099">1 ICMP, 2 IGMP, 6 TCP, 9 IGRP, 17 UDP, 47 GRE, 50 ESP, 51 AH, 88 EIGRP, 89 OSPF, 115 L2TP.</font></p>
</blockquote>
<p><strong>HEADER CHEKSUM: ec4e</strong> (CRC) o Suma de Control de la Cabecera. Longitud 16 bits. Es la suma de comprobación de errores de la cabecera del datagrama. Este número se calcula nuevamente en cada salto del datagrama a través de los routers.</p>
<p><strong>SOURCE ADDRESS: c0.a8  01.f0</strong>  dirección origen: 192.168.1.240  longitud 32 bits.</p>
<p><strong>DESTINATION ADDRESS: c0.a8  01.03</strong>  dirección destino: 192.168.1.3  longitud 32 bits.</p>
<p>Tenemos otro campo que es <strong>Options</strong> <em>(<strong>Opciones</strong>)</em> de <strong>longitud variable</strong> con información opcional para el datagrama. Puede tener 0 o más opciones.  Y <strong>Padding</strong> <em>(Relleno)</em> también de longitud variable. Asegura que la cabecera IP termine en múltiplo de 32 bits.</p>
<p>Según el <strong>RFC0791</strong> Las opciones <strong>Options</strong> pueden o no aparecer en los datagramas. Deben ser implementadas por todos los módulos IP <em>(host y pasarelas)</em>. Lo que es opcional es su transmisión en cualquier datagrama en particular, no su implementación.</p>
<p><strong><u>NOTA</u>: Este campo de opciones lo veremos de forma más detallada en otro artículo. </strong></p>
<p>El último campo es <strong>Data</strong>, de longitud variable, conteniendo los datos a enviar. La longitud máxima es 64 Kbytes y comienza con el contenido de la cabecera del protocolo de siguiente nivel, es decir <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="TCP SEGMENTO">TCP</a> o <a href="http://seguridadyredes.nireblog.com/post/2008/02/06/analisis-capturas-trafico-de-red-interpretacion-datagrama-udp-iii" target="_blank" title="INTERPRETACION DATAGRAMA UDP">UDP</a>. Los datos y encabezamiento del <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="SEGMENTO TCP"><strong>segmento TCP</strong></a> van <strong>dentro del campo Data del datagrama IP</strong>, es lo que llamamos <u><strong>encapsulación</strong></u>.</p>
<p>En este caso el campo <strong>Data </strong>comienza con con los campos de la cabecera del <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="SEGMENTO TCP"><strong>segmento TCP</strong></a> puerto origen y puerto destino:</p>
<p><strong>008b</strong>  Puerto origen 139</p>
<p><strong>044a</strong>  Puerto Destino 1098</p>
<p><strong>Formato de la cabecera TCP <em>(encapsulado en el Data del segmento IP)</em></strong></p>
<p><img id="image214950" class="imgcentro" src="http://seguridadyredes.nireblog.com/blogs1/seguridadyredes/files/datagrama-ip-alfon.png" alt="Datagrama IP" align="middle" /></p>
<h3><strong>Valores Cabecera Datagrama IP en Wireshark.</strong><br /> </h3>
<p>Bien. Vamos ahora a ver los conceptos estudiados sobre la cabecera del datagrama IP, pero en una captura Wireshark cualquiera.</p>
<p><img id="image537326" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/hexa_ip_w.png" alt="cabecera datagrama ip en wireshark " align="middle" /></p>
<p>Vemos en la<strong> ventana de protocolos</strong> señalado el item correspondiente a los datos de la cabecera IP. <strong>Internet Protocol</strong> y su correspondencia (abajo) con los datos en hexadecimal.</p>
<p>Apreciamos valores, <strong>ya explicados al principio de este artículo</strong>, de</p>
<ul>
<li><strong>Version</strong>: 4</li>
<li><strong>Header Length</strong>: 20 bytes, se refiere a IHL de la cabecera.</li>
<li><strong>Differenciated Services Field</strong>. (TOS). Tipo de servicio.</li>
<li><strong>Total Length</strong>: 40</li>
<li><strong>Identification</strong> 0xb680 (46720)</li>
<li><strong>Flags</strong>: 0x04. E nes te caso vemos activado en bit de No fragmentado.</li>
<li><strong>Fragment Offset</strong>: 0</li>
<li><strong>Time to Live</strong>: 128 (TTL)</li>
<li><strong>Protocol</strong>: TCP (0x06) como viemos en el cuadro de protocolos posibles.</li>
<li><strong>Header checksum</strong>:  0x6e36</li>
<li><strong>source</strong> y <strong>destination</strong></li>
</ul>
<p>Apreciamos unos campos para mostrar información de <a href="http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip" title="wireshartk y geolocalizacion IP">geolocalización</a> de las IP <a href="http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip" target="_blank" title="wireshark y geolocalizacion IP">GeoIP</a> (<a href="http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip" target="_blank" title="wireshark y estadisticas geoip">vimos como usar Wireshark y GeoIP en este artículo</a> ):</p>
<p><img id="image535306" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/button_geoip2.gif" alt="geoip golite wireshark" width="159" height="56" align="middle" /></p>
<ul>
<li><strong>no</strong> procede la <a href="http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip" title="wireshartk y geolocalizacion IP">geolocalización</a> de la IP de origen por ser local.</li>
<li><strong>procede</strong> la <a href="http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip" title="wireshartk y geolocalizacion IP">geolocalización</a> de IP destino</li>
</ul>
<p>--------------------------------------------------------------------------------</p>
]]></description>
	<pubDate>Thu, 05 Nov 2009 11:54:07 +0100</pubDate>	</item>
	<item>
	<title>Wireshark. Analizando eventos SMB / CIFS - NetBIOS. Parte 2.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/11/03/wireshark-analizando-eventos-smb-cifs-netbios-parte-2</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/11/03/wireshark-analizando-eventos-smb-cifs-netbios-parte-2</guid>
		<description><![CDATA[<p>Seguimos avanzando en el análisis de eventos <strong>SMB</strong> / <strong>CIFS</strong> y <strong>NETBIOS</strong>. Ya vimos en la primera parte de esta serie (<font size="2"><strong><a rel="bookmark" href="http://seguridadyredes.nireblog.com/post/2009/10/29/wireshark-analizando-eventos-smb-cifs-netbios-parte-1">Wireshark. Analizando eventos SMB / CIFS - NetBIOS. Parte 1.</a></strong></font>) algunos eventos <strong>SMB</strong>, a través de <strong>Wireshark</strong>, involucrados en una conexión de un host a otro para usar un  determinado recurso compartido. En el primer artículo nos centramos en la petición de resolución de nombre de host mediante <strong>Name query NB</strong>. En esta segunda parte la dedicaremos a la respuesta <strong>Name query response NB</strong>.</p>
<p>
<!--more-->
</p>
<p>volvemos a la captura de la Parte 1 de la serie:</p>
<p><img id="image535578" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb02.png" alt="wireshark  smb cifs netbios analisis" align="middle" /></p>
<p><font size="4"><strong>Paquete 11. NAME QUERY RESPONSE NB 192.168.76.1  (00) </strong></font></p>
<p>Comienza la sesión con una petición de de resolución de nombre de host mediante <strong>Name query NB CLIENTE<00></strong> Esto se hace usando NetBios mediante broadcast (192.168.1.255).</p>
<p>Responde <strong>192.168.1.30</strong> con <strong>Name query response NB 192.168.76.1</strong></p>
<p><strong><u>NOTA</u>:</strong> Observad que aparcece la IP <strong>192.168.76.1</strong> en vez de <strong>192.168.1.30</strong> que sería lo lógico. Esto es así porque el host CLIENTE tiene otra interface de red (<strong>virtual</strong>) que corresponde a VMWare. De cualquier forma, vemos que la <strong>NIC física</strong> está indicada en la captura en la columna <strong>Source</strong>: (<strong>192.168.1.30</strong>)</p>
<p>Al igual que <strong>Name query NB, response</strong> también usa el puerto UDP 137:</p>
<p><img id="image536889" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb20.png" alt="wireshark name query response" align="middle" /></p>
<p>Vemos muchas más diferencias respecto a<strong> Name query NB</strong>, vamos a verlas.</p>
<p>Antes que nada nos fijamos en el campo <strong>Transaction ID</strong>. (0x8022) que ya vimos que se refería a la identificación del proceso de resolución de nombre. Pues esta identificación es la misma (<strong>0x8022</strong>) tanto para <strong>Name query NB</strong> como para <strong>Name query response</strong>. Esto es así para indentifica un mismo proceso, proceso de petición y de respuesta. Paquetes 7 y 11.</p>
<p>Vamos ahora al resto de campos.</p>
<p>... antes que nada la referencia de la cabecera:</p>
<p><img id="image535843" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb05.png" alt="header o cabecera nombre servicio netbios" align="middle" /></p>
<ul>
<li><strong>Opcode</strong>. código de tipo de paquete. Se divide a su vez en dos campos: <strong>Response</strong> (<strong>1</strong>) en este caso inica un <strong>Message is a response</strong> y <strong>Opcode</strong> propiamente dicho (0) que indica un <strong>query</strong>.</li>
</ul>
<ul>
<li><strong>Flags</strong> (0x8500) :</li>
</ul>
<ul>
<ul>
<li><strong>Truncated</strong> (<strong>0</strong>). Indica no truncado. Para establecer si el contenido es mayor que <strong>576</strong> bytes.</li>
<li><strong>Recursion desired</strong> (<em>1</em>) se encuentra activado e indica que se trata de un query o pregunta recurrente.</li>
<li><strong>Broadcast</strong> (<strong>0</strong>) desactivado, indica que no es un paquete broadcas y no se usa.</li>
</ul>
</ul>
<p>Se añaden otros flags / campos que son los siguientes:</p>
<ul>
<ul>
<li><strong>Authoritative</strong> (<strong>1</strong>).</li>
<li><strong>Recursion available</strong> (<strong>0</strong>)</li>
<li><strong>Reply code</strong> (<strong>0</strong>) ó <strong>RECODE </strong>Muestra un código con el resultado de la petición name query (paquete 7de la captura wireshark). En este caso (<strong>0</strong>) indicando <strong>No error</strong>. <u>Otros códigos son</u>:</li>
</ul>
</ul>
<blockquote><blockquote>
<blockquote>
<ul>
<li><strong>0</strong> indica que no hay error</li>
<li><strong>1</strong> error de formato</li>
<li><strong>2</strong> error de servidor</li>
<li><strong>3</strong> error de nombre</li>
<li><strong>4</strong> solicitud no compatible.</li>
<li><strong>5</strong> por politicas de servidor, denegación de respuesta.</li>
<li><strong>6</strong> Active error. </li>
<li><strong>7</strong> error de nombre. Conflico. </li>
</ul>
</blockquote>
</blockquote>
</blockquote>
<p> Seguimos:
<ul>
<li><strong>QUESTION ENTRIES</strong> ó <strong>Questions</strong>. (<strong>0</strong>) Número entero que indica en número de entradas coincidente con una pregunta por nombre. En este caso 0. Se trata de una respuesta.</li>
<li><strong>ANCOUNT</strong> ó <strong>Answer RRs</strong> (<strong>1</strong>). Indica número de recursos o registros que se tratan de una respuesta.</li>
<li><strong>NSCOUNT </strong>ó <strong>Authority</strong> <strong>RRs</strong> (<strong>0</strong>). Número de registros de la sección <em>authority</em> de <strong>Name Serivce packet</strong></li>
<li><strong>ARCOUNT</strong> ó <strong>Additional RRs</strong>. (<strong>0</strong>) Número indicando recursos adicionales.</li>
</ul>
<p>El siguiente campo tratándose de un paquete <strong>Name query response NB</strong>, se llama <strong>Answers</strong>, al contratio de <strong>Queries</strong>, que veíamos en el capítulo anterior para un paquete <strong>Name query NB.</strong></p>
<p>Este campo contiene la respuesta a la petición del <strong>Name query NB.</strong> REsponde con el nombre de host y su IP. Aquí vemos <strong>3</strong> IPs que corresponden a las tres interfaces de red: 2 VMWare y una física <strong>192.168.1.30</strong>:</p>
<p><img id="image537034" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb21.png" alt="wireshark. Campo answer netbios con b-node." align="middle" /></p>
<p>Básicamente y de forma sencilla. En el procedimiento de resolución del nombres, que se basan en broadcast, en servidor o en ambos, se pueden usar:</p>
<ul>
<li>broadcast a la red, </li>
<li>usando NETBIOS: NBNS ó WINS (sistemas Windows). </li>
</ul>
<p>por ello, cada host se puede configurar:</p>
<ul>
<li>solo usando broadcast</li>
<li>solo NBNS</li>
<li>primero broadcast y seguidamente NBNS en el  caso de no respuesta al broadcast.</li>
<li>lo contrario de lo anterior. Primero NBNS y en caso de no respuesta broadcasting. </li>
</ul>
<p>Eso lo vemos en nuestra captura en los campos:</p>
<ul>
<li><strong>b-node </strong>(<strong>00</strong>). cuando solo se usa broadcast a la red</li>
<li><strong>p-node</strong> (<strong>01</strong>). cuando solo se usa NBNS</li>
<li><strong>m-node</strong> (<strong>10</strong>). cuando se usa primero broadcast y en caso de no obtenerr respuesta se usa NBNS.</li>
<li><strong>h-node</strong> (<strong>11</strong>). cuando primero se realiza mediante NBNS y en caso de no respuesta broadcasting.</li>
</ul>
<p>Vemos en nuestra captura <strong>que las 3 respuestas obtenidas para las tres IPs, se realizan bajo <u>b-node (00)</u> o broadcast a la red</strong>.</p>
<p> Apreciamos también otras informaciones como <strong>TTL</strong> (Time To Live), <strong>Type NB </strong>(Servicios de nombres de NETBIOS), <strong>Class</strong> (Resource Record Class), en este caso <strong>I</strong>nternet <strong>C</strong>lass.<br /> -----------------------------------</p>
<p>En el siguiente capítulo veremos los siguientes paquetes correspondientes a ICMP Echo request y Echo reply para  obtención de la dirección MAC, el establecimiento de conexión con el recurso, ngoaciación del protocolo Request y Response (SMB), etc. </p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/11/03/wireshark-analizando-eventos-smb-cifs-netbios-parte-2#comments">Comments</a></p>]]></description>
	<pubDate>Tue, 03 Nov 2009 18:01:14 +0100</pubDate>	</item>
	<item>
	<title>Wireshark. Analizando eventos SMB / CIFS - NetBIOS. Parte 1.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/29/wireshark-analizando-eventos-smb-cifs-netbios-parte-1</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/29/wireshark-analizando-eventos-smb-cifs-netbios-parte-1</guid>
		<description><![CDATA[<p>Ya vimos en el artículo <a rel="bookmark" href="http://seguridadyredes.nireblog.com/post/2008/05/21/tshark-detectando-borrado-de-archivos-de-la-red-y-otros-eventos">Tshark. Detectando borrado de archivos de la red y otros eventos.</a>, algunos eventos <strong>SMB</strong> a través de <strong>Wireshark</strong>, tales como borrado de archivos y toda la información que se podía extraer capturando sesiones <strong>SMB</strong>, etc. A petición de lectores que me piden este artículo usando <strong>Wireshark</strong> en vez de <strong>Tshark</strong>, aprovecho, también, para <u>explicar y avanzar un poco más en los protocolos <strong>SMB, CIFS Y NETBIOS</strong></u>.</p>
<p><strong>SMB</strong> (<strong><em>Server Message Block</em></strong>), básicamente se trata de un protocolo que permitre <strong>compartir archivos, impresoras, puertos serie, etc entre hosts conectados en red</strong>. Pertenece a la capa de aplicación <strong>OSI</strong> y es un protocolo del tipo cliente-servidor. <strong>SMB</strong> se encuentra por encima de <strong>NETBIOS</strong>, que es la que se encarga de la resolución de Nombre host / IP.</p>
<p><strong>CIFS</strong> (<strong><em>Common Internet File System</em></strong>) es una implementación que supone, también, una evolución de <strong>SMB</strong> para el sistema <strong>Windows</strong> en sus versiones más modernas. Al tratarse de un protocolo de alto nivel, necesita apoyarse en protocolos de transporte como <strong>NETBIOS</strong>. Al ser una evolución e implementación de SMB, es también un protocolo cliente-servidor.</p>
<p><img id="image535843" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb05.png" alt="header o cabecera nombre servicio netbios" align="middle" /></p>
<p>La forma de trabajar de <strong>CIFS,</strong> como envía paquetes <strong>request de cliente a servidor</strong>, como responde, etc, etc.</p>
<p>Todo esto lo veremos, como siempre, con ejemplos de capturas <strong>Wireshark</strong>.</p>
<p>
<!--more-->
</p>
<p>Para, en este artículo,  entender <strong>SMB/CIFS</strong>, vamos a centrarnos, en las capturas, a todo lo referente a estos protocolos y las trazas quese ven involucradas.</p>
<p>Comenzamos con la siguiente captura con los filtros adecuados para la ocasión y observemos el intercambio de paquetes entre <strong>CLIENTE</strong> (<strong>192.168.1.30</strong> ) Y <strong>SISTEM</strong> (<strong>192.168.1.5</strong>), los dos host involucrados en una sesión en la que SISTEM se conecta a CLIENTE para usar el recurso compartido <strong>COMPARTIR</strong> y usa los archivos de dicha carpeta editándolos, borrando o creando un nuevo.</p>
<p>Parte de la captura es la siguiente:</p>
<p><img id="image535578" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb02.png" alt="wireshark  smb cifs netbios analisis" align="middle" /></p>
<p><font size="4"><strong>Paquete 7. NAME QUERY NB CLIENTE (00) </strong></font></p>
<p>Comienza la sesión con una petición de de resolución de nombre de host mediante <strong>Name query NB CLIENTE<00></strong> Esto se hace usando NetBios mediante broadcast (192.168.1.255).</p>
<p>Responde 192.168.1.30 con <strong>Name query response NB 192.168.76.1</strong></p>
<p><strong>NOTA:</strong> Observad que aparcece la IP 192.168.76.1 en vez de 192.168.1.30 que sería lo lógico. Esto es así porque el host CLIENTE tiene otra interface de red que corresponde a VMWare.</p>
<p><strong>Name query NB</strong> y <strong>Name query response</strong> usan el puerto 137y UDP.</p>
<p><img id="image535590" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb03.png" alt="ventana protocolo wireshark NetBIOS Name query" align="middle" /></p>
<p>Vamos a hora a fijarnos en la ventana de protocolos (imagen de arriba). Observamos como hemos indicado ya los puertos usados (137) y nos centramos en <strong>NetBIOS Name Service</strong>.</p>
<p>Y para tener una referencia tenemos aquí el <strong>formato de paquete de Name Service de NETBIOS</strong>:</p>
<p><img id="image535842" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb04.png" alt="formato paquete name service (nombre servicio) NETBIOS" align="middle" /></p>
<p>Y, a continuación el <strong>Header o cabecera</strong>:</p>
<p><img id="image535843" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/smb05.png" alt="header o cabecera nombre servicio netbios" align="middle" /></p>
<p>Y ahora a destripar los datos.</p>
<p>Tenemos una sere de <strong>campos y Flags</strong>:</p>
<ul>
<li><strong>NAME_TRN_ID </strong>ó <strong>Transaction ID</strong>. (0x8022) Identificación del proceso de resolución de nombre.</li>
</ul>
<ul>
<li><strong>Opcode</strong>. código de tipo de paquete. Se divide a su vez en dos campos: <strong>Response</strong> (0) en este caso inica un <strong>message is a query</strong> y <strong>Opcode</strong> propiamente dicho (0) que indica un <strong>query</strong>.</li>
</ul>
<ul>
<li><strong>Flags</strong> (0x0110) :</li>
</ul>
<ul>
<ul>
<li><strong>Truncated</strong> (0). Indica no truncado</li>
<li><strong>Recursion desired</strong> (1) se encuentra activado e indica que se trata de un query o pregunta recurrente.</li>
<li><strong>Broadcast</strong> (1) está activado e indica que la resolución se realiza a través de un paquete broadcast.</li>
</ul>
</ul>
<ul>
<li><strong>RCODE</strong>. Muestra un código con el resultado de la petición <strong>name query</strong> (paquete 7 de la captura wireshark). Lógicamentre no aparece aquí, aparecerá en el resultado o <strong>Name query response</strong>.</li>
</ul>
<ul>
<li><strong>QUESTION ENTRIES</strong> ó <strong>Questions</strong>. (1) Número entero que indica en número de entradas coincidente con una pregunta por nombre.</li>
<li><strong>ANCOUNT</strong> ó <strong>Answer RRs</strong> (0). Indica número de recursos que se tratan de una respuesta, en este caso obviamente es 0 porque es una pregunta.</li>
<li><strong>ARCOUNT</strong> ó <strong>Additional RRs</strong>. (0) BNúmero indicando recursos adicionales.</li>
</ul>
<p>Vemos también el campo <strong>Queries</strong> que nos da infomación de la pregunta o consulta solicitada, en este caso preguntamos por la máquina <strong>CLIENTE</strong>.</p>
<p>Y hasta aquí la primera parte en la que hemos tratado de destripar, sacar información, del paquete<strong> Name query NB</strong>, <strong>paquete nº 7</strong> de nuestra captura. En los siguientes cápitulos veremos la resupuesta o <strong>Name query response</strong> (paquete 11) de la captura.</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/29/wireshark-analizando-eventos-smb-cifs-netbios-parte-1#comments">Comments</a></p>]]></description>
	<pubDate>Thu, 29 Oct 2009 13:06:06 +0100</pubDate>	</item>
	<item>
	<title>Wireshark / Tshark. Filtros GeoIP. </title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/28/wireshark-tshark-filtros-geoip</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/28/wireshark-tshark-filtros-geoip</guid>
		<description><![CDATA[<p>En el anterior artículo dedicado a <a href="http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip" title="wireshark geoip geolite estadisticas">Wireshark y GeoIP / GeoLite </a>, tratamos la geolocalización a partir de una determinada <a href="http://seguridadyredes.nireblog.com/post/2008/01/17/analisis-capturas-trafico-red-interpretacian-datagrama-ip-parte-i" target="_blank" title="Datagrama IP "><strong>IP</strong></a>, mostrantdo datos como Paises, Ciudades, Longitud y Latitud, etc, en las estadísticas. Ahora, veremos como <strong><a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="wireshark tshark">Wireshark y Tshark</a> </strong>disponen de una serie de <a href="http://seguridadyredes.nireblog.com/post/2008/03/24/analisis-de-red-con-wireshark-filtros-de-captura-y-visualizacian" title="wireshark filtros de visualizacion o display filters">Filtros de visualización </a>( <a href="http://seguridadyredes.nireblog.com/post/2008/03/24/analisis-de-red-con-wireshark-filtros-de-captura-y-visualizacian" target="_blank" title="display filters">Display Filters</a> ) para <strong><a href="http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip" target="_blank" title="wireshark y geoip geolite">GeoIP</a></strong>.</p>
<p>
<!--more-->
</p>
<p><strong>Los distintos filtros para GeoIP son los siguientes:</strong></p>
<p>filtro | tipo de cadena | descripción | versión wireshark</p>
<table border="0" class="shaded">
<tbody>
<tr>
<td><font size="1">ip.geoip.asnum</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source or Destination GeoIP AS Number</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.city</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source or Destination GeoIP City</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.country</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source or Destination GeoIP Country</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.dst_asnum</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Destination GeoIP AS Number</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.dst_city</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Destination GeoIP City</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.dst_country</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Destination GeoIP Country</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.dst_isp</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Destination GeoIP ISP</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.dst_lat</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Destination GeoIP Latitude</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.dst_lon</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Destination GeoIP Longitude</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.dst_org</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Destination GeoIP Organization</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.isp</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source or Destination GeoIP ISP</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.lat</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source or Destination GeoIP Latitude</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.lon</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source or Destination GeoIP Longitude</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.org</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source or Destination GeoIP Organization</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.src_asnum</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source GeoIP AS Number</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.src_city</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source GeoIP City</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.src_country</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source GeoIP Country</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.src_isp</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source GeoIP ISP</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.src_lat</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source GeoIP Latitude</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.src_lon</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source GeoIP Longitude</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
<tr>
<td><font size="1">ip.geoip.src_org</font></td>
<td><font size="1">String</font></td>
<td><font size="1">Source GeoIP Organization</font></td>
<td><font size="1">1.2.1 to 1.2.2</font></td>
</tr>
</tbody>
</table>
<p><strong>La manera de aplicarlos es la misma que para cualquier filtro:</strong></p>
<p><img id="image535433" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/geoip11.png" alt="geoip  geolite wireshark filtros" align="middle" /></p>
<p>Aplicado el filtro aparecerán las trazas correspondientes.</p>
<p>Podríamos usar otro filtro como este para depurar algo más:</p>
<p align="center"><strong><font color="#000099">ip.geoip.country == "Spain" &amp;&amp; ip.geoip.city contains "Barcelona" </font></strong></p>
<p><strong>Wireshark</strong> nos muestra también la información<strong> GeoIP</strong> en la misma <strong>ventana de protocolos</strong>, en un campo denominado <strong>Source GeoIP</strong>:</p>
<p><font color="#ffffff"><a href="http://files.nireblog.com/blogs1/seguridadyredes/files/geoip13.png" title="informacion geoip en ventana de protocolos en wireshark" class="imagelink"><img id="image535448" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/geoip13.png" alt="informacion geoip en ventana de protocolos en wireshark" align="middle" /></a></font></p>
<p><strong>Podemos hacer uso también de los filtros GeoIP con Tshark en línea de comandos:</strong></p>
<p><img id="image535444" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/geoip12.png" alt="geoip con tshark" align="middle" /></p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/28/wireshark-tshark-filtros-geoip#comments">Comments</a></p>]]></description>
	<pubDate>Wed, 28 Oct 2009 08:42:09 +0100</pubDate>	</item>
	<item>
	<title>Wireshark. Estadísticas y GeoIP.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip</guid>
		<description><![CDATA[<p><strong>GeoIP</strong> es un recurso que nos sirve para, <strong>a partir de una determinada IP, saber la ubicación geográfica correspondiente</strong>. Podemos usar <strong>GeoIP</strong> con ASP, con APIs, puede integrarse en un Web Server, etc. Pero lo más importante para nosotros es su <strong>integración con <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="Articulos sobre wireshark y tshark">Wireshark</a></strong>. Para ello usaremos la versión gratuíta <strong>GeoLite</strong>.</p>
<p><img id="image535306" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/button_geoip2.gif" alt="geoip golite wireshark" align="middle" /></p>
<p>
<!--more-->
</p>
<p><font size="3"><strong>Descarga y ubicación de bases de datos GeoIp.</strong></font></p>
<p>Necesitamos las siguientes bases de datos:</p>
<ul>
<li><a href="http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz" target="_blank" title="geoip.dat">Geoip.dat </a></li>
<li><a href="http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz" target="_blank" title="GeoLiteCity.dat">GeoLiteCity.dat</a></li>
<li><a href="http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz" target="_blank" title="GeoIPASNum.dat">GeoIPASNum.dat</a></li>
</ul>
<p><strong>Creamos una carpeta</strong>, por ejemplo <em>C:\Archivos de programa\Wireshark\goip</em> y volcamos ahílos ficheros dat descargados.</p>
<p><strong><font size="3">Configuración  Wireshark para GeoIP.</font></strong></p>
<p>En el menú <u><strong>Edit > Preferences > Name Resolution</strong></u>, a la derecha tenemos <strong>GeoIP database directories</strong>, pulsamos el botón <strong>Edit</strong> y se nos  abre una ventana <strong>GeoIP Database Paths</strong>, pulsamos <strong>New</strong> e introducimos la ruta (<em>C:\Archivos de programa\Wireshark\goip</em>) donde descargamos las base de datos <strong>GeoIP</strong>:</p>
<p><img id="image535319" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/geoip01.png" alt="wireshark preferencias geoip" align="middle" /></p>
<p>Ahora nos situamos dentro de la ventana de <strong>detalles del protocolo</strong>, en <strong>Internet Protocol</strong>,<u> botón derecho del ratón</u> y <strong><a href="http://seguridadyredes.nireblog.com/post/2008/02/14/analisis-de-red-con-wireshark-interpretando-los-datos" target="_blank" title="Wireshark interpretar los datos">Protocol preferences</a>...</strong> marcamos la opción <strong>Enable GeoIP lookups</strong>:</p>
<p><img id="image535322" src="http://files.nireblog.com/blogs1/seguridadyredes/files/geoip02.png" alt="activar geoip en wireshark prefrencias del protocolo" align="left" /></p>
<p>Ya tenemos configurado Wwireshark para <strong>GeoIP</strong>.</p>
<p><strong><font size="3">Visualización de los datos GeoIP de una captura. </font></strong></p>
<p>Realizamos una captura o abrimos un fichero de captura previamente grabado.</p>
<p>En el menú <a href="http://seguridadyredes.nireblog.com/post/2008/05/07/tshark-wireshark-en-linea-de-comandos-iii-parte-estadisticas" target="_blank" title="Estadisticas en wireshark endpoints"><u><strong>Statistics > Endpoints</strong></u></a>, se nos abre la ventana en la cual seleccionamos la pestaña <strong>IPv4</strong>. Veremos como se han añadido a las columnas por defecto, otras como:</p>
<ul>
<li>Country</li>
<li>AS Number</li>
<li>City</li>
<li>Latitude</li>
<li>Longitude</li>
</ul>
<p>todas correspondiente a los datos obtenidos a través de la Geolocalización de <strong>GeoIP</strong> / <strong>GeoLite</strong>.</p>
<p><u><strong>NOTA:</strong></u> En esta captura desplazo la barra para ver solo los datos de GeoIP. pero tenemos las <strong><a href="http://seguridadyredes.nireblog.com/post/2008/01/17/analisis-capturas-trafico-red-interpretacian-datagrama-ip-parte-i" target="_blank" title="datagrama ip">IP </a></strong>(Address), Paquetes, Bytes, etc, etc :</p>
<p><img id="image535323" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/geoip03.png" alt="wirechark geoip geolite endopoints muestra de datos feolocalizacion" align="middle" /></p>
<p>En esta misma ventana de <strong>Endpoints</strong>, vemos un botón: <strong><u>Map</u></strong>. Si pulsamos en <strong>Map</strong>, se nos abrirá nuestro navegador por defecto desplegando un mapa (similar a google maps) con la <strong>localización geográfica</strong> de las IP:</p>
<p><img id="image535324" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/geoip04.png" alt="geoip localizacion en mapa de las ips en wireshark" align="middle" /></p>
<p>----------------------------------------------------------------</p>
<p><font color="#990033">Para la próxima haremos una reseña a los <strong>filtros Geoip</strong> con opciones para filtrar por lo calización ciudad, etc. </font></p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/27/wireshark-estadisticas-y-geoip#comments">Comments</a></p>]]></description>
	<pubDate>Tue, 27 Oct 2009 13:45:54 +0100</pubDate>	</item>
	<item>
	<title>Wireshark. Usando multiples archivos de captura.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/26/wireshark-usando-multiples-archivos-de-captura</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/26/wireshark-usando-multiples-archivos-de-captura</guid>
		<description><![CDATA[<p>En <strong>Wireshark</strong>, puede ocurrir que realicemos una captura que se prolonge demasiado en el tiempo o que se trate de una captura con gran trasiego de de datos. En ambos casos el archivo de captura .cap será demasiado grande y puede ser intratable.  Para ello disponemos de una serie de opciones que nos facilitará el trabajo.</p>
<p><img id="image535013" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/multi-03.png" alt="lista ficheros de captura wireshark" align="middle" /></p>
<p>Vamos a estudiar estas opciones.</p>
<p>
<!--more-->
</p>
<p>Para usar esta caracterísitica de Wireshark, debemos completar las opciones de <strong>uso de multiples archivos</strong>:</p>
<p><img id="image535003" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/multi-01.png" alt="opciones wireshark multiples archivos" align="middle" /></p>
<p>Vemos las opciones de <strong>Capture File(s)</strong>:</p>
<ul>
<li><strong>File</strong>. Aquí indicamos el archivo y ruta de los archivos .cap de captura.</li>
</ul>
<blockquote><p><strong>El formato resultante del archivo .cap es el siguiente</strong>:</p>
</blockquote>
<div align="center">
<blockquote><strong><font color="#000099">cap___00002_20091026085612</font></strong></p></blockquote>
<blockquote><p>. </p></blockquote>
<blockquote></blockquote>
</div>
<blockquote><blockquote><font color="#000099"><strong>cap</strong></font>__ es el nombre que indicamos en el campo <strong>File</strong>.</p></blockquote>
<blockquote><p><strong><font color="#000099">00002</font></strong> número de serie o de captura</p>
</blockquote>
<blockquote><p><strong><font color="#000099">20091026085612 </font></strong>marca de tiempo: fecha  2009-10-26 tiempo 08:56:12 en horas, minutos y segundos.</p>
</blockquote>
</blockquote>
<ul>
<li><strong>Use multiple files</strong>. Marcamos esta opción para captura a multiples archivos.</li>
<li><strong>Next file every</strong>. Wireshark grabará un archivo nuevo cada <strong><em>n</em></strong> Megabytes, Kilobytes o Gigabytes.</li>
<li><strong>Next file every</strong>. wireshark también grabará un archivo nuevo cada <strong><em>n</em></strong> segundos, minutos, horas o dias.</li>
</ul>
<blockquote><p><strong>NOTA:</strong>  Tanto si usamos la opción de <strong>grabar archivo nuevo cada n tiempo</strong> o <strong>cada n cantidad de bytes</strong>, ambas la podemos usar de forma independiente o marcar las dos. Si marcamos las dos, <strong>Wireshark</strong> grabará un archivo nuevo cada <strong>n</strong> <u>cantidad de bytes</u>, pero  si sobrepada el tiempo que marquemos en la segunda opción (<u>opción de tiempo</u>), entonces grabará un archivo nuevo <strong>aunque no llegue a la cantidad en bytes</strong>.</p>
</blockquote>
<blockquote><p><strong>Lo vemos con un ejemplo</strong>. Fijaos en la captura anterior, tenemos marcado que grabe un archivo nuevo cada 1 Megabyte o cada 15 segundos. Si vemos los archivos .cap grabados:</p>
</blockquote>
<blockquote><p><img id="image535011" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/multi-02.png" alt="Wireshark opciones de multiples capturas. ficheros .cap" align="middle" /></p>
</blockquote>
<blockquote><p><font color="#990033">Podeis observar que, a pesar de indicar que grabemos archivo nuevo cada 1 Megabyte, no llega a tal cantidad, ya que sobrepasa los 15 segundos marcado como límite de captura. Observad las marcas de tiempo, vereis como entre una y otra pasan exactsmente 15 segundos. </font></p>
</blockquote>
<ul>
<li><strong>Stop capture after</strong>. Wireshark parará la captura cuando se graben<strong> n</strong> ficheros .cap.</li>
<li><strong>Ring buffer with. </strong>Wireshark creará una serie de archivos de cáptura (buffer en anillo) cada n ficheros de captura.</li>
</ul>
<p><u><strong>NOTA:</strong></u> En <strong>Capture filter</strong>, podemos establecer un filtro para la captura de los multiples. cap. De esta forma optimizamos el rendimiento y el tamaña de los ficheros.</p>
<p><strong><font size="3">Navegando por los archivos de captura.</font></strong></p>
<p>Podemos navegar a través de los set de archivos de captura de la forma siguiente en el menú de Wireshark: <u><strong>File > File Set > List Files</strong></u>:</p>
<p><img id="image535013" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/multi-03.png" alt="lista ficheros de captura wireshark" align="middle" /></p>
<p>Cuando seleccionemos cualquiera de los archivos de la captura, se visualizarán todos los datos correspondientes en <strong>Wireshark</strong>.</p>
<p>-----------------</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/26/wireshark-usando-multiples-archivos-de-captura#comments">Comments</a></p>]]></description>
	<pubDate>Mon, 26 Oct 2009 10:09:38 +0100</pubDate>	</item>
	<item>
	<title>Jperf. El frontend gráfico de iperf. Rendimiento de la red.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/23/jperf-el-frontend-grafico-de-iperf-rendimiento-de-la-red</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/23/jperf-el-frontend-grafico-de-iperf-rendimiento-de-la-red</guid>
		<description><![CDATA[<p>Ya vimos en su día el uso de <a href="http://seguridadyredes.nireblog.com/post/2008/06/18/iperf-midiendo-ancho-de-banda-entre-dos-hosts" target="_blank" title="IPerf. Midiendo ancho de banda entre dos hosts.">Iperf</a>  para <a href="http://seguridadyredes.nireblog.com/post/2008/06/18/iperf-midiendo-ancho-de-banda-entre-dos-hosts" target="_blank" title="Iperf - Medir ancho de babda entre dos host"><strong>medir el ancho de banda entre dos host</strong></a>. En este artículo avanzaremos un poco más y estudiaremo la versión gráfica basada en <strong>Java</strong> de Iperf: <font size="3"><strong>Jperf</strong></font>.</p>
<p><img id="image533924" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/jperf00.png" alt="jperf el interfa grafico de iperf. rendimiento de la red" align="middle" /></p>
<p>
<!--more-->
</p>
<p>Jperf es una interface gráfica para Iperf. Está basado en Java y tiene las mismas funcionalidadesque Iperf. Lo podemos descargar desde aquí: (<a href="http://code.google.com/p/xjperf/" target="_blank" title="jperf">http://code.google.com/p/xjperf/</a>).</p>
<p>Para su instalación, tan solo tenemos que descargar el archivo comprimido, descimprimir y ejecutar el archivo <strong><em>jperf.bat </em></strong></p>
<p>La <strong>filosofia de uso </strong>es la misma que <a href="http://seguridadyredes.nireblog.com/post/2008/06/18/iperf-midiendo-ancho-de-banda-entre-dos-hosts" target="_blank" title="Iperf midiendo ancho de banda entre dos host"><strong>Iperf</strong></a>. Al tratarse de una herramienta <strong>cliente-servidor</strong>, ejecutaremos <strong>Iperf</strong> en dos máquinas, una hará de <strong>Servidor</strong> y otra de <strong>Cliente</strong>. Tanto en una como en otra podemos ejecutar indistintamente <strong>Jperf</strong> o <strong>Iperf</strong>. Es decir, podemos usar en un extremo y en otro <strong>Jperf</strong> como <strong>cliente</strong> y <strong>servidor</strong> o, como lo haremos aquí, <u><strong>Iperf</strong> como servidor y <strong>jperf</strong> como cliente y herramienta de análisis</u>.</p>
<p><font size="3"><strong>IPerf como servidor.</strong></font></p>
<p>La forma más básica de ejecución como servidor es:</p>
<p><font color="#0033cc">>iperf -s<br /> ------------------------------------------------------------<br /> Server listening on TCP port 5001<br /> TCP window size: 8.00 KByte (default)<br /> ------------------------------------------------------------</font></p>
<p>En este momento <strong>IPerf </strong>se encuentra a la "escucha" en le puerto <strong>5001</strong>.</p>
<p><font size="3"><strong>JPerf como cliente.</strong></font></p>
<p>Como ya hemos comentado, tan solo tenemos que  ejecutar <strong><em>jperf.bat</em></strong>, archivo contenido en la carpeta descomprimida del paquete descargado de Jperf. Una vez ejecutado el fichero por lotes mecionado, se nos abrirá el interface gráfico:</p>
<p><img id="image533926" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/jperf01.png" alt="comienzo frontend Jperf" align="middle" /></p>
<p><font size="3">Tenemos en la <strong>interface</strong> los siguientes campos u opciones importantes:</font></p>
<ul>
<li><strong>iperf command</strong>: se rellenará automáticamente al introducir la <strong>IP</strong> del host remoto en el campo <font color="#990033"><strong>server address</strong></font></li>
<li><strong>Choose iPerf Mode</strong>: Indicamos si estamos usando jperf en modo cliente o servidor. En este caso lo haremos como client.</li>
<li><font color="#990033"><strong>Server address</strong></font>: <u>dirección del host remoto</u>. Aquí introducimos la IP del host remoto. Automáticamente se rellenará el campo <strong>iperf command</strong> con unas opciones por defecto que irán cambiando a medida que rellenemos los cuadros <strong>Aplication layer option</strong>s y <strong>Transport layer options</strong>.</li>
</ul>
<p><font size="3"><strong>Transport layer options.</strong></font></p>
<p>Aquí indicaremos el protocolo <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="Segmento TCP">TCP</a> o <a href="http://seguridadyredes.nireblog.com/post/2008/02/06/analisis-capturas-trafico-de-red-interpretacion-datagrama-udp-iii" target="_blank" title="Datagrama UDP">UDP</a>. Podemos ajustar valores como el <strong>Tamaño de la ventana</strong>, <strong>Longitud de buffer</strong> y el<strong> MSS</strong> (<span style="visibility: visible"><span style="visibility: visible">Maximum Segment Size</span></span>) o cantidad de datos enviados en cada paquete. Ajustanto estos valores en nuestras mediciones podemos encontrar los valores óptimos para el mejor rendimiento de la red. <strong>La opción de ajuste más importante es el tamaño de ventana o Window Size.</strong> Lo común es que aumentando el Tamaño de Ventana, aumente el rendimiento, pero no siempre es así.</p>
<p>Pasa lo mismo con la <strong>Longitud de Buffer</strong> o <strong>Buffer Length</strong>. En valores pequeños podemos tener una red con un rendimiento bajo y subir demasiado este valore puede desencadenar retardos.</p>
<p>Respecto al<strong> Max Segment Size</strong> o <strong>Tamaño máximo de Segmento</strong>, cantidad de datos enviados en cada paquete sin fragmentar (expresado en bytes). Extraigo de la <a href="http://es.wikipedia.org/wiki/Tama%C3%B1o_M%C3%A1ximo_de_Segmento" target="_blank" title="Wikipedia Max segment size o tamaño máximo de ventana">Wikipedia esta explicación bastante buena sobre Max Segment Size (MSS).</a>:</p>
<p><font size="1">"Para una comunicación óptima la suma del número de bytes del segmento de datos y la cabecera debe ser menor que el número de bytes de la <a href="http://es.wikipedia.org/wiki/Unidad_m%C3%A1xima_de_transferencia" title="Unidad máxima de transferencia">unidad máxima de transferencia</a> (MTU) de la red.</font></p>
<p><font size="1">El MSS tiene gran importancia en las conexiones en <a href="http://es.wikipedia.org/wiki/Internet" title="Internet">Internet</a>, particularmente en la navegación <a href="http://es.wikipedia.org/wiki/World_Wide_Web" title="World Wide Web">web</a>. Cuando se usa el protocolo <a href="http://es.wikipedia.org/wiki/Transmission_Control_Protocol" title="Transmission Control Protocol">TCP</a><a href="http://es.wikipedia.org/wiki/Unidad_m%C3%A1xima_de_transferencia" title="Unidad máxima de transferencia">MTU</a> que ambos puedan aceptar. El valor típico de MTU en una red puede ser, por ejemplo, 576 ó 1500 <a href="http://es.wikipedia.org/wiki/Byte" title="Byte">bytes</a>. Tanto la cabecera <a href="http://es.wikipedia.org/wiki/Protocolo_de_Internet" title="Protocolo de Internet">IP</a> como la cabecera TCP tienen una longitud variable de al menos 20 bytes. En cualquier caso, el MSS es igual a la diferencia MTU - cabecera TCP - cabecera IP.</font> <font size="1">para efectuar una conexión, los ordenadores que se conectan deben acordar y establecer el tamaño de la </font></p>
<p><font size="1">A medida que los datos son encaminados por la red deben pasar a través de múltiples <a href="http://es.wikipedia.org/wiki/Enrutador" title="Enrutador">routers</a>. Idealmente, cada segmento de datos debería pasar por todos los routers sin ser fragmentado. Si el tamaño del segmento de datos es demasiado grande para cualquiera de los routers intermedios, los segmentos son fragmentados. Esto aminora la velocidad de conexión, y en algunos casos esta bajada de velocidad puede ser muy apreciable. La posibilidad de que ocurra esa fragmentación puede ser minimizada manteniendo el MSS tan pequeño como sea razonablemente posible. En la mayoría de los casos, el MSS es establecido automáticamente por el <a href="http://es.wikipedia.org/wiki/Sistema_operativo" title="Sistema operativo">sistema operativo</a>.</font><font size="1">"</font></p>
<p><font size="3"><strong>Application layer options.</strong></font></p>
<p>De esta ventana destacar las opciones para <strong>cantidad de transmisión</strong> en Bytes o segundos de muestreo. <strong>Formato de Salida</strong> , el <strong>valor de intervalos de tiempo</strong> y el <strong>puerto</strong> al que se dirigirá y en el que escucha el host remoto (por defecto 5001).</p>
<p><strong><font size="3">Ejecutando Jperf </font></strong></p>
<p>Una vez tenemo los valores en los campos correspondientes, tan solo nos resta pulsar el botón <font color="#990033"><strong>Run Iperf!: </strong></font></p>
<p><img id="image533933" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/jperf02.png" alt="Ejecutando jperf" align="middle" /></p>
<p>Una vez realizada las pruebas, podemos ir modificando en el <strong>registro de Windows</strong> los valores más óptimos de rendimiento.</p>
<p><strong>Vamos a realizar una prueba. </strong>Ajustaremos el valor de <strong>tiempo de transmisión</strong> (Transmit) en <strong>30</strong> segundos. En <strong>Transport layer option</strong> > <strong>TCP window Size</strong> ponemos <strong>6 KBytes</strong> y <font color="#990033"><strong>Run Iperf!</strong></font>:</p>
<p><img id="image533937" src="http://files.nireblog.com/blogs1/seguridadyredes/files/jperf03.png" alt="ajustando valores jperf iperf para pruebas rendimiento red" align="middle" /></p>
<p>Vemos que el rendimiento con un <strong>tamaño de ventana de 6 Kbyes</strong> es de unos <strong>75 Mbits / sec.</strong> apreciamos también las <strong>oscilaciones del rendimiento en el Bandwidth</strong>.</p>
<p>Cambiemos ahora el valor del <strong>tamaño de ventana</strong> (<strong>TCP windows Size</strong>) a <strong>56 Kbytes</strong>.Vea mos que ocurre ahora:</p>
<p><img id="image533938" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/jperf04.png" alt="pruebas rendimiento red local jperf iperf" align="middle" /></p>
<p>Vemos ahora como el rendimiento y la estabilidad son mejores. Tanto en  el host remoto como en la ventana de <strong>Bandwidth </strong>de este captura vemos que nos da unos valores de  <strong>93,7 Mbits / sec.</strong></p>
<p>Podeis probar, por ejemplo, cambiando los valores de <strong>Buffer Length</strong>. Vereis como a distintos valores y forma la gráfica va cambiando en función del rendimiento obtenido.</p>
<p>------------------------------------------------------------------------</p>
<p><font color="#990033"><strong>NOTA</strong>: Atualizaré periódicamente este artículo con nuevas pruebas, resolución de problemas, etc.</font></p>
<p>-------------------------------------------------------------------------</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/23/jperf-el-frontend-grafico-de-iperf-rendimiento-de-la-red#comments">Comments</a></p>]]></description>
	<pubDate>Fri, 23 Oct 2009 07:08:55 +0100</pubDate>	</item>
	<item>
	<title>Wireshark / Tshark. Capturar el tráfico de red de forma remota. RPCAPD</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/21/wireshark-tshark-capturar-el-trafico-de-red-de-forma-remota-rpcapd</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/21/wireshark-tshark-capturar-el-trafico-de-red-de-forma-remota-rpcapd</guid>
		<description><![CDATA[<p>En este artículo vamos a ver otra forma de capturar el tráfico de red. Acostumbrados a usar <strong>Wireshark / Tshark</strong> o cualquier otro software de captura en modo local o usando archivos de captura .pcap, veremos que también podemos conectar nuestro <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="Wireshark y Tshark en el blog seguridadyredes">Wireshark o Tshark</a> a un interfaz de red remoto. Esto último usando una utulidad contenida en Winpcap llamada <strong>RPCAPD</strong>.</p>
<p><img id="image533760" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/rpcapd00.png" alt="captura de red en host remoto rpcapd" align="middle" /></p>
<p><strong>RPCAPD</strong> es una herramienta que nos sirve para <strong>conetarnos a una interfaz de red en un host remoto</strong>. Se encuentra por defecto en <em><span>C:\Archivos de programa\WinPcap.</span></em></p>
<p>
<!--more-->
</p>
<p><strong><font size="3">Preparando el host remoto 192.168.1.30<br /> </font></strong></p>
<p>Para capturar desde un<strong> host local A</strong> a nuestro <strong>host remoto B</strong>, necesitamos saber <strong>que dispositivo o interfaz de red vamos a usar</strong> del host remoto <strong>B</strong> en la captura. Para ello tan sencillo como, entre otras formas, usar <a href="http://seguridadyredes.nireblog.com/post/2008/04/30/tshark-wireshark-en-linea-de-comandos-i-parte" target="_blank" title="Tshark wireshark en linea de comandos"><strong>Tshark</strong></a> en el host remoto <strong>B</strong> para el descubrimiento de dicha información:</p>
<p><img id="image533774" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/rpcapd01.png" alt="captura informacion interfaz tshark" align="middle" /></p>
<p>La interfaz que nos interesa es la número <strong>4</strong> que está reseñada. Copiamos o volcamos la información a un archivo de texto para luego usarla en <strong>Wireshark</strong>.</p>
<p>Para terminar la preparación del host remoto<strong> B</strong>, una vez tenemos la información anterior, tan solo nos hace falta dejar <strong>RPCAPD</strong> escuchando en el host remoto <strong>B</strong>:</p>
<p><img id="image533760" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/rpcapd00.png" alt="captura de red en host remoto rpcapd" align="middle" /></p>
<p>Con <strong>-n</strong> le decimos que <strong>no requiera autentificación</strong>. La opción <strong>-p3333</strong> es para indicar el puerto a la escucha.</p>
<p><strong><font size="3">Preparación del host local 192.168.1.5 para la captura con Wireshark.</font></strong></p>
<p>Ahora cargamos <strong>Wireshark</strong>. Introducimos los datos necesarios:</p>
<p><img id="image533780" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/rpcapd02.png" alt="opciones de captura remota Wireshark" align="middle" /></p>
<p>Le damos a <strong>OK</strong>. Y ahora tenemos que <strong>introducir el nombre del dispositivo de red del host remoto B</strong> que descubrimos anteriormente con <strong>Tshark -D</strong>. Lo haremos usando esta forma (en negrita el nombre del dispositivo):</p>
<p><font color="#0000cc">rpcap://192.168.1.30:3333/<strong>\Device\NPF_{58C21E09-0C1F-4F85-9463-12328CA28B9A} </strong></font></p>
<p>Lo vemos mejor:</p>
<p><img id="image533783" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/rpcapd03.png" alt="wireshartk opciones de captura remota rpcap" align="middle" /></p>
<p>Reseñado está lo que hemos introducido en el campo de la interface. <u><strong>Esto lo podemos hacer escribiendo directamente en el campo</strong></u>.</p>
<p>Pulsamos ahora el botón <strong>Remote Setting </strong>y decimos a <strong>Wireshark</strong> que <strong>no </strong><span><strong>capture el tráfico RPCAP</strong>: </span></p>
<p><img id="image533787" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/rpcapd04.png" alt="Nireshark remote capture setting.no capturar trafico RPCAP" align="middle" /></p>
<p><strong>OK</strong> y en el panel principal pulsamos <strong>Start</strong>.</p>
<p>Y capturamos a traves de <strong>Wireshark</strong> todo el tráfico de red de la <strong>interfaz remota</strong> <font color="#0000cc"><strong>Device\NPF_{58C21E09-0C1F-4F85-9463-12328CA28B9A} </strong></font>de forma, también remota; <strong>del host local A a host remoto B</strong> tal como podemos comprobar:</p>
<p><img id="image533790" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/rpcapd05.png" alt="captura remota con wireshark" align="middle" /></p>
<p><u><strong>NOTAS de uso RPCAPD: </strong></u></p>
<p>Si bien en este artículo hemos usado <strong>Wireshark</strong> con la opción <strong>Null Authentication</strong> para comunicarse con <strong>RPCAPD</strong> (usamos la opcion -n de RPCAPD), lo mejor es hacerlo  mediante credenciales (<strong>Password authentication</strong>).</p>
<p>Podemos guardar la configuración de <strong>RPCAPD</strong>  en un archivo (<strong><em>rpcapd.ini</em></strong>) con la opción <strong>-s</strong> y cargar ese mismo fichero con <strong>-f </strong></p>
<p>Con la opción <strong>-b</strong> de <strong>RPCAPD</strong> podemos decir que eschuche y comunique con un determinado <strong>host</strong> o hacerlo a través de una lista blanca <strong>-l</strong></p>
<p>Con la opción -<strong>d</strong> podemos usar <strong>RPCAPD</strong> como servicio en sistemas win32.</p>
<p>-------------------------------</p>
<p><img src="file:///C:/Windows/Temp/moz-screenshot.jpg" alt="" /><img src="file:///C:/Windows/Temp/moz-screenshot-1.jpg" alt="" /></p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/21/wireshark-tshark-capturar-el-trafico-de-red-de-forma-remota-rpcapd#comments">Comments</a></p>]]></description>
	<pubDate>Wed, 21 Oct 2009 07:12:00 +0100</pubDate>	</item>
	<item>
	<title>Wireshark / Tshark. Análisis protocolo FTP.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/20/wireshark-tshark-analisis-protocolo-ftp</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/20/wireshark-tshark-analisis-protocolo-ftp</guid>
		<description><![CDATA[<p>Siguiendo con los artículos dedicados al análisis de <strong>protocolos de red</strong>, y servicios, como puede ser <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="Análisis de RED. TCP">TCP</a>, <a href="http://seguridadyredes.nireblog.com/post/2008/01/17/analisis-capturas-trafico-red-interpretacian-datagrama-ip-parte-i" target="_blank" title="Análisis e interpretación datagrama IP">IP</a>, <a href="http://seguridadyredes.nireblog.com/post/2008/02/06/analisis-capturas-trafico-de-red-interpretacion-datagrama-udp-iii" target="_blank" title="Análisis datagrama UDP">UDP</a>, <a href="http://seguridadyredes.nireblog.com/post/2008/06/05/tshark-analisis-correo-saliente-smtp" target="_blank" title="Análisis wireshark correo saliente SMTP">SMTP</a>, <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="wireshark tshark">problemas de red,</a> etc, en esta ocasión vamos a analizar el <strong>servicio FTP</strong>.</p>
<p>De forma básica, podemos decir que<strong> FTP</strong> es un <strong>protocolo de red</strong> para la <strong>transferencia de archivos</strong> de un sistema a otro conectados a una red <strong>TCP</strong>, basado en la arquitectura <strong>cliente-servidor</strong> y de una forma <strong>fiable y eficiente</strong>.</p>
<p>Dicho esto, vamos, a continuación, estudiar la captura realizada.</p>
<p><img id="image533714" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/ftp00.png" alt="captura wireshark sesion ftp" align="middle" /></p>
<p>
<!--more-->
</p>
<p>Las primeras lineas que observamos en la captura corresponden al <strong>inicio de la comunicación </strong>con el servidor <strong>FTP</strong>. Se trata, como vemos, del establecimiento de conexiónen tres pasos. El número de secuencia incial es relativo y por tanto en este caso <strong>0</strong>.</p>
<p><font size="1" color="#0000cc">cliente       servidor    TCP      2203 > 21 [SYN] Seq=0 Win=64512 Len=0 MSS=1460</font><font color="#0000cc"><br /> </font> <font size="1" color="#0000cc">servidor     cliente      TCP      21 > 2203 [SYN, ACK] Seq=0 Ack=1 Win=16384 Len=0 MSS=1460</font><font color="#0000cc"><br /> </font> <font size="1" color="#0000cc">cliente       servidor    TCP      2203 > 21 [ACK] Seq=1 Ack=1 Win=64512 Len=0</font></p>
<ol>
<li><strong>cliente</strong> envia <strong>SYN</strong> con un número secuencia <font size="1"> Seq=0</font> y<font size="1"> Ack=0</font></li>
<li><strong>servidor</strong> lo recibe, envia <strong>SYN-ACK</strong> y responde con su propio número de secuencia <font size="1">Seq=0 </font>y con un ACK = al número de  secuencia anterior + 1, es decir: <font size="1">Ack=1</font></li>
<li><strong>cliente </strong>a su vez responde con <strong>ACK</strong> y número de secuencia inicial (<font size="1">Seq=0</font>) +1 y ACK = número de secuecia anterior (<font size="1">Seq=0</font>) +1, es decir: <font size="1">Ack=1</font></li>
</ol>
<p>En la siguiente línea vemos como el servidor responde al cliente con el código <strong>220</strong> que <strong>indica servicio preparado para nuevo usuario</strong> y nuestra información del software/versión del servidor <strong>FTP</strong>:</p>
<p><font size="1" color="#0000cc">Response: 220-FileZilla Server version 0.9.29 beta</font></p>
<p><strong>NOTA:</strong> En la ventana de detalles del paquete, vemos que wireshark nos proporciona más información sobre el sevidor:</p>
<p><img id="image533717" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/ftp01.png" alt="ftp01.png" align="middle" /></p>
<p>Seguimos. Responde le cliente i<strong>niciando el diálogo y sesión FTP con el servidor</strong>. <strong>USER identifica al usuario</strong> para acceder al sistema de ficheros del servidor:</p>
<p><font size="1" color="#0000cc">Request: USER xxxxxxxx</font></p>
<p>El servidor requiere la contraseña del usuario con el código<strong> 331</strong> que indica <strong>OK al usuario</strong> y que necesita contraseña:</p>
<p><font size="1" color="#0000cc">Response: 331 Password required for </font><font size="1" color="#0000cc">xxxxxxxx</font></p>
<p>El cliente responde con la contraseña</p>
<p><font size="1" color="#0000cc">Request: xxxxXxxxxXX</font></p>
<p>En la siguiente linea, el servidor responde con código <strong>230</strong> que indica usuario conectado y que continúe con la sesión:</p>
<p><font size="1" color="#0000cc">Response: 230 Logged on </font></p>
<p>El cliente requiere mostrar el directorio de trabajo con la orden <strong>PWD</strong>:</p>
<p><font size="1" color="#0000cc">Request: PWD </font></p>
<p>El servidor responde a la petición con un código <strong>257</strong> que indica el nombre  de la ruta:</p>
<p><font size="1" color="#0000cc">Response: 257 "/" is current directory.</font></p>
<p>El cliente con la siguiente orden <strong><em>PORT n1,n2,n3,n4,n5,n6</em></strong>  indica al servidor el establecimiento del <strong>modo activo</strong>. Con esta orden, se indica que se espera conexión del servidor en la dirección <strong>IP n1,n2,n3,n4</strong>, en este caso <strong>192.168.1.5</strong> tal como vemos en la captura gráfica de Wireshar, y en el puerto n5 y n6. El puerto se calcula de la siguiente forma:</p>
<p align="center"><strong><em>n5*256+n6 </em></strong></p>
<p align="left">Así pues, siendo n5=8 y n6=156, 8*256+156=<strong>2204</strong>. que, como vemos en la captura un poco más a bajo, es el puerto usado por el cliente. el servidor inicia conexión desde el puerto <strong>20</strong> hacian el puerto "resultante" de la orden<strong> PORT:</strong></p>
<p><font size="1" color="#000099">Request: PORT 192,168,1,5,8,156</font></p>
<p>El servidor responde con un código <strong>200</strong> indicando que la <strong>orden es correcta</strong>:</p>
<p><font size="1" color="#0000cc">Response: 200 Port command successful </font></p>
<p>El cliente con la orden <strong>TYPE A</strong>, indica el tipo de representación de los datos  <strong>A</strong>, es decir <strong>ASCII</strong>. Podría ser también:</p>
<ul>
<li>tipo <strong>ABCDIC (</strong><span style="visibility: visible"><span style="visibility: visible">Código Extendido de Binario Codificado en Decimal</span></span><strong>)<br /> </strong></li>
<li>tipo <strong>imagen</strong></li>
</ul>
<p><font size="1" color="#0000cc">Request: TYPE A</font></p>
<p>El servidor responde con codigo de <strong>orden correcta</strong> y establecimiento de tipo de datos en <strong>TYPE A</strong>:</p>
<p><font size="1"><font color="#0000cc">Response: 200 Type set to A</font> </font></p>
<p>El cliente cursa orden<strong> LIST</strong>. Esta orden hace que el servidor envíe una <strong>listado de los ficheros</strong> a través del proceso de transferencia de datos:</p>
<p><font size="1" color="#0000cc">Request: LIST</font></p>
<p>En las siguientes lineas vemos que se <strong>establece comunicación</strong> en los puertos especficados en <strong>PORT</strong> y el puerto <strong>20</strong>:</p>
<p><font size="1" color="#0000cc">20 > 2204 [SYN] Seq=0 Win=65535 Len=0 MSS=1460</font></p>
<p><font size="1" color="#0000cc">2204 > 20 [SYN, ACK] Seq=0 Ack=1 Win=64512 Len=0 MSS=1460</font></p>
<p><font size="1" color="#0000cc">20 > 2204 [ACK] Seq=1 Ack=1 Win=65535 Len=0 </font></p>
<p>Se <strong>transmiten los datos pedidos por LIST</strong> por parte del servidor:</p>
<p><font size="1" color="#0000cc">FTP Data: 175 bytes </font></p>
<p><strong>NOTA:</strong> En la ventana de detalles del paquete, vemos que Wireshark nos proporciona, en la línea  <font size="1" color="#0000cc">FTP Data: 175 bytes </font>más información sobre el listado <strong>LIST</strong>:</p>
<p><img id="image533727" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/ftp02.png" alt="FTP Data wireshark" align="middle" /></p>
<p>Más abajo responde el servidor con un código <strong>150</strong> indicando <strong>estado del fichero correcto; va a abrirse la conexión de datos</strong>:</p>
<p><font size="1" color="#0000cc">Response: 150 Opening data channel for directory list. </font></p>
<p>Se realiza en las siguientes dos trazas el trasiego de datos de <strong>apertura de conexión de datos</strong> del listado que se pidió y el servidor responde, a su termino con código <strong>226 que cierra la conexión de datos</strong>:</p>
<p><font size="1" color="#0000cc">Response: 226 Transfer OK </font></p>
<p><strong>NOTA</strong>: Se cerró la conexión y el sistema vuelve a establecer comunicación:</p>
<p><font size="1" color="#0000cc">20 > 2204 [SYN] Seq=0 Win=65535 Len=0 MSS=1460<br /> 2204 > 20 [SYN, ACK] Seq=0 Ack=1 Win=64512 Len=0 MSS=1460<br /> 20 > 2204 [ACK] Seq=1 Ack=1 Win=65535 Len=0</font></p>
<p>Se repite el proceso en las siguientes líneas. Hasta la línea:</p>
<p><font size="1" color="#0000cc">Request: RETR 1.psd </font></p>
<p>Esta línea de arriba, con la orden <strong>RETR</strong>, indica petición para transferir una copia del fichero especificado (<strong>1.psd</strong>).</p>
<p>Se transmiten los datos del fichero a transferir del servidor al cliente:</p>
<p><font size="1" color="#0000cc">FTP-DATA FTP Data: 1460 bytes</font></p>
<p><font size="1" color="#0000cc">FTP-DATA FTP Data: 588 bytes </font></p>
<p>El servidor responde con un código <strong>150</strong> que el <strong>estado del fichero correcto; va a abrirse la conexión de datos</strong></p>
<p><font size="1" color="#0000ff">Response: 150 Opening data channel for file transfer. </font></p>
<p>En las líneas siguientes se transfiere el fichero.</p>
<p><font size="1" color="#0000cc">servidor       cliente           FTP-DATA FTP Data: 1460 bytes<br /> servidor       cliente           FTP-DATA FTP Data: 1460 bytes<br /> cliente         servidor       TCP      2206 > 20 [ACK] Seq=1 Ack=4969 Win=64512 Len=0<br /> servidor       cliente           FTP-DATA FTP Data: 1460 bytes<br /> servidor       cliente           FTP-DATA FTP Data: 1460 bytes<br /> cliente         servidor       TCP      2206 > 20 [ACK] Seq=1 Ack=7889 Win=64512 Len=0<br /> servidor       cliente           FTP-DATA FTP Data: 1460 bytes<br /> servidor       cliente           FTP-DATA FTP Data: 1460 bytes<br /> cliente         servidor       TCP      2206 > 20 [ACK] Seq=1 Ack=10809 Win=64512 Len=0</font></p>
<p><font size="1" color="#0000cc">...</font></p>
<p><font size="1" color="#0000cc">... </font></p>
<p>Todo este proceso terminará con un código <strong>226 que cierra la conexión de datos</strong> y que<strong> la transferencia está completada</strong>:</p>
<p><font size="1" color="#0000cc">Response: 226 Transfer OK </font></p>
<p>Observemos las líneas siguientes en las que el cliebnte <strong>cursa petición de establecimiento de datos tipo binario (por tratarse de una imagen la trasferencia</strong>) y las respuesta OK del servidor:</p>
<p><font size="1" color="#0000cc">cliente         servidor       FTP      Request: TYPE I<br /> servidor       cliente         FTP      Response: 200 Type set to I</font></p>
<p>El las siguientes líneas se cierra la conexión.</p>
<p>----------------------------------------------------------------- </p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/20/wireshark-tshark-analisis-protocolo-ftp#comments">Comments</a></p>]]></description>
	<pubDate>Tue, 20 Oct 2009 10:13:57 +0100</pubDate>	</item>
	<item>
	<title>Esas pequeñas utilidades. Análisis forense. STRINGS.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/14/esas-pequeaas-utilidades-analisis-forense-strings</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/14/esas-pequeaas-utilidades-analisis-forense-strings</guid>
		<description><![CDATA[<p>Seguimos con las pequeñas utilidades o herramientas. En este caso hablaremos de <strong>STRINGS</strong>. Voy a explicar su uso con un ejemplo práctico como puede ser el <strong>análisis de los archivos contenidos en la carpeta Prefetch de Windows</strong>.</p>
<p><a href="http://technet.microsoft.com/en-us/sysinternals/bb897439.aspx" target="_blank" title="String.exe de Sysinternals"><strong>STRINGS</strong> de <strong><span style="visibility: visible"><span style="visibility: visible"><em>Sysinternals</em></span></span></strong></a> es una utilidad que nos sirve <strong>para encontrar cadenas ASCII  o UNICODE en un archivo determinado</strong></p>
<p>Pero, como he dicho, vamos a verlo con un ejemplo....</p>
<p>
<!--more-->
</p>
<p>Haremos un muy sencillo <strong>análisis forense</strong> de la carpeta Prefetch de <strong>Windows XP</strong> ó <strong>Vista</strong>. Pero, antes que nada <strong>¿ qué es la carpeta Prefetch ?</strong>.</p>
<div class="topic_body_partial Conceptual">
<h3 class="title_article">¿Qué es la carpeta Prefetch?</h3>
<p class="para">Explicado de forma muy sencilla. Cada vez que enciende el equipo, <strong><span class="notLocalizable">Windows</span></strong> realiza un seguimiento de la forma en que se inicia el equipo y los programas que se abren habitualmente. <strong><span class="notLocalizable">Windows</span> guarda esta información en una serie de pequeños archivos en la carpeta Prefetch</strong>. La próxima vez que encienda el equipo, <span class="notLocalizable">Windows</span> recurrirá a estos archivos <strong>para acelerar el proceso de inicio</strong>.</p>
<p class="para lastElement">La carpeta Prefetch es una subcarpeta de la carpeta del sistema <span class="notLocalizable">Windows</span>. La carpeta Prefetch no requiere mantenimiento: no es necesario eliminar ni vaciar su contenido. Si vacía la carpeta, <span class="notLocalizable">Windows</span> y los otros programas tardarán más en abrirse la próxima vez que encienda el equipo.</p>
<p class="para lastElement">(<a href="http://windows.microsoft.com/es-ES/windows-vista/What-is-the-prefetch-folder" target="_blank" title="qué es prefetch">http://windows.microsoft.com/es-ES/windows-vista/What-is-the-prefetch-folder</a>)</p>
<p class="para lastElement">Dentro de esta carpeta tenemos unos <strong>archivos con extensión .pf</strong> que son los encargados de almacenar los datos necesario para la tarea encomendada a <strong>Prefecth</strong>.</p>
<p class="para lastElement">Bien, vamos a ver el contenido de uno de estos archivos en un PC cualquiera de nuestra red a administrar. En este caso:</p>
<p class="para lastElement"><strong><em>1BY1.EXE-0B97D9FD.pf </em></strong></p>
<p class="para lastElement">A primera vista vemos que se trata de un archivo relativo al programa 1BY1. Parece que un usuario de nuestra red se dedica a escuchar música. Ahora vamos a ver que contiene:</p>
<p class="para lastElement"><img id="image532436" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/string00.png" alt="contenido archivo pf de prefetch" align="middle" /></p>
<p class="para lastElement">&nbsp;</p>
<p class="para lastElement">Vaya. No sé ustedes, pero yo no entiendo nada.</p>
<p class="para lastElement">Es aquí donde entra en juego nuestra pequeña utilidad <a href="http://technet.microsoft.com/en-us/sysinternals/bb897439.aspx" target="_blank" title="STRINGS.EXE">STRINGS</a>.</p>
<p class="para lastElement">Tiene varias opciones, pero como en esta serie trato solo de dar referencia a las pequeñas utilidades, usaremos STRINGS de la forma más simple:</p>
<p class="para lastElement"><font color="#0000cc">> string  C:\WINDOWS\Prefetch\1BY1.EXE-0B97D9FD.pf </font></p>
<p class="para lastElement">He eliminado algunas partes pero el resultado nos da  algunas pistas : </p>
<p class="para lastElement"><img id="image532442" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/string01.png" alt="resultado string" align="middle" /></p>
<p class="para lastElement">Por ejemplo que <strong>el usuario del PC estaba "como administrador"</strong>, o que había estado <strong>escuchando algunos temas de blues con el software 1By1</strong>.</p>
<p class="para lastElement">Si hacemos lo mismo con  el archivo <strong>EXCEL.EXE-256AADE1.pf</strong>, obtenemos lo siguiente:</p>
<p class="para lastElement"><img id="image532446" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/string02.png" alt="salida strings prefetch" align="middle" /></p>
<p class="para lastElement">Es decir, <strong>tenemos alguno de los últimos archivos .XLS abiertos por el usuario</strong>. </p>
<p class="para lastElement">--------- </p>
<p class="para lastElement">&nbsp;</p>
</div>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/14/esas-pequeaas-utilidades-analisis-forense-strings#comments">Comments</a></p>]]></description>
	<pubDate>Wed, 14 Oct 2009 10:57:02 +0100</pubDate>	</item>
	<item>
	<title>Esas pequeñas utilidades. NBTSCAN</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/10/14/esas-pequenas-utilidades-nbtscan</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/10/14/esas-pequenas-utilidades-nbtscan</guid>
		<description><![CDATA[<p>Iniciamos, en esta ocasión, una serie de <strong>referencias</strong> a utilidades que nos ayudarán a realizar tareas de mantenimiento, administración, enumeración, etc, en nuestra red local. Todo esto a sugerencia de mis amables lectores.</p>
<p>Comenzamos con <strong>NBTSCAN</strong> (<a href="http://unixwiz.net/tools/nbtscan.html" target="_blank" title="NETBIOS nameserver scanner"><strong>NETBIOS nameserver scanner</strong></a>).Recalcar que tan solo se trata de referencias y no un manual de uso. Más que nada por la sencillez de uso de las herramientas.</p>
<p>Decir, también, que sigo con las series de articulos ya comenzadas en este blog y profundizando en otros aspectos de la serguridad y las redes con artículos nuevos. </p>
<!--more-->
<h3>
<p><font size="3">NBTSCAN (nameserver scanner)</font><br /> </h3>
<p><img id="image532418" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/nbtscan00.png" alt="NBTSCAN. NETBIOS nameserver scanner" align="middle" /></p>
<p><strong>nbtscan.txt</strong> :</p>
<p><img id="image532419" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/nbtscan01.png" alt="Resultado nbtscan" align="middle" /> </p>
<p><u><strong>Más información:</strong></u> http://unixwiz.net/tools/nbtscan.html</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/10/14/esas-pequenas-utilidades-nbtscan#comments">Comments</a></p>]]></description>
	<pubDate>Wed, 14 Oct 2009 08:43:54 +0100</pubDate>	</item>
	<item>
	<title>Wireshark / Tshark. TCP segment of a reassembled PDU</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/03/09/wireshark-tshark-tcp-segment-of-a-reassembled-pdu</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/03/09/wireshark-tshark-tcp-segment-of-a-reassembled-pdu</guid>
		<description><![CDATA[<p>Ya vimos algunos mensajes informativos o de error de <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="wireshark. Interpretar los datos."><strong>Wireshark</strong></a> tales como <a href="http://seguridadyredes.nireblog.com/post/2009/02/19/wireshark-tshark-error-tcp-bad-checksum" target="_blank" title="wireshark Tshark TCP Bad Checksum">Error TCP Bad Cheksum</a>, <a href="http://seguridadyredes.nireblog.com/post/2009/02/20/wireshark-tshark-usando-io-graph-para-relacionar-acks-duplicados-lost-segment-y-retransmisiones" target="_blank" title="wireshark duplicate ack fast retransmission">TCP fast retransmission,  TCP Dup ACK</a>, <a href="http://seguridadyredes.nireblog.com/post/2009/02/19/tshark-detectando-problemas-en-la-red" target="_blank" title="wireshark detecta rerrores en la red o conexion">etc</a>. Ahora vamos a ver otro muy común: <strong>TCP segment of a reassembled PDU</strong>, información que a muchos induce a pensar que existe algún error en la red o conexión.</p>
<p><img id="image481630" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/pdu-1.png" alt="Wireshark TCP segment of a reassembled " align="middle" /></p>
<p>
<!--more-->
</p>
<p>Tenemos una captura cualquiera con algunas etiquetas de información del tipo <strong>TCP segment of a reassembled PDU</strong>, no sabemos a cuantos paquetes afecta esta información, error o lo que sea, así que aplicamos un <a href="http://seguridadyredes.nireblog.com/post/2008/03/24/analisis-de-red-con-wireshark-filtros-de-captura-y-visualizacian" target="_blank" title="wireshark Tshark filtros de captura y visualización. C">Display Filter</a>:</p>
<p><strong><em>tcp.reassembled_in</em></strong></p>
<p>Ya tenemos todos los paquetes afectados. Elegimos uno cualquiera para <a href="http://seguridadyredes.nireblog.com/post/2008/02/14/analisis-de-red-con-wireshark-interpretando-los-datos" target="_blank" title="wireshark, Ver datos paquetes interpretar datos">ver todos los datos del paquete</a>:</p>
<p><a href="http://files.nireblog.com/blogs1/seguridadyredes/files/pdu-2.png" title="Wireshark TCP segment of a reassembled PDU" class="imagelink"><img id="image481632" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/pdu-2.png" alt="Wireshark TCP segment of a reassembled PDU" align="middle" /></a></p>
<p>Reseñado en rojo vemos <strong>Reassembled PDU in frame 19225</strong>, bien, vamos al frame o <strong>paquete 19225</strong>. quitemos el filtro anterior y buscamos el frame o aplicamos el filtro: <em><strong>tcp.segments</strong></em>:</p>
<p><img id="image481646" src="http://files.nireblog.com/blogs1/seguridadyredes/files/pdu-4.png" alt="pdu-4.png" align="left" /></p>
<p>Y vemos que se nos informa de que el<strong> frame 19255</strong> es un paquete<strong> reensamblado </strong>formado por una lista de segmentos, entre ellos el que elegimos al principio.</p>
<p>¿ Y que significa esto. ?. Sencillamente que en el <strong>paquete 19225</strong>, <strong>Wireshark a concatenado una serie de segmento mostrando en el toda la información completa</strong>.</p>
<p><strong>No se trata de ningún error. </strong></p>
<p>Básicamente. En ocasiones los paquetes vienen "fragmentados" en unidades <a href="http://es.wikipedia.org/wiki/Protocol_Data_Unit" target="_blank" title="wireshark. Protocol Data Units (PDU)"><strong>Protocol Data Units (PDU)</strong></a> y <strong>Wireshark</strong> los reensambla enun nivel más alto, en este caso, <strong>http</strong>.</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/03/09/wireshark-tshark-tcp-segment-of-a-reassembled-pdu#comments">Comments</a></p>]]></description>
	<pubDate>Mon, 09 Mar 2009 13:40:11 +0100</pubDate>	</item>
	<item>
	<title>Snort. Preprocesadores. frag3</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/03/06/snort-preprocesadores-frag3</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/03/06/snort-preprocesadores-frag3</guid>
		<description><![CDATA[<p>Ya sabemos que son los <a href="http://seguridadyredes.nireblog.com/post/2009/03/03/snort-preprocesadores-i-parte" target="_blank" title="Snort. Preprocesadores. Preprocessors">preprocesadores</a> de <a href="http://seguridadyredes.nireblog.com/cat/snort" target="_blank" title="Snort. IDS"><strong>Snort</strong></a>, como funcionan y donde se sitúan. Ahora vamos a ir estudiendo uno a uno. Empezamos con  <strong>frag3</strong>.</p>
<p>
<!--more-->
</p>
<p>El preprocesador frag3.</p>
<p>Este <a href="http://seguridadyredes.nireblog.com/post/2009/03/03/snort-preprocesadores-i-parte" target="_blank" title="Snort. Preprocesadores. Preprocessors">preprocesador</a> sustituye a <strong>frag2</strong>. Es más rápido y sencillo en su funcionamiento interno.</p>
<p><strong>Frag3</strong> tiene como objetivo principal la <strong>detección de evasión del IDS por fragmentación</strong>. Es decir, se encarga del <strong>reensamblaje de paquetes fragmentados</strong> para que al pasar al motor de detección se pueda comparar el <a href="http://seguridadyredes.nireblog.com/post/2008/06/12/snort-busqueda-de-patrones-reglas-de-contenido" target="_blank" title="Reglas de contenido. Snort">contenido</a> de los paquetes o <em><a href="http://seguridadyredes.nireblog.com/post/2008/06/12/snort-busqueda-de-patrones-reglas-de-contenido" target="_blank" title="Reglas de contenido o payload.">payload</a></em> con las reglas de detección de ataques. Reconstruye el flujo lógico de los datos.</p>
<p>Existen dos directivas de configuración defrag3:</p>
<ul>
<li><strong>frag3_global</strong>. Solo una directiva global.</li>
<li><strong>frag3_engine</strong>. Puede haber varias directiva de engine o motor con configuraciones distintas.</li>
</ul>
<p><strong>frag3_global</strong> tiene las siguientes opciones:</p>
<ul>
<li><strong>max_frags</strong> <em>número</em>. Número máximo de fragmento simultáneos a analizar. Por defecto es 8192.</li>
<li><strong>memcap</strong> <em>bytes</em>. Memoría máxima de alamacenamiento para uso de frag3. Pr defecto es 4 MB.</li>
<li><strong>prealloc_frags</strong> <em>número</em>. Número preasignado máximo de fragmentos individuales que pueden ser procesados a la vez.</li>
</ul>
<p><strong>frag3_engine</strong> tiene las siguientes opciones:</p>
<ul>
<li><strong>timeout</strong> <em>segundos</em>. Cantidad de segundos que se mantiene el fragmento en antes de que expire (por tieme out). Por defecto son 60 segundos.</li>
<li><strong>ttl_limit</strong> <em>valor</em>. Máximo valor <a href="http://seguridadyredes.nireblog.com/post/2008/01/17/analisis-capturas-trafico-red-interpretacian-datagrama-ip-parte-i" target="_blank" title="Campo TTL"><strong>TTL</strong></a> que adepta <strong>frag3</strong>. Por defecto 5.</li>
<li><strong>min_ttl</strong> <em>valor</em>. Mínimo valor aceptable para <a href="http://seguridadyredes.nireblog.com/post/2008/01/17/analisis-capturas-trafico-red-interpretacian-datagrama-ip-parte-i" target="_blank" title="Campo TTL"><strong>TTL</strong></a>  de un paquete fragmentado. Por defecto es 1.</li>
<li><strong>detect_anomalies</strong> si se quiere detectar anomalias en los fragmentos.</li>
<li><strong>bind_to</strong> <em>lista de IPs</em>. Lista de IPs que analiza "frag3". Por defecto entran todas las Ips.</li>
<li><strong>policy</strong> <em>tipo de politica según plataforma</em>. "Plantilla" modo de fragmentación según la plataforma a analizar por <em>frag3</em>, es decir, según la plataforma sea<strong> Windows, Linux, BSD</strong>, etc. Tenemos las siguientes subopciones:</li>
<ul>
<li><strong>bsd</strong></li>
<li><strong>Last</strong></li>
<li><strong>Firs</strong></li>
<li><strong>linux</strong></li>
<li><strong>BSD-right</strong></li>
</ul>
<p>Tabla de opciones según plataforma:</p>
</ul>
<table border="1" cellpadding="3">
<tbody>
<tr>
<th align="left"><strong>Plataforma</strong></th>
<th align="left"><strong>Tipo</strong></th>
</tr>
<tr>
<td align="left">AIX 2</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">AIX 4.3 8.9.3</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">Cisco IOS</td>
<td align="left">Last</td>
</tr>
<tr>
<td align="left">FreeBSD</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">HP JetDirect (printer)</td>
<td align="left">BSD-right</td>
</tr>
<tr>
<td align="left">HP-UX B.10.20</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">HP-UX 11.00</td>
<td align="left">First</td>
</tr>
<tr>
<td align="left">IRIX 4.0.5F</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">IRIX 6.2</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">IRIX 6.3</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">IRIX64 6.4</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">Linux 2.2.10</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">Linux 2.2.14-5.0</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">Linux 2.2.16-3</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">Linux 2.2.19-6.2.10smp</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">Linux 2.4.7-10</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">Linux 2.4.9-31SGI 1.0.2smp</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">Linux 2.4 (RedHat 7.1-7.3)</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">MacOS (version unknown)</td>
<td align="left">First</td>
</tr>
<tr>
<td align="left">NCD Thin Clients</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">OpenBSD (version unknown)</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">OpenBSD (version unknown)</td>
<td align="left">linux</td>
</tr>
<tr>
<td align="left">OpenVMS 7.1</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">OS/2 (version unknown)</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">OSF1 V3.0</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">OSF1 V3.2</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">OSF1 V4.0,5.0,5.1</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">SunOS 4.1.4</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">SunOS 5.5.1,5.6,5.7,5.8</td>
<td align="left">First</td>
</tr>
<tr>
<td align="left">Tru64 Unix V5.0A,V5.1</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">Vax/VMS</td>
<td align="left">BSD</td>
</tr>
<tr>
<td align="left">Windows (95/98/NT4/W2K/XP)</td>
<td align="left">First</td>
</tr>
</tbody>
</table>
<p><strong><font size="3">Vemos algunos ejemplos de uso de frag3.</font></strong></p>
<pre class="hl"><font size="2" color="#0000cc">preprocessor frag3_global: prealloc_frags 8192 </font></pre>
<pre class="hl"><font size="2" color="#0000cc">preprocessor frag3_engine: policy linux, bind_to 192.168.1.0/24 </font></pre>
<pre class="hl"><font size="2" color="#0000cc">preprocessor frag3_engine: policy first, bind_to [192.168.2.0/24,] </font></pre>
<pre class="hl"><font size="2" color="#0000cc">preprocessor frag3_engine: policy last, detect_anomalies</font></pre>
<p>Vemos que, como ya hemos dicho, solo una directiva <strong>frag3_global</strong>.<br /> Varias directivas <strong>frag3_engine</strong> para plataformas basadas en:</p>
<ul>
<li><strong>linux</strong> con lista de ips</li>
<li><strong>first </strong>(windows)</li>
<li><strong>last</strong> en este caso con detección de anomalias</li>
</ul>
<p>¿ Complicado ?. Puede ser, pero saldremos de dudas más adelante cuando entremos en los ejemplos, frabricando paquetes a medida para ir porbando distintas configuraciones y el funcionamiento de frag3.</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/03/06/snort-preprocesadores-frag3#comments">Comments</a></p>]]></description>
	<pubDate>Fri, 06 Mar 2009 13:41:26 +0100</pubDate>	</item>
	<item>
	<title>Snort. Preprocesadores ( I ) Parte.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/03/03/snort-preprocesadores-i-parte</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/03/03/snort-preprocesadores-i-parte</guid>
		<description><![CDATA[<p>Después de varios artículos <a href="http://seguridadyredes.nireblog.com/post/2008/01/23/sistemas-de-deteccion-de-intrusos-y-snort-ii-creacion-de-reglas-ii-opciones-de-las-reglas" target="_blank" title="creacion reglas snort">sobre opciones de la reglas</a> <a href="http://seguridadyredes.nireblog.com/cat/snort" target="_blank" title="Snort. Detección de Intrusiones. IDS">Snort</a>, <a href="http://seguridadyredes.nireblog.com/post/2008/06/12/snort-busqueda-de-patrones-reglas-de-contenido" target="_blank" title="Snort. Reglas relacionadas con el contenido ">relacionadas con el contenido</a> y<a href="http://seguridadyredes.nireblog.com/post/2008/11/18/snort-opciones-reglas-no-relacionadas-con-el-contenido-iii-parte" target="_blank" title="reglas snort rules."> no relacionadas con el contenido</a>, hacemos un paréntesis para hablar de los <strong>proprocesadores</strong>.</p>
<p><img id="image260035" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/snort_sm.jpg" alt="snort_sm.jpg" align="middle" /></p>
<p>Los <strong>preprocesadores</strong>, básicamente, son unos módulos, añadidos o plugins que usa <a href="http://seguridadyredes.nireblog.com/cat/snort" target="_blank" title="Snort. Detección de Intrusiones. IDS">Snort</a> para arreglar, rearmar, modificar tramas que vienen del decodificador de paquetes antes de que pasen por el motor de detección y las <a href="http://seguridadyredes.nireblog.com/post/2008/01/23/sistemas-de-deteccion-de-intrusos-y-snort-ii-creacion-de-reglas-ii-opciones-de-las-reglas" target="_blank" title="reglas snort rules">reglas</a>. Pero donde se sitúan, como actúan, que <strong>preprocesadores</strong> tiene <a href="http://seguridadyredes.nireblog.com/cat/snort" target="_blank" title="Snort. Detección de Intrusiones. IDS">Snort</a> y como funcionan....</p>
<!--more-->
<h3>
<p>Donde se sitúan dentro de la arquitectura Snort.</p>
</h3>
<p>Se sitúan entre el decodificador de paquetes y el motor de detección.</p>
<p><img id="image479434" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/preprocesadores_snort.png" alt="Preprocesadores Snort" align="middle" /></p>
<p>Con lo que son activados después del Decodificador para luego llamar al motor de detección.</p>
<h3>Qué son y como funcionan los preprocesadores.</h3>
<p>Se trata de pequeños plugins programados normalmente en C que sirven para <strong>tratar los paquetes provenientes del Decodificador</strong>. El tratamiento que realiza sobre los paquetes es <strong>para darle forma de manera que se pueda interpretar la información de los paquetes de foma más sencilla y lógica</strong>. Una vez reordenados los paquetes, al pasar por el motor de Detección se le aplicarán las Reglas en busca de patrones de ataques,virus, información, etc.</p>
<p>Los preprocesadores pueden <strong>defragmentar paquetes, ordenarlos, decodificar URLs, reensamblar</strong>, etc.</p>
<p>Estos <strong>preprocesadores</strong> de configuran en el archivo de configuración <strong>etc/snort.conf</strong> que, como ya hemos visto en otros artículos, tiene la forma dentro del epígrafe <strong>3 configure preprocessors</strong>:</p>
<p><img id="image479438" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/preprocesadores_snort01.png" alt="Snort snort.conf preprocessors" align="middle" /></p>
<h3>De qué preprocesadores disponemos en Snort.</h3>
<p>Tenemos varios <strong>preprocesadores</strong> según la tarea a realizar:</p>
<ul>
<li>frag3</li>
<li>stream4</li>
<li>stream4_reassemble</li>
<li>flow</li>
<li>stream5</li>
<li>sfportscan</li>
<li>rpc_decode</li>
<li>bo (Back Orifice detector)</li>
<li><a href="http://seguridadyredes.nireblog.com/post/2007/12/20/detectando-sniffers-en-nuestra-red-redes-conmutadas-y-no-conmutadas" target="_blank" title="arpspoof para detectar sniffers en la red">arpspoof</a></li>
<li>ssh</li>
<li>etc,</li>
</ul>
<p>Los iremos viendo uno a uno, como funcionana y como configurarlos en la parte 2 de <strong>Snort. Preprocesadore</strong>s.</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/03/03/snort-preprocesadores-i-parte#comments">Comments</a></p>]]></description>
	<pubDate>Tue, 03 Mar 2009 13:13:04 +0100</pubDate>	</item>
	<item>
	<title>Wireshark básico. Expert infos y Expert info Composite.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/02/24/wireshark-basico-expert-infos-y-expert-info-composite</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/02/24/wireshark-basico-expert-infos-y-expert-info-composite</guid>
		<description><![CDATA[<p>Vamos a estudiar en esta ocasión dos herramientas básicas de <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="wwireshark Tshark interpretar los datos"><strong>Wireshark</strong></a>: <strong>Expert Infos</strong> y <strong>Expert Info Composite</strong>. Herramientas con las que podemos ver un resumen de las <strong>anomalías</strong>, <strong>eventos de información</strong> y <strong>errores</strong> aparecidos durante una sesión de captura de funa forma clara y sencilla.</p>
<p><img id="image476425" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/expert_infos.png" alt="Wireshark Expert Info" align="middle" /></p>
<p>
<!--more-->
</p>
<p>Tanto Expert Infos como Expert infos composite nos aparece en el menu: <strong><u>Analize</u></strong> > <u><strong>Expert Infos / Expert Infos composite</strong></u></p>
<h3>Expert Infos.</h3>
<p>Si echamos una visión rápida a la captura de pantalla de la ventana <strong>Expert Infos</strong>, vemos que la primera diferenciación que hace la herramienta es por los <strong>colores </strong>indicando <strong>severidad</strong> (<strong>columna Server.</strong>) de la información.</p>
<ul>
<li><font style="background-color: #cc0000" color="#000000">Rojo</font>. <strong>Error</strong>. Problema serio. Normalmente paquetes malformados.</li>
<li><span style="background-color: #ffff00">Amarillo</span>. <strong>Warn</strong>. Peligro. Problemas de conexión.</li>
<li><span style="background-color: #33ffff">Cian</span>. <strong>Note</strong>. Información. Reporte de errores usuales que no significan un problema serio.</li>
<li><span style="background-color: #33ff66">Verde</span>. <strong>Chat</strong>. Información sobre conversaciones de protocolos.</li>
</ul>
<p>Tenemos también una clasificación por <strong>grupos</strong> (<strong>columna Group</strong>) Entre los más usuales:</p>
<ul>
<li><strong>Cheksum</strong>. Cheksum inválido. Por ejemplo <a href="http://seguridadyredes.nireblog.com/post/2009/02/19/wireshark-tshark-error-tcp-bad-checksum" target="_blank" title="Wireshark TCP Bad Checksum">TCP Bad Checksum</a>.</li>
<li><strong>Secuence</strong>. <a href="http://seguridadyredes.nireblog.com/post/2009/02/20/wireshark-tshark-usando-io-graph-para-relacionar-acks-duplicados-lost-segment-y-retransmisiones" target="_blank" title="IO Graph. problemas en la red con wireshark">Números de secuencias sospechosos o fueran de orden, detección de retransmisiones o retransmisiones rápidas, ACKs duplicados, segmentos perdidos</a>, etc.</li>
<li><strong>Malformed</strong>. Paquetes malformados. Errores graves.</li>
<li><strong>Reassemble</strong>. Problemas de reensamblaje, fragmentación, etc.</li>
<li><strong>Response Code</strong>. Errores o problemas en códigos de respuesta.Por ejemplo código de errores HTTP.</li>
<li><strong>Request Code</strong>. Errores o problemas en códigos de petición.</li>
</ul>
<p><strong>Otras columnas</strong> informativas de la ventana <strong>Expert Infos</strong> son:</p>
<ul>
<li><strong>No.</strong> Número de paquete o frame.</li>
<li><strong>Protocol</strong>. Información del protocolo involucrado. <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="Segmento TCP.">TCP</a>, HTTP, etc.</li>
<li><strong>Summary</strong>. Información del evento. Explicación de lo ocurrido.</li>
</ul>
<p>Podemos, además, filtrar la información con <strong>Severity Filter</strong>:</p>
<p><img id="image476460" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/expert_infos_filtro.png" alt="Wireshark Experto infos filtro" align="middle" /></p>
<p>De esta forma podemos visualizar solo los paquetes con</p>
<ul>
<li><font style="background-color: #cc0000" color="#000000">Rojo</font>. <strong>Error</strong> <strong>Only</strong>. Solo los errores.</li>
<li><font style="background-color: #cc0000" color="#000000">Rojo</font>. <strong>Error</strong> + <span style="background-color: #ffff00">Amarillo</span>. <strong>Warn</strong>. Errores y problemas, situaciones peligrosas en conexión.</li>
<li><font style="background-color: #cc0000" color="#000000">Rojo</font>. <strong>Error</strong> + <span style="background-color: #ffff00">Amarillo</span>. <strong>Warn</strong> + <span style="background-color: #33ffff">Cian</span>. <strong>Note</strong>.La suma de lo anterior y las notas de información y errores usuales.</li>
<li><font style="background-color: #cc0000" color="#000000">Rojo</font>. <strong>Error</strong> + <span style="background-color: #ffff00">Amarillo</span>. <strong>Warn</strong> + <span style="background-color: #33ffff">Cian</span>. <strong>Note + </strong><span style="background-color: #33ff66">Verde</span>. <strong>Chat</strong>. Todos los eventos.</li>
</ul>
<h3>Expert Infos Composite.</h3>
<p><img id="image476470" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/expert_infos_composite.png" alt="Wireshark Expert Infos composite" align="middle" /></p>
<p>En este caso, la información facilitada por Wireshark eá organizada por pestañas atendiendo a la <strong>Severidad del evento</strong>. A la información suministrada por Expert Infos, Expert Infos Composite, ademas, no da información de <strong>cantidad de paquetes que forman parte de cada evento</strong> en la columna <strong>Count</strong>. En details veríamos la <strong>misma información</strong> que en <strong>Expert Infos</strong> con sius diferenciación pro colores, etc.</p>
<p><strong>Expert Infos Composite</strong> nos ofrece una información <strong>más detallada y mejor organizada</strong>, para visualizar de forma más rápida.</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/02/24/wireshark-basico-expert-infos-y-expert-info-composite#comments">Comments</a></p>]]></description>
	<pubDate>Tue, 24 Feb 2009 13:58:45 +0100</pubDate>	</item>
	<item>
	<title>Wireshark / Tshark. Usando IO Graph para relacionar ACKs duplicados, lost segment y retransmisiones</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/02/20/wireshark-tshark-usando-io-graph-para-relacionar-acks-duplicados-lost-segment-y-retransmisiones</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/02/20/wireshark-tshark-usando-io-graph-para-relacionar-acks-duplicados-lost-segment-y-retransmisiones</guid>
		<description><![CDATA[<p>Ya hemos visto <a href="http://seguridadyredes.nireblog.com/post/2009/02/19/tshark-detectando-problemas-en-la-red" target="_blank" title="Wireshark Tshark. Detectar errores en nuestra red.">como detectar algunos errores en nestra red</a> usando <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="Wireshark Tshark"><strong>Wireshark</strong></a> y algunos conceptos como<strong> ACKs duplicado</strong>s, <strong>segmentos fuera de orde</strong>n, <strong>Retransmisiones</strong>, <strong>Retransmisiones rápidas</strong>, etc. Ahora vamos a ver estos mismos coneceptos usando la herramienta <a href="http://seguridadyredes.nireblog.com/post/2008/11/25/analisis-de-red-con-wireshark-interpretando-las-graficas-i-parte" target="_blank" title="Graficas wireshark IO GRaph">IO Graph</a> de <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" target="_blank" title="Wireshark Tshark"><strong>Wireshark</strong></a> y como relacionarlos.</p>
<p><img id="image474917" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/tcp_analysis_000.png" alt="Wireshark IO Graphs" align="middle" /></p>
<p>
<!--more-->
</p>
<p>Tenemos una captura cualquiera. Como ya hemos estudiado en el artículo dedicado a las <a href="http://seguridadyredes.nireblog.com/post/2008/11/25/analisis-de-red-con-wireshark-interpretando-las-graficas-i-parte" target="_blank" title="Wiresharh graficas IO Graph">gráficas Wwireshark</a> abrimos esta herramienta y aplicamos una serie de <a href="http://seguridadyredes.nireblog.com/post/2008/05/13/tshark-wireshark-en-linea-de-comandos-v-parte-avanzando-en-filtros-y-estadisticas" target="_blank" title="Wireshark filtros avanzados y estadísticas">filtros</a> quedando la gráfica de esta forma:</p>
<p><img id="image474923" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/tcp_analysis_01.png" alt="Wireshark IO Graphs" align="middle" /></p>
<p>Como veréis hemos aplicado los siguientes filtros:</p>
<ul>
<li><strong>tcp.analysis.lost_segment</strong> Perdida de paquetes o segmentos</li>
<li><strong>tcp.analysis.retransmission</strong> Mecanismo de rentransmision</li>
<li><strong>tcp.analysis.fast.retransmission</strong> Mecanismo de rentransmision rápida</li>
<li><strong>tcp.analysis.duplicate_ack</strong> Análisis de ACKs duplicados</li>
</ul>
<p>Y como ya hemos vistos en el artículo de <a href="http://seguridadyredes.nireblog.com/post/2009/02/19/tshark-detectando-problemas-en-la-red" target="_blank" title="Detectar problemas en ra red wireshark">detección de problemas en la red</a> comprobamos que, explicado de forma básica:</p>
<p>Si se reciben <strong>tres o más</strong> <strong><font color="#ff33ff">ACKs duplicados</font></strong>, se asume la pérdida de un segmento o paquete <font color="#cc0000"><strong>lost_segment </strong></font>esto desencadenala retransmisión del dicho segmento perdido <strong><font color="#00cc00">fast.retransmission.</font></strong></p>
<p>Vamos ahora a centrarnos en la misma gráfica pero <strong>desactivando Graph 4:</strong></p>
<p><img id="image474927" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/tcp_analysis_02.png" alt="Wireshark IO Graphs" align="middle" /></p>
<p>Vemos entonces, la zona reseñada en rojo, que algunos segmentos llegados <strong><font color="#0000cc">fuera de orden</font></strong> e incluso <strong><font color="#990000">perdidos</font></strong> reseñados en azul en la primera gráfica, generaron también (estaba oculto) <font color="#ff00ff"><strong>ACKs duplicados</strong></font> . Sin embargo observamos que <strong>no hubo Retransmision o Retransmision rápida</strong>. Esto es debido a que, se ve cláramente en la gráfica, tan solo se produjo <strong>1 o 2 </strong><font color="#ff00ff"><strong>ACKs duplicados</strong></font>.<u> </u><strong>Lo vemos de forma muy clara en la zona reseñada con el ciculo rojo.</strong> También vemos que <strong>si</strong> se generó una <strong><font color="#00cc00">retransmision</font></strong> en uno de ellos que si tiene<font color="#ff66ff"><strong> 3 ACKs Duplicados</strong></font>.</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/02/20/wireshark-tshark-usando-io-graph-para-relacionar-acks-duplicados-lost-segment-y-retransmisiones#comments">Comments</a></p>]]></description>
	<pubDate>Fri, 20 Feb 2009 12:01:44 +0100</pubDate>	</item>
	<item>
	<title>Wireshark / Tshark. Error TCP Bad Checksum</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/02/19/wireshark-tshark-error-tcp-bad-checksum</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/02/19/wireshark-tshark-error-tcp-bad-checksum</guid>
		<description><![CDATA[<p>Ocurre, en ocasiones, que cuando analizamos los paquetes capturados en una sesión <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" title="Wireshark - Tshark">Wireshark / Tshark</a>, nos encontramos una serie de errores que por su número y/o descripción parece que tenemos un problema grave en un <strong>host</strong> o en la <strong>red</strong>.</p>
<p><img id="image474691" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/tcp_bad_chk_0.png" alt="Wireshark Tshark. Error TCP Bad Checksum" align="middle" /></p>
<p>Vamos a estudiar porqué ocurre esto, si es tan grave como parece y como solucionarlo.
</p>
<!--more-->
</p>
<p>Una vez detectado el Error vamos a analizar unos de los paquetes con TCP Bad Checksum:</p>
<p><img id="image474692" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/tcp_bad_chk_3.png" alt="TCP Bad Checksum en Wireshark Tshark" align="middle" /></p>
<p>Tenemos una pista. <strong>Wireshark</strong> interpereta que puede tratarse de <strong>TCP checksum offload</strong>. ¿ Pero que es esto exactamente ?.</p>
<h3><strong>TCP Checksum offload.</strong></h3>
<p>En la gran mayoría de implementaciones de la pila de protocolos el checksum de los <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="Segmento TCP">segmentos TCP</a> o <a href="http://seguridadyredes.nireblog.com/post/2008/02/06/analisis-capturas-trafico-de-red-interpretacion-datagrama-udp-iii" target="_blank" title="Datagramas UDP">datagramas UDP</a> salientes no los realiza la CPU. Esta funciónestá encomendada a la tarjeta de red. Esto es así para reducir la carga de la CPU y que de esta forma aumente el rendimiento de host.</p>
<p>Pero hay un problema y es que <strong>Wireshark</strong> <u>no puede comprobar el checksum de los paquetes salientes</u>. Literalmente no le da tiempo a comprobar este valor. Cuando se coloca el valor del campo el paquete correspondiente ya no se encuentra, así que devuelve un error por incorrecto.</p>
<h3><strong>Como solucionarlo. </strong></h3>
<p>Existen dos métodos. Uno es <strong>desactivar esta función de la tarjeta de red</strong>, pero provocará un rendimiento bajo. El segundo método y el más correcto es <strong>configurar wireshark para que no compruebe este campo</strong>.  Esto lo haremos de la siguiente forma:</p>
<p><u><strong>Edit</strong></u> >  <strong><u>Preferences</u></strong> > Desplegamos la lista de protocolos y elegimos <strong>TCP</strong>:</p>
<p><img id="image474695" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/tcp_bad_chk_4.png" alt="Desactivar checksum offload wireshark" align="middle" /></p>
<p>En las tarjetas de red y en el caso de las <strong>Broadcom NetXtrem Ggigabit </strong>el parámetro "Checksum Offload" (Descarga de suma de comprobación) se desactiva en <strong>las propiedades avanzadas</strong> de la <strong>NIC</strong> o tarjeta de red.</p>
<p>Entre los prosible valores de la propiedad <strong>Checksum Offload </strong>de la Tarjeta tenemos:</p>
<ul>
<li><strong>Rx TCP/IP Checksum</strong> (Suma de comprobación de TCP/IP Rx): activa la recepción de la descarga de suma de comprobación de TCP, IP y UDP</li>
<li><strong>Tx TCP/IP Checksum</strong> (Suma de comprobación de TCP/IP Tx): (valor predeterminado) activa la transmisión de la descarga de suma de comprobación de TCP, IP y UDP</li>
<li><strong>Tx/Rx TCP/IP Checksum</strong> (Suma de comprobación de TCP/IP Tx/Rx): activa la transmisión y recepción de la descarga de suma de comprobación de TCP, IP y UDP </li>
<li><strong><u>None (ninguno)</u></strong> - desactiva la descarga de la suma de comprobación y es la que elegiremos.</li>
</ul>
<p> Aunque, como ya he comentado más arriba, no es la mejor opción por la disminución de rendimiento.
</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/02/19/wireshark-tshark-error-tcp-bad-checksum#comments">Comments</a></p>]]></description>
	<pubDate>Thu, 19 Feb 2009 18:14:23 +0100</pubDate>	</item>
	<item>
	<title>Tshark Detectando problemas en la red.</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/02/19/tshark-detectando-problemas-en-la-red</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/02/19/tshark-detectando-problemas-en-la-red</guid>
		<description><![CDATA[<p>Uno de los usos más importantes que podemnos aplicar a <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" title="Wireshark Tshark"><strong>Tshark / Wireshark</strong></a> es el análisis de nuestras conexiones y la detección de posibles problemas en la <strong>transmisión de paquetes</strong>. <strong>La pérdida de paquetes y/o conexión</strong> es uno de estos problemas. Vamos a estudiar en esta ocasión como detectar está pérdida de paquetes.</p>
<p><img id="image474576" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/dp_ack02.png" alt="Tshark. ACKs duplicados" align="middle" /></p>
<p>
<!--more-->
</p>
<p>Veamos parte de la una captura cualquiera:</p>
<p><img id="image314606" class="imgcentro" src="http://seguridadyredes.nireblog.com/blogs1/seguridadyredes/files/tshark_p_0.png" alt="tshark" align="middle" /></p>
<p>Podemos observar que  de momento no hay problema alguno. La transmisión de paquetes entra dentro de lo normal.</p>
<p>Sin embargo, en un momento de la captura, nos encontramos ya con algún problema:</p>
<p><img id="image314608" class="imgcentro" src="http://seguridadyredes.nireblog.com/blogs1/seguridadyredes/files/tshark_p_1.png" alt="Tshark" align="middle" /></p>
<p>Vemos notaciones como <strong>TCP Previous segment lost</strong>, <strong>TCP Dup ACK</strong> y <strong>TCP Retransmission</strong>.</p>
<p>Vamos a analizar la captura.</p>
<p><strong>TCP Previous segmento lost</strong> (frame 188) nos indica que un segmento TCP anterior ha fallado.<strong> Un TCP Dup ACK</strong> (frame 189) puede deberse a un desorden de paquetes que hace que el receptor provoque un ACK duplicado ante un segmento que no sigue la secuencia normal. Vemos la duplicidad de secuencias (Seq=2313). Puede ser también debido a la perdida de algún segmento de datos. Al recibir segmentos no ordenados, se genera ACKs duplicados, reenvía nuevamete el mismo ACK (acuse de recibo), es decir nuevos requerimientos para recibir el segmento de forma correcta. ( Vemos el ACK=4126 repetido).</p>
<p>El problema también puede deberse a incremento de tiempo en la trasmisión del paquete, retraso del paquete, con lo que se espera nuevos <strong>ACKs duplicados</strong>.</p>
<p>Normlamente la pérdida de orden secuencia es notificado por <strong>Tshark</strong> con la notación <strong>TCP Out-Of-Order segment.</strong></p>
<p>Por regla general:</p>
<ul>
<li>Solo se esperan hasta 3 ACKs duplicados.</li>
<li>Uno o dos ACKs duplicados indica una reordenación de los segmentos.</li>
<li>Tres o más ACKs duplicados indica que se perdió el paquete.</li>
</ul>
<p><strong>TCP Retransmission </strong>ocurre, explicado de forma muy básica, cuando el cliente no obtiene respuesta a un requerimiento y vuelve a reintentarlo.</p>
<p>En resúmen podemos decir que cuando ocurre un <strong>TCP Previous segment lost </strong>se indica que durante el curso de transferencia de datos, un paquete se ha perdido o tarda en ser transmitido. En respuesta, el cliente envía un paquetel <strong>TCP Dup ACK</strong> al servidor, solicitando que el paquete perdido sea enviado nuevamente. El cliente seguirán enviando ACKs duplicados hasta que sea atendida la petición.</p>
<p><strong>ACKs Duplicados.</strong></p>
<p>Cuando se pierde algún segmento de datos tanto por errores del canal o por problemas de congestión TCP recibe segmentos fuera de orden y en consecuencia genera ACK duplicados. Puede ser consecuencias de picos de retardo o desorden de paquetes. Podemos decir entonces que los ACKs duplicados son síntomas también de un problema en nuestra red.</p>
<p>Cuando se reciban <strong>3 ACKs</strong> duplicados es entonces cuando aparece el mecanismo de <strong>Fast Retransmit</strong> o Retransmision rápida que vemos en las capturas que consiste en la retransmisión de segmento perdido.</p>
<p><font size="2">Abajo, uso de Expert Info para visualizar los eventos de ACK Duplicados: </font></p>
<p><img id="image474575" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/dp_ack01.png" alt="Expert Info. Dup ACK" align="middle" /></p>
<p>ACKs Duplicados en Tshark:</p>
<p><img id="image474576" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/dp_ack02.png" alt="Tshark. ACKs duplicados" align="middle" /></p>
<p>Hasta aquí todo explicado de forma muy básica. En próximos capítulos iremos profundizando en estos conceptos y estudiaremos los mecanismo de TCP para evitar la congestión, etc.</p>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/02/19/tshark-detectando-problemas-en-la-red#comments">Comments</a></p>]]></description>
	<pubDate>Thu, 19 Feb 2009 10:02:03 +0100</pubDate>	</item>
	<item>
	<title>¿Podrá soportar España 4.000.000 de bajas de clientes la banda ancha?</title>
	<link>http://seguridadyredes.nireblog.com/post/2009/02/11/podra-soportar-espaaa-4000000-de-bajas-de-clientes-la-banda-ancha</link>
	<guid>http://seguridadyredes.nireblog.com/post/2009/02/11/podra-soportar-espaaa-4000000-de-bajas-de-clientes-la-banda-ancha</guid>
		<description><![CDATA[<p><strong>Cerca de cuatro millones de ciudadanos no pueden acceder a la banda ancha en España en función de su sitio de residencia</strong>; a este indicador negativo para el desarrollo de la Sociedad de la Información en España, se le podrían sumar bajas masivas de clientes del Adsl más lento y caro de Europa.
</p>
<!--more-->
</p>
<p>Las entidades representativas de la comunidad internauta, los profesionales y los consumidores informáticos en España estiman en cuatro millones la cifra de clientes de banda ancha, <span class="caps">ADSL</span> y cable, que podrían darse de baja si finalmente se confirma el acuerdo que <strong><a href="http://www.theinquirer.es/2009/01/21/sgae-y-redtel-ultiman-un-acuerdo-contra-el-p2p.html"><span class="caps">REDTEL</span> está negociando con las sociedades de gestión de los derechos de autor</a> abanderadas por la <span class="caps">SGAE</span>, para que en España se den tres avisos antes de desconectar o ralentizar la conexión a Internet por usar redes P2P</strong>.</p>
<p>A la disminución de ingresos se sumarían las <strong>posibles indemnizaciones que podrían derivarse por incumplimiento de contrato de las operadoras y las sanciones aplicables</strong> en base a los artículos 8 <em>(”Restricciones a la prestación de servicios y procedimiento de cooperación intracomunitario”)</em> y 11 <em>(”Deber de colaboración de los prestadores de servicios de intermediación”)</em> de la Ley 34/2002, de 11 de julio, de Servicios de la Sociedad de la Información y de Comercio Electrónico, modificado por la Ley 56/2007, de 28 de diciembre, de Medidas de Impulso de la Sociedad de la Información.</p>
<p>Mientras las operadoras de telecomunicaciones tratan de sortear la crisis, <strong>las sociedades de gestión de los derechos de autor, intentan conseguir prebendas para las empresas productoras de contenidos</strong> tratando de convencer a todo el mundo de que el intercambio de archivos entre particulares por Internet es un acto delictivo y que supone fuertes pérdidas al sector de entretenimiento.</p>
<p>Sin embargo tanto <strong>la fiscalía como las sentencias dictadas establecen que el intercambio de archivos con copyright restrictivo por redes P2P no es un delito y no es punible de ninguna forma cuando se trata de archivos públicos o bajo licencias copyleft</strong> <em>(la mayoría de los casos)</em>.</p>
<p>Las propias entidades de gestión de derechos de autor han reconocido en el <em>“<strong><a href="http://www.asimelec.es/media/Proyectos/Informe%20Contenidos%20Digitales/Informe_2008_Industria_Contenidos_Digitales.pdf">Informe de la industria de contenidos en España</a></strong>“</em>, publicado por <strong><span class="caps">ASIMELEC</span></strong>, que no hay una bajada de ingresos en el sector y que solo la música tiene un retroceso en la venta a través del canal tradicional <em>(aunque no se informa del aumento de ingresos por, entre otros, actuaciones en directo, descargas y publicidad)</em>.</p>
<p>Lo cierto es que <strong>las negociaciones que se están llevando a cabo bajo el auspicio del Ministerio de Cultura</strong>, pueden suponer que algunas de las empresas más solventes y con mayor capacidad tecnológica de España empiecen a perder clientes a marchas forzadas. Lo que repercutirá en su cuenta de resultados y en su capacidad de mantener el empleo.</p>
<p>Pero lo más grave es que <strong>un acuerdo de esta naturaleza atenta contra la libre competencia</strong>, frena en seco el acceso a la Sociedad de la Información en España <strong>menoscabando los derechos civiles de los ciudadanos</strong> y alejando aún más el derecho constitucional de acceso a la cultura y al conocimiento.</p>
<blockquote><p><font color="#595986">Firmado: SeguridadyRedes <em>(Alfon)</em> y</font> <strong><a href="http://www.google.es/search?q=%C2%BFPodr%C3%A1+soportar+Espa%C3%B1a+4.000.000+de+bajas+de+clientes+la+banda+ancha?">6.030 firmas más</a></strong> <font color="#595986"><em>(por el momento)</em>. Pon la tuya publicando el texto en tu blog.</font></p>
</blockquote>
<p><a href="http://seguridadyredes.nireblog.com/post/2009/02/11/podra-soportar-espaaa-4000000-de-bajas-de-clientes-la-banda-ancha#comments">Comments</a></p>]]></description>
	<pubDate>Wed, 11 Feb 2009 12:00:47 +0100</pubDate>	</item>
	<item>
	<title>Gráficas con Wireshark (II Parte). Tcptrace.</title>
	<link>http://seguridadyredes.nireblog.com/post/2008/12/01/graficas-con-wireshark-ii-parte-tcptrace</link>
	<guid>http://seguridadyredes.nireblog.com/post/2008/12/01/graficas-con-wireshark-ii-parte-tcptrace</guid>
		<description><![CDATA[<p>Después del primer artículo referido a las heramientas gráficas de <a href="http://seguridadyredes.nireblog.com/cat/wireshark-tshark" title="Wireshark interpretar los datos"><strong>Wireshark</strong></a>: <a href="http://seguridadyredes.nireblog.com/post/2008/11/25/analisis-de-red-con-wireshark-interpretando-las-graficas-i-parte" title="gráficas análisis wireshark">Análisis de red con Wireshark. Interpretando Las graficas. (I Parte)</a>, seguimos estudiando, de momento de forma básica, otras de estas herramintas herramientas, en este caso, <strong>tcptrace</strong>.</p>
<p><img id="image442852" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/0_tcptrace01.png" alt="Graficas wireshark Tcptrace" align="middle" /></p>
<p>
<!--more-->
</p>
<p><font size="4"><strong>Gráficas tcptrace.  </strong></font></p>
<p>Dentro del menu <strong><u>Statistics > TCP Stream Graphs</u></strong>, nos encontramos con un tipo de gráficas basado en el número de secuencia respecto al tiempo. Este tipo de gráfica es el <strong>Time-Secuence Graph (tcptrace).</strong></p>
<p>Una vez seleccionado un segmento cualquiera de la conexión TCP que nos interese en el campo de edición de las capturas,podemos activart ya en el menú más arriba mencionado nuestra gráfica tcptrace.</p>
<p>En una <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="Conexión TCP">conexión TCP entre dos hosts</a>, existen dos sentidos de la comunicación: <strong>Host A</strong> hacia  <strong>Host B</strong> y <strong>Host B</strong> hacia <strong>Host A</strong>, por eso, hay que seleccionar antes uno de los segmento para que la gráfica nos muestre uno de ellos.</p>
<p>Se nos presentarán dos ventanas, una con la grafica y otra  con una serie de opciones para el mejor manejo y tratamiento de la gráfica:</p>
<p><img id="image442857" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/0_tcptrace02.png" alt="Opciones graficas wireshark tcptrace" align="middle" /></p>
<p>Como la  ventana de la gráfica nos presenta esta al completo, disponemos de una serie de controles y opciones.</p>
<p><u>Los ejes presentados en la gráfica son:</u></p>
<ul>
<li><strong>Eje X</strong>: Información de <strong>Tiempo</strong> en segundos.</li>
<li><strong>Eje Y</strong>: Información de <strong>Números de Secuencia</strong>.</li>
</ul>
<p>Volvamos, a las opciones y controles.</p>
<p>Veamos primero la <strong>ventana de opciones </strong>(captura de arriba)<strong>. </strong></p>
<ul>
<li><u><strong>Pestaña Zoom:</strong> </u>Seleccionado<strong> in</strong> u<strong> out</strong>, realizamos el <strong>tipo de zoom</strong> y lo aplicamos con el<strong> botón izquierdo del ratón</strong> en la pantalla de la gráfica. La <strong>información del zoom aplicado</strong> se muestra en Horizontal y Vertical. <strong>En Horizontal y Vertical Step</strong> indicamos el <strong>número de divisiones de los intervalos</strong>  en ambos ejes. Podemos bloquear el zoom tanto en un eje como en el otro en <strong>Zoom Lock</strong>.</li>
<li><u><strong>Pestaña Magnify:</strong></u> Se trata de una ventana de zoom como si de una lupa se tratase. En esta pestaña podemos indicar el tamaño de esta, el zoom aplicado.</li>
<li><u><strong>Origin: </strong></u>Como vamos a mostrar la gráfica dependiendo del origen de los datos, es decir, <strong>desde el principio de la conexión TCP</strong> o <strong>desde el principio de la captura</strong>, y el <strong>origen del número de secuencia</strong>: 0 (absoluto) o número de secuencia inicial.</li>
<li><strong><u>Cross:</u></strong><strong> </strong>Como se nos muestra el puntero del ratón. De la forma típica o  en forma de cruz de ejes (guias).</li>
<li><u><strong>Graph type:</strong></u> Tipo de grafico mostrado, en este caso Time/Secuence o tipo tcptrace. Estudiaremos los demás tipos en otros artículos.</li>
</ul>
<p>Tenemos también una serie de controles con el ratón y teclado para ejecutar sobre la ventana gráfica:</p>
<ul>
<li><u><strong>Seleccionar paquete de la pantalla de edición dese la gráfica.</strong> </u>Nos situamos en uno de los segmentos de la gráfica, pulsamos <strong>Contro+botón izquierdo</strong> ratón. Con esta acción de resaltará el paquete en la pantalla de edidión de la captura. Es muy útil para saber en que parte y paquete de la captura nos encontramos dentro de la gráfica.</li>
<li><strong><u>Zoom.</u></strong> <strong>In</strong> Boton derecho ratón <strong>Out</strong> May+botón derecho ratón.</li>
<li><strong><u>Desplazamiento.</u></strong> Nos desplazaremos por la pantalla con e<strong>l botón derecho pulsado y arrastrando</strong>.</li>
<li><strong>Mostrar guias.</strong> Lo mismo que la opción Cross de la ventana de opciones. Lo realizaremos pulsando la <strong>barra de espacio</strong>.</li>
</ul>
<p>Vamos ahora a mentiendo en la gráfica e ir viendo que significa cada cosa.</p>
<p><img id="image442880" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/0_tcptrace03.png" alt="0_tcptrace03.png" align="middle" /></p>
<p>Tenemos la captura de arriba, nos posicionamos en el paquete <strong>18</strong> y activamos la gráfica. En la ventana de opciones indicamos las que nos interesen. Por ejemplo, activamos Cross, tiempo de origen desde el principio de la captura. Los pasos o intervalos tanto en horizontal como vertical en 1.2, etc. para dejar la gráfica de esta manera:</p>
<p><img id="image442881" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/0_tcptrace04.png" alt="wireshark tcptrace" align="middle" /></p>
<p>Voy a dar unas páutas para ir comprendiendo este tipo de gráficas. Más a delante usaremos escenerarios más complejos y profundizar más.</p>
<p style="background-color: #99ccff">Indico con el circulo rojo el paquete <strong>18</strong>. Casi no se ve, pero es una pequeña traza de color negro que indica que en el segundo <strong>11.81</strong> un paquete (<strong>http</strong>) tiene el flag ACK activado y con un <a href="http://seguridadyredes.nireblog.com/post/2008/01/29/analisis-capturas-trafico-de-red-interpretacion-segmento-tcp-ii-establecimento-conexian-tcp" target="_blank" title="numero de descuencia tcp">número de secuencia</a> 1. En el segundo <strong>12.18</strong> vemos un segmento TCP (línea vertical negra) con número secuencia 1 y una longitud (Len = 365) que corresponde con la longitud que tiene la línea color negro, le sigue una línea horizontal gris claro, se trata de un ACKs recibidos, la línea vertical gris claro sugiere la ventana anunciada por el otro extremo de la conexión. En el paquete <strong>20</strong> recibimos un ACK (hay que hacer bastante zoom o usar Mangnify) y en el <strong>21</strong> volvemos a tener en el segundo  12.327 otro segmento TCP pero ya con un número de secuencia 366 una longitud (Len = 349). Vemos otra pequeña traza (corresponde a http) en el segundo <strong>12.51</strong>. Más adelante vemos otro segmento TCP en el segundo <strong>12.62</strong>, paquete <strong>28</strong> con un número de secuencia 715 u una longitud (Len = 364).</p>
<p>Esta es, a grandes rasgos la manera de leer la grafica.</p>
<p><font size="3"><strong>¿ Qué problemas podemos detectar con tcptrace. ?</strong></font></p>
<p><strong>TCP ACK Retrasmission</strong>. Todos tienen el <strong>mismo número de secuencia</strong>, <strong>mismo ack</strong> pero son trasmitidos en diferentes instantes en el tiempo:</p>
<p><img id="image444090" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/0_tcptrace05.png" alt="wireshark tshark tcp retransmission" align="middle" /></p>
<p>Son retransmisiones del mismo paquete que denotan problemas de conentividad.</p>
<p><strong>ACKs Duplicados:</strong></p>
<p>ACKs duplicados que son también un síntoma de problemas en la red debido a desorden de paquetes, pérdida de datos, etc.</p>
<p><img id="image444093" class="imgcentro" src="http://files.nireblog.com/blogs1/seguridadyredes/files/0_tcptrace06.png" alt="ACK duplicado tshark wireshark" align="middle" /></p>
<p><a href="http://seguridadyredes.nireblog.com/post/2008/12/01/graficas-con-wireshark-ii-parte-tcptrace#comments">Comments</a></p>]]></description>
	<pubDate>Mon, 01 Dec 2008 14:36:47 +0100</pubDate>	</item>
</channel>	
</rss>
 
