Está en la página 1de 42

Asociación Profesional del Cuerpo Superior

de Sistemas y Tecnologías de la Información


de la Administración del Estado

Temas Específicos para la preparación de la Oposición al Cuerpo


Superior de Sistemas y Tecnologías de la Información de la
Administración del Estado.

TEMAS ESPECÍFICOS IV: Redes, Comunicaciones e Internet.

111. La seguridad en redes. Control de accesos. Técnicas


criptográficas. Mecanismos de firma digital. Control de intrusiones.
Cortafuegos. Seguridad en nivel de aplicación: protección de servicios
web, bases de datos e interfaces de usuario.

AUTOR: Rafael Pérez Galindo


Actualizado 2014

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
111. La seguridad en redes. Control de accesos. Técnicas
criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación:
protección de servicios web, bases de datos e interfaces de
usuario.

Autor: Rafael Pérez Galindo

Índice

1. Introducción................................................................................................. 3
2. La seguridad en redes................................................................................. 7
3. Control de accesos ................................................................................... 13
4. Técnicas criptográficas.............................................................................. 22
5. Mecanismos y formatos de firma digital .................................................... 23
6. Control de Intrusiones ............................................................................... 28
7. Cortafuegos (Firewalls) ............................................................................. 29
8. Seguridad en el nivel de aplicación: protección de servicios web, bases de
datos, e interfaces de usuarios......................................................................... 32
9. Referencias ............................................................................................... 42

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
1. Introducción
El mundo de las redes ha sufrido una enorme transformación en los últimos años y el uso de
infraestructuras y sistemas de información y telecomunicaciones ha generado una nueva
realidad y cambios en nuestra sociedad. Este nuevo espacio de intercambio de información y
comunicación también conlleva riesgos y las consecuencias de la interrupción o alteración de
las redes puede afectar al desarrollo económico y al bienestar social.

En respuesta a esta creciente necesidad de preservar la seguridad del ciberespacio por su


enorme repercusión en la sociedad, economía y competitividad nacional, numerosos países
han publicado sus respectivos documentos estratégicos con los elementos necesarios para
proteger el ciberespacio.

El gobierno español, a instancia del Consejo de Seguridad Nacional aprobó el 5 de diciembre


1
de 2013 la Estrategia de Ciberseguridad Nacional . El documento consta de cinco capítulos en
los que se presentan las características que definen el ciberespacio, se fijan las directrices
generales para su uso seguro, se trazan los objetivos y se definen las líneas de acción
estratégicas de la Ciberseguridad Nacional, al tiempo que se establece la estructura orgánica a
su servicio.

Por otro lado, respecto a la primera línea estratégica de acción (incrementar la capacidad de
prevención, detección, investigación y respuesta ante las ciberamenazas) de la Estrategia de
Ciberseguridad Nacional, destaca el CERT (Computer Emergency Response Team) de
Seguridad e Industria, creado conjuntamente por los Ministerios de Interior e Industria, Energía
y Turismo a través de la Secretaría de Estado de Telecomunicaciones y para la Sociedad de la
Información. Este CERT tiene su sede en el Instituto Nacional de Tecnologías de la
Comunicación (INTECO). De esta forma, en respuesta a incidentes sobre las tecnologías de la
información de las infraestructuras críticas ubicadas en España, INTECO se convierte en una
herramienta de apoyo al CNPIC (Centro Nacional para la Protección de las Infraestructuras
2
Críticas) en la gestión de incidentes de ciberseguridad . Por otro lado, el CCN-CERT se crea
como CERT nacional gubernamental y tiene responsabilidad en ciberataques sobre sistemas
de las Administraciones Públicas.

Por último, con el fin de ofrecer a los usuarios el mayor grado de seguridad posible, la Unión
3
Europea ha creado mediante el Reglamento (CE) nº 460/2004 del Parlamento Europeo y del
Consejo, de 10 de marzo de 2004, la agencia ENISA (Agencia Europea de Seguridad de las
Redes y de la Información). Su función principal es la prevención, reacción, gestión y
asesoramiento en seguridad y la coordinación entre los países de la Unión.

1.1. La seguridad como proceso: política de seguridad


El número de amenazas, ataques e incidentes en los últimos años ha servido para aumentar la
concienciación en la seguridad. Los sistemas de información están expuestos a amenazas que,
aprovechando cualquiera de las vulnerabilidades existentes, pueden producir un daño sobre los
activos de información. A esto se añade que las amenazas crecen muy rápido y evolucionan de

1
http://www.lamoncloa.gob.es/documents/20131332estrategiadeciberseguridadx.pdf
2
http://www.inteco.es/CERT/Infraestructuras_Criticas/
3
http://eur-lex.europa.eu/legal-
content/ES/ALL/;ELX_SESSIONID=xG34T2WYs3T1nJ0hBf49xfCQxBSdg4kDqK9jLphM6ZzNkS2khgnY!-
1784156891?uri=CELEX:32004R0460

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
manera vertiginosa y, en consecuencia, se han de reforzar las medidas de seguridad
previamente establecidas.

En este escenario, es necesario conocer las vulnerabilidades y las amenazas de forma


dinámica y gestionarlas de forma adaptativa en una mejora continua. Esta mejora continua de
los niveles de seguridad de la organización es un proceso para la protección de los recursos y
la información existente en la red que se mantiene a través de procedimientos basados en
políticas de seguridad.

En consecuencia, la seguridad debe verse como un proceso continuo. De hecho, la propia


norma UNE-ISO/IEC 27001 que define un Sistema de Gestión de Seguridad de la Información,
se encuentra enfocada a la mejora continua.

La política de seguridad está constituida por el conjunto de directrices que regula la utilización
de recursos y el tratamiento de la información en un sistema. Se concretará en un modelo de
seguridad formal, para ser finalmente implementada mediante mecanismos de seguridad
concretos.

1.2. Algunos ejemplos de ataques


En los últimos años, se han observado diversas amenazas en el ciberespacio, incluso
manifestadas en ciberataques. Se describirán brevemente algunos de los ataques recientes
que han tenido más repercusión e impacto.

Ataque distribuido de denegación de servicio DDoS (Distributed Denial of Service). Los


ataques de denegación de servicio son tan antiguos como las máquinas. El ataque DDoS
consiste en efectuar una enorme cantidad de peticiones a una computadora o servidor web con
el propósito de provocar una sobrecarga de los recursos del sistema informático hasta que la
red se ralentiza por los accesos masivos y no pueda satisfacer las solicitudes de usuarios
legítimos. El ataque DDoS utiliza múltiples equipos (esto le diferencia del ataque DoS que se
se lleva a cabo en un solo ordenador) contra un único sistema. Si la red de ordenadores
atacante es producto de la infección por software malicioso (botnets), suele ocurrir que los
usuarios legítimos de estos equipos no son conscientes de estar realizando el ataque, lo que
siembra ciertas dudas sobre la responsabilidad final de estos usuarios cuyos equipos sirven de
atacantes involuntarios. Como ejemplos de este tipo de ataque destacan:

 Ciberataque de marzo de 2013 contra una organización que se dedicaba al spam, lo


que provocó que la velocidad de Internet en todo el mundo fuese reducida por el
incidente.

 En julio de 2014, hackers del grupo “Ciberberkut” bloquearon con un ataque DDoS
durante casi 24 horas la página del presidente de Ucrania, a quien acusaron de
genocidio de su pueblo.

 Ataques a proveedores del servicio DNS de tiendas virtuales como Amazon e e-Bay en
varias ocasiones en los últimos años. El trastorno económico no sólo deriva de la
ausencia de ventas durante el tiempo de caída por denegación, sino también de la
pérdida de confianza de los posibles usuarios.

Ataque por desbordamiento de buffer (Buffer Overflow). Este tipo de ataque se basa en un
fallo de programación que se produce por ausencia de control adecuado de la cantidad de
datos que se copian sobre un área de memoria reservada a tal efecto (buffer). Asimismo,
suelen estar diseñados para activar la ejecución de un código arbitrario al ocurrir esta situación
y conseguir el control de la máquina con los máximos privilegios. Un ejemplo de este ataque es
una vulnerabilidad en la librería criptográfica de OpenSSL:

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Bug Heartbleed. Las implementaciones de TSL de determinadas versiones de
OpenSSL no manejan adecuadamente algunos paquetes construidos específicamente
para provocar un desbordamiento de buffer. Esta debilidad reportada en abril de 2014,
permite obtener información sensible alojada en la memoria del sistema afectado.

Ataques de ingeniería social. Se trata de explotar la tendencia de los seres humanos a


confiar en los demás especialmente en aquellos temas que más desconocemos. El atacante se
hace pasar por personal de explotación o del grupo de sistemas para obtener las palabras de
paso de los usuarios por teléfono. Otra técnica muy empleada es el “phising” que consiste en
enviar correos electrónicos que aparentan provenir de fuentes fiables, típicamente bancos.

 Phising del mundial de fútbol de 2014. A principios de 2014, se recibe este tipo de
ataque que consistía en proponer al usuario un enlace hacia un sitio web para ganar
entradas para los partidos del mundial de fútbol. El sitio web solicitaba al usuario sus
datos personales y bancarios.

Ataques de fraude telefónico. Suponen por ejemplo la conexión de locutorios a nuestro punto
de acceso telefónico con el consiguiente incremento de nuestra factura telefónica, y nos ponen
de manifiesto la necesidad de proteger el acceso físico a nuestros recursos. Un ejemplo es la
evolución en telefonía de voz sobre IP (VoIP) del ataque “phreaking” a la infraestructura
telefónica convencional:

 “VoIPhreaking”: hackear, explorar y explotar la infraestructura telefónica de VoIP, a los


efectos de realizar llamadas telefónicas gratuitas, en fraude a las compañías
telefónicas.

Ataques mediante escuchas de redes. El “sniffing” es el proceso de interceptación de datos


que se está emitiendo en una red no segura y permite escuchas a través de un programa que
captura la información de la red (sniffers), tarjetas de red en modo promiscuo, etc.
Habitualmente es utilizado en redes inalámbricas. En el ejemplo siguiente se muestra como
también se puede utilizar para el análisis de mensajes en aplicaciones de uso habitual:

 “WhatsAppSniffer”: Mediante un fallo de seguridad en la aplicación de mensajería


WhatsApp, se podría obtener los chats de otros terminales si están conectados a la
misma red Wi-Fi del atacante.

Ataques basados en la mala administración de los sistemas. En varias ocasiones, los


atacantes realizan ataques mixtos y aprovechan las vulnerabilidades del software y de la mala
administración realizada por la organización. Ejemplos de este tipo de ataque son los
acontecidos a los sistemas de información de entidades que deben generar confianza como las
Infraestructuras de clave pública (PKI) de los Prestadores de Servicios de Certificación (PSC):

 Diginotar: En julio de 2011, el PSC holandés Diginotar fue atacado y el resultado fue la
emisión de más de 500 certificados falsos de sitios web conocidos. En los sistemas de
Diginotar, el pirata informático descubre y explota varias vulnerabilidades de seguridad
de la autoridad de certificación (CA), como demuestra el análisis forense que encontró
software malicioso fácilmente detectado por un antivirus, herramientas de hacking y
parte de software sin parchear. Además, el pirata aprovecha la mala administración de
los sistemas realizada por la organización debido a la nula separación de los
componentes en dominios de seguridad, mala estructuración de la red, inexistente
separación de funciones y la ubicación de todos los servidores de la CA en el mismo
dominio Windows con contraseña débil de administrador.

 Comodo. En marzo de 2011, se generan certificados SSL sin una correcta verificación
en el PSC Comodo. En este caso el hacker no ataca la infraestructura de la CA y la
acción se dirige al componente encargado de la verificación de la identidad. Se
compromete la Autoridad de Registro (RA) con la obtención del usuario y contraseña.
5

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
Estos ataques mediante virus informáticos, DDoS, hacking son algunos ejemplos conocidos,
pero también es necesario considerar los incidentes causados voluntaria o involuntariamente
desde dentro de la propia organización o los originados por catástrofes naturales.

En cualquier caso, como se ha observado en los ejemplos de ataques descritos anteriormente,


los productos y sistemas de información presentan vulnerabilidades o fallos de seguridad. Es
imposible evitar los fallos de seguridad al 100% y son inevitables, siempre existen.

Por lo tanto, la idea es tratar de evitar las vulnerabilidades, identificarlas y corregirlas antes de
que puedan ser utilizadas. La organización debe saber cuáles son las principales
vulnerabilidades de sus activos de información y cuáles son las amenazas que podrían explotar
las vulnerabilidades. También debe estudiar la probabilidad del ataque a sus sistemas, analizar
si la amenaza se llevará a cabo utilizando la vulnerabilidad existente y definir un plan de acción
para afrontar los riesgos de seguridad. El objetivo no es la ausencia de fallos de seguridad,
sino la confianza en que están bajo control y que se conocen los riesgos para poder afrontarlos
y controlarlos.

