Taller de Sistemas de detección de intrusiones SNORT



Comments



Description

Taller de Sistemas de detección de intrusiones SNORT1 - Objetivos ~- Cómo funciona Snort en todas sus facetas, instalación y configuración //(sistemas Windows)//. interpretación y configuración de las alertas. Creación de reglas (//Snort rules//). ~- Creación de reglas desde cero, es decir, capturando paquetes considerados maliciosos en nuestra red, interpretándolos para sacar los datos que nos permitan crear los patrones y reglas snort. //Por ejemplo: detectar un ping desde un Windows 2000 usando un sniffer (Ethereal) y, analizando los paquetes de datos, averiguar qué datos son los que nos permiten saber que se trata de un ping, que proviene de un host con S.O. Windows 2000 y de qué manera implementarlo en un regla para que a partir de ese momento siempre nos detecte el ping.// ~- Prácticas y ejemplos de creación de reglas, etc. 2 - Reglas SNORT 6-11-02 Aquí disponéis la recopilación de las últimas reglas snort actualizadas al 6-11-02, creo recordar. También tienes un archivo *.rules con reglas especiales que no vienen incluidas en Snort por defecto. //Hay que tener cuidado, porque contiene también el fichero de configuración de snort por defecto (snort.conf) y no conviene pisarlo que el personalizado que cada uno tenga.// Uno de los archivos de reglas //(vision18.rules)// contiene reglas para detectar ataques DDoS, troyanos, detectores de Sniffers, etc." ~- Enlace relacionado: Honeynet in spanish// (añadido por maty)// 3 - Breve descripción ~- Un IDS o Sistema de Detección de Intrusiones es una herramienta de seguridad que intenta //detectar o monitorizar los eventos// ocurridos en un determinado sistema informático o red informática en busca de intentos de comprometer la seguridad de dicho sistema. ~- Los IDS buscan //patrones previamente definidos// que impliquen cualquier tipo de actividad sospechosa o maliciosa sobre nuestra red o host. ~- Los IDS aportan a nuestra seguridad una capacidad de prevención y de alerta anticipada ante cualquier actividad sospechosa. //No están diseñados para detener un ataque, aunque sí pueden generar ciertos tipos de respuesta ante éstos.// ~- Los IDS: //aumentan la seguridad de nuestro sistema, vigilan el tráfico de nuestra red, examinan los paquetes analizándolos en busca de datos sospechosos y detectan las primeras fases de cualquier ataque como pueden ser el análisis de nuestra red, barrido de puertos, etc.// 4 - Tipos de IDS Según sus características 1. HIDS (Host IDS) Protege contra un único Servidor, PC o host. Monitorizan gran cantidad de eventos, analizando actividades con una gran precisión, determinando de esta manera qué procesos y usuarios se involucran en una determinada acción. Recaban información del sistema como ficheros, logs, recursos, etc, para su posterior análisis en busca de posibles incidencias. Todo ello en modo local, dentro del propio sistema. Fueron los primeros IDS en desarrollar por la industria de la seguridad informática. 2. NIDS (Net IDS) Protege un sistema basado en red. Actúan sobre una red capturando y analizando paquetes de red, es decir, son sniffers del tráfico de red. Luego analizan los paquetes capturados, buscando patrones que supongan algún tipo de ataque. Bien ubicados, pueden analizar grandes redes y su impacto en el tráfico suele ser pequeño. Actúan mediante la utilización de un dispositivo de red configurado en modo promiscuo (analizan ,"ven" todos los paquetes que circulan por un segmento de red aunque estos nos vayan dirigidos a un determinado equipo). Analizan el trafico de red, normalmente, en tiempo real. No sólo trabajan a nivel TCP/IP, también lo pueden hacer a nivel de aplicación. Las capas del TCP/IP y las del modelo OSI, y su correspondencia: *A este tipo de IDS pertenece Snort. 3. DNIDS Este tipo de IDS, más que proteger, monitoriza la actividad entre varias redes. Tiene una visión global. Por el tipo de respuesta o Pasivos Son aquellos IDS que notifican a la autoridad competente o administrador de la red mediante el sistema que sea, alerta, etc. Pero no actúa sobre el ataque o atacante. o Activos Generan algún tipo de respuesta sobre el sistema atacante o fuente de ataque como cerrar la conexión o enviar algún tipo de respuesta predefinida en nuestra configuración. Snort puede funcionar de las dos maneras. 5 - Arquitectura de un IDS Normalmente la arquitectura de un IDS, a grandes rasgos, está formada: ~1) La fuente de recogida de datos. Estas fuentes pueen ser un log, dispositivo de red, o como en el caso de los IDS basados en host, el propio sistema. ~1) Reglas que contienen los datos y patrones para detectar anomalías de seguridad en el sistema. ~1) Filtros que comparan los datos snifados de la red o de logs con los patrones almacenados en las reglas. ~1) Detectores de eventos anormales en el tráfico de red. ~1) Dispositivo generador de informes y alarmas. En algunos casos con la sofisticación suficiente como para enviar alertas via mail, o SMS. Esto es a modo general. Ya veremos que cada IDS implementa la arquitectura de manera diferente. Snort, por ejemplo, tiene una arquitectura dividida en tres subsistemas: ~1) Decodificador de paquetes ~1) Motor de detección ~1) Loggins y alertas Evidentemente, son parte de la arquitectura global de un IDS que hemos comentado líneas más arriba. 6 - Dónde colocar el IDS Una actitud paranoica por nuestra parte nos podría llevar a instalar un IDS en cada host ó en cada tramo de red. Esto último sería un tanto lógico cuando se trata de grandes redes, no es nuestro caso ahora. Lo lógico sería instalar el IDS en un dispositivo por donde pase todo el tráfico de red que nos interese. Dificultades o o Un problema de los IDS es cuando queremos implementarlos en redes commutadas ya que no hay segmento de red por donde pase todo el tráfico. Otro problema para un IDS son las redes con velocidades de tráfico muy altas en las cuales es difícil procesar todos los paquetes. Posición de IDS Algunos administradores de sistemas colocan dos IDS. uno delante y otro detrás del cortafuegos para obtener información exacta de los tipos de ataques que recibe nuestra red ya que si el cortafuegos está bien configurado puede parar o filtras muchos ataques. barridos o . La posibilidad de falsas alarmas es grande. por lo que será considerado como malicioso en un alto porcentaje de los casos . En este caso actúan en paralelo. Es uno de los más usados y dispone de una gran cantidad de filtros o patrones ya predefinidos. Implementa un motor de detección de ataques y barrido de puertos que permite registrar. gratuito y funciona bajo plataformas Windows y UNIX/Linux.Introducción a SNORT Snort es un IDS o Sistema de detección de intrusiones basado en red (NIDS). etc conocidos. así como actualizaciones constantes ante casos de ataques. 7 . el firewall detecta los paquetes y el IDS los analizaría. La colocación detrás del cortafuegos monitorizará todo el tráfico que no sea detectado y parado por el firewall o cortafuegos.snort. intentos aprovechar alguna vulnerabilidad. análisis de protocolos.o o o Si colocamos el IDS antes del cortafuegos capturaremos todo el tráfico de entrada y salida de nuestra red.org) está disponible bajo licencia GPL. es decir. La posibilidad de falsas alarmas muy inferior. que es el propósito de este taller sobre IDS y Snort. alertar y responder ante cualquier anomalía previamente definida como patrones que corresponden a ataques. barridos. En ambientes domésticos. Todo esto en tiempo real. podemos colocar el IDS en la misma máquina que el cortafuegos. Snort (www. . Veremos más adelante su funcionamiento y ejemplos. registro de paquetes (permite guardar en un archivo los logs para su posterior análisis. La colocación de Snort en nuestra red puede realizarse según el tráfico quieren vigilar: paquetes que entran. a la creación personalizada de reglas e interpretación de las alertas. En este taller daremos una importancia mayor a su funcionamiento como NIDS y.. todo nuestro tráfico). Este IDS implementa un lenguaje de creación de reglas flexible. potente y sencillo. y en realidad prácticamente donde queramos. con lo cual cumpliría funciones de firewall. paquetes salientes.. ddos.. Puede funcionar como sniffer (podemos ver en consola y en tiempo real qué ocurre en nuestra red. Formato de la cabecera (header) del TCP . No sólo corta la conexiones ya que puede realizar otras muchas acciones. sobre todo. dada una conexión que emita tráfico malicioso. Una característica muy importante e implementada desde hace pocas versiones es FlexResp. darla de baja..vulnerabilidades que vayan siendo detectadas a través de los distintos boletines de seguridad. finger. Durante su instalación ya nos provee de cientos de filtros o reglas para backdoor. escaneos Nmap. CGI. dentro del firewall. ataques web. un análisis offline) o como un IDS normal (en este caso NIDS). Permite. cortando las conexiones que cumplan ciertas reglas predefinidas. hacerle un DROP mediante el envío de un paquete con el flag RST activa. fuera del firewall. ftp. Número de secuencia (32 bits).o o o o Puerto origen (16 bits). RST. que corresponde a un segmento sin datos (20 bytes). Indica el número de secuencia del primer byte que trasporta el segmento. Al igual que el puerto destino es necesario para identificar la conexión actual. La aplicación ha solicitado una operación push (enviar los datos existentes en la memoria temporal sin esperar a completar el segmento). El campo Puntero de urgencia contiene información válida. el segmento actual lleva un ACK. El campo Número de acuse de recibo contiene información válida. Los bits de código determinan el propósito y contenido del segmento. Número de acuse de recibo (32 bits). Bits de código o indicadores (6 bits). . Puerto de la máquina destino. es decir. Con este campo se indica al otro extremo de la conexión que los bytes anteriores se han recibido correctamente. El valor mínimo de este campo es 5. Longitud de la cabecera medida en múltiplos de 32 bits (4 bytes). Reservado (6 bits). Posición de los datos (4 bits). Interrupción de la conexión actual. Bits reservados para un posible uso futuro. Observemos que un mismo segmento puede transportar los datos de un sentido y las confirmaciones del otro sentido de la comunicación. A continuación se explica el significado de cada uno de estos bits (mostrados de izquierda a derecha) si está a 1: o o o URG. Puerto destino (16 bits). Indica el número de secuencia del siguiente byte que se espera recibir. PSH. Puerto de la máquina origen. ACK. Se utiliza para que la longitud de la cabecera sea múltiplo de 32 bits. o o o o o También se puede usar junto a MySQL o Microsoft SQL. Esto le permite al destino identificar donde terminan los datos urgentes. Se utiliza al crear una conexión para indicar al otro extremo cual va a ser el primer número de secuencia con el que va a comenzar a transmitir (veremos que no tiene porqué ser el cero). Datos. Opciones (variable). FIN... Indica al otro extremo que la aplicación ya no tiene más datos para enviar. Suma de comprobación de errores del segmento actual. ejecutando consultas SQL a una base de datos. Puntero de urgencia (8 bits). Si está presente únicamente se define una opción: el tamaño máximo de segmento que será aceptado. arp. pop3. smtp. rarp . además analiza otros: ethernet. telnet .SYN. Se utiliza para solicitar el cierre de la conexión actual.. decnet. Para su cálculo se utiliza una pseudo-cabecera que también incluye las direcciones IP origen y destino. http. . Número de bytes que el emisor del segmento está dispuesto a aceptar por parte del destino. o Ventana (16 bits).. Información que envía la aplicación. Guarda logs también en formato XML. No se limita sólo al análisis de los protocolos típicos como ftp. lat. Sincronización de los números de secuencia. . Se utiliza cuando se están enviando datos urgentes que tienen preferencia sobre todos los demás e indica el siguiente byte del campo Datos que sigue a los datos urgentes. Relleno. Suma de verificación (24 bits). Nótese que un mismo segmento puede contener tanto datos urgentes (al principio) como normales (después de los urgentes). Aquí hablaremos de IDScenter.. analiza tráfico tipo BackOrifice (independientemente del puerto usado). Snort puede.it/ .Recompone tráfico fragmentado. aunque esta opción no es muy recomendable. En windows la librería sería WinPCAP http://winpcap. para su fácil configuración y gestión. es capaz de "ver" datos del tipo decode o unicode. Es mejor dejar esta tarea a aplicaciones preparadas para ello. traceroute. Puede actuar como antivirus.. usarse mediante una interfaz gráfica.. Snort como sniffer se basa en las librerías de captura de paquetes libcap que provee a snort de la capacidad de sniffer de paquetes. pings. .polito.. 168..0/24 -c snort.4. reglas. FlexResp . es una interface gráfica que nos sirve para configurar todas las características de Snort como las alertas. notificaciones via mail o sonido. plugins. variables. rotación de logs. funcionamiento junto a MySQL o BlackIce Defender. preprocesadores. EJEMPLO de funcionamiento básico en los tres modos: o Usando Snort en modo IDS: Snort -l log -dev -h 192.09 Beta 2.IDSCenter. tests..conf (Revisemos el contenido de la carpeta log) . ahora en su versión 1. ids: . etc.o Usando Snort en modo sniffer: Snort -dev o Usando Snort en modo Packet Logger (registro de paquetes): Snort -dev -l log (Revisemos el contenido de la carpeta log) EXPLICACIÓN DE LAS OPCIONES UTILIZADAS: -l log lo usamos para volcar la información la carpeta log que se supone está ubicada en C:\Snort\log.ids) donde registrará las alarmas que genere así como un archivo de registro de escaneado de puertos (si se da el caso). En esta carpeta se estructurarán una serie de directorios con el nombre de la dirección IP del host que genere el tráfico o intrusión. Contenido de un alert. También creará en esta carpeta un archivo (alert. Normalmente no hará fata indicarle la interface de red. -c snort. Snort puede obtener los datos desde una interface de red -i eth0 o desde un archivo -r nombarchivo.168. Esta opción tiene una variante al cambiarse el archivo snort.4.conf por uno de reglas o rules personalizada. -h 192. .0/24 es el home network (nuestra red). los datos que pasan por la interface de red con información bastante detallada.-dev imprime en pantalla la dirección IP y cabeceras TCP/UDP/ICMP.conf indicamos que SNORT use el fichero de configuración de Snort con la lista de archivos de reglas y otros parámetros. Descarga de IDSCenter En el momento en que se escribe este capítulo.nl/sniffers/snort/idscenter109beta2.it/. Hay que tener en cuneta también que es necesario la instalación de la librería WinPCAP: http://winpcap. Es licencia GNU General Public Licence //(GNU89)//. lo descomprimimos.exe. Seguimos los pasos normales para la instalación de cualquier programa de Windows.packx. 9 .htm http://packetstormsecurity.polito.INSTALACIÓN Y CONFIGURACIÓN DEL IDS CENTER En los siguientes capítulos veremos la instalación de IDSCenter. tras lo cual aparecerá el front-end de configuración de Snort con el panel General > Main configuration: .zip Una vez descargado el archivo. Botón derecho sobre el icono: y pulsamos sobre Setting. Este nuestro icono de IDSCenter.net/packx/html/en/idscenter/index-idscenter.8 . y ejecutamos el setup. lo ejecutamos y aparecerá en la barra de iconos al lado del reloj: un icono negro tachado de rojo.Configuración Una vez instalado el programa. uno de los front-end (//interfaz gráfico//) de Snort más usados en sistemas Windows NT/2000/XP. 10 . la versión es la 109beta2 http://www. exe. En este capítulo lo configuraremos desde IDSCenter con la configuración más básica. intrusiones. Vamos ahora al panel IDS rules > Snort config . Más adelante iremos complicando la configuración y viendo más opciones. en el cual se almacenarán los logs de las alertas.7". o o o Snort executable file: localización del ejecutable Snort. Lo dejaremos de momento en internal logs viewer. etc a nuestro sistema. Disponemos de un botón de navegación para su facil localización. podemos usar una salida tipo XML. aunque como vemos.Aquí comentaremos la configuración de nuestro programa. Log file: ubicación del fichero de texto alert. De momento esto es todo en este panel. Log viewer: configura el tipo de salida para nuestros logs generados por Snort.8" o "Snort 1. Desde este panel configuraremos la versión de Snort instalada en nuestro sistema: "Snort 1.ids. conf y nos aparecerá su contenido en la ventana.conf): Ubicación de snort.Aquí le diremos a IDSCenter la ubicación del fichero de configuración de Snort (snort. .conf Aquí no hace falta configurar nada más.conf). Ahora sólo tendremos que pulsar en el botón "Apply" para cargar snort. Configuration file (Snort. Para comprobar que todo va bien y no hay errores de momento nos vamos al panel General > Overview: . Este paso de General > Overwiew para ver los errores de configuración lo podemos realizar en cualquier momento.En la ventana Configuration errors aparecerán. . Panel Log setting > Logging parameters Aquí entre otras muchas opciones que veremos en próximos capítulos. Si hacemos algún cambio debemos pulsar "Apply". los errores de configuración que hayamos cometido. Más abajo en Snort commandline vemos la línea de comandos que ejecutará Snort. Si pulsamos "Test setting" aparecerá una ventana DOS donde visualizaremos la ejecución de Snort en línea de comando para testear que con nuestra configuración no existe error alguno. podemos seleccionar la interface de red. si se da el caso. Útil para servidores con dos o más interfaces de red. Si pulsamos sobre el icono de Snort > botón derecho del ratón. 11 . Una vez visto esto. El panel de configuración ya podemos cerrarlo.Puesta en marcha de SNORT con IDScenter Una vez realizados estos pasos ya podemos pulsar "Start Snort" que se encuentra arriba a la izquierda del panel que tengamos abierto. podemos cerrar la ventana. tendremos un pequeño menú de opciones: .. Este icono que ahora aparece tachado dejará de estarlo y Snort entrará en funcionamiento como IDS. el sistema no nos devuelve error alguno y se queda el programa activo y en funcionamiento.En este caso vemos que tras la carga de Snort.exe con los parámetros de configuración establecidos en IDSCenter. conteniendo detalles sobre la intrusión. Si pulsamos en el menú anterior "Open logs folder". aparecerá el directorio logs con carpetas correspondientes a las direcciones IP de las máquinas que hayan sido logeadas por Snort.Pulsemos "View alerts" y veremos algo parecido a esto: Este es el contenido del archivo alerts. .ids donde se almacenan los logs de las alertas. Sólo tendremos que marcar en la casilla correspondiente e indicar donde esta el archivo de configuración de BlackICE (recordemos que este cortafuegos software no para la salida al exterior de posibles troyanos. 12 . . pero vamos a adelantar ahora algunas otras configuraciones. En Alerts > Alert Mail podemos configurar Snort para que nos envíe un mensaje vía correo electrónico.wav) para las alarmas y el modo en que funcionarán éstas.Otras opciones de IDSCenter En el panel Alerts > Alert notification Podemos configurar si queremos algún tipo de sonido (. También podemos hacer trabajar conjuntamente Snort con BlackICE para usar las configuraciones de Autoblock que vienen implementadas en BlackICE.Ya tenemos trabajando a Snort como IDS. sólo detecta y para los intentos de entrada. como el "cortafuegos" interno del XP). Tiene un formato ASCII plano. una vez que lo hayamos iniciado. El resto de configuraciones como Network variables. 13 . . debemos parar Snort: "Stop Snort" y aplicar los cambios "Apply". que podemos activar/desactivar según nuestras necesidades.ids es el archivo donde se almacenarán las alertas y registros de paquetes generados por Snort. fácilmente editable por cualquier procesador de textos. También podemos añadir otros set de reglas que hayamos escrito nosotros mismos.ids: Fichero de alerta generado por SNORT El fichero Alert. etc lo veremos en el siguiente capítulo. Preprocesadores.Siempre que queramos modificar alguna configuración desde IDSCenter.Alert. Una vez hecho esto ya podemos otra vez "Start Snort". Panel IDS rules > Rules/Signatures En este panel vemos todas las reglas. ya preconfiguradas. clasificación . podemos configurar desde IDSCenter dos tipos de alertas: 1. prioridad de la alerta. Para mejor comprensión de las alertas generadas por Snort. *En este directorio también se almacenarán otros ficheros. Para configurar estos dos modos: Panel Log setting > Logging parameters . normalmente C:\Snort. El modo de Alerta Completa nos devolverá información sobre: tiempo. mensaje de la alerta. Set alert mode FAST o Alerta Rápida 2. mensaje de la alerta.ids está ubicado en el directorio /log dentro de la carpeta donde se realizó la instalación. IP y puerto de origen y destino. prioridad de la alerta. clasificación. IP y puerto de origen/destino e información completa de las cabeceras de los paquetes registrados. Set alert mode FULL o Alerta Completa El modo Alerta Rápida nos devolverá información sobre: tiempo.Alert. como los relacionados a salidas o registros del preprocesador de scan de puertos o los registros de alertas asociados a la dirección IP que generó la alerta. clasificado como prioridad 2. o Modo Alerta Rápida: ..168. Snort clasifica o describe esta alerta como un intento de pérdida de información.. Veamos dos ejemplos: Se trata de dos simples accesos a un servidor proxy ubicado en el puerto 8080 de la máquina destino IP: 192.3 que realiza la conexión mediante el puerto 1382 en el primer caso y 3159 en el segundo.168. Terminada la operación Aplicamos la regla ("Apply") y "Start Snort".)" y a continuación entre Full y Fast.4.15 por parte del host IP: 192.4.Marcamos en "Set alert mode (desactivate with Snort MySQL. .4.168..168..3:3159 -> 192. {TCP} 192.4.481065 192.421286 [] [1:620:2] SCAN Proxy (8080) attempt [] [Classification: Attempted Information Leak] [Priority: 2] . .09/19-19:06:37.168.3:1382 -> 192.4.4.15:8080 TCP TTL:128 TOS:0x0 ID:39918 IpLen:20 DgmLen:48 DF S* Seq: 0xE87CBBAD Ack: 0x0 Win: 0x4000 TcpLen: 28 .15:8080 o Modo Alerta Completa: [] [1:620:2] SCAN Proxy (8080) attempt [] [Classification: Attempted Information Leak] [Priority: 2] 09/19-14:53:38..168. por lo cual es //imprescindible su repaso// para una mejor comprensión.CREACIÓN DE REGLAS CON SNORT ==== Introducción ==== El lenguaje usado por Snort es flexible y potente. basado en una serie de normas que serán las que nos sirvan de guía para la escritura de las reglas. etc.cabecera ~. números de secuencia.opciones ~. flag.TCP Options (4) => MSS: 1456 NOP NOP SackOK Información de la cabecera del paquete: TCP TTL:128 TOS:0x0 ID:39918 IpLen:20 DgmLen:48 DF S* Seq: 0xE87CBBAD Ack: 0x0 Win: 0x4000 TcpLen: 28 TCP Options (4) => MSS: 1456 NOP NOP SackOK 14 .la descripción de cada regla ~. Dentro de estas normas tenemos: ~. etc. Recomendado el uso tambíén de //software de captura de paquetes// tipo Ethereal o TCPdump/Windump para ver en un escenario real la función de las nociones aprendidas sobre TCP como: .uso de preprocesadores Dentro del lenguaje Snort de rules //(reglas)// //veremos// el //uso intensivo de nociones de TCP/IP//. en concreto de TCP. ~.// ~.el uso de flags ~.ack:0.La sección opciones contiene //los mensajes y la información necesaria para la decisión a tomar por parte de la alerta en forma de opciones.)// Analicemos esta alerta: CABECERA ~. <-..//Acción// ~.(1) Un poco de teoría: ~.el establecimiento de una conexión TCP //(ver explicación en el cápítulo dedicado a Nmap APÉNDICE 1.etc.el flujo de datos ~.//Dirección de la operación:// -> //(puede ser ->. ~. es el valor que pone nmap para TCP ping scan.~.conexiones half-open usadas en escaneos de puertos ~.// Resumiendo lo visto hasta ahora.ack:0.//Protocolo:// tcp ~.//Puerto IP origen:// any //(cualquiera)// ~.28.ack://// Caso particular para valor ACK=0.flags:A.reference://arachnids. reference:arachnids. IPs.28// Referencia un a un Advisory. rev:1. etc. máscaras de red. //las reglas Snort las dividiremos// de la siguiente manera: @@|| CABECERA ~.La cabecera contiene //la acción de la regla en sí.//Acción de la regla:// alert ~.//Mensaje// ~//Opciones de decisión// || @@ EJEMPLO 1 Veamos ahora un ejemplo de regla Snort para alertar de un //escaneo nmap// del //tipo TCP ping//: alert tcp $EXTERNAL_NET any -> $HOME_NET any //(msg:"Escaneo ping con nmap".classtype:attempted-recon. .//Opciones:// flags:A. alerta tipo Bugtrac.//Direccion IP destino:// $HOME_NET //(toda nuestra red)// ~. reference:arachnids. ==== Reglas ==== La reglas Snort las podemos dividir en dos secciones lógicas.//Mensaje:// msg ~. en este caso ACK //(puede tener varios valores y operadores que veremos más adelante)//.1)// ~.//Dirección de la operación// || OPCIONES ~.flags://A// Establece el contenido de los flags o banderas TCP. sid:628. <>)// OPCIONES ~.//Protocolos involucrados// ~.//Direccion IP origen:// $EXTERNAL_NET //(toda la red)// ~.//Puerto IP destino:// any //(cualquiera)// ~. a saber: //cabecera de la regla y opciones//: ~. protocolo. puertos origen y destino y destino del paquete o dirección de la operación.//Direcciones IP// ~//Números de puerto// ~. Si se ejecuta una aplicación de cliente en un equipo con //una implementación de TCP/IP que no establece el bit PUSH en las operaciones de envío.sid://628// Identificación única para esta regla snort según unos tramos determinados. Por tanto. Descifrar la siguiente regla: alert tcp any 110 -> any any (msg:"Virus . el cual tiene tiene diversos problemas de desbordamiento de memoria intermedia. necesita estar segura de que todos los datos pasados a TCP han llegado al destino.// ~. se utiliza la función PUSH //(enviar inmediatamente o empujar los datos)//. Primero las opciones y después el mensaje. Es una de las opciones //más importantes// ya que nos permite la //búsqueda de contenidos dentro del campo datos del paquete IP//. Esto lo podemos verificar claramente observando cualquier traza de http://windump. classtype:misc-activity. las aplicaciones dedicadas a la transmisión de datos es norma común el establecer este bit. alert tcp any 110 -> reference:MCAFEE.168. es decir. El orden. Crear una regla para detectar download de ficheros *.Practicas A.vbs\"".flags: AP. msg: "mountd access".rev://1// Identificación de la revisión o versión de la regla.)// Acceso al //demonio de administración// mountd de UNIX. sid:799. se pueden producir retrasos en la respuesta//.Acknowledgement)// conforme se van va recibiendo las tramas //(Asentimiento de . Estos datos pueden estar en formato hexadecimal. Se puede añadir //'nocase'// para que la búsqueda de los datos no sea sensible a las mayúsculas.~. EJEMPLO 2 En el //manual oficial// del Snort como primer ejemplo tenemos: alert tcp any any -> 192. es indiferente. Por otra parte. en cualquier transmisión de datos siempre se envían mensajes de acuse de recibo //(ACK .) B. 15 .0/24 111 //(content:"|00 01 86 a5|".polito. alert tcp any 110 -> content: "filename=\"TIMOFONICA. están descargando MP3". rev:3. nocase.it/ TCPDump/Windump o http://www. content: ".98674.ethereal.Posible Virus-Worm Timofonica".1.TXT.)// Teoría para esta práctica En TCP cuando una aplicación desea asegurarse de que todos los datos que han pasado al nivel inferior se han transmitido.MP3. ~1) La opción //'content'//. ~. Una posible solución: alert tcp $EXTERNAL_NET any -> $HOME_NET any //(msg: "Cuidado. Dos consideraciones: ~1) El orden de la sección opciones.com/ Ethereal si capturamos alguna trasmisión de información entre host de nuestra red. texto plano o binario.mp3".classtype:attempted-recon Categoría de la alerta según unos niveles predefinidos y prioridades (//veremos más adelante las categorías). que permiten a un //atacante remoto// obtener //privilegios de administrador// en los sistemas vulnerables. pues. Sircam.flags:A. rev:2. content: "I send you this file in order to have your advice".) alert tcp any any -> any 25 (msg:"Virus . rev:2.Posible VBS.rules:alert tcp $EXTERNAL_NET any -> $HOME_NET any (msg:"SCAN nmap fingerprint attempt". rev:2.datos)//. dsize: 0.Worm@mm".Sircam.) alert tcp any any -> any 25 (msg:"Virus . En cualquier transmisión de datos.Sircam. rev:2.itype:8. indicando que se trata de un //paquete normal conteniendo datos//. //una vez establecida la conexión TCP// tenemos: ~.W32.Posible W32.Sircam. content: "Este es el archivo con la informaci=n que me pediste". content: "Te mando este archivo para que me des tu punto de vista". rev:2.) alert tcp any any -> any 25 (msg:"Virus . nocase.vbs\"".) 2.Worm@mm". reference:arachnids.ack:0. nocase.Worm@mm".Worm@mm". nocase.162. content: "I hope you like the file that I sendo you".Sircam.) alert tcp any any -> any 25 (msg:"Virus . nocase. .Posible W32.Posible W32. reference:arachnids.Un ack=x indica que se está //confirmando la recepción correcta de datos// hasta un determinado número de secuencia.36BETA or HPING2 Echo ".Sircam.dsize:0. 16 .Sircam.Sircam.Worm@mm".) scan. content: "This is the file with the information that you ask for".Posible W32.Worm@mm alert tcp any any -> any 25 (msg:"Virus ..Worm@mm". nocase.) alert tcp any any -> any 25 (msg:"Virus .) icmp.VBSWG2.) alert tcp any any -> any 25 (msg:"Virus . content: "Espero me puedas ayudar con el archivo que te mando". rev:2.Posible W32.05. content: "I hope you can help me with this file that I send".Worm@mm 2001-07-20 -.Reglas Snort para casos varios 1. content: "name=\"Homepage. rev:2.rules:alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"ICMP Nmap2.Posible W32.Posible W32.) scan. rev:1.Worm@mm". reference:arachnids. nocase. rev:2.Worm@mm".HTML. nocase.) alert tcp any any -> any 25 (msg:"Virus .W32.rules:alert tcp $EXTERNAL_NET any -> $HOME_NET any (msg:"SCAN nmap TCP".. itype: 8.flags:SFPU.rules:alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"ICMP PING NMAP".Posible W32.) alert tcp any any -> any 25 (msg:"Virus . content: "Espero te guste este archivo que te mando".Un indicador P es el flag P //(push)// presente en la cabecera del paquete TCP.Reglas para escaneos nmap varios zardoz~/src/snortrules>grep -i nmap * icmp.162.Sircam. nocase. Resumiendo. nocase.X@mm Worm".Sircam. ~. reference:arachnids. un echo request es de tipo 8 para obtener un echo reply (tipo 0) 2. Así que la cuestión es cómo averiguar el resto de datos y.Practica comentada. sobre todo. qué traza deja un ping enviado desde windows 2000. Un caso real Crear una regla Snort "desde cero" para la detección de ping desde windows 2000. *La teoría TCP/IP nos dice que: 1.28. Ping echo / echo request: . Para detectar un ping realizado desde fuera de nuestra red. *Formato de petición y respuesta de eco. en el campo Protocolo de la cabecera IP debe ir el dato ICMP y poco más recordaremos. lo primero que debemos saber es qué tipo de datos intervienen en la cabecera del datagrama IP.) zardoz~/src/snortrules> 17 . en la ICMP y los datos. 864325000 seconds Frame Number: 61 Packet Length: 74 bytes Capture Length: 74 bytes Ethernet II . 3. 2. Buscamos en la secuencia de captura o traza. 2002 09:04:11. dejando unos segundos para que "termine" el ping y pulsamos Stop en el panel de captura del host receptor 4. En nuestro host receptor activamos el capturador de paquetes. 74 captured) Arrival Time: Jun 28. la información de envío de ping usando el protocolo ICMP. 1. Podemos usar también TCPDump/Windump. Enviamos el ping al host receptor. Pulsando encima de la información nos saldrá algo paracido a esto en Ethereal: Frame 61 (74 on wire. Utilizaremos para nuestra práctica Ethereal por ser de los más intuitivos y fáciles de usar e interpretar.247973000 Time delta from previous packet: 0.Para todo esto contamos con un tipo de herramientas llamadas sniffers.000060000 seconds Time relative to first packet: 1. Segundos antes de enviar un ping desde un host emisor pulsamos en Ethereal (o el soft que hayamos elegido para la captura de trazas): Capture > Start. ...0....0 = ECN-CE: 0 Total Length: 60 Identification: 0x6aaa Flags: 0x00 .Destination: 00:04:76:9a:66:a6 (INFOGRAFIA5) Source: 00:01:02:9f:7b:0d (INFOGRAFIA3) Type: IP (0x0800) Internet Protocol. Dst Addr: INFOGRAFIA5 (192. Ya sabemos la firma o huella que deja un ping en Windows 2000.4. = Differentiated Services Codepoint: Default (0x00) ...0. ECN: 0x00) 0000 00.0.5) Version: 4 Header length: 20 bytes Differentiated Services Field: 0x00 (DSCP 0x00: Default.. = ECN-Capable Transport (ECT): 0 .3) Destination: INFOGRAFIA5 (192.168. .4. Ya sólo nos queda crear una regla donde la opcion content tenga los datos "abcdefghijklmnopqrstuvwabcdefghi" .4. = More fragments: Not set Fragment offset: 0 Time to live: 128 Protocol: ICMP (0x01) Header checksum: 0x46be (correct) Source: INFOGRAFIA3 (192..168.3).4.5) Internet Control Message Protocol Type: 0 (Echo (ping) reply) Code: 0 Checksum: 0x4e5c (correct) Identifier: 0x0200 Sequence number: 05:00 Data (32 bytes) 0000 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 abcdefghijklmnop 0010 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 qrstuvwabcdefghi Las dos últimas líneas son los datos (32 bytes) que nos servirán como firma o huella para nuestra regla snort. Src Addr: INFOGRAFIA3 (192.168.. .. = Don't fragment: Not set .168. o depth: extensión del tamaño de datos que se ha de inspeccionar. content: "abcdefghijklmnopqrstuvwabcdefghi". De esta práctica podemos desprender que para la creación de la mayoría de las reglas Snort el procedimiento es estudiar las trazas dejadas por cortafuegos y NIDS que supongan algún tipo de ataque o intrusión al sistema que queremos proteger.) Donde aparecen nuevos indicadores: o dsize: tamaño de datos. 18 .Instalación de las reglas creadas Las reglas Snort de ubican en ficheros .La regla nos quedaría entonces: alert ICMP $EXTERNAL any -> $INTERNAL any (msg: "ICMP ping en Windows 2000. Basándonos en el estudio de estas trazas. Aquí vemos parte del contenido de uno de estos ficheros: . dsize: 32. hallaremos la firma o huella del ataque que nos servirá en la creación de la regla de detección. itype: 8.".rules (snort rules). depth: 32. comprobación del tamaño del contenido del paquete. o itype: tipo de icmp. en este caso para un ping es 8. classtype:misc activity.Possible pif Worm". e-mail # snort-sigs@lists. # All rights reserved.Possible MyRomeo Worm".) alert tcp any 110 -> any any (msg:"Virus .rules.chm". classtype:misc-activity.Possible MyRomeo Worm".sourceforge. rev:3. classtype:misc-activity. sid:723. rev:3. content: "NAVIDAD. Martin Roesch.SnowWhite Trojan Incoming".Possible MyRomeo Worm".) alert tcp any 110 -> any any (msg:"Virus . sid:724.# (C) Copyright 2001.) alert tcp any 110 -> any any (msg:"Virus .Possible NAVIDAD Worm".) alert tcp any 110 -> any any (msg:"Virus . nocase. rev:3. content: ".) . et al. classtype:misc-activity. content:"Suddlently". sid:721. sid:720. content: "myromeo.net # alert tcp any 110 -> any any (msg:"Virus . # # # If you would like to MAINTAIN these rules. classtype:misc-activity. nocase.2002. rev:3. nocase. nocase. content: "ble bla".16 2002/08/18 20:28:43 cazz Exp $ # # VIRUS RULES # # # NOTE: These rules are NOT being actively maintained.pif".) alert tcp any 110 -> any any (msg:"Virus .exe". rev:3. nocase.v 1. sid:722.EXE". classtype:misc-activity. rev:3. content: "myjuliet. sid:725. Brian Caswell. # $Id: virus. classtype:misc-activity. Hey you !".Possible MyRomeo Worm". sid:727. una vez hecho todo el proceso lo volveremos a iniciar con los cambios aplicados.. content: "Sorry.. content: "my picture from shake-beer". . como ya comentamos en el TEMA 8. la añadimos al set con "Add" y aplicamos con "Apply".rules se almacenan en el directorio raíz de Snort (por defecto).alert tcp any 110 -> any any (msg:"Virus . Estos ficheros . Instalación de las reglas desde IDSCenter Panel de IDSCenter > IDS rules > Rules/Signatures Con el navegador del panel buscamos nuestro archivo con las reglas o regla creada (. rev:3. con Snort parado Stop Snort. el resto -con la marca # . classtype:misc-activity. sid:726. rev:3.) alert tcp any 110 -> any any (msg:"Virus .rules).) alert tcp any 110 -> any any (msg:"Virus .Possible MyRomeo Worm". classtype:misc-activity.) Crearemos un fichero como este personalizado para almacenar nuestras reglas creadas (lo importante de este fichero de texto plano son las reglas. sid:728. content: "I Love You".Possible MyRomeo Worm".es sólo a título informativo). Esta operación la realizaremos. rev:3. 0.19 .net/~mike)// 1.2. Ahora nos adentraremos en el uso de Snort de esta forma. www. mientras no se indique lo contrario.reid@codecraftconsultants. Aprenderemos también a configurar: ~. console.Reglas ~. serán válidos para win32 y Linux / UNIX. //(Win32 only)// -f Turn off fflush() calls after binary log writes -F <bpf> Read BPF filters from file <bpf> .0 WIN32 Port By Chris Reid //(chris.snort.SNORT EN LINEA DE COMANDOS Ya adelantamos algo sobre usar Snort en línea de comando en el capítulo I de esta serie. www.// Todos los ejemplos.org)// 1.y otras opciones desde el archivo de configuaciones de snort: //snort.0-ODBC-MySQL-FlexRESP-WIN32 //(Build 72)// By Martin Roesch //([email protected])// USAGE: snort [-options] <filter options> snort /SERVICE /INSTALL [-options] <filter options> snort /SERVICE /UNINSTALL snort /SERVICE /SHOW Options: -A Set alert mode: fast.7-WIN32 Port By Michael Davis //([email protected] ~. full. C:\Snort20\bin>snort -*> Snort! <*Version 2.8 .com. or none //(alert file alerts only)// -b Log packets in tcpdump format //(much faster!)// -c <rules> Use Rules File <rules> -C Print out payloads with character data only //(no hex)// -d Dump the Application Layer -e Display the second layer header info -E Log alert messages to NT Eventlog. //abandonando por completo IDSCenter y cualquier GUI intermedia//.datanerds. noudp.none)// -l <ld> Log to directory <ld> -L <file> Log to this tcpdump file -n <cnt> Exit after receiving <cnt> packets -N Turn off logging (alerts still work) -o Change the rule testing order to Pass|Alert|Log -O Obfuscate the logged IP addresses -p Disable promiscuous mode sniffing -P <snap> Set explicit snaplen of packet //(default: 1514)// -q Quiet.-h <hn> Home network = <hn> -i <if> Listen on interface <if> -I Add Interface name to alert output -k <mode> Checksum mode //(all.noip. as seen in TCPDump .11 management and control frames -X Dump the raw packet data starting at the link layer -y Include year in timestamp in the alert and log files -z Set assurance mode. match on established sesions //(for TCP)// -? Show this information <Filter Options> are standard BPF options. //(Win32 only)// -w Dump 802.noicmp.notcp. Don't show banner and status report -r <tf> Read and process tcpdump file <tf> -R <id> Include 'id' in snort_intf<id>.pid file name -s Log alert messages to syslog -S <n=v> Set rules file variable n equal to value v -T Test and report on the current Snort configuration -U Use UTC for timestamps -v Be verbose -V Show version number -W Lists available interfaces. 467265 192.0.60 05/21-11:00:30.2.snort.Uh. www.2.168.2.net/~mike) 1.60 05/21-11:00:28.Snort en modo Sniffer y registro de paquetes El formato genérico para este modo es: snort [-opciones] < filtro > C:\Snort20\bin>snort -v Running in packet dump mode Log directory = log Initializing Network Interface \Device\NPF_{604C8AE3-5FAC-45A5-BFAA-81175A8C32BF} --== Initializing Snort == --Initializing Output Plugins! Decoding Ethernet on interface \Device\NPF_{604C8AE3-5FAC-45A5-BFAA-81175A8C32BF} --== Initialization Complete == ---*> Snort! <*Version [email protected] tell 192.60 05/21-11:00:28.2.8 . you need to tell me to do something. www.168.593943 ARP who-has 192.92 tell 192.2.com.7-WIN32 Port By Michael Davis ([email protected] (Build 72) By Martin Roesch ([email protected]:139 TCP TTL:128 TOS:0x0 ID:16685 IpLen:20 DgmLen:104 DF *AP* Seq: 0x6B703 Ack: 0x2266A0C Win: 0x2238 TcpLen: 20 =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= .168.com) 05/21-11:00:28..168.168.net.168.5:1025 -> 192.594544 ARP who-has 192.93 tell 192.0 WIN32 Port By Chris Reid (chris.org) 1.2. : No such file or directory 20 .2.168.2.168.594419 ARP who-has 192. 168.User -41 67 65 6E 74 3A 20 4D 6F 7A 69 6C 6C 61 2F 34 Agent: Mozilla/4 2E 30 20 28 63 6F 6D 70 61 74 69 62 6C 65 3B 20 .2. 71 3D 30 2E 31 0D 0A 41 63 63 65 70 74 2D 4C 61 q=0. Nos mostrará las cabeceras a nivel de enlace. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= 05/21-11:06:18.5:1025 TCP TTL:128 TOS:0x0 ID:47513 IpLen:20 DgmLen:1500 DF MODO SNIFFER Con esta opción -v iniciamos //snort visualizando en pantalla las cabeceras de los paquetes TCP/IP//. Window 73 20 4E 54 20 35 2E 30 29 20 4F 70 65 72 61 20 s NT 5. image/jpeg.1:139 -> 192.. */*.0....br..4.15:8080 TCP TTL:128 TOS:0x0 ID:33216 IpLen:20 DgmLen:40 DF*A Seq: 0xE3A50016 Ack: 0x8B3C1E4D Win: 0xFAF0 TcpLen: 20 =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= 05/21-11:06:18. C:\Snort20\bin>snort -vd Running in packet dump mode Log directory = log Initializing Network Interface \Device\NPF_{604C8AE3-5FAC-45A5-BFAA-81175A8C32BF} .467731 192. añadiremos -d. además.com. en modo sniffer..0) Opera 37 2E 31 31 20 20 5B 65 6E 5D 0D 0A 48 6F 73 74 7.168.Accept: te 78 74 2F 68 74 6D 6C 2C 20 69 6D 61 67 65 2F 70 xt/html.168.0 (compatible. 69 6D 61 67 65 2F 67 69 66 2C 20 69 6D 61 67 65 image/gif.168.4.15:8080 TCP TTL:128 TOS:0x0 ID:33217 IpLen:20 DgmLen:681 DF *AP* Seq: 0xE3A50016 Ack: 0x8B3C1E4D Win: 0xFAF0 TcpLen: 20 47 45 54 20 68 74 74 70 3A 2F 2F 77 77 77 2E 6F GET http://www. snort nos mostrará //información más detallada//....xxxxx. image/p 6E 67 2C 20 69 6D 61 67 65 2F 6A 70 65 67 2C 20 ng.Accept-La .co 6D 2E 62 72 0D 0A 41 63 63 65 70 74 3A 20 74 65 m. .br/xx 70 65 72 6F 6D 65 6C 65 74 65 2F 64 6F 77 6E 6C xxxxxxx/downl 6F 61 64 73 2F 64 65 66 61 75 6C 74 2E 61 73 70 oads/default.05/21-11:00:30. UDP y ICMP.0. image 2F 78 2D 78 62 69 74 6D 61 70 2C 20 2A 2F 2A 3B /x-xbitmap.2.4.11 [en].962018 192.asp 20 48 54 54 50 2F 31 2E 30 0D 0A 55 73 65 72 2D HTTP/1.Host 3A 20 77 77 77 2E 6F 6D 65 6C 65 74 65 2E 63 6F : www. visualizar los campos de datos que pasan por la interface de red.. 4D 53 49 45 20 36 2E 30 3B 20 57 69 6E 64 6F 77 MSIE 6. Si queremos.943887 192.. Esta opción es el modo verbouse y mostrará las cabeceras IP..5:3890 -> 192.1.x 6D 65 6C 65 74 65 2E 63 6F 6D 2E 62 72 2F 73 75 xxxx. Añadiendo la opción -e.4.168.. TCP.168.5:3890 -> 192. es decir. /log Ventajas de utilizar esta opción -b ~.Ni la opción -v.Si usamos snort para Win32: C:\Snort20\bin>snort -vde -i 1 ~.//Guardará todo en un mismo archivo y recogerá datos de toda nuestra red// ~. //y dependiendo del tráfico en nuestra red//.Tampoco serán necesarias las opciones -de ~.4. Dentro de la carpeta log se creará una estructura de directorios donde se archivarán los logs.// C:\Snort20\bin>snort -l .0/24 Running in packet logging mode Log directory = ./log La opción -l indica a snort que debe //guardar los logs en un directorio determinado//. ~. . Lectura del archivo binario generado El archivo generado por snort en modo binario también podemos leerlo con este usando la opción: -rnombrearchivo./log -h 192. //La salida del logs en el caso de la opción de salida binaria ya no será una estructura de directorios. guardar estos datos a disco para su posterior estudio//.168. Entraríamos entonces en snort como packet logger o registro de paquetes. un sólo archivo.MODO PACKET LOGGER //(registro de paquetes)// Con estas opciones.Para Linux/UNIX. Podemos: -h// indicar la ip de la red a registrar// C:\Snort20\bin>snort -vde -l . veremos gran cantidad de información pasar por nuestra pantalla. el modo que entiende TCPDump o Windump. si no. en este caso //C:\Snort20\bin\log//. C:\Snort20\bin>snort -dev -l . ~./log -b Running in packet logging mode Log directory = ./log -b que el //formato de los logs sea en modo binario// es decir. para estudiar más a fondo con los potentes filtros de estos programas los logs de snort.//N////o hará falta indicarle IP alguna de nuestra red// ( -h ).log Elección de interface de red Otra opción a toma en cuenta es -i para //indicar a snort qué interface de red usar// en el caso de que tengamos dos o más. con lo cual sería interesante //registrar. 4.0/24 -c . Hay varias maneras de configurar la salida de snort. clasificación . socket./log -h 192.Esto es sólo válido para las versión Linux/UNIX: # snort -dev -l .ids//./etc/snort..0/24 -c .Preprocesadores ~. ~. usaremos la opción -W... C:\Snort20\bin>snort -dev -l .421286 [] [1:620:2] SCAN Proxy (8080) attempt [] [Classification: Attempted Information Leak] [Priority: 2] . rápido. un archivo //alert.ids// donde //almacenará las alertas generadas//./log -h 192./etc/snort. 22 .168.4.168.Para averiguar las interfaces de que disponemos en Win32.Para las versión win32 usaremos /SERVICE /INSTALL: C:\Snort20\bin>snort /SERVICE /INSTALL -dev -l .conf. C:\Snort20\bin>snort -W 21 . //a parte de la estructura de directorios//. se guarda toda la configuración de: ~.0/24 -c .4. Snort dispone de siete modos de alertas en la línea de ordenes: //completo.168.Alertas generadas.168.4.168..15:8080 FULL . las alertas. El modo detección de intrusos de red se activa añadiendo a la línea de comandos de snort la opción -c snort. syslog. mensaje de la alerta.# snort -vde -i eth0 ~.conf//. prioridad de la alerta. ./etc/snort./etc/snort.// FAST El modo Alerta Rápida nos devolverá información sobre: //tiempo.. smb (WinPopup).0/24 -c ..Otras configuraciones necesarias para el funcionamiento en modo NIDS Con la opción -D indicará a snort que //corra como un servicio//. Modos de Alerta Snort creará.conf En el archivo //snort.. consola y ninguna.conf -D ~.Las reglas ~. {TCP} 192.3:1382 -> 192.// C:\Snort20\bin>snort -A fast -dev -l . IP y puerto de origen y destino./log -h 192.4. el modo en que se almacenarán estas en el archivo //alert.Snort en modo NIDS En este apartado es donde nos centraremos más. es decir..conf 09/19-19:06:37.168./log -h 192.conf ~./SERVICE /UNINSTALL desinstala snort como servicio.4. # snort -A unsock -c snort./etc/snort. //se debe compilar Snort con el conmutador de habilitar alertas SMB// //(enable -smbalerts)//.4.481065 192. y enviar mensajes de alerta a hosts Windows //(WinPopUp)//.168.conf SMB Permite a Snort realizar llamadas al cliente de SMB //(cliente de Samba./log -h 192.168. en Linux)//.conf CONSOLE En modo console el programa imprime las alarmas en pantalla.4.0/24 -c .// Está opción es para Linux / UNIX.168. Evidentemente este modo es para sistemas Linux / UNIX.15:8080 TCP TTL:128 TOS:0x0 ID:39918 IpLen:20 DgmLen:48 DF S* Seq: 0xE87CBBAD Ack: 0x0 Win: 0x4000 TcpLen: 28 TCP Options (4) => MSS: 1456 NOP NOP SackOK Información de la cabecera del paquete: TCP TTL:128 TOS:0x0 ID:39918 IpLen:20 DgmLen:48 DF S* Seq: 0xE87CBBAD Ack: 0x0 Win: 0x4000 TcpLen: 28 TCP Options (4) => MSS: 1456 NOP NOP SackOK SOCKET Snort manda las alertas a través de un socket//./log -h 192. # snort -A none -c snort.0/24 -c .. C:\Snort20\bin>snort -A console -dev -l . prioridad de la alerta. IP y puerto de origen / destino e información completa de las cabeceras de los paquetes registrados.El modo de Alerta Completa nos devolverá información sobre: //tiempo.4./etc/snort.conf NONE Se desactivan las alarmas. .3:3159 -> 192.4. clasificación.Para activar este modo de alerta.conf [] [1:620:2] SCAN Proxy (8080) attempt [] [Classification: Attempted Information Leak] [Priority: 2] 09/19-14:53:38.168. mensaje de la alerta. para que las escuche otra aplicación..// C:\Snort20\bin>snort -A full -dev -l . Se ha de tener presente: ~. explicando todas las opciones y seguiremos con Snort //en línea de comandos// con la configuración del archivo //snort.Para usar esta característica enviando un WinPopUp a un sistema Windows. Esta opción //se activará// mediante -E y sólo para Win32.conf -s //Este modo dispone de varios parámetros. 23 . procedemos a configurarlo para que escuche por un determinado puerto y así Snort pueda de forma remota enviar los logs a través de la red. Veamos uno de ellos.0/24 -c .// EVENTLOG Funcionando en este modo se registra las alertas para visualizarse a través del visor de sucesos de un sistema windows.conf//. http://www.htm#syslog Una vez instalado el servidor syslog.. C:\Snort20\bin>snort -A console -dev -l . añadiremos a la línea de comandos de snort: -M WORKSTATIONS SYSLOG El programa Snort envía las alarmas al syslog. .4./log -h 192. que estudiaremos más adelante. Syslog es el servicio de registro de actividad presente en la mayoría de sistemas Unix. Para Windows disponemos de varios programas que hacen de servidor syslog.~./etc/snort. -PROXIMAMENTE En //próximos capítulos// avanzaremos en la //creación de reglas snort//.APÉNDICE 1: ENVIANDO ALERTAS A UN SYSLOG REMOTO CON SNORT Y/O IDSCEN En este artículo vamos a ver una funcionalidad de Snort e IDSCenter. Se trata de Kiwi Syslog Daemon. aunque puede ser otro cualquiera. Se trata de usar la opción de envío de alertas a un syslog remoto.168.com/products.kiwisyslog. Configurando Kiwi Syslog Daemon File > Properties > Imputs > UDP Marcamos "Listen for UDP Syslog messages" UDP Port (1-65535): 514 (en este caso 514. para cargar el GUI de configuración de Snort. Pulsamos en "Stop Snort" para realizar los siguientes cambios: . aunque puede ser cualquiera) Configurando IDSCenter Vamos a icono de IDSCenter pulsamos con el ratón en "Setting". IDS Rules > Output plugins Add > Syslog alert plugins Log setting > Logging parameters marcamos "Log to remote syslog (-s)" Facility: LOG_LOCAL7 Server: IP del host donde esté corriendo el servidor syslog Priority: LOG_ALERT Port: 514 o el que hayamos introducido en el servidor syslog marcamos: LOG_CONS LOG_PERROR LOG_NDELAY LOG_PID . las irá enviando al syslog remoto a través del puerto UDP que hayamos designado y veremos las alertas en la consola del syslog y serán grabadas en el directorio /log del servidor. Configuración de syslog sin IDSCenter . Para terminar pulsamos arriba del panel "Apply" para cargar la configuración en el archivo snort. A medida que Snort genere alertas basadas en las reglas activadas.conf y "Start Snort" para activar Snort.Pulsamos "Add" para añadir el plugin configurado. 168.4. tan sólo tendremos que añadir como hemos apuntado. Ejemplo: snort -A console -dev -l . Ahora vamos al fichero de configuración de snort (snort.4.4.conf). En Snort.conf -s 192. la opción (-s).0/24 -c . Nos posicionamos en la sección de configuración de plugins de salida: ################################################################ # Step #3: Configure output plugins # General configuration for output plugins is of the form: # output <name_of_plugin>: <configuration_options> ..168.Si tenemos Snort corriendo sin el GUI IDSCenter podemos también realizar esta operación añadiendo (-s) a nuestra línea de comandos Snort y modificando el archivo de configuración de Snort (snort.9: la IP de la máquina donde correo el servicio syslog 514: puerto UDP por donde escucha el servicio.3:514 -s activa envio a syslog 192.168./log -h 192.conf)./etc/snort. ################################################################ Añadimos una línea de tal forma que nos quede de esta manera: ################################################################ # Step #3: Configure output plugins # General configuration for output plugins is of the form: # output <name_of_plugin>: <configuration_options> output alert_syslog: LOG_LOCAL7 LOG_ALERT LOG_CONS LOG_NDELAY LOG_PERROR LOG_PID ################################################################ También podemos hacer lo siguiente: ################################################################ # Step #3: Configure output plugins # General configuration for output plugins is of the form: . 4.4.168.3 las alertas al puerto UDP 514.# output <name_of_plugin>: <configuration_options> output alert_syslog: host:192.3:514. De esta manera podemos prescindir del añadido -s 192.4. que en snort.conf indicamos también el host y puerto del syslog remoto.3:514 en la línea de comandos de Snort.168.168. LOG_LOCAL7 LOG_ALERT LOG_CONS LOG_NDELAY LOG_PERROR LOG_PID ################################################################ Es decir. Testeando la configuración y envío al syslog Mediante Windump o TCPDump verificamos que Snort está enviando las alertas al syslog: Snort está enviando correctamente al syslog que corre en el host 192. . Vemos en la consola del syslog remoto que efectivamente las alertas aparecen correctamente. . /485.370.42509.0329548/0-98 -908  ./4 -98 9870807...74 5.6:005:0794/089340830..4393:.O3 .-0.0 8020394   4 2074/0.:3802039483/.7 08020394. ..:03.439030 31472.9:..43903/4/0 8020394 .47708543/0.7.8 ...305745O894.O3/048/.39074708 80.:3548-0:841:9:74   4 98/0.430O3 .../4:3.      &#   .7.:03.9.948  -908   4 #0807.-4 .:3  -807.948 /0 :3 8039/4  ...4507.472J324/00890.948 -98 439://0.0831.254803/..O/443/.2E6:3.9..4308  !$ .:80 /0 70.../4708 -98 48-98/0.4974097024/0.-7 430890..25408 6:0.O3.43172.../0391..439030 31472.2E6:3.:03.   4 !:0794/08934 -98 !:0794/0.20390   4 !48./070.9:..254 !:39074 /0 :703.  4 !:07944703 -98 !:0794/0.948 08903908 03 .9:./48/0 6:07/..430O3.....      .5.-4 -98 3/.08.02486:0:3 2824 8020394 5:0/0 97./4/0..0.O3 .84.430O36:048-908.7 0 8020394   #$%  39077:5..85479.O38005. 8089E.20//.:34/008948-98 24897.7.E/.748/..4703 :. 08/0.:80/070. ./.E/.254 2074 /0 ./08934   4 2074/080..-/4.032074/080...032074/080..O/4/090723. 902547.O35:8 03.O3  ..O3 /0 ..4770... 20247.07.385479.42:3.7 ./057207-906:097..  /0 4974 8039/4 /0 .. . .7 48 /. -98 3/./08:0390-906:080 08507. 83 08507.....70.. 70.4308 . $  $3.:0.-0.84-7094/4848/02E803/.3..  $0 :9.07.4306:0.9.84.790/0 /08934   4 $:2..4243472.7 .948:7039086:090303 57010703. 3/..O309.7 :3.059.309 .O3/00774708/08020394.80.5.. ..:9.-0 $089E570803903.../0.:480:9.2-F33..3/4/.:.9486:08:0.438:9.948:703908 O9080 6:0:3282480203945:0/0.948 :. .254.48..O3 /0 48 320748 /0 80. .38297 .074  .8$".439://0.97.8O4.3.7.394/. .8/70. ..7..948 31472..3/480089E303. !.O3 -98 $:2..7.2-F3805:0/0:8. .743.3E88/04857494.42574-.7.497480907309 .75 /0..5.948:703908 .O36:003..489.2039080/0130:3...948 5.48 /..5.75   34 9030 5476:F 807 0 .$"4.7.2954/0-98   4 .071.E.8: .O3 ../08934/0391. 807 0 57207 32074/080.6:0. -98 $0:9.9 7.7.7/43/090723..:.2.../0.7547 5.4308!4703/08934   4 !:39074/0:703.80/0 /..580:/4 .:03.0770/0.:3.:03.6:09.94    48029.070248 6:0    3/..-0.70...N42E24/0 80203946:0807E.7.430O3 5.03.. 4974 097024 .7 $0:9..08 /085:F8/048:703908   4 5..08:0390-90/0.O3    %..7:394.9:.424195 8295 995 545 90309   ../02E8.4489J5.45.    4 '039. 34 9030 2E8 /.. 4974 097024 6:0 .059.43903079.2-F3031472..9:..54 ..3/4.07.348/.948:703908 8940507290.:3.573./4   4 #0034 $0:9.. -98 2074/0-9086:0002847/08020394089E/85:0894..748419$" 00....5.4203.J.-. .7/.430O3... 42483110780-.07/.7.03.417.8.4203/.5.83479/0 ./.7089.0 3/0503/039020390/0 5:0794:8./4 08../0.O334082:70./.8/0..04   $3479....00.3.948/0954/0.39.5.2039.074:90 538   !:0/0.3!! 995.   #0.-707J.5.4/0 97..424..56:0574.85.4954. 9.70.8-707J.7.43085705. 71.//0831107/05..45.42543097E1.7.-0 82047/0..59:7...9:./05..4/04:3.807J.6:0908-.97E1./4 .:36:0089.7:8 .6:0908 33/48... . 35.5 5494 9.. 7..03907   .   $34795:0/0 5. 6:J .-.78020/.390:3.431:7.O3089O3 :8.70248/0$.39071.8:1E..7E1..     .-08  1:3.8.39071.8 .7.424.7.4308. 08:3.8 90898 70.3/4$34790324/4$  $3479 4 /0..431:7.43.40348970824/48   4 &8.$"4.O3/048 3491...43.08.907J89....078O3 09.6:034887.47.794/...7./4708 0#085     ! /01:3..00103/07 749.038:.20394-E8.05..   $03907 .. .4 843/4 5:38 570574.2.8.20394:394..07E1.8/0$3479.8.079.  ...802480.7509.431  #0.4    .43903/4/0.83479 . 7509.2485.30..8 .31472. /70.. 4  #0.44397:8O3 %..7509...7.4 /0 708974 /008..7.:3.3/4$34790324/4!.84 09.424 :3 .7.7E03089..079 /8  /43/0 70897.8J./4/05:07948 880/.7.7E .86:0 03070 ./..   4 &8.7509. 03$34794  3 089... 8070 /0 /70.72.43903/4/0.6:0908   $3479 /0.802480.70.4    ! $ ! $&%$      44:8...0. . 80 0897:...2-F3.43 0 342-70 /0 .3/4$34790324/4831107  $3479 /0.4 &8..9:7.7E3 :3.4 ..O3 ! /0 489 6:0 03070 0 97E1.079 /8  .94748 ...09407 708974/05.  43903/4/0:3.7509.4.O3.46:0808:5430 089E :-. ..07.  /0.O3!.-0..25720035../70.39.8%!. &!. 8.43 31472.89.0 /0 70/ . 39071..! 48 /..948 6:0 5.O3 -.3 547 .390 /09..      ./. .70/   . 89...2486:0 $ #% :80 0 1.84 7:08507843.O3 9030:3.431 3/.7800.4  472.08042030947 3:0897.431547:34/070.390.7E 1...7..20390 34 . 45.074 /0 .431:7.2-.0/070/    .   $34795:0/04-9030748/.8  49748 5.483479 .70 ..7.../.948/08/0:3. 3/.4 7 342-..48 /0 70.43 . /0 .O3 /0 $3479 .7. 39071. 83479 .9.39071...7..7E209748  89.0/070/ 09 4/08/0 :3 ..7. 070248. $%  &# $%# 3488:03908.5J9:48..389.O3/0$03907 :34/04817439 03/ ... .  7E1.39071.4. . 83/48%./480388902. /0$34792E8:8.  .  .&0307.! 8.!:-.03.03.0.. . & . . ..7-00890.5J9:4 .7.  995..078O308. -09.   08./0$03907 302420394036:08008. . . 5. 309. 5... 92. 03. /8.03907. 3/0 /8.03907 92  995. . 098947280.:79 3..5. 8311078. 83479. /8.42572248 00.:309..389.03907 -09.08. 5  &3.7.O3/0..-707J..9.2.0/08.7..7..085.2480809:5 00 $0:24848 5...389.8483472.3!!  995.74.:./03/48   .:9./40.O3/0.6:075747..2-F36:00830.4 4/08.6:09030703. . .5 5494 9.35. 70.0389.70.07E03.84.5./4/0704     :3.43430749..-..07E017439 03//0..431:7./0.:9./405747. 400.943  ...3..4348..248.430 5.434/0$03907 49O3/070..484-700.300307.5.O3 &3.77./4/0744 8903:08974.434     5:8.O3/0$3479.431:7.2.:.24884-70$0993 97.    431:7.. 431  ..3/4.:9./..2.O3...431:7.70248 /08/0$03907..2.954   0242039408940894/40308905. E8.48....0954/08.078O3/0$3479389.425.  4 4..007 .O3/000.30..$3479 4 $3479     4 $347900.431:7.42039./.431:7.8.7.079.. 30890.5J9:44.O3/01..431:7.3:089748480307.4.079 /8 030..70248 /024203940339073.   6:J.:36:0..8 .O3/03:089745747.3:0897488902./48547$3479 4/0...70248.8 397:84308 09.0.5.-0104.30$7:08$3479..:.:9.39070248.424.30    '.033:0897488902.248.O35.03.4308   08/008905..43.0248 54/0248:8.431:7....O32E8-E8.7:3.-0$3479 00 85430248/0:3-49O3/0 3./0...8:1.03/42E845..7E34848/0.O3  4 410:-.70248./.80.47.431:7.7.5.074/09094. .007. 73....94310 $3479 .:-.074/0..O3/083479 .039.431  6:J34.01.431:7.5.O3/01..7.431 &-.8O4903/702486:05:8..9..431:7.431       431:7.   ..7.07E8:.431348.6:J0/70248..7030-49O355 5.783479 .3.2E8 47.$03907.O3/0$3479 83479 ./.43903/403..70.     !..248.5.42574-.7.07.-0334. ...76:094/4.0    .300307.0774708/02420394348. 70248.3.. .7.431:7.845.755   $5:8.0248.431:7.00.42.:.07E:3.07480774708/0..3.:.7..5.82:..7.84 480774708/0.7.70.209078     6:J03970497..3/486:000.O3454/0248 70.3/30..70..403$3479.O36:0 .:34   .30480993435.-..6:072420394   !...43086:0.08/070/ $.943077478.8:.5../0.07E3 880/.43/4842E839071..422.248.:9.3.0. 3.42./4708.J30.039.O334089007747..0/070/  95.431:7.43..703.4209/4 E8.0705.0702480357O248.76:0..7E $3479 8905.431:7. $/43/0.0248.5J9:48 54/0248800.433:0897. 39071.248%08980993..039.807./0..O3/0 $347903J30.3/45.2-4 /0-02485:8.7.90890.84/00307.. 248.032...79$34796:08003.431:7.77-.84./4/0./0$3479 00.20394. 6:07/.-0...7$9.54/02485:8./48089485..:0397.   30890./4803$03907 088902..43..7E031:3.007747.7E/0089.7.43$.4308  .306:0903.   !:089.7...9O3 903/70248:3506:0N4203/045.4 031:3.09.8.7.70./0$ #%..O3.039...43.74$34790397...5.47.-0794   890.2.077.24884-700.02486:097.:0.20394 &3.077.4346:0..O3 089.848.434/0$3479-49O3 /070.54/0248.070.8940894 54/0248.43485.05747.9.34348/0..431:7.0.30/0./05.:34806:0/.424 $      5.4/07...7E209748/0.74 $5:8.03907 &3.3. 07E0/70.8.8   $5:8.8/70...0798.0894     890080../4.0884-70..947448.8 .8547$3479  ./.5.079.82E6:3.7509.390747 5034814/07 ..34848/0.43903/4/0.38/440.43.86:0.248030203.45.7.0798 /8/43/080..4308!/0.2.4.   !:80248'0.070248.47708543/03908.70.70.397:8O3   .4390303/4/09.03. 4308/0$03907 305.03032502039..8.7..1:048390734/0!   30798079.39.7..8 . 70.943     !4/0248.-.3/4..:8...903024897.43:39..479.431:7. $O4903/702486:0 2.3007980793491.9.6:0. 5..70345.2-F354/0248.803.248.7.:3.47/02486:00890.6:034803.479.1:0488419.47704 00..97O3.5./.7.7E3F89.47..7.483903948/00397...431:7.090747/0548-08974.J.4   .7.8   %.8.7..4/0.4240.8 ..431:7.7/43/0089.845..J0:32038.5...72.-..7...8024/4036:0 1:3.431:7.703./0.43.0797.4308/0:94-4..0././..20390$3479.786:070248.8.3954/0843/4 .43.0.431:7..$3479..348  8O4/090.O3/0.4308    97..8497.7. .424$ 5074.7..47708543/039003/.54/0248.7$34795. .248 3...79$3479   !.O3/08/0$03907 :3..431:7.7.00.2-4855 &3.748...$025706:06:07.5.:3.7$3479$945$3479.30$7:08#:08..24824/1. 54/0248497.40894...7.06:04./4 /0-02485.0$9.. 9.8 6:054/0248./.431:7..8.30.8 .870.$3.570..024894/.9:708     308905.7. 4..431:7.5J9:4   079 /8.34 1E.7E3.079.:.070248030 8:0390.-0547.7./749748809/070./4547$ #% 1.079...2./4708 09.2-F354/0248.074079 /8080.8./47 /090948   ..-08 !70574.86:0.0307.6:07574.79434849748 28248   70894/0.N.830.074/0.7803 3:0897.03.4240947./08 %.7.9.08../48547$3479 %030:31472./08..4/43/080..24808..08.203900/9.6:0908 0307.08/.87089748/05.4308.94$5. .9474.079 /8089E:-./4030/70. 7/08/0$03907 /489548/0.079.#E5/.0/0.07E31472.  24/4079..4.2.80307.. !5:0794/04703/08934   24/4/0079.O384-7090254 2038.42509.8     $09.4244870..0748 ..    !.81.81...079.431:7.//0.8.../47/08.348/0...7E3497481.  .2047.079.4.8547$3479 54/0248.7509.389.4/03974/0..079..8...O3  3472..079.42509.//0.079.08.2-F380..O3 5747/../70.  .7.0/0.07E31472.O384-7090254 2038.8.O.. !5:0794/04703.079.20390$3479   30890/70./48.4257038O3/0..O3 5747/.#E5/.03.3/05:079484487089748/0.07924/0$%4079./48.079.   $09....O3 !6:00307O././.07924/0&4079.84.94749.348/0./43/08070.43.84 7089748/0570574.. 8 .42509.7./0.6:090870897.O3./08934031472./48    !.-0.8/0485.30480993435..209078  .708948/4824/48  !.07..431:7.7.. .#E5/..4245747/..909$3479$" .O3 ./    4  4/4079.O35.079...../031472./4 .70.89 %0723..   ..248../0/4882508././47574:-.79$3479   '0.0848..7-0089.2E6:3.:3807.../40305:0794  /0. /08934!   5475.3900 5:079403057207.4393:..81.81.9.24803$09..248/48002548  $097.  .8403080:3/4   $3479.O303970: .430O320/.790/0489!   6:070.9..424:3390394/05F7//..07924/0 /08..4/08.. 55 $9..7.4507...  . 42509.990259(   .881.   ( ($!74   .9430.9430..(!7479(    %!<            4  4/4079.(!7479(   .881.9439902590/31472.9439902590/31472.990259(   ..   ( ($!74   .                %!%%% $  503 203   $ $06 .  3  %.503 . 8070/03472./05.    31472..07.-0..503   %! 59438  $$ ! !$.6:090   %!%%% $  503 203   $ $06 .O3/0.89030248  = .870./08.83472.3/0:J.07./4547$34790810-05490390 -../.8 6:034887..O3  03:..86:0807E3./0...70. = 45.79:7.0$3479/07:08.0:8.75.  %! 59438  $$ ! !$.. = .4308 = :84/0570574..5.08.8./403:3.  3  %.8   03974/0089.-0.7..08./4708  03974/003:.O3/0.   # #$ $ #%  3974/:. . 8 . 70. . . . .070248. . 0. . 4308/0 %!.:8439038.4/034. !. . 7094/0%! 1.:03. 09.08 . 320748/080.43.. 03. 09.:. 5474. . 3/-08:705.25708.84. . 5.2047.:3./40:849.2-JF3/0.4257038O3   #0.7.4203/. . 70/0.8419.59:7..6:0908./05. . 4 %!/:25.9549070. 884-70 %!.424 .834.4308.7470.1:3.3/:255.O3/0...5703//.0703:308.7.03. -0.20394/0:3. = 0089..430O3%!. . .0705.5 !A  ..O3030../4. .2.E5J9:4/0/. . .70.8  ./.8 .   #0./703/4880..854/0248/..8$3479.1 4503:8.8.-07.4304308.80308. = 01:4/0/.4308O.948 = 0:84/01.8 = .3048/05:07948 = 09. . -0.70. 45.07.4308.../0. . .  = .439030.-0..07.. . 7..70.44 !8 2E8..6:0904/70.....O3/0.4507.038J 57494.8/070/ 5:07948 4703/08934/08934/05.O3/0.O3 .. . O345.4308.80.439030. = .. . 079../045.8O3.5.. 942.4308 .O330.7.031472.790/0..31472.75475.7.08./0.08.482038. .   #08:203/44.89. .894.47.. . .8/.870.8$3479./70248. . /0.8:03902.307.  #= . . ..O3. . = . . /48.!7494.7.4483.4:. . = . . 70..4308!. . =  . . 20748/05:0794. . = . . O3.O3/0.4507...70. .  ! $= . . 0.038. . =  . . 4308/0/0.8O3. 5. . 7/0:3.:300254/070.079.7.248.47.$34795..   !   '0. . 08.5..30432. . /0. . 954%! 53. .   .3  *%.0799.5%#*%.3. . .30453.0.. .  7010703.9902590/ 70.7. 288.3/8 .8..438/70.88950.4332.51.. .   #  = .  3.079...0248089. . ...O3/0.70. . 079 = .. . !7494.44. . 5 = .9. . 43!4703.70.. . %#*%. . 94/.70/ .. .  = . . !:0794!4703. . .3. . .6:07.:. . .  = . . .43!/08934.70. .  *%. . 3:0897. 94/.70/ . .  = . . !:0794!/08934. . .3. . :.6:07. . . .  = . . 4507.O3..70..O3/0. .  . . 5:0/0807    . .   ! $  = . . 0.038. . 28 = . . 4308. 5. .  7010703..7.4/09047J..1.8.0.8.  = 1.3/8    &354. . . . 84-.8%! 030890.43903/4/0481..89.3/07.00.84.-0. . /0...748./47086:0.47084507.390 . 5:0/0 90307.0702482E8. . .  = .. . . . %!538.:.47 080.476:0543032..7..79.845.75....7.3  = 7010703.0.55. . 3/8 ..7.. . .:3/..#010703.079.  . 09.954:97.:3.847 . 9902590/ 70..079.43./08 ./0.= .803:3483.88950.9047J..008570/013/48 5747/. . 9047J.390.8./0.8 ..0702482E8.. .  = 8/. . . . 83479803:34897.O33...70..5.089.7./0391..248/090723./48  = 70. . . . 70./0391.70.8O34.078O3/0.   !   30..O3/0.. . .41..3:.2. . 42457207002549030248  .5.3.0799.3    ./0$3479. . . 439039  .. .088 .2824:39/.. . ..084.  . . /02434/0./23897.O3.. . 6:05072903.20394/020247.90309030/.8 /0/08-47/.:.:3.24:39//0& 0.390720/.07848574-02. . .9..390702494.. . 4-90307 . . 048/0./47./23897.57. . :307..034888902.8.-08   48.0 47/03 5:08  083/1070390  = .4308 !72074.4308/085:F802038.80.O3.845.4308  = 47/03/0.438/07..45.O345. . 439039 . . . 8:3.845.4308./0. . 2E825479.3908. . 6:0348507290. .. . .-86:0/.43903/48/03974/0.6:090!.254/./0.948/05. . N./7 . $05:0/0. . 34.80 .. . /0.3  7010703..5.-834.3 28'7:8 !48-0'7:8 472%24143.74   !7. ..8  08.7:3.439039103.8:039070.7.7/434.3  *%.5%#*%.7.0748 !   &3.0799..0799.5..8.8038-0.940. .8895028.20%   %% .5.70.9. 90945.  .3.8 8948/..0799.948 5:0/03089.80 .344-3.3  ./090./048/.//01.9483480.0799.5.9 70.5.17.9.    70.9.-86:0/.0 8/.548-084:.:.82.3  .3..O3  ..6:0.7.7031472.2. . 439039 25 .3/4 !1. 28:/.7./4 089E3/08.8!.. . 089.8...3/4:3.089./48.7./4.35.9486:0.1:3.780:7./08934 80:9..7 30.:.3.780/06:094/4848/.8.  %047J.57E..O3/080.%! ..3829/4 08/0.5.30./4.397.9485.O3!&$.  3%!./06:094/4848/.0 31074780.089.9.5.80:7.. . 7320/. 03.748 /..948 .203904025:.9. . O3/0..039003:306:54.:9.43..   $8000.:3..5. . :3.2502039.O3/0%!.. .77097.J4 805:0/03574/:.-0.84507.!6:034 089.7085:089.4308/003.00-9!&$03.84803. . .394 .4308/0/...8.3828O3/0/.7..:..203904-807./..5./0 995..97.-0..6:0797.948083472.3/4.7.071.4230089.070890 -9 894454/0248.8.  !479.. . 3/:25 5494 9. %!:25. 3/:254995. . 42. 09070. . :.9488025708003.J..-4 .3828O3/0/.248.790 03.:3..97.70/   !47497.5.:80/070.8 .08/0.9070..6:0797.59:7.O303970489/03:0897.828O3/031472.32038. . 340/02039 .  . . 431472080..-03/4.897..2.70..8.3. . 803920394/0 . /.948 . .   #08:203/4 3.948 .:.3828O3/0/.6:0797. . .0089./.-0..430O3%!.:3.. . . 9030248  = &33/.!./47!0801. . 5:8 . . 07.-0./0:3./05...9.6:090%! 3/..3/46:0 8097.5708039003. . 948.4390303/4/.5.6:0903472.. . 6:080089E..3/..  = &3. . 948./0/..05.9.3/4.70.43172.O3.4770. . 2 47222        $7..   .0799.0 % .4390398507420 5:0/.3/434.30520998109./432074/080..3/4 0890.43.94:.8070..3.3.   .85.7.34.0799.3 ...3.2 47222.   #0..4390398507490 :8900890.04:7...31472..439039803/4: 9810347/0794.9439..3.7.3 28'7:8 !48-0 $7.2 47222 .8070.2 47222.0799.   .7...8070.    #0.6:020/089:5:394/0..5..204205.5.3 .2 47222.814734.89.   .5.3.439039%8890 1099031472.9803/44:34.9803/34..3 28'7:8 !48-0'$ '$ 22472.2 47222.5.3.:/.4390394504: 090109.   .   ..46:0902..:3 /090723.3 28'7:8 !48-0 $7.8070.2 47222.3 28'7:8 !48-0 $7.8$34795.3 28'7:8 !48-0 $7.7.5.3 .3 ...3 .3 .439039890080 .2 47222.5..5.0799..3 .2 47222..3 28'7:8 !48-0 $7.0799.0799.4390394504: .7.304832.8070.430.748  .45.3/434.7.0799.7.3.08..439039 3.-834..4.46:0902.8.7/4=.3.439039%02..3..3 28'7:8 !48-0 $7...5.7.848.:03.8070.034./..2 47222.8070.3 .   .89..8070.0799.748   $7.5.36:02050/89034.3 28'7:8 !48-0 $7....5.3 28'7:8 !48-0 $7.3 .8070.0799.   .. 87. .8$!&7010703.3  *%..5%!1..7.513075739 .3/8    8.3/8    .3 7:08.0799.25%#*%..079.3  *%.  .3 28$32.3 28!2.25 7:08..0.8.5%#*%.3  *%.25%#*%.0.7.5%#*%.25 7:08.3 28$32.3/8    8.3  *%.3 28!!!/80  9507010703.3 7:08.079.834797:08705 32.4950/80 7010703.0799.0.9902591..5   .7.5 %47 !. 0.3/8    .7/4=.7.7010703.. 87. 9047J.9483907./.../03:0897../4/08/01:07.7:3..948   .%!.8470.0745./090.! 03.7..2.9.70./0/. &3.7..834797:08  !7.O3/053/08/03/48   !..!48/.9. 70.7:35370..-07086:F 954/0/.030303.42039..70/ 45720746:0/0-02488.-0.7.9.$3479/08/0.07./090. .254!7494.4.948 84-7094/4 6:F97.!/0-070/.4-90307:30.7070894/0/.07.07:..44/0.:353 03.O24.4705 954      030.4 !30.94!54../4/08/03/48   472..O37085:089.47/.:089O308.4706:08908/09545.-0...70248   8J6:0.94/0509.42E870./0.06:0      :30.!348/.7./00.. 4706:089    .0. 2.547807/0482E839:9.94/40894.7.248.43:3954/0077.439.2039.7039075709.702485./.88311078 &9.9.57E.2-F3%!:25.481E.08/0:8.9070. 3:0897.7 !4/0248 :8.79.8.!.7.. 30/0.. 4084196:0 .09039-908 ..7./4.59:7.3/:25       $0:3/48./0./048970.248 $9450305.8 ./47/05.7:353/08/0:3489028475:8.J4/053:8..2.7.80.09  80.:03..2480.59:70$9....31472.O33488.4:85....59:7..44!   !:8.59:7../097..O3/003...48970.9.3/40 57494.05947 /0./0.248039070. ...59:70039-908 907309 .59:7.1742570.24803.31472.3/403.3908/003.05947./7E.79      33:0897448970.43/8 %2070.09  80..6:09072300535:8.6:0908      3.09417895.9.20 4370 .497.0894039070..43/8 7.248053.24800/45..  7.%20:3       %20/09.59:70/  77.45.20:2-07 !.7..05947     :8..3/4:34880:3/485.. /01  .83479   . .//7 #     89//7 #      '07843 0.5.884348/..-.-0%7.8:2 0.:353033/48 ..0..203949809 47017.7E3.2039849809 7.9  $4:7.-.90/$07.-0248.7.0893.8:2 -0 .4:0.9.172.2039411809  %2094.-.48/.943 .9  /039107    $06:03.4770. -908   .0 !7494.03:2-07   .943 #      390730943974088.3:0897./012345  6789:.8J30... 70.948./01 .4:0.:9     .4 53 705  4/0  0./01 .424172.948 -908 6:0348807.8.70.43.6:0/0.0!7494.-.4 %50  .-.943  .4770./07039 -908 1107039.45.080/   $!  01.8/4892.039  /0391..439039903./43/0..4 $7.90/$07.0 #      0893.:9    1107039.0   1- /  #  %50!    3907309!7494. 70./07.385479 %       %49./0123456789:..4!    0.8   43 917.084/0543901.. .7:3.  #  $4:7.5.8O43486:0/. .7./0123456789:..790/0.70./.43903/4/05.9486:080.9.897.:35308   4  /05909038O3/09./0/090.O3/0..42574-.483/.N4/0/.439039.870.3954 /0.8E3/4348030089:/4/0089.8$3479/0:-.897.3486:0/.88902.2.033:0.7E03.8547.6:06:0702485749007   .079!%#./0.8 .4:0. .70.N4/0/.9..7.70248..03943.O3/09.3031.870.5.3..8/0.7   0089.O3   389./01/059   43/0.70.0748 .08  ..2..-.43903/4/0:34 /0089481.0/2039408089:/.3 28!53033/48 /80 950..N4/0.O3/0.845./4708   4  /809..948 ../0.70..6:090   4  950954/0..02485.7.43.2.0748 7:08 834797:08 6:J.8.-.172.1:048$6:08:543..8  .70.7J.6:06:0348 807.25 030890.47J.3 %#.479..870.9.8$34790 574...54/0248/085703/076:05./03850.57E.2.70.6:04397:8O3.O3/0./.. 80 09. 7.793#408.   4579    .  .7:8 7:08 .  79870807.0/  /.3. . 423.8895028.9.970.70 %-03.9.3  .808/.3 28'7:8 !488-0'472.   ..8895028..970.3.5..   .0799.. .0799.8895028.970.80 8/.3..02.   .3 28'7:8 !488-0#4204472. ..3.9.33.30/    14:4:/094%90807:08 0 2.5.970....3  .5. . 83479 88898 84:7...439039$://039 8/ ..808/.0799.9..4390392:09 .39.0799.439039'  34...970...2 34.5.808/.9.3 28'7:8 !488-0#4204472.    .8895028.808/ .5.8895028.   .3  . .34.01470 309   . .439039 5134.3  ..9.0799.5     '#&$#&$     %%0807:08..970.8895028.9.439039-0-.3  .3.3.3 28'7:8 !488-051472.3.   .3  .439039274204 00 34.3 28'7:8 !488-0#4204472.3 28'7:8 $3490%74.5.0799.. . .970.970. 088O4./..0799.8 070894 .43903925.34843.9.  70..9.J/0$3479 547/010.04: 8/.870.5.3.3 28'7:8 !488-0#4204472.2.O3/0..94   389.439039$477 04: 8/.5.3.3 28'7:8 !488-0#4204472.3  .074.074/090945.3 28'7:8 !488-0#4204472.0748 7:0880.3030/70.5.03..70.30/0$03907$7:08#:08.8895028.9:701742 8.8895028.8895028.0 -0078/.4240890507843.   .8/08/0$03907  !.9.7. .0799.73:0897.4   89481..03..   .970. 9J9:431472.4390394..870.390/008901.9.7.70248:31. ..0799.3  .. .3./45.2..43.3  ..8 4 25479.. .94747.2.870.8. 870.$3.30-:8.4.N./47/05.248.4348.0./48  .70.5./.070248.7.42039..3.4355   89....5...248030% .809.7.70248 .00.4507..4../4$945 $3479 :3.70..2-48.43//.8470.43$34795.0844.2483:08974.494/40574. 7:08 .43..O3. ...9:708     4303./248.7.424. /0397.3/4030.70248030:84/0$3479/0089.484-70:8./0. 348.248.. $ #%  $ . .8070 47..42.7$347903J30./0.5J9:4/0089.39.1472. . 3/43.:.3/4547.425094$03907 .-..6:07&390720/. . .431:.7  = #0.4308  /08/00.845.8 = !70574.4308/083479.08../4708 = 497.4/0.7..431:7.   5703/0702489.2-F3. . 83479 .431 . . E/485.834803/6:04.7.33:.  %4/4848002548 20397.74 807E3.4397. &   $3479 -383479  $3479   '07843  $" 0#$! . . :/ . . 793#408..  . . 0170 .42  83479 47 . 7408.84:7. .     !479.0..8.. . 20/.9.307/8 309.307/8 309  /.9. =20 . .      !47978#0/. . 78 70/.4/0.438:9.398 .19. .42 .7. .   &$83479 459438(1907459438  83479. $#'. $% 459438(1907459438  83479. $#'. &$%  83479. $#'. 07924/01.43840 473430.89 1: .$   59438  $09. . .079843 .07910. . .09839.9.5/:251472.  -45. . 2:.8907 .1. . 4.7:08&80#:0807:08  !7394:95.9.  ../89.7..43.907/. . 340 . . 07  085.0394 ./07314  4.0894%.43/.070..0792088.  /:259055.9080.943. . 343 . .   1%:7341111:8 .1907-3./!19078174210-51  ..747908  -51#0.8. .01  //39071. 3420309473  189034339071.03.2094.0794:95:9  24/00..8:224/0. . 5 34:/5 34. .25 3430 . 345 349. . -057428..0.190770.909040/!.5/:2510  3.//708808  58.947/  10494989.30907:09089347/0794!.983.5$0905.880794   -1:8.395.3.098  %:7341143 ..399.09.07988947   4..:4:824/083113  !83.  /494/70.503415. . :9 . /01. .   %%089.3307.-0306:.$097:0810.0889.08 .:/0 / 383479*391/ 5/103.-039071.3/574.20  84...0.:77039$3479.431:7.94.258  .:0...0792088.07-480  '$4.078433:2-07  898.5/:251091  #/3..0894884  $3.3/89.7.943  &&80&%14792089../.  6":09 43 984-.9:8705479  791#0.3/7054794390. . 343 . . 3.43089.88:7.25390.-80/808438.:/00.208  :25907.07  3.079.89.9.793.3.3/4108  $09.3/.02039..024/0 2.09/.7392089.9903.4397417.  :25  2.5.9. . 147%! . . 7/!459438 .7089.943  907 59438.  $49831472.880033%!:25  .3/. 307/8 309  /.8 20/.84:7.00.09/:2524/0 4/70.45.793#408.1047/70.4/39073094339071. 7408.9.3094739071..4308(1974  $3479 -383479 ..0!*     <  39.6:0908 1472. #:33335.947   $34790324/4$31107708974/05.00...307/8 309.3 :95:9!:38 0.9474  39.& 4:300/94902094/4842093   48:.9403F7.7..0!*     <  39..42  83479 47    !479.0.0170 .3$3479 39.943425090  $3479  '07843  $" 0#$!  :/  .9..089024/408  83479 45.. 438:9.4/0.78 70/.=20     !47978#0/ .42  .19.398 .7. 8   90      .   #!4 .    #!4 .8   90      . 8   90      .   #!4 . 503                                                     .            %!%%% $  503 203  ! $06  .  3 %.  . 248.            %!%%% $  503 203     $#  43089.45..O3 .3. . 8:.8..6:0908 %!.83479..07.8/0485.-0..3/4035..39. !. . 45.07-4:8024897.748..7E.09/:2524/0 4/70.00..07./02E8 .8 ! %! &!!   $6:070248 .N.3547.3094739071.9474 39.-0./70248 /   $3479 -383479 ./ #:33335...2548/0/..O308024/4.39071.8.8:..8. 08/0.9486:05.0!*     <                                  ..7 0324/4831107 89.0/070/  . 503                                  . 3  %.               %!%%% $  503 203  $06  .                %!%%% $  503 203 ! $06  . 3  %.503    %995. .    .42 -7.   . /8./43  4. :9 ./01.85      %%!.  &807  0394.        ..      03( 489    .425.05990   9.4     2 -7 .9-0    $ 3/4       8%  507. 92 2.0. 5    3 2.0. 0.50   2. 0   .1 2.  -92.5  . .059 .45.7E./03/4.O3 0 8347934824897.      6  .   N. . ./..31472.O32E8/09. . .8.0      .8 .-0.. 4824897.3.7E.0/003.07.    !% #. . 708974/05.6:0908 . . 4308 .  43089.845. . 70/.4033:0897./0503/03/4/097E1. . .3.75473:0897.39..5.39/.0702487. .O35.434.8.807J.//0 31472.. .:.390.390708. . 45.7/.7.70897.948.7 :.8:54890747089:/4.708948 /./8. . 4245.7J.080383479.24803943.094074 708974/05.  .6:0908   $3479 -383479 /0. 397.. .45..4  .O3 3/.834796:0/0-0. . 7/.:./4.7484803:3/70.9474/090723. . 84.. 030890 . . $3479 -34. . 70.7509....7E34848   !4/0248  ./0/70.94748 /43/080. 03974/0.0897:.9:7.480.7E:3..7. . 70897.5/0.7.70/.3/.7.. . /0  .  $3479 -383479 . 4    .  #:33335.094324/0 4/70..947 . 4  -6:00. . 94/0484880.74.0324/4-3.1472. . 434854903908 19748/0089485747.7 024/46:003903/0%!:2543/:25 5.  08/0.2.143/4.72E8.84848/083479 .7.089:/. . 94748 834 :38O4. -3./.8.34807E:3.7.9:7.0897:.7.45..4 ./048030..84/0./0/70.O3/08../.. .   $3479 -383479  . 094324/0 4/70.4 - #:33335..947 . 45.8/0:9.4  '039.O3 -  = .7089.. . . . . . :3..3/.4.7E1.70!./03:0897.70/.9. .     = . . 407E/.:..7.70/.470.7/.948/094/.3:0897.7E94/403:32824. . /4547834790324/4-3.4308 /0 = .45.8.4 4  0.O3.942.2-F354/02480074..0/070/  97.45.   0..40307.4807E330.03.45.845..7..3/4.08./4  .4-3..749.08 5.O3  7342-70./0. = %.9:7.:039.7.430890:8.7.740307..7.O3 .254.O3/039071.7. . 7.834796:F39071.3/.7..0/070/:8.. . 7.84 /06:0903./0   = !.3:.248/4842E8   = $:8.7..3  $3479 -383479 .030.248834795. &   . ./0 09   = !..3/48/083479../408/43/0348.70248.702482E8 24/4/090.N. .839071.83479 .79./0.O3    $3479 -383479   $34790324/4$ 30890.0397.08/06:0/85430248033 :8.J30./03/4.07:.45....  .45..9.O3 .431   $3479 -383479 /0.5.O3/0397:848/070/80.7.83479 .42.7. 4    .  . . 09. 7.83479 .4..431  30. . 83479 .431. . 94/. 80:./4708 =  97.45..01:3..834796:0.7/.431:7.O3 3/.7E.203940324/4$  43..430830..8 = !70574.O3/0  = .431:7.7.43.08.85.7.8.870..08. . 4.477....424:3807. . .   = 894088O4.8.E/45.7.078O33:. &  83479 /0.  . 4    .  . . 09. 83479 .7.431   = !.8.078O33:8.70248.. $#'. $%  $3479 -383479. $#'. $% /0.  . 4    .  . . 09. 83479 .431  = . $#'. 83479./.&$%/08389.8 4/48/0079.70.7E .424807.4   079...80307. $3479. . 5.94748.9:7../0/70.790/0.0897:. . :3.7..4. . .079 /8. . /43/0 . . 7E.2./.80307..079.8..03.8. . ./.8...8.   .2.7.7.7 .4.03.431:7.8030.079.307.8 024/4036:080 .8/0.82../083479 08/0.7.7E3089. . .079 /8. . /047/0308.   $3479/85430/0809024/48/0.J30.803.079. . .33:3.09  884 82- 3!45:5 .4384. .425094 7E5/4 84. . #E5/.4.348/0.  $%  24/4079.07E31472..O384-70. . ...//0.079.81.079.90254 2038.  .0/0.O3 5747/.. !5:0794/04703/08934 .. .   .89 /0.  $3479 -383479 1. 4    .  . . 09. 431  .83479 . 9430.9439902590/31472..(!7479(   %!<           &  .   ( ($!74   .990259(  .881. 348/0.07E31472.42509.4.O384-70.24/4/0079.. . 079.0/0.90254 2038.O3 5747/.81.  .//0.. !5:0794/04703..079.... 6:090870897..8/0485.O3./08934031472.8 ..07.-0./48 .42509./0. .   $3479 -383479 1: /0.  . 4    .  . . 09. 83479 .9439902590/31472..431  ( ($!74   .990259(  .9430.881.(!7479(  . 8.              %!%%% $  503 203  $ $06 .3/.503  %! 59438  $$ ! !$.8......   $ %  $34792.  3  %.07.079.-0./05.O3/0.503  %! 59438  $$ ! !$.09.  3  %.6:090  %!%%% $  503 203  $ $06 ..   31472.F8/0:384..97. . :. 5.7.0497..6:0.O3 ..808.5.. . 7.3:.  89E45.O3085. 43840 /0.4384005747.39.431   $   324/4.&   83479 :384.83479 ...8035.2.   $3479 -383479 .  .8. .25720.72. 4    .  . . 09. $347970.8.2.72./.8.3..9.431     $0/08..0390/0$..7..83479 ..431  $  !07290.8   83479 3430 .83479 . . .2-.0390/0$. 033: . . . 03.079..48983/48.7 2038.08/0. . 3!45&5 . . 8 3:.7./039020390089024/4085.88902. . 9.&   $0...079./09030757080390  = !..7089024/4/0.7. . . 80/0-0.430.8$./47/0.7$3479.7 .425.432:9.079.-9. . . . 03.-0 82-.0798 . .  . .884   $3479 -383479 .7089.907J89. J30.42.:8.  .3/48 ..= !.8.8.3/48/083479   #$%% $  $$   5747.7./70248.2..72.$347903.:388902.43840 /0...03...7.J.3/4:33!45&5..N./0. 4    .  . . 09. 431 8  .83479 . . 390 .702482E8.7485..89024/4/85430/0./0.7E209748 6:0089:/. . 780.3/48 89.  '%   :3..O3.3/403089024/48070897.8:.079.F8/0..45..85.0848/0 :388902.7.8.97..847/08:.43. . .9.7E.80.. . 390 8O45.20/.3    !# %  3.7. . .5J9:48.57O248. . ..3.7024803... . 70..883479..O3/070. . 3/494/.8.430880:70248.43$3479..8 45. 05. . /0.3/48.42.03J30. . 43..431:7....O3/0.7.4 . . 83479 .431. .    !A' #%$&$$ # %  $ #%. :.:3884702494   $84080807..248.2.7./0$84.O3 /003.6:07.9./5708039003..79J./0:8.8.J4/0.7485747.45././088902.7.47J./47884 '0.3/48/85430248/0..8&3   !.86:0.  $ 30890.43.0243 ..2.:36:05:0/08074974.:4./.9.07:3.1:3.079.9.248:34/0 048 $097.4/0708974/0...//0$34790$03907 $097.03/0807.   995. . 42. 884 . 7.6:008./40807.03.97.70249./45:0794.98 92884  &3.0547:3 /090723.:.74848./01472.70/  .0/0248.F8/0.745.8J$34795:0/.0389./47884 574..431:7...574/:... O3/0$3479 !:8.7.431:7.3/4$03907  '.70.2-48    ..431:7.248.434/0$039075:8.7..08  &!!479    030890.:.4307.70&/0 .2488903147&!$842088.       431:7...3/4$84.9O303$0993 5.7.24803$945$34795.6:07....248.7.7488:03908.:36:05:0/0807.0243  0!7450790825:98&!  .84 .. .7./47884  !479406:0.248494702490884 8   $07.2483974/:.0795:38  .47703/40807..209078 2../4 030807.7./47884   $#:08 :95:95:38 //$84..  480993435.9 *   !7479 *#%  2.07!/0489/43/0089F .248   * $   *!## #   *   *!  .7. ..F8/05:0794&!6:0.803.7.75:8.079.884 702494.4 83479 .-.8030/70.7.7.O3030.7.7..90723.3/4.79$34795.248..070248.870.248//5.8..8 ./705:3.8.30555.7.N.7$3479    20//.87E03.079.9474..77-.97...7..248/083./0 884807E37.   !:8./05..431:7.803../4   !.431:7.8..4384.../4./.9..8-.6:0$347903070.9./.431$9./. ./47     431:7.O3/088483$03907  .4/0807. 2-F370./03/4 8 .  ..5:39.3:0897.431   3$3479 9.O3 .O3/0 $3479 83479 .47703/4830&$0390754/02489.43840 /0.4507.3/48$347924/1./0.N.4240248.7089.431:7.42..J30..O3 8 0254  83479 .4/0.$9030248$3479.38O4903/702486:0.3/40.45./4 ..N.7../7. 4    .  . . 09. 20*41*5:3.O3/05:38/08./.    $905431:704:95:95:38  0307..943*459438  .477040807.884     .431:7.431:7..O3/083479 83479 .2E6:3.0807.431 8     8.4884  5:0794&!547/43/008.1..4    47.43..4.80.248.431:7.!/0.03.431:7....:..9431474:95:95:38841901472  4:95:93.431 48548../43/0..9.83479 ..24803.074/0.O3/0 . .079*884 *  *#% * $ * *!## # *!     %.431:7.2.307.J30.2-F354/0248.1472./248:3.0748:0390    $905431:704:95:95:38  0307.431:7..   N.6:03486:0/0/0089.9431474:95:95:38841901472 .943*459438  4:95:9..    $905431:704:95:95:38  0307./09.431:7.20*41*5:3.9431474:95:95:38841901472  4:95:93. 2-F304895:0794/0884702494 0089. 5:0794&!    .8846:0../0.3903/:254%!:25.7 6:00383479 ..20*41*5:3.2486:0$3479089E03.4313/.N.884  0/.3/48/0$3479     %0890.8.J30.307.943*459438  4:95:9.. 2.3/7/0.884    $3479089E03..3/4.9.//4 8   03.J4.54/02485708.079*884489     *  *#% * $ *  *!## # *!    8/0.079.3/4.2489.8.431:7.8.431:7.071.8.3/4.20390.4770030489   .O303. 4:95:93...4770.079.42. 9.8./08847024946:0010.5.079.03.'024803.20390       .9..8.4770.70.20390.4384..
Copyright © 2024 DOKUMEN.SITE Inc.