ACI - PowerPoint PPT Presentation

1 / 44
About This Presentation
Title:

ACI

Description:

Title: ACI 425 Seguridad Inform tica Clase_04c Seguridad en redes y sistemas operativos Author: Juan Jos Aranda Aboy Last modified by: Juan Jos Aranda Aboy – PowerPoint PPT presentation

Number of Views:140
Avg rating:3.0/5.0
Slides: 45
Provided by: JuanJ181
Category:

less

Transcript and Presenter's Notes

Title: ACI


1
ACI 425SEGURIDAD INFORMÁTICA
  • Unidad 4
  • Seguridad en redes y sistemas operativos

2
Objetivos Específicos
  • Aplicar los conceptos de seguridad informática a
    redes de computadoras en las organizaciones con
    vistas a detectar posibles fallos y mejorar la
    seguridad tanto en la red interna como en la
    posible red externa.

3
Contenidos
  • Conceptos preliminares Repaso básico de redes.
  • Traducción de direcciones de red (Network Address
    Translation NAT).
  • Cortafuegos (Firewalls).
  • Proxys.
  • Redes privadas virtuales (Virtual Private
    Networks VPN).
  • Control de Acceso.
  • Seguridad en intranet/extranet.
  • Capa de conexión segura (Secure Socket Layer -
    SSL).
  • Tipos de ataques a redes
  • sniffing,
  • spoffing y
  • buffer overflow.

4
Tunneling
  • Internet se construyó desde un principio como un
    medio inseguro.
  • Muchos de los protocolos utilizados hoy en día
    para transferir datos de una máquina a otra a
    través de la red carecen de algún tipo de
    encriptación o medio de seguridad que evite que
    nuestras comunicaciones puedan ser interceptadas
    y espiadas.
  • HTTP, FTP, POP3 y otros muchos protocolos
    ampliamente usados, utilizan comunicaciones que
    viajan en claro a través de la red.
  • Esto supone un grave problema en todas aquellas
    situaciones en las que queremos transferir entre
    máquinas información sensible, como pueda ser una
    cuenta de usuario (nombre de usuario y
    contraseña), y no tengamos un control absoluto
    sobre la red, con el objetivo de evitar que
    alguien pueda interceptar nuestra comunicación
    por medio de la técnica del hombre en el medio
    (man in the middle), como es el caso de la Red de
    redes.

5
Qué es el tunneling?
  • El problema de los protocolos que envían sus
    datos en claro, sin cifrarlos, es que cualquier
    persona que tenga acceso físico a la red en la
    que se sitúan nuestras máquinas puede ver dichos
    datos.
  • Es tan simple como utilizar un sniffer, que
    básicamente, es una herramienta que pone nuestra
    tarjeta de red en modo promiscuo (modo en el que
    las tarjetas de red operan aceptando todos los
    paquetes que circulan por la red a la que se
    conectan, sean o no para dicha tarjeta).
  • De este modo, alguien que conecte su máquina a
    una red y arranque un sniffer recibirá y podrá
    analizar por tanto todos los paquetes que
    circulen por la misma.
  • Si alguno de esos paquetes pertenece a un
    protocolo que envía sus comunicaciones en claro y
    contiene información sensible, dicha información
    se verá comprometida.
  • Si por el contrario, ciframos las comunicaciones
    con un sistema que permita entenderse sólo a las
    dos máquinas que participan de la comunicación,
    cualquiera que intercepte desde una tercera los
    paquetes, no podrá hacer nada con ellos, al no
    poder descifrar los datos.

6
Qué es el tunneling? (2)
  • Una forma de evitar el problema sin dejar de
    utilizar todos aquellos protocolos que carezcan
    de medios de encriptación, es usar una útil
    técnica llamada tunneling.
  • Básicamente, esta técnica consiste en abrir
    conexiones entre dos máquinas por medio de un
    protocolo seguro, como puede ser SSH (Secure
    SHell), a través de las cuales se realizaran las
    transferencias inseguras, que pasarán de este
    modo a ser seguras.
  • De esta analogía viene el nombre de la técnica,
    siendo la conexión segura (en este caso de ssh)
    el túnel por el cual enviamos nuestros datos para
    que nadie más, aparte de los interlocutores que
    se sitúan a cada extremo del túnel, pueda verles.
  • Este tipo de técnica requiere de forma
    imprescindible que se tenga una cuenta de acceso
    seguro en la máquina con la que se quiere
    comunicar.