Partiendo de esa premisa, se debe buscar cómo gestionar los riesgos que supone la utilización
del software, tal y como hacen organizaciones como VISA. Estas organizaciones establecen un
control sobre los riesgos, saben que cuentan con una cifra de fraude que conocen
(estadísticamente) de antemano y que además pueden clasificar. Para la gestión de los riesgos
detectados, se puede seguir alguna metodología como MAGERIT (Metodología de Análisis y
Gestión de Riesgos).

Se ha de tener claro que las medidas de seguridad tales como cortafuegos, el cifrado, o las
infraestructuras de clave pública, no evitan los riesgos, aunque sí los reducen. Se debe romper
la falsa ilusión de seguridad de los productos que se nos ofrecen como la panacea y que rara
vez cumplen lo anunciado.

Como conclusión de lo anterior se puede extraer la necesidad de establecer una política de


seguridad clara, conocida y asumida por toda la organización, de forma que nadie pueda
sentirse tentado de „ayudar‟ en situaciones que deben estar claramente establecidas en dicha
política, tanto en su posibilidad como en sus consecuencias.

El objeto de la seguridad de los sistemas de información consiste sobre todo en mantener la


continuidad de los procesos de la organización que soportan dichos sistemas. La Política de
Seguridad debe definir las decisiones que ha tomado la organización en relación con la
seguridad de estos procesos. Es un documento fundamental respecto de la seguridad de la
entidad ya que documenta los fundamentos de los objetivos de seguridad y las bases para
llevarlos a cabo.

A lo largo del presente documento se referencian conceptos que han de quedar bien definidos,
por lo que a continuación, se incluyen varios de los términos más habituales utilizados:

• Activos: son los recursos del sistema de información o relacionados con éste,
necesarios para que la organización funcione correctamente y alcance los objetivos
propuestos por su dirección. Se puede distinguir diferentes categorías: información,
físicos, servicios de Tecnologías de Información y humanos.

• Amenaza: eventos que pueden desencadenar un incidente en la organización,


produciendo daños materiales o pérdidas inmateriales (tales como la imagen) en todos
o algunos de sus activos.

• Vulnerabilidad: debilidad en un sistema de información que puede ser explotada


mediante un ataque.

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
• Impacto: daño producido a la organización por la materialización de una amenaza
sobre una vulnerabilidad.

• Riesgo: probabilidad de que se produzca un impacto dado en la organización.

• Mecanismos de Seguridad: acciones llevadas a cabo encaminadas a reducir el riesgo


sobre alguna vulnerabilidad. Estas acciones pueden ser preventivas o curativas.

• Análisis de riesgos: proceso que consiste en identificar las amenazas que acechan a
los distintos activos para determinar la vulnerabilidad del sistema ante esas amenazas
y de esta forma estimar el impacto que una seguridad insuficiente puede tener para la
organización.

• Gestión de riesgos: proceso que consiste en seleccionar e implantar las salvaguardas


(tales como mecanismos de seguridad) adecuadas para conocer, prevenir, impedir y
reducir los riesgos identificados y sus posibles perjuicios.

2. La seguridad en redes
2.1. Dimensiones de la seguridad
Existen diversas definiciones del término Seguridad informática, pero se destacan las
definiciones ofrecidas por el estándar de seguridad de la información ISO/IEC 27001 y la
definición dada por Magerit:

 ISO/IEC 27001

“La seguridad informática consiste en la implantación de un conjunto de medidas


técnicas destinadas a preservar la confidencialidad, la integridad y la disponibilidad
de la información, pudiendo, además, abarcar otras propiedades, como la
autenticidad, la responsabilidad, la fiabilidad y el no repudio.”

 MAGERIT

”Seguridad es la capacidad de las redes o de los sistemas de información para resistir,


con un determinado nivel de confianza, los accidentes o acciones ilícitas o
malintencionadas que comprometan la disponibilidad, autenticidad, integridad y
confidencialidad de los datos almacenados o transmitidos y de los servicios que
dichas redes y sistemas ofrecen o hacen accesibles.”

Es ambas definiciones se observan los principios básicos de los objetivos de la Seguridad de la


Información, y en consecuencia el diseño de seguridad se enfoca al cumplimiento de estos
objetivos. Nos referimos a la denominada Triada CIA (Confidentiality, Integrity, Availability)
clásica:

 Confidencialidad: Propiedad que garantiza que la información llegue solamente


a las personas autorizadas e impide la divulgación a otras personas o sistemas
no autorizados.

 Integridad: Propiedad que mantiene con exactitud los datos originados, sin ser
manipulados o alterados por terceros.

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Disponibilidad: Disposición de los servicios a ser usados cuando sea necesario
por las personas o procesos autorizados en el momento que lo requieran. La
carencia de disponibilidad supone una interrupción del servicio.

Como también se puede comprobar en ambas definiciones, a la tradicional Triada CIA, se


pueden añadir otras características o propiedades, entre las que destacan:

 Autenticidad: Propiedad que permite identificar al generador de la información y


así poder asegurar el origen de la información. La identidad del emisor puede ser
validada, de modo que se puede demostrar que es quien dice ser.

 No repudio: Propiedad que permite probar la participación de las partes en una


comunicación. Si la autenticidad prueba quién es el autor de un documento y
cual es su destinatario, el “no repudio” prueba que el autor envió la comunicación
(no repudio en origen) y que el destinatario la recibió (no repudio en destino).

 Trazabilidad: capacidad para reconstruir el historial de la utilización o la


localización de producto mediante una identificación registrada

2.2. Principales problemas de seguridad en las redes


A la vista de lo indicando en la introducción, parece que la seguridad es un punto clave que
debe ser considerado en cualquier red. Se debe considerar que en las redes circulan muchos
tipos de datos, entre ellos algunos confidenciales. En consecuencia, no sólo es necesario
proteger el software y el hardware, sino que la información es el elemento principal a proteger.

Asimismo, estos datos necesitan ser comunicados entre diferentes sistemas, y es necesaria
una interconexión entre ellos. Los equipos de las organizaciones se interconectan en redes
para generar valor añadido y habilitar flujos de información entre los diferentes sistemas. Toda
esta interconexión permite que las amenazas a la seguridad aparezcan en los todos los puntos
a los que llegue la conectividad.

Atendiendo a los tres factores de seguridad (Confidencialidad, Integridad, Disponibilidad)


analizados en el punto anterior, las amenazas a la seguridad pueden ser clasificadas en
cuatros grupos dependiendo del factor de seguridad comprometido:

• Interrupción (afecta a la disponibilidad). Se corta el flujo de información entre el


emisor y el receptor. El acceso a un recurso/comunicación se ve interrumpido ya sea
físicamente (destrucción de la red...) o lógicamente (se modifica la localización, los
derechos de acceso...).

• Intercepción (afecta a la confidencialidad). Un elemento no autorizado consigue


acceso al sistema y al flujo de información. Alguien no autorizado consigue tener
acceso al recurso/comunicación (pinchar la línea de red, sniffing...).

• Modificación (afecta a la integridad). Una entidad consigue cambiar los datos del flujo
de información. Obtención no sólo de acceso no autorizado al recurso/comunicación,
sino también de la capacidad de modificarlo (modificación de los datos
enviados/recibidos entre dos ordenadores...).

• Fabricación (afecta a la integridad). Una entidad inventa y añade datos a los enviados
en el flujo de información. Además de conseguir acceso al recurso/comunicación, se
tiene la posibilidad de insertar información falsa.

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
Las amenazas intencionadas son las de mayor relevancia, pero no todas las amenazas son
deliberadas y asociadas a ataques con intenciones dañinas que explotan una vulnerabilidad.
En algunos casos, el término amenaza es usado para acciones que no buscan producir un
daño ni explotar una vulnerabilidad, pero que pueden ocasionar problemas en los activos.
Existen varios ejemplos de este tipo de amenaza, como los errores de configuración en los
sistemas o los accidentes. Una mala configuración por parte de los usuarios también
compromete a la seguridad y debe prevenirse mediante las medidas adecuadas.

2.2.1. Los usuarios de las redes. “Ingeniería social”.


En la mayoría de las organizaciones se realizan esfuerzos para contar con sistemas que
garanticen un nivel de confianza fiable respecto a la seguridad. Incluso, se podría considerar
que, desde el punto de vista del nivel de seguridad de los sistemas de la organización, el nivel
es óptimo. El eslabón tecnológico puede estar cubierto y ocurrir daños a los activos.

No obstante, el factor humano debe tenerse en cuenta y existe un principio que mantiene que
"los usuarios son el eslabón más débil". Una vulnerabilidad que pueden explotar los atacantes
es la vulnerabilidad humana. Los usuarios introducen inconscientemente en las redes
elementos que pueden comprometer la seguridad de la red, desde virus traídos en un memory
stick, hasta programas ilegales infectados. Otras veces, por errores en el uso de sus equipos,
los usuarios pueden colapsar las redes.

La forma de explotar esta vulnerabilidad humana es mediante la ingeniería social. Se basa en


la obtención de información a través de la manipulación de usuarios legítimos. Es el “arte de
engañar”. La manipulación se efectúa mediante la tecnología, pero también puede usar
métodos no informáticos y explotarse a través del trato personal. Con esta práctica, se puede
ejecutar código malicioso en los equipos y sistemas mediante el envío de correos electrónicos
con ficheros adjuntos. Existen múltiples infecciones de gusanos debido a que el usuario es
tentado a realizar una acción. El atacante también puede obtener contraseñas de usuarios, por
ejemplo haciéndose pasar por alguna persona de mantenimiento.

La principal arma para defenderse de la ingeniera social es el conocimiento. De esta manera,


en los planes de seguridad se enfatiza especialmente en la formación a los usuarios.

2.2.2. Ataques específicos


Podría decirse que existen una gran cantidad de tipos de ataques a las redes, ya que existen
muchas configuraciones de red. Aún así, existen algunos ataques conocidos:

 Sniffing. Análisis de tráfico. Tiene como objeto la captura y lectura del tráfico y
datos que son transmitidos en la red.

 Spoofing. Suplantación de la identidad mediantes medios técnicos. Uso de


técnicas de suplantación de la identidad. El atacante suplanta la identidad de otra
entidad para poder llevar a cabo una acción que de otra forma no podría realizar.
Existen diferentes tipos de Spoofing dependiendo de la tecnología.

o MAC-Spoofing (Suplantación de MAC): Tiene como objeto cambiar la


dirección de la interfaz de Control de Acceso al medio (MAC - Media
Access Control). La suplantación de la dirección MAC puede permitir que
se incumplan las listas de control de acceso a servidores o routers, ocultar
un equipo en la red o permitir que se haga pasar por otro.

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
o IP Spoofing (Suplantación de IP): Sustituir la dirección IP origen por otra IP.
Se consigue el envío de paquetes con otra dirección IP de origen. Sirven
sobre todo para enmascarar ataques de denegación de servicio.

o DHCP-Spoofing (suplantación del servicio DHCP): El objetivo es crear un


servidor DHCP que proporcione configuraciones de red manipuladas,
haciendo que los usuarios utilicen tanto el router como los DNS que el
atacante quiera.

o ARP Spoofing (suplantación de mensajes ARP). Consiste en enviar


mensajes ARP falsos. El objetivo es engañar a los otros sistemas con
tramas ARP indicando que el equipo del atacante es el router, por ejemplo.
Un caso particular de ARP Spoofing es ARP Poisoning que consiste en
enviar tramas erróneas ARP que hagan inútil el uso de la red.

o DNS Spoofing (Manipulación de DNS): Consiste en la suplantación de


identidad por nombre de dominio. Consiste en conseguir que resuelva con
una dirección IP falsa un cierto nombre DNS o viceversa. El objetivo es que
los usuarios visiten sitios Web suplantados (como destinos con malware,
un buscados manipulado, sitios de phising, etcétera…).

o Web Spoofing (Suplantación de una página web). Enruta la conexión de


una víctima a través de una página falsa hacia otras páginas Web (como si
fuera un proxy) con el objetivo de obtener información de dicha víctima.

o Mail Spoofing (Suplantación de la dirección de correo electrónico). Se


envía mensajes de correo con la dirección de otras personas o entidades.
Esta técnica es usada para spam.

 Phising. Suplantación de la identidad mediante ingeniería social. Uso de


técnicas de suplantación de la identidad mediante el uso de un tipo de ingeniería
social caracterizado por intentar adquirir información confidencial de forma
fraudulenta.

 MitM (Man in the middle). El atacante captura el tráfico entre dos sistemas con
