@elzo gracias a todos por acudir y al conferenciante pod dar la charla
@elzo tendréis los logs en la web en cuanto sea posible, Ismael Briones nos presentará a nuestro primer invitado
@elzo ismael: hola a todos
@elzo i: nuestro primer conferenciante es javier fernandez-sanguino
@elzo trabaja en el departamento de seguridad de Germinus XXI
@elzo es un activo desarrollador de Debian y actualmente está haciendo su doctorado en la ETSIT de la UPM
@elzo el título de esta primera conferencia de Infosec es "Detección de intrusiones basadas en hosts UNIX y auditorías, el panorama actual"
@elzo estoy ultimando la presentación ahora mismo
@elzo mi conexión no es mi buena así que sed buenos
@elzo en cualquier caso agradecer a la organización haber montado estas charlas
@elzo espero que disfrutéis esta semana, hay muchas charlas interesantes
@elzo el tema de esta charla es la detección de intrusiones en hosts UNIX
@elzo primero dejadme decir que cualquier pregunta será bienvenida mientras vaya hablando
@elzo hacedlas por favor en #qc
@elzo no me gustaría que fuese la típica conferencia en la que yo hablo, vosotros escucháis y eso es todo
@elzo creo que irá mejor si participáis
@elzo como nota aparte: el archivo postscript (comprimido) con las slides ya está disponible
@elzo por qué quiero hablar de la detección de intrusiones basadas en hosts?
@elzo la principal razón es que la detección de intrusiones se ha centrado en tipos de redes y quiero cambiar eso
@elzo pero, por qué sobre la detección de intrusiones?
@elzo dejadme que os introduzca el tema
@elzo la principal idea es detectar cosas que suceden en los sistemas de información que no deberían tener lugar
@elzo de todas formas, quién decide qué y qué no es apropiado en un sistema?
@elzo la política de seguridad
@elzo por cierto, esta introducción es similar a la que dí el año pasado cuando hablé de Tiger así que podéis acudir a ella para profundizar porque aquí no entraré en tantos detalles
@elzo así que queremos detectar violaciones de la poítica de seguridad, eso es lo que hace un intruso
@elzo pero mucha gente no tiene políticas de seguridad definidas, quiere decir eso que no pueden detectar a los intrusos?
@elzo no realmente
@elzo de forma parecida a las vulnerabilidades, algunas cosas en ID (detección de intrusos) son una intrusión
@elzo por qué digo "de forma parecida a las vulnerabilidades"?
@elzo porque una de las cosas que la gente del proyecto CVE (cve.mitre.org) ha discutido mucho es la definición de vulnerabilidad
@elzo separaron las vulnerabilidades según dependiesen o no de la configuración del sistema
@elzo también está el estar expuestos (que no son vulnerabilidades pero dependen de la política de seguridad del sistema)
@elzo de manera similar, cuando definimos la intrusión si no hay política de seguridad definida hay muchas cosas qe podemos considerar una intrusión
@elzo pensemos en un sistema multitarea y multiusuario
@elzo en el que un usuario sin privilegios los adquiera mediante la explotación de una vulnerabilidad local, por ejemplo
@elzo eso es una intrusión, sea cual sea la políticade seguridad
@elzo bueno, stallman probablemente no estaría de acuerdo conmigo en esto :)
@elzo estáis de acuerdo? preguntad en #qc
@elzo en cualquier caso, unas cosas u otras pueden ser o no intrusiones dependiendo de vuestra política si es que la tenéis
@elzo si no la tenéis dependerá de vuetro uso de los sistemas TI
@elzo por ejemplo, alguien conectando a la 1 p.m a vuestro servidor de bases de datos
@elzo es eso una intrusión?
@elzo depende de si a esa hora suelen conectarse, si el servidor está en mi casa y yo durmiendo es probable
@elzo por eso es importante tener en cuenta los sistemas de detección de intrusos, los desarrollos o herramientas cuando hablamos de seguridad.
@elzo los falsos positivos son posibles
@elzo una intrusión de la que se informe como tal pero que no lo sea
@xpato Pero como el admin no la conoce de antemanos el se las tiene que arreglar
@xpato los falsos negativos tambien pueden aparecer
@xpato eso es, un evento que es parte de una intrusion pero no es reportado
@xpato usualmente lo ultimo es mas comun
@xpato ahora vamos a ver un sistema ID diferente
@elzo los sistemas de id, según estén hechos, pueden conducir a falsos positivos, falsos negativos o ambos
@elzo slide 8
@elzo ahí se muestra la taxonomía de los sistemas ID basándonos en: dónde se lleva a cabo la ID? cómo se analizan los datos?
@xpato Asi que, tu tienes do lugares donde la ID es hecha: el host y "la red"
@elzo y tienes que analizar métodos: busco un comportamiento anormal? o busco cosas que sé que son malas?
@elzo y tienes dos métodos de análisis: busco un comportamiento anormal? o busco cosas que sé que son malas?
@xpato Ahora, ID basados en host, hacen que el ID tome datos del host usando agentes ID
@elzo y los ID basados en red también usan un agente (llamado normalmente "sensor") pero toma información "escuchando" en la red
@xpato Obviamente, el agente esta implementado en un host en ambos casos
@elzo en el primer caso el agente se instala en una máquina que queremos proteger
@elzo la división del análisis de datos es sencilla
@xpato mientras que en el segundo, usas un host para el analisis, pero no es un punto critico
@elzo puedes buscar desviaciones de un comportamiento establecido determinando que es anormal y por lo tanto una intrusión
@xpato Por ej.: un usuario se conecta fuera de hora.el uso de CPU esta aumentando,
@elzo o puedes buscar cosas que "sabes" que son intrusiones (y he dicho "sabes")
@xpato Por ejemplo: trata de busca un cierto ataque in el trafico de red, trata de encontrar un troyano
@xpato ...
@elzo la diferencia estriba en que aún siendo el mismo el origen de los datos en el primer caso no sabemos que es una intrusión pero en el segundo sí
@xpato El primer tipo de analisis es usualmente implementado usando tecnicas de inteligencia artificial, como redes neuronales, sistemas expertos
@elzo mientras que el segundo se implementa usando sistemas basados en reglas
@xpato (la misma tecnologia base de los antivirus realmente)
@elzo antes de hablar de los ID en UNIX dejadme aclarar que hay dos razones por las que los ID basados en host no son la tecnología de ID más prevaleciente
@xpato 1. Necesitas modificar el punto critico(instalar algo, que aumente el desempeño)
@elzo 2.- es más fácil hacer firmas para ataques remotos usando vulnerabilidades conocidas que en el caso de ataques locales
@xpato Por eso los ID-network  basados es reglas son mas comunes
@elzo Son más fáciles de construir y el número de falsos positivos es bajo
@elzo Mejnour pregunta si "reglas" es lo mismo que "firmas"
@xpato De todas formas, falsos negativos pueden ser moderadamente altos, ya que ellos "solo" parecen atakes haciendo uso de agujeros conocidos o configuraciones malas
@xpato Y las respuesta es si, ID-network usan "firmas" para determinar las reglas que ellos conocen cuando analizan paketes
@elzo Bien, vamos ahora a por los ID en UNIX
@xpato A menos que haya un pregunta
@elzo cuando hagáis preguntas en #qc poned delante jfs: para que las vea fácilmente
@xpato ok, no hay preguntas?
@elzo bien, continuemos entonces
@xpato Cuando hablamos de ID en Unix debemos primero determinar donde podemos hacer ID en un host
@elzo en la slide 9 se muestran diferentes lugares donde puede tener lugar la ID:
@xpato 1. A nivel de kernel
@elzo 2. En espacio de usuario
@xpato Y en 2) puedes chekear el sistema de archivo local(chekeos de integridad)
@elzo Evidentemente, también podéis fijaros en la red, al igual que ocurre con la ID de redes
@elzo ese ataque está basado en una regla que intenta buscar código javascript en paquetes de red que puedan redirigir a un navegador a otro servidor para capturar cookies y cosas así
@xpato interoperan, pregunta "si snort dice "WEB-CLIENT javascript URL host spoofing attemp" que tipo de atake es
@xpato si miras a la regla de snort:
@elzo ert tcp $EXTERNAL_NET $HTTP_PORTS -> $HOME_NET any (msg:"WEB-CLIENT
@elzo           javascript URL host spoofing attempt"; flow:to_client,established;
@elzo           content:"javascript\://"; nocase; classtype:attempted-user;
@elzo           reference:bugtraq,5293; sid:1841; rev:2;)
@elzo es un paquete de un servidor HTTP que contiene javacript://
@elzo esto es a veces un falso positivo, una de las cosas buenas de snort es que provee de referencias externas a bases de datos de seguridad (como bugtraq aquí)
@elzo echadle un ojo a http://online.securityfocus.com/bid/5293
@elzo veréis que navegadores pueden ser vulnerables a este ataque
@elzo si no los uséis entonces no hay problema :)
@elzo si no los uséis entonces quitad la regla
@elzo Shadow pregunta que dónde recomienda instalar un sistema ID, si a nivel del kernel o en espacio de usuario
@elzo en un minuto estoy con eso
@elzo Mejnour se pregunta si hablo de tripwire cuando hablo de las comprobaciones de seguridad
@elzo la respuesta es que sí, pero parcialmente
@elzo bien, volvamos a la charla
@elzo podemos usar ID de red en una máquina, y eso hace un NID basado en la máquina
@elzo un tipo de ID híbrido
@elzo hay detectores de escaneo de puertos como psad o portsentry
@elzo y otras implementaciones NID (aunque creoq ue actualmente en beta) como firestorm o bro
@ed0 y en el entorno propietario puedes encontrar Dragon
@elzo NFS, RealSecure  Network Sensor de ISS y algunos otros
@ed0 (de Enterasys), NFR, RealSecure
@elzo pero estos son los más prevalentes
@ed0 Si buscas entre las herramientas de detecci?n de intruci?n de libre distribuci?n
@ed0 puedes encontrar varias alternativas
@elzo en la transparencia 11
@elzo un segundo, voy a ver qué pasa. hay gente con problemas para descargar las transparencias
@elzo como véis hay un buen número d eherramientas libres disponibles
@ed0 desde herramientas de chequeo de logs hasta de comprobaci?n de integridad
@elzo de configuraciones y también herramientas para buscar rootkits
@elzo en algunas distribuciones de GNU/Linux y *BSD suele haber un script checksecurity
@ed0 Este script realiza varias comprobaciones (ficheros setuid, integridad de passwords y similares)
@elzo la implementación varía pero el nombre es igual en todas
@elzo algunos vendedores de UNIX también ofrecen herramientas similares pero podéis usar estas mismas en esos entornos
@ed0 Adem?s, varias distribuciones incluyen numerosas herramientas de este estilo
@elzo Debian, que conozco bastante bien, tiene una gran variedad de herramientas de este tipo
@elzo recomendaría algunas de las herramientas de las que voy a hablar brevemente
@ed0 1.- Una herramienta para comprobaci?n de integridad, elegid vosotros mismos, tripwire es la m?s conocida, pero una menos conocida (como samhaim) proporciona caracter?sticas muy interesantes
@elzo 2. una para la comprobación automática de logs como logcheck que se ha mejorado mucho en Debian Linux
@ed0 3.- Una herramienta para comprobaciones locales, y yo escojo Tigen junto con chkrootkit (como testeador de "rootkits")
@elzo Obviamente tengo cierta predilección por la 3 puesto que soy su desarrollador principal :-)
@ed0 Perd?n, no es Tigen, es Tiger, que me he colao ;-)
@elzo ;-)
@ed0 Algo a tener en cuenta con las herramientas libres es que a veces hay cierta duplicidad
@elzo si miramos las herramientas disponibles para unix (bastante caras, por cierto) (transpa 12)
@elzo pero aquí hay un pequeño problema, no todas ellas funcionan en todas las variantes de UN*X
@ed0 Veremos que hay varias, desde Dragon Squire al sensor para servidores de ISS
@ed0 No todas funcionan en los distintos sabores de Unix
@elzo Los sistemas ID propietarios suelen ser una combinación de lo anterior: comprobación de integridad (md5sum, permisos de archivos, bits setuid), análisis de los logs (con un conjunto de reglas para el fabricante) y algunas reglas de comportamiento
@ed0 Sin embargo, algo a tener en cuenta es el hecho de que no son capaces de hablar entre si
@elzo Los fabricantes suelen querer que sólo uses sus soluciones de seguridad, al integrarlas muy bien te harán que se las compresa todas (escáneres de seguridad, herramientas ID... hasta cortafuegos)
@elzo es por esto que ha habido tanta proliferación de herramientas de terceros que pueden comunicarse con las de diferentes fabricantes y pueden integrar herramientas de diferentes compañías
@ed0 Pero no son muy partidarios de cooperar con otros fabricantes porque estar?an dej?ndoles jugar en su mismo terreno en algunos escenarios
@elzo en cualquier caso eso es otro tema pero suficiente para comprobar que los fabricantes no están muy interesados en ofrecer maneras de que los productos se comuniquen entre sí meidante interfaces comunes
@elzo Voy a hablar ahora de algunas herramientas de ID basado en host
@elzo Snort es conocido y de Tiger ya hablé el año pasado aquí en Uninet
@elzo Pero ¿y logcheck?
@elzo cuántos de vosotros tenéis herramientas para comprobar vuestros logs?
@elzo comprobaciones automáticas, nada de tail -f ;-)
@elzo parece que sí que hay quien lo usa, en Debian por cierto :)
@elzo bueno, logcheck es una herramienta maravillosa
@elzo la idea principal es que analiza algunos logs y nos envía correos con cosas como:
@elzo 1. cosas que no esperaba
@elzo 2. cosas que sabe qeu son violaciones de seguridad
@elzo la manera en que determinaba que "no esperaba" ciertas cosas es filtrando elementos conocidos
@elzo determina las violaciones filtrando otros
@elzo también incluye algunos otros eventos de seguridad dependiendo de su configuración
@elzo en la transp. 13 hay una breve intro
@elzo veis que logcheck lo comenzó hace tiempo Psionic (que luego fue comprada por Cisco) como parte del proyecto "Abacus" que consistía enuna serie de herramientas apra proteger máquinas
@ed0 Ver?is que logcheck comenz? hace tiempo, de la mano de Psionic (ahora comprado por Cisco) como parte del proyecto Abaco que pretend?a crear una suite de herramientas para proteger los equipos
@elzo Las herramientas de abacus eran: portsentry, logcheck y hostsentry.
@elzo la versión original no ha vuelto ha desarrollarse desde 1997
@elzo fue desiñada para funcionar en múltiples sistemas UNIX
@ed0 La versi?nd e Debian surgi? como algo completamente nuevo, aunque existen m?s l?neas de desarrollo
@elzo la versión de Debian ha crecido siendo una reescritura completa de esa herramienta pero hay otros forks
@elzo disculpad la redundancia :)
@ed0 ?Alguna pregunta hasta ahora?
@elzo Pero quiero hablaros de Prelude
@ed0 un proyecto muy interesante
@elzo nos ofrece una estructura para utilizar IDS
@elzo que es uno de los asuntos a tratar cuando quieres utilizar varios sensorse (más de uno)
@elzo GRacias a Prelude los sensorse pueden hablar un mismo lenguaje y comunicarse con el servidor de gestión
@elzo así, todas las intrusiones se guardan en el mismo lugar, una base de datos habitualmente
@elzo El proyecto Prelude también incluye herramientas como Nessus  pero lo más imp. es que nos provee de una estructura y que es GPL
@ed0 Pero lo m?s importante es que se trata de un framework y es software de libre distribuci?n
@elzo En el caso de los propietarios también nos ofrecían una estructura pero vimos que no se comunicaban entre ellos
@elzo Prelude es abierto tanto en software como en el estándar, ya que usa IDMEF
@elzo un lenguaje común (XML, creo)para definir intrusiones definido por el IETF
@elzo actualmente aún es un borrador
@ed0 juanac pregunta: ?c?mo funciona portsentry?
@elzo portsentry funciona abriendo ciertos puertos
@elzo al no ser puertos que provean servicios si alguien intenta acceder a ellos es probable que no esté escaneando
@elzo es más como un honeypot que un sistema ID
@elzo pero los honeypots también funcionan bastante bien como sistemas de ID
@elzo estaba hablando de IDMEF
@ed0 Algunos sistemas propietarios tambi?n lo implementan
@elzo bien, ya he hablado de HID a nivel de usuario
@elzo qué hay de HID a nivel de kernel?
@ed0 Qu? tal algo de HiD a nivel de kernel?
@elzo muchos uNIx comerciales implementan auditorías estrictas del núcleo pero pocos detección de intrusiones directamente en el núcleo
@elzo transpa 20
@elzo es de notar algunos subsistemas de detección de intrusos para Linux
@elzo aún no están integrados pero quizá lo estén para el 2.6, una vez se acabe con la implementación de los módulos de seguridad de linux
@ed0 Actualmente hay parches para el kernel
@elzo principalmente LIDS y Snare
@elzo hay algo interesante en hacer ID a nivel de kernel
@elzo aún perdiendo mucho rendimiento es más difícil que nos falseen el kernel
@elzo ID: detección de intrusos, HID: detección de intrusos basada en hosts/máquinas, NID: det. d eintr. basada en redes
@elzo así que aquí es hasta donde llegamos en alguos asuntos implementando ID
@elzo HID. cómo implementamos la detección? 22 cómo la ejecutamos? 23
@elzo obviamente, un tema es que si el HID se ejecuta en un sistema que puede verse comprometido una de las primeras cosas que hará el intruso es deshacerse del HID
@elzo actualmente muchas solucinoes HID o se ejecutan a través de cron o mediante un proceso (demonio) dedicado
@ed0 Lolo que significa que si lo los matas, acabar?s tambien con el HID
@elzo si subvierten el mecanismo por el que se nos hacen llegar las alertats (SNMP, correo, logs...) también comprometen el HID
@elzo es por esto que quizá sólo tenga sentido implementar HIDS en el kernel
@elzo pero como hay varios asuntos que tratar (no sólo el del rendimiento)
@elzo y puesto que hacer un HID en espacio de usuario es muy costoso en tiempo
@ed0 a veces tiene sentido montar SID en entorno de usuario
@ed0 Depende de tu nivel de paranioa
@elzo depende del nivel de paranoia o de los recursos
@ed0 y de tus recursos
@ed0 perd?n :-)
@elzo pero incluso un intruso podría "parchear" la imagen del núcleo deshaciéndose dle HID, pero eso es bastante difícil :)
@ed0 Volviendo a las notas finales con la detecci?n de intrusiones en unix (disculpad por el retraso)
@elzo no tenéis excusa para no utilizar detección de intrusos basada en host en vuestro sistemas ahora que conocéis tantas herramientas
@elzo tanto libres como propietarias
@elzo el problema con las soluciones libres es que hay muchas herramientas específicas
@elzo y están poco integradas unas con otras
@elzo pero Prelude quizá ayude a cambiar eso en el futuro
@elzo muchos fabricantes comienzan a ofrecer herramientas de detección de intrusos con sus sistemas
@ed0 y adem?s no cooperan entre si
@elzo si alguien sabe de algún fabricante aparte de los de GNU/Linux o los *BSD que me avise
@elzo para acabar, es importante tener en cuenta que hay pocos estándares respecto a IDS
@elzo así que si mejoran probablemente tengamos mejores herramientas en el futuro
@elzo no sé si tenemos tiempo para más preguntas
@elzo pero en cualquier caso no os perdáis otras charlas sobre este tema en las conferencias de este año
@elzo hay una sobre el uso de software libre en IDs, ojalá no haya chafado mucho de lo que vayan a contar
@elzo alguna pregunta final?
@elzo xpato pregunta sobre referencias
@elzo en la transpa 25 tenéis muchas
@elzo principalmente
@elzo SANS ID FAQ. http://www.sans.org/newlook/resources/IDFAQ/ID_FAQ.htm
@elzo <jfs> and
@elzo <jfs> Securityfocus IDS area: http://www.securityfocus.com/ids
@elzo ahí tenéis muy buenas listas de correo
@elzo si queréis echaros unas risas piss.olea.org
@elzo la solución definitiva
@elzo sarnold: gracias por la presentación
@elzo nos has acompañado en uninet desde antes que yo recuerde :)
@elzo la próxima la dará el dr josé nazario sobre gusanos de internet
@EMPEROR  plas plas plas plas plas plas plas plas
@EMPEROR  plas plas plas plas plas plas plas plas
@EMPEROR  plas plas plas plas plas plas plas plas
@EMPEROR muchisimas gracias elzo :) buen trabajo.. = para ti ed0 y xpato
@elzo de nada, ha sido toda una experiencia :)
@EMPEROR pues tendras muchas mas.. tenemos ptra enseguida :P
@elzo bueno, creo que por hoy ya ha sido suficiente :P
@elzo otro día veremos si repito
@elzo hasta otra

Generated by irclog2html.pl 2.1 by Jeff Waugh - find it at freshmeat.net!