7
SSL - TLS
  • Secure Sockets Layer (SSL) y Transport Layer
    Security (TLS) -Seguridad de la Capa de
    Transporte-, su sucesor, son protocolos
    criptográficos que proporcionan comunicaciones
    seguras en Internet.
  • Existen pequeñas diferencias entre SSL 3.0 y TLS
    1.0, pero el protocolo permanece sustancialmente
    igual.
  • La implementación comúnmente empleada es OpenSSL.

8
SSL
  • SSL proporciona autenticación y privacidad de la
    información entre extremos sobre Internet
    mediante el uso de criptografía.
  • Habitualmente, sólo el servidor es autenticado,
    es decir, se garantiza su identidad, mientras que
    el cliente se mantiene sin autenticar.
  • La autenticación mutua requiere un despliegue de
    infraestructura de claves públicas (PKI) para los
    clientes.
  • Los protocolos permiten a las aplicaciones
    cliente-servidor comunicarse de una forma
    diseñada para prevenir escuchas (eavesdropping),
    la falsificación de la identidad del remitente y
    mantener la integridad del mensaje.

9
Pila del protocolo SSL
10
Fases básicas en SSL
  • SSL implica una serie de fases básicas
  • Negociar entre las partes el algoritmo que se
    usará en la comunicación.
  • Intercambio de claves públicas y autenticación
    basada en certificados digitales.
  • Encriptación del tráfico basado en cifrado
    simétrico.
  • Durante la primera fase, el cliente y el servidor
    negocian qué algoritmos criptográficos se van a
    usar.
  • Las implementaciones actuales proporcionan las
    siguientes opciones
  • Para criptografía de clave pública RSA,
    Diffie-Hellman, DSA (Digital Signature Algorithm)
    o Fortezza
  • Para cifrado simétrico RC2, RC4, IDEA, DES,
    Triple DES o AES
  • Funciones hash MD5 o alguna de la familia SHA.

11
Funcionamiento de SSL
  • El protocolo SSL intercambia registros.
    Opcionalmente, cada registro puede ser
    comprimido, cifrado y empaquetado con un código
    de autentificación del mensaje (MAC).
  • Cada registro tiene un campo de content_type que
    especifica el protocolo de nivel superior que se
    está usando.
  • Cuando se inicia la conexión, el nivel de
    registro encapsula otro protocolo, el protocolo
    handshake, que tiene el content_type 22.

12
Operación del protocolo Record
13
Estructuras handshake
  • El cliente envía y recibe varias estructuras
    handshake en SSL
  • Envía un mensaje ClientHello especificando una
    lista de conjunto de cifrados, métodos de
    compresión y la versión del protocolo SSL más
    alta permitida. Éste también envía bytes
    aleatorios que serán usados más tarde (llamados
    Challenge de Cliente o Reto). Además puede
    incluir el identificador de la sesión.
  • Después, recibe un registro ServerHello, en el
    que el servidor elige los parámetros de conexión
    a partir de las opciones ofertadas con
    anterioridad por el cliente.
  • Cuando los parámetros de la conexión son
    conocidos, cliente y servidor intercambian
    certificados (dependiendo de las claves públicas
    de cifrado seleccionadas). Estos certificados son
    actualmente X.509, pero hay también un borrador
    especificando el uso de certificados basados en
    OpenPGP.
  • El servidor puede requerir un certificado al
    cliente, para que la conexión sea mutuamente
    autenticada.
  • Cliente y servidor negocian una clave secreta
    común llamada master secret, posiblemente usando
    el resultado de un intercambio Diffie-Hellman, o
    simplemente encriptando una clave secreta con una
    clave pública que es desencriptada con la clave
    privada de cada uno. Todos los datos de claves
    restantes son derivados a partir de este master
    secret (y los valores aleatorios generados en el
    cliente y el servidor), que son pasados a través
    una función seudo aleatoria cuidadosamente
    elegida.

14
Esquema del handshake
Fase 1 Establecimiento de las capacidades de
seguridad, incluyendo versión del protocolo, ID
de sesión, suite de cifrado, método de compresión
y los números aleatorios iniciales. Fase 2 El
servidor puede enviar un certificado, intercambio
de clave y solicitud de certificado. El servidor
señala el final de la fase del mensaje hello.
Fase 3 El cliente envía certificado, si se le
solicita, el intercambio de clave, y puede que
envíe la verificación de certificado. Fase
4 Intercambio de suite de cifrado y fin del
protocolo handshake.
15
Medidas de seguridad
  • TLS/SSL poseen una variedad de medidas de
    seguridad
  • Numerando todos los registros y usando el número
    de secuencia en el MAC.
  • Usando un resumen de mensaje mejorado con una
    clave de forma que solo con dicha clave se pueda
    comprobar el MAC. Esto se especifica en el RFC
    2104).
  • Protección contra varios ataques conocidos,
    incluidos ataques man in the middle attack, como
    los que implican un degradado del protocolo a
    versiones previas y por tanto, menos seguras, o
    conjuntos de cifrados más débiles.
  • El mensaje que finaliza el protocolo handshake
    (Finished) envía un hash de todos los datos
    intercambiados y vistos por ambas partes.
  • La función seudo aleatoria divide los datos de
    entrada en dos mitades y las procesa con
    algoritmos hash diferentes MD5 y SHA. Después
    realiza sobre ellos una operación XOR. De esta
    forma se protege a sí mismo de la eventualidad de
    que alguno de estos algoritmos se revelen
    vulnerables en el futuro.