posibilidad de modificar e inyectar su propio tráfico. Al equipo destino le envía
peticiones simulando ser el equipo solicitante. MitM se emplea típicamente para
referirse a manipulaciones activas de los mensajes, más que para denotar
intercepción pasiva de la comunicación, pero el ataque MitM puede ser de varios
tipos:
o Eavesdropping. Intercepción de la comunicación. Un atacante escucha
pasivamente para obtener información que puede utilizarse posteriormente
en un ataque posterior con objeto de suplantar a la entidad.
o Replay attack. Repetición. Consiste en la captura de datos y la
retransmisión de estos datos válidos.
o Hijacking. Secuestro. Técnica de un atacante para robar información con
objeto de conseguir una conexión de red (IP hjjacking), una sesión
(session hijacking) o una página web (page hijacking).

 DoS (Denial of Service). Denegación de servicio. Ataques que atentan con la


disponibilidad de los servicios en red. Básicamente, consisten en saturar mediante
peticiones continuadas de servicio, algún servicio de red. Existen muchas
modalidades de este tipo de ataques, en función del tipo de nivel de servicio que se
desea anular (nivel de enlace, red o aplicación).

10

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
o SYN flodding. El atacante envía mensaje SYN (synchronize) sin llegar a
completar el proceso de conexión y sin enviar el mensaje ACK (aknowlege)
final.

o ICMP flodding. Consiste en enviar de forma continuada un número elevado


de paquetes ICMP de tamaño considerable. Un caso particular de este tipo
de ataque es el Smurf, que consiste en solicitar un ping falsificado desde la
dirección IP del objetivo a una red de broadcast.

o UDP flodding. Se basa en el envío de números paquetes UDP de forma


simultánea al equipo atacado.

o Teardrop (ataque por fragmentación IP): para intentar engañar a firewalls


que analizan el nivel 3 sin posibilidad de recomposición de paquetes. Los
sistemas más modernos ya no son vulnerables a este tipo de ataque.

o Buffer overflow. Se envía más paquetes de los que el buffer puede


soportar.

o DDoS (Ataque de denegación de servicio distribuido): se utilizan redes de


ordenadores infectados (conocidas como botnets), y que tras recibir una
orden, que suele ser por un canal IRC, atacan conjuntamente al sistema
objetivo.

2.2.3. Peculiaridades de redes inalámbricas


En las redes fijas tradicionales, la conexión entre los diferentes equipos es realizada mediante
cables y con una conexión física. En una red inalámbrica, las comunicaciones entre los
sistemas se realizan mediante ondas electromagnéticas. Esto permite reducir costes y ofrece
una comodidad en la conexión. Entre este tipo de redes destaca la red WiFi que utiliza como
interfaz la especificación 802.11 del IEEE.

Al no requerir conexión física, el atacante simplemente debe estar dentro del perímetro de la
red inalámbrica y, con un acceso no autorizado, podría escanear y obtener todos los datos que
se transmiten a través de la red. Las consecuencias serían desde la reducción del ancho de
banda hasta el acceso a nuestra información personal, contraseñas, etc. NIST ha dedicado una
publicación especial, SP 800-153 - Guidelines for Securing Wireless Local Area Networks
(WLANs) con las recomendaciones de seguridad en la redes de área local inalámbricas.

Respecto a la seguridad en redes WIFI, varios aspectos deben ser tenidos en cuenta:

 Configuración inadecuada. Mantener la configuración por defecto del router o mal


configurado permitirá la labor de conexión ilícita a la red WiFi. Por ejemplo, las
contraseñas por defecto para la administración del router como de conexión suelen
publicarse en Internet. También podría ocurrir que la red WiFi estuviese abierta y sin
cifrado.

 Sistema de Cifrado incorrecto. Utilizar un sistema de cifrado WEP (Wired Equivalent


Privacy) o WPA (Wi-FI Protected Access) no son opciones adecuadas.

 Clave no robusta. Incluso un cifrado WPA-2 con AES puede ser vulnerable con una
clave débil. Una contraseña fuerte complica la probabilidad de “romper” la contraseña
mediante la fuerza bruta.

 Sistemas de control y detención. La instalación de sistemas de detección (IDS) y


cortafuegos con objeto de detectar accesos no autorizados y restringir los accesos.
11

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
2.2.4. La seguridad en las redes y el software libre
Con el software libre, el usuario puede disponer del código fuente y puede ser analizado en
busca de errores de diseño e incluso modificado con las mejoras que se considere necesario.
Por otro lado, respecto a la seguridad, existen diversas soluciones de seguridad en software
libre y que pueden ser consideradas como un alternativa a programas de software. Desde
análisis del tráfico de red en busca de tráfico inusual o malicioso (Ethereal), firewalls (iptables),
sistemas de detección de intrusión (por ejemplo Snort), escáneres de vulnerabilidad (como
Nessus), antivirus (ClamAV), entre otros.

2.3. Normas de SGSI: MAGERIT e ISO 27000


Si bien no es el objetivo de este tema, es necesario citar dos de las normas que van a
acompañar la seguridad en red en España.

Es necesario disponer de un sistema de gestión de la seguridad de la información que permita


unos niveles adecuados de confidencialidad, integridad y disponibilidad de los activos de la
organización. Para ayudar a la entidad a gestionar la seguridad de la información se pueden
utilizar diferentes especificaciones, pero se debe poner en práctica una metodología dedicada a
la seguridad de la información que sea reconocida internacionalmente.

La familia de normas ISO 27000 es el conjunto de estándares desarrollados por ISO/IEC. En


esta familia se define el denominado SGSI (Sistema de Gestión de Seguridad de la
Información), un enfoque basado en procesos que utiliza un ciclo de mejora continua
(Planificación-Hacer-Verificar-Actuar) que es documentado y conocido por toda la organización.

Las normas más importantes de la serie son:

 ISO 27000: contiene una descripción general y vocabulario claramente definido, que
evite distintas interpretaciones de conceptos técnicos y de gestión.

 ISO 27001: Es la norma principal de la serie y contiene los requisitos del Sistema de
Gestión de Seguridad de la Información. Tiene su origen en la BS 7799-2:2002
(documento publicado por el gobierno del Reino Unido) y es la norma con arreglo a la
cual se certifican por auditores externos los SGSI de las organizaciones. Esta norma se
publica en octubre de 2005 y es revisada en septiembre de 2013 con la publicación de
ISO/IEC 27001:2013. En España, esta norma está publicada como UNE-ISO/IEC
27001:2007.

 ISO 27002: La norma fue publicada originalmente como un cambio de ISO 17799:2005
(con origen en el British Standard BS 7799-1), manteniendo 2005 como año de edición.
Posteriormente, es revisada en 2013 y se publica la norma ISO/IEC 27002:2013. Es
una guía de buenas prácticas que describe los objetivos de control y controles
recomendables en cuanto a seguridad de la información. Se publica en España como
UNE-ISO/IEC 27002:2009 en diciembre de 2009.

 ISO 27003: Es una guía de implementación de SGSI. En febrero de 2010, se publica la


ISO/IEC 27003:2010.

 ISO 27004: Especifica las métricas y las técnicas de medida aplicables para determinar
la eficacia de un SGSI y de los controles relacionados. Publicada en diciembre de 2009
como ISO/IEC 27004:2009.

12

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 ISO 27005: Establece las directrices para la gestión del riesgo en la seguridad de la
información. Apoya los conceptos generales especificados en la norma ISO/IEC 27001
y está diseñada para ayudar a la aplicación satisfactoria de la seguridad de la
información basada en un enfoque de gestión de riesgos. Se publica en junio de 2008
como ISO/IEC 27005:2008.

Respecto a la gestión de riesgos, además de la norma internacional ISO 27005 indicada


anteriormente, existe la metodología española MAGERIT (Metodología de Análisis y GEstión
4
de Riesgos de IT) alineada con este estándar. La metodología MAGERIT fue elaborada por el
Consejo Superior de Administración Electrónica para minimizar los riesgos de la implantación y
uso de las Tecnologías de la Información y está enfocada a las Administraciones Públicas. La
última versión es la 3 y está actualizada desde 2012.

MAGERIT ofrece la aplicación PILAR para el análisis y gestión de los riesgos. La última versión
de la Herramienta PILAR es la versión 5.4 que es desarrollada y financiada por el Centro
Criptológico Nacional (CCN). CCN ha publicado en septiembre de 2014 varias guías CCN-STIC
correspondientes a los manuales de esta versión de la herramienta PILAR:

 CCN-STIC-470G1 Manual de la Herramienta de Análisis de Riesgos PILAR 5.4


 CCN-STIC-470G2 Manual de PILAR 5.4. Análisis de impacto y continuidad de
operaciones
 CCN-STIC-471D Manual de usuario RMAT 5.4
 CCN-STIC-472E Manual de usuario Pilar Basic 5.4
 CCN-STIC-473D Manual de la Herramienta de Análisis de Riesgos microPILAR 5.4

3. Control de accesos
3.1. Acceso, autenticación e identificación.
El control de accesos es el método por el cual se incrementa la seguridad de una red mediante
la restricción de uso de los recursos a los usuarios de la red de acuerdo a una política de
seguridad definida. Para permitir el acceso, es fundamental conocer si el usuario o máquina se
encuentra dentro de los grupos permitidos en la política de seguridad.

Este control de accesos se implementa habitualmente en diferentes niveles:

 Aplicación
 Middleware
 Sistema Operativo
 Hardware

Existen dos tipos de políticas de control de acceso:

 Modelo de control de acceso discrecional (DAC): el propietario de un recurso es un


usuario identificado que decide discrecionalmente qué otros sujetos podrán acceder al
citado recurso. Se puede transferir la propiedad, así como delegar la concesión de
permisos. No obstante, este modelo tiene el problema llamado “caballo de Troya”
derivado de su carácter discrecional, donde un tercero podría acceder a un recurso sin
estar autorizado. Se precisa por tanto introducir el concepto de seguridad multinivel y
multilateral.

4
http://administracionelectronica.gob.es/pae_Home/pae_Documentacion/pae_Metodolog/pae_Magerit.ht
ml
13

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Modelo de control de acceso no discrecional o mandatorio (MAC): el sistema
protege los recursos. Los objetos y sujetos están compartimentados, a través de
etiquetas de seguridad. El sistema permite el acceso a recursos si y sólo si el sujeto
tiene el permiso adecuado, comparando las etiquetas del que accede frente al recurso
accedido, siguiendo un modelo matemático multinivel (MLS), por ejemplo Bell-
LaPadula, Biba o Clark-Wilson. Los criterios de seguridad TCSEC correspondientes al
nivel de seguridad B1 o superior incluyen este modelo.

Los modelos DAC y MAC son inadecuados para cubrir las necesidades de la mayor parte de
las organizaciones. El modelo DAC es demasiado débil para controlar el acceso a los recursos
de información de forma efectiva, en tanto que el MAC es demasiado rígido. Desde los 80 se
ha propuesto el modelo de control de accesos basado en roles (RBAC), como intento de
unificar los modelos clásicos DAC y MAC, consiguiendo un sistema donde el sistema impone el
control de accesos, pero sin las restricciones rígidas impuestas por las etiquetas de seguridad.

En los sistemas distribuidos, es necesario controlar no sólo los usuarios que acceden a los
servicios sino también los recursos que ha utilizado. Es importante supervisar quién puede
acceder a la red, pero también es importante definir lo que puede hacer y observar las acciones
que realice mientras accede. Por esta razón, se utiliza una arquitectura denominada triple-A o
AAA (Authentication, Authorization and Accounting) para realizar tres funciones con este
objeto: autenticación, autorización y trazabilidad (o auditoría).

 Autenticación: verificar, mediante alguno de los mecanismos disponibles, que el


sujeto se corresponde con la identidad supuesta. El usuario se da a conocer en el
sistema y muestra su identidad (identificación). Por su parte, el sistema realiza una
verificación sobre esta identificación y comprueba la identidad del usuario
(autenticación).

 Autorización: cuando un usuario, una vez autenticado, solicita un recurso, se debe


comprobar si ese usuario está autorizado. Es decir, puede ser que el usuario no tenga
permiso para acceder a un recurso concreto de red. El usuario ya está autenticado
pero lo servicios de autorización determinan a qué recursos puede acceder y qué
operaciones quedan habilitadas.

 Trazabilidad (o auditoría). Registro de toda la actividad que realiza el usuario y de


todas las autorizaciones concedidas. El sistema realiza un seguimiento de la forma en
que se utilizan los recursos.

3.2. Métodos y factores de autenticación


En función del procedimiento o información utilizada por el sistema para la verificación de la
identidad de una entidad, los métodos se pueden clasificar en varias categorías, dependiendo
del factor de autenticación usado:

 Sistemas basados en el “factor de conocimiento” (algo que el usuario sabe). Se trata


de algo que el usuario conoce. Es el caso común de las contraseñas, preguntas para
recordar contraseñas, PIN…

 Sistemas basados en el “factor de posesión” (algo que el usuario tiene). Se refiere a


un elemento que el usuario posee. Por ejemplo, el uso de tarjetas criptográficas o los
tokens digitales, donde un usuario presenta un elemento considerado como único, que
le permite el acceso al sistema. Son similares a la posesión de una llave.

14

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Sistemas basados en el “factor de inherencia” (algo que el usuario es). Se refiere a
rasgos intrínsecos del usuario. Aquí entran todos los mecanismos biométricos, desde
examen de iris, huellas dactilares o reconocimiento facial. Se diferencian entre los
mecanismos fisiológicos (iris, facial,…) y los de conducta (voz, tipo de escritura en
teclado,…).

Se debe tener en cuenta que ISO 19790 define un cuarto “factor de conducta” (algo que el
usuario suele hacer).

Se habla de autenticación fuerte cuando un sistema de autenticación utiliza por lo menos


dos de los tres factores citados anteriormente. De este modo, si uno de los factores se ve
comprometido, todavía existe un segundo factor que garantiza la seguridad.

3.2.1. Contraseñas
Se utiliza información secreta y compartida para controlar el acceso. Para intentar mejorar sus
características de seguridad, los sistemas de control de acceso además implementan:

 Cambio de contraseñas con periodicidad.


 Chequeo de complejidad mínima. Longitud mínima y mezcla de caracteres.
 Teclados cambiantes para la inserción de las contraseñas.

En usuario tiene responsabilidad sobre la fortaleza de la contraseña. Se debe generar una


contraseña lo suficientemente larga y con el máximo de caracteres al azar. Existen algunas
técnicas para alcanzar este objetivo sin suponer una dificultad para recordar la contraseña. Por
ejemplo, generar una contraseña con las iniciales de las palabras de una frase.

3.2.2. OTP (One Time Password)


OTP es una contraseña que sólo puede utilizarse una vez, en una única sesión y
posteriormente deja de tener validez. De esta forma, se resta efectividad a los ataques de
fuerza bruta y los de repetición (replay).

3.2.3. Certificados digitales


Los certificados digitales, basados en la posesión de una clave privada que garantiza la
identidad mostrada en el certificado, sirven para la identificación y autenticación de los
usuarios. Existen muchas formas de almacenar tanto los certificados como las claves privadas,
pero los sistemas que garantizan que la clave no se extraiga son las tarjetas criptográficas y los
tokens.

3.2.4. Tarjetas inteligentes (SmartCards)


Estos sistemas tienen chips criptográficos que permiten realizar las funciones criptográficas
dentro del dispositivo, sin que la clave privada salga del elemento para efectuar las funciones
de autenticación. Existen varios tipos de clasificación de las tarjetas:

 Según su estructura:

o Memoria: Funciona como un simple almacén de información.


o Microprocesador: posee un pequeño computador interno, con las
microinstrucciones escritas en ROM.
15

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
o Criptográficas: las más avanzadas, con un microprocesador y un coprocesador
matemático para efectuar algoritmos de cifrado.

 Según el interfaz:

o Tarjetas de contacto. Deben ser insertadas en un lector. Existe un caso


particular, Token USB, que se conecta al puerto USB.
o Tarjeta sin contacto. También denominadas contactless. Contienen un chip
RFID (Radio Frequency IDentification) que permite una identificación por
radiofrecuencia a través de la antena interna de la tarjeta.
o Tarjeta dual. Es una tarjeta de contacto a la que se añadido un segundo chip
sin contacto.

3.2.5. Biométricos
Existen, con diferente fiabilidad, sistemas de autenticación biométrica sobre:

 Huellas dactilares.
 Reconocimiento de retina.
 Reconocimiento facial.
 Voz.
 Aliento.
 Escritura.

3.3. Protocolos de acceso y autenticación


Existen diferentes protocolos ya definidos, que se comentan a continuación.

3.3.1. Protocolos de autenticación PPP (Point to Point Protocol)


El protocolo PPP permite establecer una comunicación a nivel de la capa de enlace TCP/IP.

 PAP (Password Authentication Protocol)

Utiliza contraseñas en texto simple y es el protocolo de autenticación menos


seguro. Sólo se utiliza cuando el cliente y el servidor no pueden negociar una
validación más segura.

 CHAP (Challenge Handshake Authentication Protocol)

CHAP es un protocolo de autenticación de desafío/respuesta. Utiliza MD-5 para


calcular un valor que sólo conocen el sistema de autenticación y el dispositivo.
Microsoft ha implementado el CHAP en su propio protocolo MS-CHAP. No es
seguro.

 EAP (Extended Authentication Protocol)

EAP, recogido en RFC 5247, es un marco de autenticación, no un mecanismo


realmente. Ofrece una estructura de mensajes, que luego se encapsulan
dependiendo del protocolo de enlace. Dentro de EAP se pueden utilizar los
mecanismos (de cifrado por ejemplo) que se deseen. Permite el negociado del
mecanismo de autenticación, y a este negociado se le conoce como métodos.
Existen unos 40 métodos, de los que merece la pena destacar:
16

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
o Lightweight Extensible Authentication Protocol (LEAP): sistema inicial,
creado por CISCO en el que las credenciales del usuario no se consideran
protegidas suficientemente.

o EAP Pre-Shared Key (PSK): permite la autenticación cuando ambas partes


comparten una clave. Si la clave es compartida por varios usuarios puede
constituir una debilidad.

o EAP - Transport Layer Security (EAP-TLS): utiliza TLS (anteriormente


conocido como SSL) para las comunicaciones. Permite la autenticación de
usuario y de servidor mediante PKI. La única desventaja es la sobrecarga al
utilizar certificados en ambas partes.

o EAP - Tunneled Transport Layer Security (EAP-TTLS): mejora EAP-TLS en


cuanto que no requiere autenticación del usuario por certificados, si bien no
está soportado de forma nativa por la mayoría de los sistemas operativos.

o EAP - IKEv2, basado en Internet Key Exchange Protocol version 2 (IKEv2),


permite diferentes configuraciones de mecanismos, desde claves asimétricas,
contraseñas y claves simétricas, a escoger por el servidor o por el usuario.

o Protected Extensible Authentication Protocol (PEAP), desarrollado por


Cisco, Microsoft y RSA Security como estándar abierto. Es similar a EAP-
TTLS, ya que requiere únicamente el certificado de servidor.

3.3.2. Protocolos de autenticación AAA (Authentication, Authorization


and Accounting)
Como ya se ha comentado anteriormente, estos protocolos se caracterizan por la prestación de
servicios de autenticación, autorización y auditoría (trazabilidad).

 Remote Authentication Dial In User Service (RADIUS)

Es un protocolo de autenticación y autorización para aplicaciones de acceso a la


red o movilidad IP. Permite la transmisión de credenciales. La máquina que realiza
todas las comprobaciones de credenciales se llama “RADIUS Server”. Utiliza UDP
para establecer las conexiones. El servidor RADIUS comprueba que la información
es correcta utilizando esquemas de autenticación como PAP, CHAP o EAP.

 TACACS+ (Terminal Access Controller Access Control)

Desarrollo por CISCO. Es un protocolo de autenticación remota. Es similar a


RADIUS, pero con la diferencia de que TACACS utiliza TCP. Se ha publicado una
descripción del protocolo en IETF RFC 1492. Actualmente todavía se usa pero de
forma residual.

 DIAMETER

Es un protocolo basado en el mismo concepto que RADIUS. El objetivo de


DIAMETER es proporcionar un protocolo base que pueda ser extendido para
proporcionar servicios AAA a nuevas tecnologías de acceso más complejas y
seguras requeridas por la actual generación de IP móvil y redes inalámbricas.

17

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Kerberos

Kerberos es un protocolo de autenticación mediante tickets. El sistema utiliza un


denominado tercero de confianza denominado Key Distribution Center (KDC). El
usuario se autentica en un servidor de autenticación, que le entrega un ticket que
luego muestra a los diferentes recursos para hacer uso de ellos. Estos tickets
vienen cifrados mediante criptografía asimétrica y poseen un tiempo de vida
limitado.

3.3.3. Autenticación en la capa IP: IPsec


A un nivel superior que el de acceso, se sitúan las VPN o Redes Privadas Virtuales. Su función
generalmente es la de encapsular tráfico de un nivel dentro de otro, sin ser un requisito
exclusivo el cifrado de los datos.

IPsec es un mecanismo de seguridad, que opera en la capa 3 del modelo OSI, y que se utiliza
sobre tramas IP para cifrarlas y autenticarlas (garantizando integridad y origen de las mismas).
Funciona en dos modos:

 Modo transporte: Para tráfico entre dos máquinas. Solo la carga útil es cifrada o
autenticada, y no se modifica la cabecera IP, por lo que el routing no se ve afectado.
No obstante, si se usa con el protocolo AH (Authentication Header), la dirección IP no
se puede traducir puesto que alteraría el valor del hash. Se ha definido la modalidad
NAT-Transversal para solucionar esta cuestión.

 Modo túnel: Todo el paquete IP, incluidas cabeceras, es cifrado o autenticado, por lo
que se encapsula en un nuevo paquete IP que es enrutado. Se despliegan así túneles
entre routers para crear VPN.

IPsec incluye protocolos para establecer la autenticación mutua entre agentes, y el negociado
de claves temporales para la sesión. IPsec es parte por defecto de IPv6, mientras que en IPv4
es opcional. Los algoritmos criptográficos definidos para usar con IPsec incluyen HMAC-SHA1
para protección de integridad, y Triple DES-CBC y AES-CBC para confidencialidad.

IPsec consta de tres protocolos:

 IKE (Internet Key Exchange): este protocolo crea la llamada SA (Security Association).
Esta SA consta de los protocolos y algoritmos para generar las claves temporales
usadas por IPsec.

 AH (Authentication Header): provee integridad, no repudio en origen y protección


contra ataques de replay (pues garantiza el número de secuencia). Está basado en el
algoritmo HMAC (código de autenticación de mensajes basado en hash). Funciona por
encima de IP y esta catalogado como el protocolo número 51 según IANA.

 ESP (Encapsulating Security Payload): proporciona confidencialidad, y opcionalmente


autenticidad de origen e integridad. Funciona como uno de los protocolos superiores a
IP y tiene asignado el número de protocolo 50 por IANA. Se puede usar en modo sólo
autenticación o en modo sólo encriptación.

3.3.4. Autenticación en la capa de transporte: TLS (SSL)


El protocolo TLS (Transport Layer Security) es el sucesor del protocolo conocido como SSL
(Secure Socket Layer). Este protocolo asegura la capa de transporte del protocolo IP de

18

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
extremo a extremo, y se encuentra en su versión 1.2. El original SSL fue desarrollado por
Netscape. TLS proporciona:

 Cifrado hasta el límite de la cabecera HTTP (para posibilitar su lectura por routers).
 Autenticación mutua (con autenticación de cliente opcional).

El protocolo suele utilizar autenticación de servidor mediante certificado digital. De esta forma
el usuario tiene certeza de la identidad del servidor al que se está conectando. La autenticación
mutua, que es opcional en el protocolo, permite que junto con una PKI el usuario pueda
autenticarse ante el servidor con su certificado digital.

Este protocolo se utiliza en el nivel inferior de ciertas aplicaciones conocidas de Internet, entre
las que destacan:

 HTTPS: puerto 443


 SMTPS: puerto 465
 LDAPS: puerto 646
 TELNETS: puerto 992
 IMAPS: puerto 993
 POPS: puerto 995
 FTPS: puertos 989 y 990

El protocolo consta de tres fases básicas: el negociado de algoritmos, el intercambio de claves


con autenticación, y el cifrado simétrico de los mensajes. Permite, al inicio de la conexión,
acordar entre el cliente y el servidor qué algoritmos de cifrado están soportados en ambos, y
elegir el de mayor seguridad. Los algoritmos típicos son:

 Autenticación e intercambio de claves: RSA, DSA, Diffie Hellman (mínimo 2048


bits).
 Hash: HMAC-SHA256/384.
 Cifrado: AES, Camellia (mínimo 128 bits).

TLS se puede considerar dividido en dos capas. La primera consiste en el protocolo de


aplicación y tres subprotocolos de Handshake (Handshake, Alert y ChangeCipherSpec
protocols).

La conexión TLS comienza con el subprotocolo llamado TLS-Handshake. Este protocolo


permite el acuerdo entre el servidor y el cliente de los algoritmos a utilizar, autentica a los
participantes, y elige la clave simétrica aleatoria para utilizar en el cifrado de los mensajes.
Visto en mayor detalle, el protocolo Handshake consta de:

19

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
(1) ClientHello: con la versión de SSL, los algoritmos soportados, y un número aleatorio.
(2) ServerHello: con la versión elegida del protocolo, el algoritmo elegido, y un número
aleatorio. También envía el certificado del servidor. En el caso de requerir un certificado
del usuario, envía también una solicitud del certificado del cliente
(3) Verify server Certificate: El cliente SSL verifica el certificado del servidor SSL y
comprueba que la suite de cifrado elegida por el servidor es aceptada
(4) ClientKeyExchange: Se intercambia unos datos aleatorios (utilizados para la
generación de la clave simétrica de sesión) cifrada con la clave pública del servidor
(5) Send client Certificate: en el caso de que el servidor solicitase un certificado de
cliente. En el caso de autenticación de cliente el cliente envía un CertificateVerify, que
firma toda la conversación hasta ahora con la clave privada asociada al certificado de
usuario.
(6) Verify Client Certificate: En el caso de autenticación de cliente, el servidor verifica el
certificado cliente
El cliente y el servidor, utilizando los números aleatorios y la clave previa generan la
denominada clave maestra y las claves simétricas de sesión.
(7) Client finished. El cliente envía al servidor un mensaje de finalización indicando que la
parte del cliente del protocolo handshake ha finalizado. El mensaje es cifrado con la
clave simétrica.
(8) Server finished. El servidor envía un mensaje indicando que la parte del servidor en el
protocolo handshake ha finalizado. El mensaje es cifrado con la clave simétrica.
(9) Finished: conteniendo toda la conversación cifrado con la clave simétrica. Si falla por
parte del cliente, se aborta la conexión.

El subprotocolo ChangeCipherSpec consta de un simple mensaje, que se transmite el inicio de


cifrado a la otra parte de la comunicación. El subprotocolo Alert permite el envío de diferentes
mensajes de alerta entre el cliente y el servidor, como por ejemplo, error de certificado.

En cuanto al Record Protocol, puede cumplir cuatro funciones:

20

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Fragmenta la información proveniente de la capa de aplicación en bloques
manejables.
 Comprime y descomprime la información de los bloques.
 Aplica un MAC (Message Authentication Code) o un hash para que se pueda
comprobar la integridad de la trama enviada.
 Cifra y descifra los datos enviados y recibidos.

Por último, es destacable que en los tiempos actuales en los que en las redes privadas casi
todas las conexiones hacia afuera están filtrados por un proxy, las VPN basadas en SSL (en
lugar de IPSec) están ganando importancia.

Consisten en la realización de una conexión TLS (generalmente sobre el puerto 443), donde en
vez de tráfico web seguro lo que se envía es tráfico de nivel 3. Estos sistemas suelen usar un
applet en el equipo cliente que desea conectarse a la VPN, por lo que se convierten en
sistemas con muy poco impacto de implantación y alta eficiencia. Además, se puede tunelizar
no solamente tráfico de red, sino terminales remotas de otras aplicaciones.

3.3.5. Autenticación en servicios web: SAML (Security Assertion Markup


Language)
En entornos de acceso a servicios web (Web Services), es necesario ofrecer una
especificación que permita que los usuarios puedan visitar múltiples sitios web sin necesidad
de identificarse varias veces. Para ello es necesario el intercambio de mensajes XML de
autorización y autenticación entre los diferentes servicios de los sitios web.

De esta forma, OASIS (Organization for the Advancement of Structured Information Standards)
desarrolla una especificación de seguridad basada en XML para el intercambio de información
de autorización y autenticación que denomina SAML. SAML especifica el formato de las
sentencias a utilizar y un protocolo de solicitud/respuesta para este intercambio.

SAML intercambia información de autenticación entre el proveedor de servicios y el proveedor


de identidad. El proveedor de identidad permite autenticar los usuarios y se pasa la información
de identificación a los servicios a modo de un documento XML firmado digitalmente. SAML no
autentica ni entiende los procesos de autenticación, sólo es un protocolo para el intercambio de
declaraciones de esta autorización.

Estas declaraciones o afirmaciones (aserciones en la nomenclatura SAML) se construyen


sobre los atributos y la identidad o sobre las autorizaciones concedidas a entidades
autenticadas. Esta información puede ser enviada de forma confidencial aplicando mecanismos
criptográficos al contenidos de estas aserciones.

3.3.6. Acceso a redes WiFi


Es importante mencionar los siguientes tres mecanismos de acceso a las redes WiFi:

 WEP (Wired Equivalent Privacy). Sistema de cifrado para el estándar IEEE 802.11
como protocolo para redes WiFi. Se han descubierto muchas vulnerabilidades del
sistema de cifrado WEP, lo que permiten conseguir la clave de conexión en muy poco
tiempo. IEEE declaró WEP obsoleto en 2004 y no se recomienda su uso.

 WPA (Wi-Fi Protected Access). Sistema creado para corregir las deficiencias del
anterior, pero se consideraba una opción temporal. Emplea el cifrado con claves
dinámicas. En WPA existen varias vulnerabilidades y se desaconseja su uso.

21

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 WPA-2. Soluciona problemas de seguridad de la versión anterior y utiliza cifrado
simétrico AES. WPA-2 se considera la opción más adecuada, pero tampoco está libre
de ataques. Se puede obtener la clave de WPA-2 con ataques de fuerza bruta, aunque
debe tenerse en cuenta que el ataque será más complejo según aumenta el tamaño de
la clave elegida.

En resumen:

Mecanismo Cifrado Autenticación Confianza


tramas
datos
WEP WEP(64 ó PSK Nula
128 bits)
WPA TKIP PSK ó 802.1x Media
(relativa)
WPA2 CCMP PSK ó 802.1x Alta
(AES)

Se recomienda encarecidamente para las redes privadas la utilización de WPA-2, si bien no


todo el software compatible con WiFi lo soporta. WiMAX (Worldwide Interoperability for
Microwave Access) utiliza por defecto WPA-2.

3.3.7. Acceso a redes de telefonía móvil


El acceso a este tipo de redes depende del estándar de telefonía móvil. Citar que para el
sistema de segunda generación (2G) GSM en las que las comunicaciones se producen de
forma digital, se utiliza un método de autenticación EAP denominado EAP-SIM (EAP for
Suscriber Identity Module) con mecanismos de cifrado (A1 y A5) fácilmente atacables en la
actualidad.

La extensión a 3G se denomina UMTS (Universal Mobile Telecommunications System) y utiliza


autenticación mutua de usuario y de red, mediante un protocolo denominado EAP-AKA (EAP
for UMTS Authentication and Key Agreement).

La cuarta generación (4G) de tecnología de telefonía móvil está basada completamente en el


protocolo IP y está siendo desarrollada para ofrecer un alto nivel de seguridad de este
protocolo.

El Centro Criptológico Nacional (CCN) ha publicado varias guías de seguridad para dispositivos
móviles. Por ejemplo, en agosto de 2014 se publicaron las guías CCN-STIC 454 y 455 con las
recomendaciones de seguridad en móviles basados en el sistema operativo iOS (iPhone e
iPad).

4. Técnicas criptográficas
Estas técnicas han sido estudiadas en el tema 72 y en consecuencia no se repetirá aquí su
exposición.

22

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
5. Mecanismos y formatos de firma digital
Por mecanismo se entiende la matemática asociada para generar una firma digital. Los
mecanismos, técnicas y algoritmos criptográficos, sin especificar formatos, han sido tratados en
temas anteriores y no se repetirán aquí.

Por otra parte, los documentos firmados digitalmente deben seguir un formato estandarizado,
para poder ser comprendido por cualquier otro usuario. Los formatos principales de firma digital
son PKCS#7/CMS, Firma XML, CAdES y PAdES.

5.1. Formato binario: PKCS#7 / CMS


Es el formato de firma y de cifrado de archivos definido por RSA, dentro la serie PKCS. El
formato está codificado en ASN.1, con lo cual toda la información está en binario. Fue la base
para el estándar S/MIME y para CMS. El formato permite la firma de varios usuarios. Existen
diferentes objetos dentro de PKCS#7:

 data: envío de datos sin cifrar.


 signed data: datos firmados, usado para autenticación del remitente.
 enveloped data: datos encapsulados que pueden ser en claro, firmados, cifrados o
varios de ellos a la vez.
 signed-and-enveloped data: datos firmados y encapsulados. Para autenticidad y
confidencialidad.
 digested data: hash de los datos, para comprobación de la integridad del mensaje.
 encrypted data: datos cifrados, utilizados para confidencialidad.

La evolución de PKCS#7 se llama CMS (Cryptographic Message Syntax), recogida como un


estándar IETF. PDF utiliza una implementación de PKCS#7, si bien permite muchas
funcionalidades avanzadas, integradas dentro del programa Acrobat Reader.

5.2. Formato binario: CAdES (CMS Advanced Electronic


Signature)
CAdES especifica perfiles precisos de datos firmados con CMS en ASN.1 para su uso con
firma electrónica avanzada (AdES).

La especificación técnica ETSI TS 101 733 (que próximamente será actualizada en el estándar
EN 319 122) describe el formato CAdES y diferentes perfiles para este tipo de firma:

CAdES-BES Firma básica (Basic Electronic


Signature).

CAdES-EPES Firma basada en política explícita


(Explicit Policy Electronic Signature).

Incluye un atributo indicando la política


que debe ser usada para validar la
firma.

23

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
CAdES-T Firma con sello de tiempo (Time-
stamped).

Se añade el sello de tiempo a una firma


BES o EPES.

CAdES-C Firma con información de la referencia


completa de validación (Complete).

Se añaden referencias sobre la cadena


de certificación y las rutas a la
información del estado del certificado.

CAdES-X Firma extendida con formato de tiempo


(eXtended).
Tipo 1
Incorpora a CAdES-C un sello de
tiempo en las referencias de los datos
de validación:

 Tipo 1 (ES-X Type 1): el sello


de tiempo se realiza sobre la
estructura completa CAdES–C. Tipo 2

 Tipo 2 (ES-X Type 2): el sello


de tiempo solamente se realiza
sobre las referencias a los
certificados y evidencias del
estado de revocación.

CAdES-X-L Firma con información completa


(eXtended Long-term)

Incorpora a CAdES-C la información


completa del estado de revocación de
los certificados. Se puede realizar la
validación de la firma en destino
usando únicamente esta información.

CAdES-A Firma de archivo (Archival).

Se puede incorporar sucesivos sellos


de tiempo cuando la protección del
último sello de tiempo empieza a
debilitarse.

5.3. Formato XML: firma XML


Cada vez existe más información intercambiada en formato XML. Estos datos pueden ser
cifrados, tanto los datos binarios como los campos XML. Dentro de la firma XML existen dos
estándares: XMLDSig y XAdES.
24

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
5.3.1. XMLDSig
La firma XML es una recomendación del W3C que define una sintaxis XML para soporte de la
firma digital. Funcionalmente tiene muchas similitudes con PKCS#7, si bien está más indicado
para la firma de documentos XML. XMLDSig puede firmar cualquier tipo de dato o recurso,
siempre que sea definible mediante una URL. En relación con la situación de los datos que se
van a firmar con respecto a su firma podemos tener la siguiente clasificación:

 Enveloped Signature: en la que la firma se añade al final del documento XML como
un elemento más, en un archivo único. Se firma todo lo inmediatamente anterior.

 Detached Signature: en la que la firma y el documento se separan en dos archivos.


Lla URL donde se encuentra el documento puede aparecer en la propia firma.

25

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Enveloping Signature: en la que el documento se incluye dentro de la firma en la que
se referencia lo firmado como objeto insertado en la firma. Este modelo permite
distinguir lo que se firma, pudiendo firmar el objeto entero o partes de él (asignando un
id diferenciador). El contenido que se desea firmar engloba a la firma.

Este tipo de firma, si bien puede cargar a veces los sistemas, es utilizado
especialmente por los servicios Web y SOAP.

5.3.2. XAdES
XAdES especifica perfiles XMLDSig para ser usados con firma electrónica avanzada. La
especificación técnica de ETSI TS 101 903 (que próximamente será actualizado en el estándar
EN 319 132) describe el formato XAdES y diferentes perfiles para este tipo de firma.

Este formato resuelve el problema de comprobación de una firma en el futuro, cuando no se


sabía si en el momento de la firma el certificado estaba revocado o no. A esta firma se le
incluyen elementos de tiempo y de validación que permitan verificar esta firma en el tiempo.
Así, permite la comprobación de la validez de las firmas por largos periodos de tiempo,
inclusive si la seguridad del algoritmo de firma ha sido comprometida.

De forma equivalente a CAdES, XAdES define perfiles (formatos) según el nivel de protección
ofrecido. Cada perfil incluye y extiende al previo:

 XAdES-BES (Basic Electronic Signature), forma básica que simplemente cumple los
requisitos legales de la firma electrónica avanzada.

 XAdES-EPES (Explicit Policy Electronic Signature), forma básica con la información


sobre la política de firma.

 XAdES-T (Timestamp), añade un campo de sellado de tiempo para proteger contra el


repudio.

 XAdES-C (Complete), añade referencias a datos de verificación (certificados y listas de


revocación) a los documentos firmados para permitir verificación y validación off-line en
el futuro (pero no almacena los datos en sí mismos),