16
Aplicaciones de SSL
  • SSL se ejecuta en una capa entre los protocolos
    de aplicación como HTTP, SMTP, NNTP y sobre el
    protocolo de transporte TCP, que forma parte de
    la familia de protocolos TCP/IP.
  • Aunque pueda proporcionar seguridad a cualquier
    protocolo que use conexiones de confianza (tal
    como TCP), se usa en la mayoría de los casos
    junto a HTTP para formar HTTPS.
  • HTTPS es usado para asegurar páginas World Wide
    Web en aplicaciones de comercio electrónico,
    utilizando certificados de clave pública para
    verificar la identidad de los extremos.
  • Aunque un número creciente de productos clientes
    y servidores pueden proporcionar SSL de forma
    nativa, muchos aún no lo permiten.
  • En estos casos, un usuario podría querer usar una
    aplicación SSL independiente como Stunnel para
    proporcionar encriptación.
  • No obstante, el Internet Engineering Task Force
    recomendó en 1997 que los protocolos de
    aplicación ofrecieran un forma de actualizar a
    TLS a partir de una conexión sin encriptación
    (plaintext), en vez de usar un puerto diferente
    para encriptar las comunicaciones esto evitaría
    el uso de envolturas (wrappers) como Stunnel.
  • SSL también puede usarse para tunelar una red
    completa y crear una red privada virtual (VPN).

17
Comando de openssl para crear llave
  • root_at_mail1 /etc/postfix openssl req -new
    -outform PEM -out postfix.cert -newkey rsa2048
    -nodes -keyout postfix.key keyfo rm PEM -days
    999 -x509
  • Generating a 2048 bit RSA private key
  • .........................
  • ..........................................
  • writing new private key to 'postfix.key'
  • -----
  • You are about to be asked to enter information
    that will be incorporated
  • into your certificate request.
  • What you are about to enter is what is called a
    Distinguished Name or a DN.
  • There are quite a few fields but you can leave
    some blank
  • For some fields there will be a default value,
  • If you enter '.', the field will be left blank.
  • -----
  • Country Name (2 letter code) AU CL
  • State or Province Name (full name) Some-State
    Region Metropolitana
  • Locality Name (eg, city) Santiago
  • Organization Name (eg, company) Internet Widgits
    Pty Ltd uamericas
  • Organizational Unit Name (eg, section)
    informatica
  • Common Name (eg, YOUR name) profe

18
SASL
  • La capa de seguridad y autenticación simple
    (Simple Authentication and Security Layer SASL)
    es un entorno de trabajo para autenticación y
    autorización en protocolos de Internet.
  • Separa los mecanismos de autenticación de los
    protocolos de la aplicación permitiendo, en
    teoría, a cualquier protocolo de aplicación que
    use SASL usar cualquier mecanismo de
    autenticación soportado por SASL.
  • A pesar de que mediante SASL sólo se maneja la
    autenticación y que se requieren otros mecanismos
    --como por ejemplo TLS-- para cifrar el contenido
    que se transfiere, SASL proporciona medios para
    un uso negociado del mecanismo elegido.
  • Un mecanismo SASL se modela como una sucesión de
    retos y respuestas.

19
Mecanismos SASL
  • Los mecanismos definidos por SASL incluyen
  • "EXTERNAL", aquí la autenticación está implícita
    en el contexto (p.ej. para protocolos que ya usan
    IPsec o TLS).
  • "ANONYMOUS", para el acceso de invitados sin
    autentificar.
  • "PLAIN", un mecanismo de contraseña simple en
    texto claro.
  • "OTP" para el sistema que evolucionó de S/KEY y
    que está definido en RFC 2289.
  • "NTLM".
  • Se prevé soportar los mecanismos GSSAPI en una
    familia de nomenclatura de mecanismos.
  • Lo protocolos definen su representación de
    intercambios SASL con un perfil.
  • Un protocolo tiene un nombre de servicio como
    "LDAP" en un registro compartido con GSSAPI y
    Kerberos.
  • Entre los protocolos que ahora mismo usan SASL se
    incluyen IMAP, LDAP, POP3, SMTP y XMPP.

20
Gestión de seguridad en redes TCP/IP SNMP
  • El Protocolo Simple de administración de red o
    SNMP (RFC 1157) es un protocolo de la capa de
    aplicación que facilita el intercambio de
    información de administración entre dispositivos
    de red.
  • Es parte de la suite de protocolos TCP/IP.
  • SNMP permite a los administradores supervisar el
    desempeño de la red, buscar y resolver sus
    problemas, y planear su crecimiento.
  • Las versiones de SNMP más utilizadas son dos
  • SNMP versión 1 (SNMPv1) y
  • SNMP versión 2 (SNMPv2).
  • Ambas versiones tienen varias características en
    común, pero SNMPv2 ofrece mejoras.
  • SNMP en su última versión (SNMPv3) posee cambios
    significativos con relación a sus predecesores,
    sobre todo en aspectos de seguridad, sin embargo
    no ha sido aceptado mayoritariamente por la
    industria.

21
Componentes básicos de SNMP
  • Una red administrada a través SNMP consiste de
    tres componentes claves
  • Dispositivos administrados.
  • Agentes.
  • Sistemas administradores de red (NMSs)
  • Un dispositivo administrado es un nodo de red que
    contiene un agente SNMP y reside en una red
    administrada. Estos recogen y almacenan
    información de administración, la cual es puesta
    a disposición de los NMSs usando SNMP. Los
    dispositivos administrados, a veces llamados
    elementos de red, pueden ser routers, servidores
    de acceso, switches, bridges, hubs, computadores
    o impresoras.
  • Un agente es un módulo de software de
    administración de red que reside en un
    dispositivo administrado. Un agente posee un
    conocimiento local de información de
    administración, la cual es traducida a un formato
    compatible con SNMP.
  • Un NMS ejecuta aplicaciones que supervisan y
    controlan a los dispositivos administrados. Los
    NMSs proporcionan el volumen de recursos de
    procesamiento y memoria requeridos para la
    administración de la red. Uno o más NMSs deben
    existir en cualquier red administrada.

22
Contexto del protocolo SNMP
23
Comandos básicos de SNMP
  • Los dispositivos administrados son supervisados y
    controlados usando cuatro comandos SNMP básicos
  • lectura,
  • escritura,
  • notificación y
  • operaciones transversales.
  • El comando de lectura es usado por un NMS para
    supervisar elementos de red. El NMS examina
    diferentes variables que son mantenidas por los
    dispositivos administrados.
  • El comando de escritura es usado por un NMS para
    controlar elementos de red. El NMS cambia los
    valores de las variables almacenadas dentro de
    los dispositivos administrados.
  • El comando de notificación es usado por los
    dispositivos administrados para reportar eventos
    en forma asincrónica a un NMS. Cuando cierto tipo
    de evento ocurre, un dispositivo administrado
    envía una notificación al NMS.
  • Las operaciones transversales son usadas por el
    NMS para determinar qué variables soporta un
    dispositivo administrado y para recoger
    secuencialmente información en tablas de
    variables, como por ejemplo, una tabla de rutas.

24
Base de información de administración SNMP (MIB)
  • Una base de información de administración (MIB)
    es una colección de información que está
    organizada jerárquicamente.
  • Las MIBs son accedidas usando un protocolo de
    administración de red, como por ejemplo, SNMP.
  • Un objeto administrado (algunas veces llamado
    objeto MIB, objeto, o MIB) es uno de cualquier
    número de características específicas de un
    dispositivo administrado. Los objetos
    administrados están compuestos de una o más
    instancias de objeto, que son esencialmente
    variables.
  • Existen dos tipos de objetos administrados
    Escalares y tabulares. Los objetos escalares
    definen una simple instancia de objeto. Los
    objetos tabulares definen múltiples instancias de
    objeto relacionadas que están agrupadas
    conjuntamente en tablas MIB.
  • Un ejemplo de un objeto administrado es atInput,
    que es un objeto escalar que contiene una simple
    instancia de objeto, el valor entero que indica
    el número total de paquetes AppleTalk de entrada
    sobre una interfaz de un router.
  • Un identificador de objeto (object ID) únicamente
    identifica un objeto administrado en la jerarquía
    MIB. La jerarquía MIB puede ser representada como
    un árbol con una raíz anónima y los niveles que
    son asignados por diferentes organizaciones.