26

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 XAdES-X (eXtended), añade sellos de tiempo a las referencias introducidas por
XAdES-C para evitar que pueda verse comprometida en el futuro una cadena de
certificados.

 XAdES-X-L (eXtended Long-term), añade los propios certificados y listas de


revocación a los documentos firmados para permitir la verificación en el futuro incluso
si las fuentes originales de consulta de certificados o de las listas de revocación no
estuvieran ya disponibles.
 XAdES-A (Archival), añade la posibilidad de timestamping periódico de documentos
archivados para prevenir que puedan ser comprometidos debido a la debilidad u
obsolescencia de los algoritmos de firma durante un periodo largo de almacenamiento.

5.4. PAdES
PAdES especifica perfiles para el uso de la firma electrónica avanzada con documentos PDF.
Se firma y valida con Acrobat Reader, y se puede realizar la personalización de la firma
mediante imágenes, además de incorporación de información de validación, firmas visibles e
invisibles, creación de políticas de firma, integración con el repositorio de confianza de
Windows, y firma selectiva de campos.

La especificación técnica ETSI TS 102 778 describe el formato PAdES. La firma es codificada
como un objeto binario usando CMS o formatos como PKCS#7 y CAdES. El contenido y el
formato específico de la firma dependen del perfil definido.

 PAdES Basic. Perfil básico que cumple con los requisitos de la norma ISO 32000-1.

 PAdES-BES. Perfil de firma PDF avanzada basada en CAdES-BES e incorpora opción


de incluir en la firma un sello de tiempo (CAdES-T).

 PAdES-EPES. Perfil de firma PDF avanzada basada en CAdES-EPES.

 PAdES-LTV Profile (Long Term). Es el formato de firma longeva. Puede ser usado en
conjunción con el PAdES-CMS, PAdES-BES o perfiles PAdES-EPES. Garantiza la
validación a largo plazo y se consiguen firmas con las mismas características de
longevidad que las firmas CAdES-XL y CAdES-A.

 PAdES-XML (PAdES para contenido XML). Engloba un conjunto de perfiles que


describen como utilizar las firmas XAdES en los documentos PDF:
o Perfil de firmas XAdES básicas (XAdES-BES, XAdES-EPES y XAdES-T).
o Perfil para largo tiempo (Long-Term) que incluye XAdES-C, XAdES-X, XAdES-
XL y XAdES-A
o Perfil para formularios XFA en formatos XAdES básico (XAdES-BES, XAdES-
EPES y XAdES-T)

5.5. ASiC (Associated Signature Container)


ASiC especifica el uso de estructuras de contenedor que engloba en un solo perfil firmas
(CAdES o XAdES de tipo “detached”) o sellos de tiempo junto a los archivos u objetos firmados
de los que se derivan las firmas. El contenedor del paquete utiliza un formato basado en ZIP.

La especificación técnica ETSI TS 102 918 describe el formato ASiC. Se prevé que esta norma
sea la EN 319 412 en el futuro marco de estandarización sobre firma que está llevando a cabo
ETSI/CEN en ejecución del Mandato M/460 de la Comisión Europea.
27

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
6. Control de Intrusiones
Tal y como se explicó al principio de este documento, la seguridad es un concepto relativo.
Podemos considerar una red como suficientemente segura, pero es imposible garantizar que
no va a recibir ningún ataque ni intento de acceso no autorizado, ni que la respuesta va a ser
siempre adecuada. La monitorización del estado y comportamiento de la red se convierte en
una necesidad, que tiene por objeto la detección de posibles ataques y vulnerabilidades. Los
sistemas que a continuación se citan son ejemplos de soluciones tecnológicas que permiten
detectar y controlar las intrusiones en sistemas y redes.

6.1. Sistema de detección de intrusiones: IDS (Intrusion


Detection System)
Los IDS monitorizan los eventos de la red y sus sistemas cuya función es detectar posibles
intrusiones y accesos no autorizados. Estos sistemas tienen sensores internos a la red, con los
cuales capturan el tráfico y lo analizan intentando encontrar patrones de ataques conocidos (a
semejanza de lo que haría un analista humano, pero a una velocidad infinitamente mayor). La
base de datos de ataques, análogamente a los antivirus, suele llamarse base de datos de
“firmas”. Existen dos tipos de IDS, en función del lugar en que se instalen:

 Network intrusion detection system (NIDS): Conectado a un segmento de red.


Trabaja sobre un puerto espejo o mirror al que se vuelca todo el tráfico que pasa por
los conmutadores de red de nivel dos, o switches.

 Host-based intrusion detection system (HIDS): IDS software que analiza todos los
logs de un equipo. El IDS reside generalmente dentro del propio equipo monitorizado.

Los IDS pueden asumir acciones de respuesta ante intrusiones y ser más activos, pero lo
habitual es separar esta función en los sistemas de prevención de intrusión IPS.

6.2. Sistema de prevención de intrusiones: IPS (Intrusion


Prevention System)
Los IPS intentan actuar en la red para eliminar las amenazas que detectan, siempre en función
de las políticas que rigen su configuración. Los IPS protegen al equipo proactivamente y
bloquean los ataques y, por esta razón, generalmente suelen estar acompañados de un
software de firewall asociado o trabajar de forma combinada con el cortafuegos.

El despliegue de los sistemas IPS, dentro de una red, es diferente a los IDS y se sitúan de
forma diferente. Como se ha comentado, los IDS se colocan en puertos de los switches donde
se vuelca toda la información de la red de forma replicada, mientras que los IPS se ubican en
los enlaces más importantes, de forma que el tráfico se curse a través de ellos, y puedan así
ser más efectivos a la hora de eliminar tráfico malicioso. Cuando se colocan los IPS, al poder
convertirse en un único punto de fallo de toda la red, se debe asegurar que la red continúe
operando en esa eventualidad. De esta forma, los IPS vienen equipados con técnicas de
redundancia y se suelen configurar en alta disponibilidad. Estos appliances actualmente están
teniendo gran éxito en el mercado.

28

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
6.3. Los gestores de eventos (análisis de Logs)
En las grandes redes donde los IDS de red no tienen suficiente información para poder detectar
ataques, es necesaria una gestión centralizada de todos los eventos relacionados con patrones
sospechosos y una monitorización de la infraestructura. Asimismo, debe existir una correlación
de eventos y una visibilidad conjunta de los diferentes sistemas de seguridad (cortafuegos,
IDS, IPS, etc).

El análisis y la gestión de logs y la correlación de eventos (SIEM - Security Information and


Event Management) es un parte importante de la gestión de riesgos de seguridad de la
información. SIEM describe las capacidades de los productos de recopilación, análisis y
presentación de información de la red y los dispositivos de seguridad, las aplicaciones de
gestión de identidades y accesos, gestión de vulnerabilidades y los instrumentos de política de
cumplimiento, sistema operativo, base de datos y registros de aplicaciones.

7. Cortafuegos (Firewalls)

7.1. Teoría de Cortafuegos. Tipos de políticas.


Los cortafuegos, en el ámbito de las redes de comunicaciones, se corresponden con
programas o dispositivos de red que se encargan de permitir, denegar, cifrar, descifrar,
modificar o cachear el tráfico de una red empleando políticas que definen un conjunto de
criterios y normas.

Los cortafuegos analizan los paquetes y en función del nivel del análisis, y las políticas según
las que estén configurados, efectuarán determinadas acciones sobre el tráfico. El modo de
funcionamiento típico de un firewall es el siguiente:

 Recibir todo el tráfico entrante por las interfaces de red monitorizadas.

 Comprobar si el tráfico se corresponde con alguno de los patrones marcados en las


políticas definidas en el firewall. Las políticas están ordenadas por prioridades, y se
comienza por comparar el tráfico desde la de mayor prioridad hasta la de menos.

 Si el tráfico cumple los patrones de alguna política (como por ejemplo “puerto TCP de
destino 53”) entonces se aplica la acción predefinida en la regla correspondiente (por
ejemplo “DENY”).

 Si el tráfico no cumple ninguna regla del firewall, se aplicará la regla por defecto. Para
definirla, siempre, en la última regla de prioridad se configura una de estas dos
políticas: “ACCEPT ALL” o “DENY ALL”, que constituyen las políticas por defecto. En
general, es altamente recomendable dejar como política por defecto “DENY ALL”,
sobre todo si el firewall está expuesto a Internet. Para las LAN corporativas, depende
de las decisiones de los administradores de red.

Hay dos políticas básicas en la configuración de un cortafuegos y que cambian radicalmente la


filosofía fundamental de la seguridad en la organización:

 Política restrictiva: Se deniega todo el tráfico excepto el que está explícitamente


permitido. El cortafuegos obstruye todo el tráfico y hay que habilitar expresamente el
tráfico de los servicios que se necesiten (es el caso del “DENY ALL” como política por
defecto).
29

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Política permisiva: Se permite todo el tráfico excepto el que esté explícitamente
denegado. Cada servicio potencialmente peligroso necesitará ser aislado básicamente
caso por caso, mientras que el resto del tráfico no será filtrado (“ACCEPT ALL” como
política por defecto).

La política restrictiva es la más segura, ya que es más difícil permitir por error tráfico
potencialmente peligroso y es la que debe utilizarse en empresas y organismos.

Las diferentes tecnologías de cortafuegos se diferencian por el nivel de red en el que se


realizan las inspecciones, el estado de las conexiones y las operaciones que pueden realizar
con el tráfico. A continuación se muestras las tecnologías comúnmente usadas.

National Institute of Standards and Technology (NIST) ha publicado la Special Publication 800-
41 con, con una serie de directivas y consejos para ayudar a los administradores de seguridad
en la implementación de los sistemas de filtrado perimetral

7.2. Tecnologías de cortafuegos


7.2.1. Cortafuegos de red (Packet Filtering)
Estos cortafuegos operan a nivel de red en la pila TCP/IP. Consiste en filtrar paquetes de red
con la información de cabeceras IP y TCP. El filtrado se basa en las direcciones origen y
destino, el protocolo, los puertos origen y destino, el tipo de mensaje y los interfaces de entrada
y salida de la trama en el router.

En este grupo de cortafuegos existen dos clasificaciones:

 Filtrado de paquetes dinámico (Stateful packet filtering): Estos firewall guardan


información de las sesiones a las que pertenecen los paquetes, y si vuelven a aparecer
paquetes que pertenecen a una sesión aceptada, se acepta con mayor rapidez. Estos
firewall, si bien requieren más memoria, son mucho más rápidos que los siguientes.

 Filtrado de paquetes estático (Stateless packet filtering): son cortafuegos que


analizan cada paquete independientemente de las posibles sesiones abiertas con
anterioridad.

7.2.2. Cortafuegos a nivel de aplicación (Application Firewall)


Estos cortafuegos funcionan por encima del nivel TCP, analizando los protocolos específicos
de las aplicaciones que utilizan TCP. Analizan por ejemplo el protocolo HTTP, FTP, SMTP….
Este tipo de cortafuegos realiza una auditoría y registro del tráfico que pasa a través del
dispositivo y los filtros se realizan a nivel de aplicación, por lo que permite el filtrado del
protocolo. Además, adicionalmente este tipo de cortafuegos suelen prestar servicios de
autenticación de usuarios, dado que están en la capa de aplicación.

Su funcionamiento consiste en reconstruir los paquetes a ese nivel de aplicación, por lo que
requieren elevada memoria y capacidad de procesamiento. Comprueban que las peticiones se
adecúen a las políticas especificadas (por ejemplo, no descargar mediante ftp ningún archivo
“.exe”, o realizar escaneo de antivirus de los archivos descargados). Al funcionar a nivel de
aplicación, deben reconstruir las tramas para poder analizar la petición completa.

Se debe destacar dentro de estos cortafuegos a los proxys. El proxy controla el tráfico de un
determinado protocolo (como HTTP) y permite controlar los sitios web a los que los usuarios se
30

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
conectan así como llevar un registro de las conexiones. Este tipo de cortafuegos permite
servicios avanzados de políticas, como filtrar las web de contenido malicioso actualizando las
listas desde Internet.

Un proxy interesante es el que realiza análisis de mensajes XML en el protocolo de transporte


HTTP. Los firewall XML se encargan de analizar todas las peticiones XML realizando labores
de filtrado XML con verificación de paquetes y validación de esquema. Este tipo de cortafuegos
está especialmente indicado para los servicios web, y cumplen las especificaciones de WS-
Security para la supervisión del tráfico. Estos dispositivos también se conocen como XML
Security Gateways. El siguiente croquis recoge el funcionamiento básico de un cortafuegos
XML:

Las funcionalidades y beneficios de los Firewall XML:

 Verificación de paquetes. Mensajes bien formados.


 Validación del esquema XML. Mensajes que cumplen el esquema XML esperado.
 Validación de datos. Aceptación o rechazo de tráfico XML entrante/saliente.
 Control de acceso. Autenticación y autorización de los accesos.
 Gestión de ficheros adjuntos con integración con antivirus.
 Protección frente ataques.

7.3. Servicios adicionales de los cortafuegos


La tecnología de cortafuegos además de permitir el filtrado de paquetes y de aplicaciones,
suelen añadir algunas funcionalidades típicas que facilitan las labores de protección y
administración de la red:

 Translación de Direcciones de Red (NAT - Network Address Translation): permite la


modificación “al vuelo” de paquetes IP y de los puertos TCP, para enmascarar puertos
y direcciones IP. De esta forma, se consigue esconder las direcciones de red reales de
la red interna.

 Redes privadas virtuales (VPN – Virtual Private Network): al estar conectados en los
perímetros de las redes, suelen acompañar la posibilidad de crear conexiones VPN tipo
túnel para acceder a la red de la organización. El equipo que crea los túneles VPN no
se coloca detrás del cortafuegos, ya que en ese caso el tráfico cifrado entrante y
saliente generado por el servidor VPN no podría ser inspeccionado.

31

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
 Integración con IDS e IPS: por su especial ubicación en las redes, estos dispositivos
son idóneos para realizar las funciones de IDS e IPS ya que todo el tráfico debe pasar
por ellos.

8. Seguridad en el nivel de aplicación: protección de


servicios web, bases de datos, e interfaces de
usuarios
8.1. Introducción
La última capa del modelo OSI, la capa de aplicación, contiene los programas que permiten el
funcionamiento de las aplicaciones donde se realizan los trámites más críticos. Por tanto, este
nivel demanda que la seguridad sea un aspecto fundamental y necesario en todo el proceso de
digitalización en el que estamos inmersos.

Desde el punto de vista de la seguridad en el nivel de aplicación, cobran especial importancia


algunos de los elementos clave de su infraestructura. La arquitectura tradicional de
cliente/servidor se amplía a 3 capas en la arquitectura usada en web. Una parte del sistema
debe interactuar directamente con el usuario (interfaz de usuario) y presentar los datos en un
formato adecuado. Un segundo nivel consta de los programas que se ejecutan y es donde se
establecen las reglas que deben cumplirse (lógica del negocio). En la última capa es donde
residen los datos y está formada por las bases de datos que realizan el almacenamiento de los
datos.

8.2. Seguridad en las interfaces de usuario


Las aplicaciones informáticas cada vez están más presentes en la vida cotidiana de una
persona. La forma de interactuar con ellas es mediante su interfaz de usuario. El principio
fundamental en este concepto es el de mediación entre el hombre y la máquina.

32

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
Una parte importante de la seguridad de una aplicación es por tanto dictada por cómo de
segura es su interfaz. A continuación se describen los puntos a tener más en cuenta en lo que
respecta a la seguridad en las interfaces de usuario así como las amenazas que presentan y
posibles salvaguardas:

8.2.1. Control de acceso: Autenticación en las aplicaciones o servicios y


autorización del sistema
Como se ha tratado anteriormente, el proceso de autenticación tiene por objetivo verificar la
identidad de los usuarios que intentan acceder a la aplicación. Una adecuada implementación
del mecanismo de autenticación es clave para acreditar la identidad del usuario y evitar
ataques de suplantación. Tiene lugar antes de conceder al usuario autorización a los recursos
de la aplicación.

Las amenazas más habituales frente a la autenticación son las siguientes:

- Robo de identidad. Esta amenaza ocurre cuando el intruso se hace pasar por una
entidad diferente. Como salvaguardas potenciales, la organización debe concienciar a
los usuarios en la aplicación de buenas prácticas en la elección de contraseñas, e
implantar sistemas de robustez para las claves (caducidad, control de sintaxis, etc.).

- Manipulación de la sesión de otro usuario. Es similar a la suplantación de la


identidad del usuario. A través de este tipo de ataques es posible no sólo obtener sino
también modificar datos del posible perfil del usuario legítimo en tiempo de ejecución.
Para evitar esta amenaza, la aplicación debe liberar de la memoria todos los objetos de
la sesión del navegador una vez que el usuario cierre su sesión, al igual que los
posibles datos almacenados temporalmente en cookies.

Después del proceso de autenticación, la autorización determina si el usuario tiene permiso


para acceder o no a los recursos demandados. Se define autorización como el proceso
mediante el cual el sistema permite (o no) acceder a la aplicación o sistema, una vez
autenticado el usuario, concediéndole los permisos que le han sido otorgados por el
administrador.

La principal amenaza asociada a este proceso es la concesión de privilegios que consiste en


que un usuario obtenga más permisos de los que se han sido inicialmente concedidos. Una
correcta política de concesión de permisos, centralizando su gestión y auditándola
temporalmente comprobando por ejemplo qué usuarios ya no son tales, o a cuales han de
eliminarse los permisos, ayuda a salvaguardar el sistema ante ataques de este tipo. También
repercute favorablemente contra ataques de privilegios tener actualizados los sistemas a sus
últimas versiones para corregir posibles defectos de seguridad.

8.2.2. Adecuado manejo de excepciones


Las aplicaciones deben saber tratar y gestionar la información que se muestra relativa a los
errores, evitando que el usuario obtenga más información de la que necesite y la aplicación se
comporte de forma inesperada ante posibles errores. El interfaz de usuario debe proporcionar
excepciones para el manejo de errores y mecanismos para la presentación del mensaje de
error al usuario. Cuando hay una situación de negocio que no corresponde, se lanza una
excepción con un mensaje.

Debe evitarse el acceso a información como el software que es utilizado tanto a nivel de
servidor como a nivel de base de datos, dirección IP o direcciones donde se encuentran
33

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
documentos privados. El programador de las aplicaciones debe prestar especial atención al
manejo de excepciones apoyándose en las facilidades que proporcionan los lenguajes de
programación en este sentido.

8.2.3. Correcta validación de datos de entrada


La validación de datos garantiza la corrección y precisión de todos los valores de datos de la
aplicación. Asegura que todos los datos introducidos por el usuario son los esperados. La
debilidad más común en aplicaciones web es la falta de validación de las entradas del cliente.
Esta debilidad lleva a muchas vulnerabilidades aprovechadas por ataques del tipo inyección de
SQL, ataques al sistema de archivos o desbordamiento de memoria.

Estas vulnerabilidades asociadas a la validación de los datos se pueden agrupar en varias


categorías:

 Vulnerabilidad de la integridad de los datos. Se introducen intencionadamente datos


erróneos que manipulan la función de negocio.

 Violación del formato de los datos. Se introduce datos sin la sintaxis correcta, fuera de
los límites de longitud, que contenga caracteres no permitidos, con signo incorrecto o
fuera de los límites del rango.

 Incumplimiento de las reglas de negocio Se introducen datos que no cumplen con las
reglas de negocio.

Los ataques más importantes relacionados con la explotación de estas vulnerabilidades son:

- Envío de parámetros de entrada inválidos. Es necesario controlar los parámetros


introducidos por el usuario ya que de lo contrario pueden suceder ataques muy
problemáticas como por ejemplo los de inyección SQL.

- Ataque de denegación de servicio. Su objetivo es la interrupción del funcionamiento


del sistema mediante la introducción de datos inesperados y por tanto no gestionados.
Los efectos de este ataque suelen ser relacionados con el rendimiento de las
aplicaciones o servicios llegando incluso a detener la aplicación en determinados
momentos.

- Ataques contra implementaciones de scripts. Consiste en la inclusión de código


malicioso (Javascript fundamentalmente) en formularios web, de forma que sea
almacenado por el servidor y posteriormente ejecutado en el navegador de cualquier
usuario.

Hoy en día es muy común que las aplicaciones web se apoyen en Javascript y otros
lenguajes de scripting para realizar validaciones en el navegador del usuario en lugar
de en el servidor. El motivo es la eficiencia y el rendimiento, pero se debe prestar
especial atención, ya que es aprovechada en numerosas ocasiones para perpetrar
ataques de seguridad.

- Ataque de “buffer overflow”. Se producen cuando un programa no controla


adecuadamente la cantidad de datos que se copian sobre un área de memoria
reservada a tal efecto. Adecuadas técnicas de programación así como la
monitorización de la memoria para detectar comportamientos anómalos y el
establecimiento de reglas que eviten que los programas no puedan acceder a
secciones de la memoria que no le corresponden son algunas de las salvaguardas que
se deben implantar.

34

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
Para evitar estas vulnerabilidades, existen varios tipos de validación de datos:

- Validación del tipo de datos. Gestiona que los datos introducidos sean del tipo que se
esperan. Es decir si se espera un número entero que efectivamente se reciba un
número entero.

- Comprobación del intervalo. Controlando que no se superan los límites establecidos en


el rango de datos permitido.

- Comprobación del código. Para aquellos casos donde haya que comprobar a nivel de
código que los datos introducidos son realmente posibles.

- Validación compleja. Otras validaciones más complejas y combinación de las


anteriores.

8.2.4. Trazabilidad y auditorías

Para la detección de problemas de seguridad y funcionamiento, todos los componentes de la


aplicación, y en especial los que tienen que ver con su interfaz, deben contar con un sistema
que permita establecer la trazabilidad de los errores o incidencias detectadas.

Es necesario registrar información de trazabilidad de los usuarios que realizan determinadas


operaciones y tramitaciones con los sistemas a fin de que antes cualquier problema se pueda
verificar de forma fehaciente quién ha sido el autor de dicha operación.

8.3. Seguridad en Servicios Web (Web Services)


Los Servicios Web se han convertido en la tecnología más empleada para realizar
comunicaciones entre aplicaciones a través de un conjunto de protocolos y estándares abiertos
de uso común. Se definen como una interfaz que permite que se invoque, se publique y se
localice el servicio dentro de la red. Permite implementar aplicaciones distribuidas ya que un
web service viene a ser cualquier servicio que puede ser invocada por una aplicación.

El servicio se describe a través de una descripción (WSD - Web Service Description). La


descripción del servicio es una especificación procesable por máquina del interfaz del servicio y
define los formatos de los mensajes, tipos de datos, protocolos de transporte y formatos que
deberían ser usados. El servicio debe ser proporcionado por un proveedor de servicio (Provider
Entity) y ser invocada por un solicitante del servicio (Requester Entity).

35

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
Arquitectura de referencia planteada por W3C para los servicios web

La arquitectura de los web services permite que los servicios sean dinámicamente descriptivos,
publicados, descubiertos e invocados en un ambiente distribuido.

La tecnología de los web services se fundamenta en estándares basados en XML para la


integración de aplicaciones. Los usuarios pueden acceder a los servicios basándose en los
siguientes estándares y protocolos abiertos:

- Extensible Markup Language (XML): Un lenguaje extensible de marcas. XML es la base


de los web services, permitiendo describir e intercambiar todo tipo de datos mediante
ficheros de texto plano.

- Simple Object Access Protocol (SOAP): Protocolo simple de acceso a objetos, para
intercambiar información de distintos agentes en sitios distribuidos. Permite que un servicio
web se comunique con otro mediante protocolos HTTP y TCP/IP. SOAP utiliza XML para
codificar mensajes.
- Universal Description Discovery and Integration (UDDI): Se utiliza para localizar el
servicio web en cuestión. Es un registro por medio del cual las aplicaciones y los web
services pueden anunciarse y encontrar otros web services.

- Web Service Description Language (WSDL): Lenguaje XML de descripción de web


services. Describe 4 tipos de datos: interfaz, tipos de datos para los mensajes de petición y
respuesta, protocolo de transporte a utilizar e información para localizar un servicio
especifico.

8.3.1. Aspectos a tener en cuenta en la seguridad de servicios web


A continuación se ofrece una revisión breve de los principales requisitos para asegurar la
seguridad en la comunicación en lo que a WS se refiere. Estos no difieren de los puntos clave

36

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
que intervienen en toda comunicación entre un emisor y un receptor: autenticación, integridad,
confidencialidad y no repudio. Además hay que añadir el proceso de autorización.

Autenticación

En el proceso de autenticación de un servicio web, en función de sus requisitos de seguridad


se puede optar por autenticar exclusivamente al consumidor, al productor o a ambos.

Los tokens son, para fines prácticos, llaves de acceso a miembros inherentes a una aplicación
o servicio. Dependiendo de la estrategia a seguir, el uso de tokens para autenticar y mantener
el acceso al servicio web, puede ofrecer, entre otras, las siguientes ventajas:

- Mantener sesiones activas para largos periodos de tiempo.


- Habilitar aplicaciones que no se han autenticado directamente a recibir el token y
utilizar el servicio.
- Integrar en el token información relativa a la sesión y sus privilegios.

Autorización