25
Jerarquías asignadas por las diferentes
organizaciones
26
Árbol MIB (2)
  • Los identificadores de los objetos ubicados en la
    parte superior del árbol pertenecen a diferentes
    organizaciones estándares, mientras los
    identificadores de los objetos ubicados en la
    parte inferior del árbol son colocados por las
    organizaciones asociadas.
  • Los vendedores pueden definir ramas privadas que
    incluyen los objetos administrados para sus
    propios productos.
  • Las MIBs que no han sido estandarizadas
    típicamente están localizadas en la rama
    experimental.
  • El objeto administrado atInput podría ser
    identificado por el nombre de objeto
    iso.identified-organization.dod.internet.private.e
    nterprise.cisco.temporary.AppleTalk.atInput o por
    el descriptor de objeto equivalente
    1.3.6.1.4.1.9.3.3.1.

27
MIB - 2
  • El corazón del árbol MIB se encuentra compuesto
    de varios grupos de objetos, los cuales en su
    conjunto son llamados mib-2.
  • Los grupos son los siguientes
  • System (1)
  • Interfaces (2)
  • AT (3)
  • IP (4)
  • ICMP (5)
  • TCP (6)
  • UDP (7)
  • EGP (8)
  • Transmission (10)
  • SNMP (11)

28
Mensajes SNMP
  • Para realizar las operaciones básicas de
    administración, el protocolo SNMP utiliza un
    servicio no orientado a la conexión (UDP) para
    enviar un pequeño grupo de mensajes (PDUs) entre
    los administradores y agentes.
  • Utilizar un mecanismo de este tipo asegura que
    las tareas de administración de red no afectarán
    al rendimiento global de la misma, ya que se
    evita la utilización de mecanismos de control y
    recuperación como los de un servicio orientado a
    la conexión (TCP).
  • Los puertos asignados por la IANA para SNMP son
  • Puerto Protocolo Descripción
  • 161 tcp SNMP
  • 161 udp SNMP
  • 162 tcp SNMP-trap
  • 162 udp SNMP-trap

29
Mensajes SNMP (2)
  • GetRequest A través de este mensaje el NMS
    solicita al agente retornar el valor de un objeto
    de interés mediante su nombre. En respuesta el
    agente envía una respuesta indicando el éxito o
    fracaso del requerimiento. Si el requerimiento
    fue adecuado, el mensaje resultante también
    contendrá el valor del objeto solicitado. Este
    mensaje puede ser usado para recoger un valor de
    un objeto, o varios valores de varios objetos, a
    través del uso de listas.
  • GetNextRequest Este mensaje es usado para
    recorrer una tabla de objetos. Una vez que se ha
    usado un mensaje GetRequest para recoger el valor
    de un objeto, puede ser utilizado el mensaje
    GetNextRequest para repetir la operación con el
    siguiente objeto de la tabla. Siempre el
    resultado de la operación anterior será utilizado
    para la nueva consulta. De esta forma un NMS
    puede recorrer una tabla de largo variable hasta
    que haya extraído toda la información para cada
    fila existente.
  • SetRequest Este tipo de mensaje es utilizado por
    el NMS para solicitar a un agente modificar
    valores de objetos. Para realizar esta operación
    el NMS envía al agente una lista de nombres de
    objetos con sus correspondientes valores.
  • GetResponse Este mensaje es usado por el agente
    para responder un mensaje GetRequest,
    GetNextRequest, o SetRequest.

30
Mensajes SNMP (3)
  • Trap Un trap es generado por el agente para
    reportar ciertas condiciones y cambios de estado
    a un proceso de administración.
  • SNMP inicialmente soportó un número limitado de
    traps desde los dispositivos administrados
  • Cold start Indica que el agente ha sido
    inicializado o reinicializado.
  • Warm start Indica que la configuración del
    agente ha cambiado.
  • Link down Indica el cambio en el estado (fuera
    de servicio) de una interfaz de comunicación.
  • Link up Indica el cambio en el estado (en
    servicio) de una interfaz de comunicación.
  • Authentication failure Indica que el agente ha
    recibido un requerimiento de un administrador no
    autorizado.
  • EGP neighbor loss Indica que en sistemas en que
    los routers están utilizando el protocolo EGP, un
    equipo colindante se encuentra fuera de servicio.
  • Todos los nuevos traps que son incluidos por los
    vendedores se encuentran clasificados en la
    categoría enterprise.
  • GetBulkRequest Este mensaje es usado por un NMS
    que utiliza la versión 2 del protocolo SNMP
    típicamente cuando es requerida una larga
    transmisión de datos, tal como la recuperación de
    largas tablas. En este sentido es similar al
    mensaje GetNextRequest usado en la versión 1 del
    protocolo, sin embargo, GetBulkRequest es un
    mensaje que implica un método mucho más rápido y
    eficiente, ya que a través de un solo mensaje es
    posible solicitar valores de múltiples objetos
    administrados.
  • InformRequest Un NMS que utiliza la versión 2
    del protocolo SNMP transmite un mensaje de este
    tipo a otro NMS con las mismas características,
    para notificar información sobre objetos
    administrados.

31
SNMP v3
  • Define capacidades de seguridad en conjunto para
    emplear sobre SNMP v1 y v2

32
Tipos de ataques a redes
  • Exploit (explotar, aprovechar) es el nombre con
    el que se identifica un programa informático
    malicioso, o parte del programa, que trata de
    forzar alguna deficiencia o vulnerabilidad de
    otro programa.
  • El fin puede ser la destrucción o inhabilitación
    del sistema atacado, aunque normalmente se trata
    de violar las medidas de seguridad para poder
    acceder al mismo de forma no autorizada y
    emplearlo en beneficio propio o como origen de
    otros ataques a terceros.
  • Los exploits se pueden caracterizar según las
    categorías de vulnerabilidades utilizadas
  • de desbordamiento de buffer.
  • de condición de carrera (race condition).
  • de error de formato de cadena (format string
    bugs).
  • de Cross Site Scripting (XSS).
  • de Inyección SQL.
  • de Inyección de Caracteres (CRLF).
  • de denegación del servicio (DoS)
  • de Inyección múltiple HTML (Multiple HTML
    Injection).
  • de ventanas engañosas o mistificación de ventanas
    (Window Spoofing).

33
Sniffing
  • Un sniffer (un sniffer de paquetes), se define
    como una pieza de software o hardware que se
    conecta a una red informática y supervisa todo el
    tráfico que pasa por la misma.
  • Registra la información que envían los
    periféricos, así como la actividad realizada en
    un determinado ordenador.
  • Al igual que los dispositivos de intervención de
    teléfonos que usan las autoridades para escuchar
    conversaciones de otras personas, un programa de
    sniffing permite a alguien escuchar las
    conversaciones entre ordenadores que fluyen por
    las redes.

34
Riesgos
  • Son una amenaza grave para la seguridad no sólo
    de una máquina sino también de toda una red.
  • Lamentablemente, una gran cantidad de tráfico
    confidencial viaja en claro, sin ningún tipo de
    cifrado, por las redes de la mayoría de las
    empresas.
  • Ese es el entorno ideal para un sniffer, que
    puede acceder de forma transparente a esa
    información, y permitir que alguien abuse de su
    conocimiento.
  • Por eso es muy importante realizar búsquedas
    periódicas de sniffers dentro de las redes de
    cualquier empresa, no sólo por el daño que puedan
    causar, sino también porque encontrarlos es señal
    de que se ha producido y explotado una grave
    brecha y hay que tomar medidas inmediatas.
  • Existen casos en los que un sniffer no es
    peligroso. A veces, explorando una red en busca
    de sniffers se detectará que hay algunos, por
    ejemplo, en máquinas que dependen del
    departamento de administración de redes.
  • Esto puede ocurrir porque, en realidad, un
    sniffer no se diferencia demasiado de una
    herramienta de monitorización y diagnosis del
    tráfico de red que puede estar siendo
    legítimamente utilizada por personal encargado de
    la administración de la red.
  • Otros dispositivos, especialmente routers y hub,
    suelen producir falsos positivos que hay que
    tener en cuenta.

35
Usos típicos de un sniffer
  • Captura automática de contraseñas enviadas en
    claro y nombres de usuario de la red. Esta
    capacidad es utilizada en muchas ocasiones por
    hackers para atacar sistemas a posteriori.
  • Conversión del tráfico de red en un formato
    entendible por los humanos.
  • Análisis de fallos para descubrir problemas en la
    red, tales como por qué el computador A no
    puede establecer una comunicación con el
    computador B?
  • Medición del tráfico, mediante el cual es posible
    descubrir cuellos de botella en algún lugar de la
    red.
  • Detección de intrusos, con el fin de descubrir
    hackers.
  • Existen programas específicos llamados Sistemas
    de Detección de intrusos (Intrusion Detection
    System - IDS ), que son prácticamente sniffers
    con funcionalidades específicas.
  • Creación de registros de red, de modo que los
    hackers no puedan detectar que están siendo
    investigados.