La autorización es vital para efectuar un control sobre el acceso a los recursos. Las técnicas
empleadas para la autorización de servicios web no difieren de las empleadas en otras
tecnologías y están basadas en una adecuada gestión de los privilegios de los participantes.

Integridad y confidencialidad de los datos

Se usan técnicas de cifrado para garantizar la confidencialidad, así como la firma digital para
hacer lo propio con la integridad.

No repudio

Para evitar el no repudio en el contexto de los servicios web, los mensajes SOAP
intercambiados deberán ser identificados mediante las especificaciones WS-Addressing.

Los mensajes SOAP, por su parte, deben ser firmados siguiendo las indicaciones de WS
Security. Asimismo, los mensajes intercambiados deberían ser almacenados en ficheros, para
su ulterior consulta.

8.3.2. WS-Security
Se trata de un protocolo de comunicaciones que suministra un medio para aplicar seguridad a
los servicios web. Describe la forma de asegurar los servicios web en el nivel de los mensajes,
en lugar de en el del protocolo de transferencia como SSL o TLS. Éstos últimos protocolos,
pese a ofrecer una solución sólida a comunicaciones punto a punto, presentan importantes
limitaciones cuando un servicio intermedio debe acceder al contenido del mensaje.

WS-Security tiene como objetivo principal describir la forma de firmar y de cifrar mensajes de
tipo SOAP. De esta forma, se asegura que los datos intercambiados entre el cliente y el
servidor sean confidenciales. Se requiere una solución que garantice la seguridad extremo a
extremo.

Se basa en estándares para dotar a los mensajes SOAP de los criterios de seguridad
necesarios. No especifica el formato de la firma ni el cifrado ni el mecanismo de autenticación
usado. El objetivo es incluir la información utilizada de estos formatos y mecanismos en el
mensaje SOAP. Así, se definen cabeceras y se utiliza XML-Signature para el manejo de firmas

37

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
en el mensaje. El cifrado de la información se realiza mediante XML-Encryption. También se
hace uso del intercambio de credenciales de los clientes.

En definitiva, WS-Security define la forma de conseguir integridad, confidencialidad y


autenticación en los mensajes SOAP:

 Autenticación: se ocupa de identificar al llamador. WS-Security utiliza tokens de


seguridad (por ejemplo username, certificado, aserciones SAML, etc) para mantener
esta información mediante un encabezado de seguridad del mensaje SOAP. Este
mecanismo de autenticación no tiene los problemas de los mecanismos basados en el
transporte, ya que las credenciales pueden viajar entre los distintos endpoints hasta
llegar a su destino. Si se utiliza este mecanismo, es necesario que éstos sean
transmitidos de forma segura.

 Integridad: se consigue mediante firmas digitales XML, que permiten garantizar que no
se han alterado partes del mensaje desde que lo firmó el emisor. La solución dada por
WS-Security especifica cómo incluirlo en la cabecera SOAP.

 Confidencialidad: se basa en la especificación de cifrado XML (XML-Encryption) y


garantiza que sólo el destinatario o destinatarios a quien va destinado el mensaje
podrán comprender las partes correspondientes.

A continuación se detallan algunas de las especificaciones y estándares más importantes en


dicho marco de trabajo.

- WS-Policy. Esta especificación permite a los programadores de servicios web anunciar


sus políticas relativas a seguridad, calidad de servicio, etc. Aspectos como el tipo de
security tokens aceptados, el tipo de algoritmo de encriptación que se utilizó para
encriptar el mensaje, etc., deben estar claramente definidos por el servicio. Para ello,
define una sintaxis XML para especificar políticas relacionadas con la seguridad. Esta
sintaxis define elementos denominados assertions que permiten a un servicio web
especificar sus políticas de una forma no ambigua.

- WS-Addressing. Especificación que proporciona mecanismos neutrales,


independientes del protocolo de la capa de transporte, para direccionar mensajes y
servicios web. Define elementos de XML para identificar servicios web y facilitar el
direccionamiento punto a punto de los endpoints en los mensajes.

- WS-Trust. La especificación WS-Trust define cómo intercambiar tokens de seguridad


para permitir la obtención de credenciales entre distintos dominios de confianza.

- WS-Federation. Es la especificación que describe la forma de llevar a cabo la


intermediación entre los participantes para gestionar la identificación, el registro, la
autenticación y la autorización de los usuarios. Su objetivo principal es ayudar a la
definición de los mecanismos de federación de dominios de seguridad, ya sean
distintos o similares. Para ello, define, categoriza e intermedia con los niveles de
confianza de las identidades, atributos, y autenticación de los servicios web de todos
los colaboradores.

Existen especificaciones adicionales de WS-Security, como WS-Privacy, WS-Authorization o


WS-Secure Conversation.

38

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
8.3.3. Especificaciones que atañen a la seguridad en servicios web
Tal y como se ha comentado, los estándares que se están desarrollando por W3C y otros
organismos, basados en XML, tratan de asegurar la confidencialidad, integridad y
disponibilidad de los servicios web. A continuación se ofrece una breve descripción de los más
significativos:

XML Encryption

Se trata de una recomendación del W3C que especifica un proceso para cifrar datos (no
únicamente documentos XML) y representar esa información cifrada a su vez en XML para que
se curse por los medios de transmisión. Esta especificación permite cifrar de manera selectiva
documentos XML, y es ampliamente utilizado para proteger las comunicaciones entre servicios
web.

La confidencialidad de los mensajes SOAP se consigue mediante la aplicación de los


mecanismos definidos por esta especificación junto a los tokens de seguridad.

XML Digital Signature

Esta especificación proporciona la sintaxis y reglas de procesamiento para crear y representar


firmas digitales basadas en XML. Puede ser aplicado a todo el código XML o sólo una parte del
mismo.

XML Key Management

Se trata de una interfaz estándar abierta para la gestión de claves, que permite una fácil
implementación de PKI en aplicaciones web, incluidos servicios web. Permite manejar los
procesos de registro y revocación del servicio PKI. Está compuesto de dos elementos
importantes: el procesamiento de la información asociada con una firma o datos cifrados (X-

39

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
KISS - XML Key Information Service Specification) y el registro del par de claves (X-RKSS -
XML Key Registration Service Specification) de criptografía de clave pública.

SAML (Security Authorization Markup Language)

SAML permite la codificación de información de autenticación y autorización en formato XML.


Esta información de seguridad se materializa en forma de afirmaciones que contienen
información sobre la autenticación, atributo y autorización. SAML se apoya en otras
especificaciones como por ejemplo XML Digital Signature, para proporcionar autenticidad e
integridad. Fomenta la adopción de la federación de identidades, al eliminar el obstáculo que
representaba tener que tratar múltiples protocolos.

XADES (XML Advanced Electronic Signatures)

Como se ha estudiado anteriormente, XADES define un estándar de firma de documentos


basado en XML.

XACML (eXtensible Authorization Markup Language)

Se define XACML como un estándar basado en la especificación XML para definir políticas de
control de acceso. También define cómo es la estructura de intercambio de mensajes de
autorización y un modelo para organizar y almacenar la información de autorización

8.4. Seguridad de las Bases de Datos


La gran mayoría de los datos sensibles de las organizaciones están almacenados en sistemas
gestores de Bases de Datos comerciales tales como Oracle, MySql o Microsoft SQL Server,
entre otros. Por tanto, atacar una base de datos es uno de los objetivos fundamentales de los
criminales.

Según el informe de Verizon Data Breach, en 2012, el 96% de los registros que fueron
vulnerados provenían de bases de datos. Esto puede explicar por qué los ataques externos,
tales como inyección de SQL, son tan frecuentes actualmente. Sin embargo, diferentes
estudios testifican que es escaso el presupuesto de TI que va destinado a mejorar la seguridad
de estos sistemas, que pueden contener datos críticos y expuestos a ataques, hasta tal punto
que gran parte de los usuarios de Oracle aún tienen algún parche ausente en sus gestores de
bases de datos.

8.4.1. Vulnerabilidades y ataques contra las Bases de Datos


Para aplicar políticas de seguridad correctas en lo que a Base de Datos se refiere conviene
conocer cuáles son las vulnerabilidades y los ataques más habituales.

Además de vulnerabilidades ya comentadas anteriormente, algunas de las más típicas en lo


que a Base de Datos se refiere son las siguientes:

- Debilidad en el nombre de usuario/password. Definición de los mismos en blanco, o


ya completados por defecto o demasiado simples.

- Mala gestión de privilegios. Otorgar más privilegios en la base de datos que exceden
los requisitos de un puesto de trabajo o rol determinado. Los usuarios sólo deben
recibir privilegios a través de grupos o funciones siendo manejados colectivamente.

40

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
- Configuración incorrecta o ineficiente. Es necesario deshabilitar funcionalidades de
base de datos que no se utilicen y desactivar configuraciones inseguras que podrían
estar activadas por defecto.

- Gestión de los accesos concurrentes. Si no están bien definido el concepto de


transacción, es posible que existan problemas de manipulación si existen un gran
conjunto de usuarios trabajando concurrentemente.

- Auditoria y monitorización. Debe generase trazabilidad y monitorizar las actividades


que afecten a la integridad de los datos y realizarse auditoría en todos los acceso a
información restringida. Asimismo, debe realizarse evaluaciones y seguimiento de la
actividad de la base de datos.

- Bases de datos sin actualizar. No aplicar los parches de seguridad en el momento


adecuado expone la Base de Datos a múltiples vulnerabilidades.

- Datos sensibles sin cifrar. Se almacenan los datos sensibles en las tablas sin aplicar
ningún cifrado sobre ellos.

- Incorrecta validación de datos. No se validan los datos de entrada ni las variables


utilizadas en el código, por ejemplo SQL.

El principal ataque contra la Base de Datos es el ataque por inyección de código, en concreto
el ataque de Inyección SQL. Según la definición de OWASP, un ataque por inyección SQL
consiste en la inserción o “inyección” de una consulta SQL por medio de los datos de entrada
desde el cliente hacia la aplicación con la finalizad de efectuar la ejecución de comandos SQL
prefinidos y poder insertar código intruso o malicioso. Las inyecciones SQL explotan la
vulnerabilidad que radica en la incorrecta comprobación de las variables utilizadas con el
código SQL.

Para evitar este tipo de vulnerabilidad es conveniente tener en cuenta:

 Validar los datos introducidos por el usuario: mediante comprobaciones de tipo,


tamaño, y formato. Es necesario fundamentalmente evitar que el usuario introduzca
libremente caracteres sin control ninguno y validar siempre los datos de entrada.
Asimismo, debe parametrizarse las sentencias SQL, para que las secciones de código
insertados por los usuarios no sean interpretados como código, sino únicamente
tomados como el tipo de datos (números o letras) que se espera que el usuario
introduzca.

 Asignar mínimos privilegios al usuario que conecta a la base de datos. El usuario debe
tener los privilegios mínimos suficientes para realizar las acciones que necesite.

 Revisar el código dentro del programa que inserte SQL y realizar auditorías de código,
vigilando sentencias tales como: EXECUTE o EXEC.

 Revisar igualmente los procedimientos almacenados, verificando especialmente las


variables utilizadas y los parámetros de entrada.

41

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.
9. Referencias

 ISO/IEC 27001:2005 - Information technology -- Security techniques


 ISO/IEC 17799:2005 - Information technology -- Security techniques
 W3C: http://www.w3c.es
 OASIS Web Services Security (WSS) TC: https://www.oasis-
open.org/committees/tc_home.php?wg_abbrev=wss
 Software Security: Building Security in. Gary McGraw. A ddison Wesley Software
Security Series. 2006.
 OWASP. https://owasp.org
 Guías de Seguridad de las TIC (CCN-STIC-412, CCN-STIC-422, CCN-STIC-
470G1,CCN-STIC-470G2, CCN-STIC-471D, CCN-STIC-472E, CCN-STIC-473D,
CCN-STIC-454, CCN-STIC- 455, CCN-STIC-812)
 Web Services Architecture: http://www.w3.org/TR/ws-arch
 XML Encryption Syntax and Processing: http://www.w3.org/TR/xmlenc-core
 XML-Signature Syntax and Processing: http://www.w3.org/TR/xmldsig-core
 NIST SP 800-40 - Creating a Patch and Vulnerability Management Program
 NIST SP 800-83 - Guide to Malware Incident Prevention and Handling for Desktops and
Laptops
 NIST SP 800-153 - Guidelines for Securing Wireless Local Area Networks (WLANs)
 NIST SP 800-94 - Guide to Intrusion Detection and Prevention Systems (IDPS)
 NIST SP 800-95 - Guide to Secure Web Services

42

111. – La seguridad en redes. Control de accesos. Técnicas criptográficas. Mecanismos de firma digital. Control de
intrusiones. Cortafuegos. Seguridad en nivel de aplicación: protección de servicios web, bases de datos e interfaces de
usuario.
.

También podría gustarte