36
Búsqueda de sniffers
  • Hay diferentes aproximaciones sobre cómo detectar
    un sniffer, según se tenga acceso local a la
    máquina, o bien haya que descubrirlos desde
    alguna máquina remota.
  • El objetivo que la mayoría de pruebas tratan de
    conseguir es que la máquina que tiene la tarjeta
    de red en modo promiscuo se traicione a sí misma,
    revelando que ha tenido acceso a información que
    no iba dirigida a ella y que, por tanto, tiene un
    sniffer.
  • Éste es un objetivo ambicioso y complejo que,
    lamentablemente, puede no ser alcanzado, ya que a
    veces resulta completamente imposible detectar un
    sniffer.
  • Por ejemplo, si el sniffer ha sido diseñado
    exclusivamente para esta tarea (generalmente
    dispositivos hardware), entonces no devolverá
    jamás un paquete, no establecerá nunca una
    comunicación, sino que permanecerá siempre en
    silencio y su detección remota será, simplemente,
    imposible.
  • La detección de este tipo de sniffers sólo puede
    hacerse por inspección directa de los
    dispositivos conectados a la red.

37
Técnicas de detección local
  • Aunque no se trata de una tarea trivial, ésta es,
    con mucho, la situación en que resulta más
    sencillo localizar un sniffer.
  • Normalmente basta con revisar la lista de
    programas en ejecución para detectar alguna
    anomalía ( CTRLALTSUPR o psauxmore ).
  • Otro buen sitio donde mirar es en la lista de los
    programas que se inician automáticamente al
    encender el PC archivos /etc/rc.d/rcX.d/ o
    .bashrc, etc... en un sistema Unix y autoexec.bat
    o ciertas claves del Registry en una máquina
    Windows) o las tareas programadas (cron, at).
  • Es importante destacar que los ejemplos
    anteriores son sólo triviales y no pretenden ser
    una enumeración exhaustiva.
  • Hay decenas de posibilidades, algunas muy
    ingeniosas y nada elementales.
  • Cualquier novedad o anomalía debe ser investigada
    en profundidad porque podría revelar no sólo un
    sniffer en funcionamiento sino también otros
    programas que supongan una grave amenaza virus,
    troyanos, gusanos, etc...
  • Herramientas de detección local En una máquina
    con alguno de los sistemas operativos de la
    familia Unix se dispone de una utilidad que
    resulta especialmente valiosa en la lucha contra
    los sniffers ifconfig, que informa del estado de
    todas las interfaces de red del sistema e indica
    si alguna de ellas se encuentra en modo
    promiscuo. Evidentemente, esta metodología de
    detección local de sniffers depende del buen
    funcionamiento de ifconfig.

38
Detección remota desde el mismo segmento de red
  • Es en este entorno donde el administrador de
    seguridad tiene que realizar su investigación con
    mayor frecuencia.
  • Existen técnicas heurísticas útilies, aunque
    tienen limitaciones Puede que exista un sniffer
    en la red que no sea detectado (falso negativo) o
    que máquinas o usuarios completamente inocentes
    sean detectados como sniffers (falsos positivos).
  • Por su ámbito de aplicación, estas técnicas se
    pueden dividir en dos grupos
  • Dependientes del sistema operativo. Como su
    propio nombre indica, estas técnicas usan algún
    fallo o característica propia de determinados
    sistemas operativos (o parte de ellos, como el
    subsistema TCP/IP) para reconocer a una tarjeta
    de red en modo promiscuo. La ventaja que tienen
    es su excelente rendimiento cuando se exploran
    máquinas que tienen justamente la versión del
    sistema operativo del que la técnica obtiene
    partido. La desventaja fundamental es el gran
    número de falsos negativos que ocasiona debido a
    que en muchos casos las implementaciones de la
    pila TCP/IP varían entre versiones del mismo
    sistema operativo con la acción a nivel físico,
    es volver a inspeccionar la MAC de destino,
    aunque también se puede hacer a nivel de IP.
  • No dependientes del sistema operativo. En general
    son menos fiables y menos concluyentes. Suelen
    basarse en suposiciones sobre el comportamiento
    de determinados sniffers, que pueden no darse en
    casos concretos, convirtiendo alguna de estas
    técnicas en completamente inútiles. Otras son más
    generales, pero poco resolutivas, porque no
    clasifican, simplemente dan indicios que en
    muchos casos no son suficientes. No suelen
    proporcionar muchos falsos positivos, aunque
    pueden ser burladas y utilizadas para inculpar a
    terceras personas. Tampoco falsos negativos,
    aunque la última generación de sniffers ya
    incorpora técnicas de evasión bastante
    sofisticadas que evita su detección.

39
Spoofing
  • Uso de técnicas de suplantación de identidad
    generalmente con usos maliciosos o de
    investigación. En general, se puede englobar
    dentro de spoofing cualquier tecnología de red
    susceptible de sufrir suplantaciones de
    identidad.
  • Existen diferentes tipos
  • IP spoofing Sustituir IP origen de un paquete
    TCP/IP por otra IP a la cual se desea suplantar.
  • ARP spoofing Construcción de tramas ARP de
    solicitud y respuesta falseadas con el objetivo
    de falsear la tabla ARP (relación IP-MAC) de una
    víctima y forzarla a que envíe los paquetes a un
    host atacante en lugar de hacerlo a su destino
    legítimo.
  • DNS spoofing Falsear relación "Nombre de
    dominio-IP" ante una consulta de resolución de
    nombre resolver con una dirección IP falsa un
    cierto nombre DNS o viceversa. Esto se consigue
    falseando las entradas de la relación Nombre de
    dominio-IP de un servidor DNS, mediante alguna
    vulnerabilidad del servidor en concreto o por su
    confianza hacia servidores poco fiables. Las
    entradas falseadas de un servidor DNS son
    susceptibles de infectar (envenenar) el caché DNS
    de otro servidor diferente (DNS Poisoning).

40
Spoofing (2)
  • Web spoofing Enruta la conexión de una víctima a
    través de una página falsa hacia otras páginas
    WEB con el objetivo de obtener información de
    dicha víctima (páginas WEB visitas, información
    de formularios, contraseñas etc.). La página WEB
    falsa actúa a modo de proxy solicitando la
    información requerida por la víctima a cada
    servidor original y saltándose incluso la
    protección SSL. El atacante puede modificar
    cualquier información desde y hacia cualquier
    servidor que la víctima visite. La víctima puede
    abrir la página Web falsa mediante cualquier tipo
    de engaño, incluso abriendo un simple LINK. Es
    difícilmente detectable, quizá la mejor medida es
    algún plugin del navegador que muestre en todo
    momento la IP del servidor visitado, si la IP
    nunca cambia al visitar diferentes páginas Web
    significará que probablemente estemos sufriendo
    este tipo de ataque.
  • e-mail spoofing Usada para enviar e-mails hoax,
    como suplemento perfecto para el uso de phising y
    para SPAM. Es tan sencilla como usar un servidor
    SMTP configurado para tal fin. Para protegerse se
    debería comprobar la IP del remitente, para
    averiguar si realmente esa ip pertenece a la
    entidad que indica en el mensaje y la dirección
    del servidor SMTP utilizado. Otra técnica de
    protección es el uso de firmas digitales.

41
Desbordamiento de búfer
  • Un desbordamiento de búfer (buffer overflow) es
    un error de software que se produce cuando se
    copia una cantidad más grande de datos sobre un
    área más pequeña sin interrumpir la operación,
    sobrescribiendo otras zonas de memoria.
  • En algunas ocasiones eso puede suponer la
    posibilidad de alterar el flujo del programa
    pudiendo hacer que éste realice operaciones no
    previstas.
  • Esto es posible dado que en las arquitecturas
    comunes de ordenadores, la memoria no tiene
    separación entre la dedicada a datos y a
    programa.
  • Si el programa que tiene el error en cuestión
    tiene privilegios especiales se convierte además
    en un fallo de seguridad.
  • El código copiado especialmente preparado para
    obtener los privilegios del programa atacado se
    llama shellcode.

42
Referencias en Internet(Conjunto mínimo en
español)
  • Seguridad en UNIX y Redes (otro link)
  • Criptonomicon
  • Secure Socket Layer (SSL)
  • Transport Layer Security
  • Centro de información de SSL - VeriSign, Inc.
  • Firewalls, Routers y Proxys
  • BULMA iptables y NAT para vagos
  • SASL
  • SNMP
  • Introducción al arte del sniffing
  • Guía breve de detección de sniffers en una red
  • Spoofing

43
Referencias en Internet (en Inglés)
  • Network Access Control Learning Guide
  • Information Security Learning Guides
  • Página oficial de SNMP
  • Net-SNMP
  • Página oficial de OpenSSL
  • Guide to IP Layer Network Administration with
    Linux V0.4.4 Martin A. Brown

44
Bibliografía en Textos
  • Eric Maiwald Fundamentos de Seguridad de Redes
    Parte III. Tecnologías de seguridad.
  • William Stalings Fundamentos de Seguridad en
    Redes Aplicaciones y Estándares Segunda Parte.
    Aplicaciones de seguridad en redes.
  • Richard Bejtlich El Tao De La Monitorización De
    La Seguridad De Redes Prentice Hall 1ra ed.
    2005, ISBN 8420546003
Write a Comment
User Comments (0)
About PowerShow.com