anÁlisis de seguridad informÁtica
Post on 26-Oct-2021
6 Views
Preview:
TRANSCRIPT
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ISC-2002-2-28
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA
OSCAR MAURICIO MENDOZA VARGAS
UNIVERSIDAD DE LOS ANDES DICIEMBRE 2002.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ISC-2002-2-28
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA
Autor:
OSCAR MAURICIO MENDOZA VARGAS
Asesora: MISC. BEATRIZ ACOSTA MANZUR
UNIVERSIDAD DE LOS ANDES DICIEMBRE 2002.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ISC-2002-2-28
CONTENIDO
INTRODUCCIÓN 6 OBJETIVO GENERAL 8 OBJETIVO ESPECÍFICOS 8 ALCANCE Y LIMITACIONES 8 JUSTIFICACIÓN 10 1. DEFINICIÓN DE SEGURIDAD 12 1.1 CATEGORÍAS DE LA SEGURIDAD COMPUTACIONAL 13 1.1.1 CONFIDENCIALIDAD 13 1.1.2 INTEGRIDAD 14 1.1.3 DISPONIBILIDAD 14 2. TAXONOMÍA DE ATAQUES 16 2.1 REGLAS DE ACEPTACIÓN PARA UNA TAXONOMÍA 16 2.2 CONSIDERACIONES PARA SELECCIONAR UNA TAXONOMÍA 17 3. TAXONOMÍAS EXISTENTES 18 3.1 LISTAS 18 3.2 LISTAS DE CATEGORÍAS 19 3.3 CATEGORÍAS DE RESULTADOS 20 3.4 LISTAS EMPÍRICAS 20 3.5 TAXONOMÍAS MATRICIALES 21 4. TAXONOMÍA A UTILIZAR 23 4.1 CLASES DE ATACANTES 24 4.2 CLASES DE ACCESO 25 4.3 CLASES DE RESULTADOS 27 4.4 CLASES DE HERRAMIENTAS 28 5. ANTECEDENTES DE LOS ÁRBOLES DE AMENAZA 32 5.1 MODELOS DE SEGURIDAD 32 5.2 METODOLOGÍAS PARA EL DISEÑO DE SISTEMAS DE SEGURIDAD 33 5.2.1 MÉTODOS DE LISTAS DE CHEQUEO 33 5.2.1.1 DEFINICIÓN 34 5.2.1.2 VENTAJAS Y DESVENTAJAS 35 5.2.2 MÉTODOS DE INGENIERÍA MECANICISTA 35 5.2.2.1 DEFINICIÓN 36 5.2.2.2 VENTAJAS Y DESVENTAJAS 37 5.2.3 MÉTODOS DE LÓGICA TRANSFORMACIONAL 38 5.2.3.1 DEFINICIÓN 38 5.2.3.2 VENTAJAS Y DESVENTAJAS 39
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ISC-2002-2-28
6. ÁRBOLES DE DECISIÓN 41 6.1 ELEMENTOS DE UN ÁRBOL DE DECISIÓN 42 6.1.1 NODOS 42 6.1.1.1 NODOS DE DECISIÓN 42 6.1.1.2 NODOS DE ELECCIÓN 42 6.1.2 RAMAS 43 6.1.3 CAMINOS 43 6.2 CONSTRUCCIÓN DE UN ÁRBOL DE DECISIÓN 44 6.3 EVALUACIÓN DEL ÁRBOL 44 6.4 RESUMEN DE LA METODOLOGÍA 45 6.5 EJEMPLO DE USO 45 7. ÁRBOLES DE AMENAZA 49 7.1 CONCEPTOS PREVIOS 49 7.2 METODOLOGÍA DE ÁRBOLES DE AMENAZA 50 7.2.1 PRIMERA PARTE – IDENTIFICACIÓN DE VULNERABILIDADES Y ANÁLISIS DE AMENAZAS 51 7.2.1.1 DETERMINAR EL ALCANCE DEL ANÁLISIS 52 7.2.1.2 GENERAR EL ÁRBOL DE AMENAZA 53 7.2.1.3 IDENTIFICAR A LOS ATACANTES 55 7.2.1.4 ASIGNAR UNA FUNCIÓN MATEMÁTICA AL ÁRBOL 56 7.2.1.5 PODAR EL ÁRBOL DE AMENAZA 58 7.2.2 SEGUNDA PARTE – IMPACTO DE LOS INCIDENTES Y MITIGACIÓN DE AMENAZAS 58 7.3 EJEMPLOS 60 7.3.1 SEGURIDAD DE LA INFORMACIÓN DE UN HOSPITAL 61 7.3.2 SEGURIDAD DE UNA CASA 64 8. DEFINICIÓN DE LA CONFIGURACIÓN 73 8.1 COMPONENTES MÁS COMUNES 73 8.2 SERVICIOS MÁS COMUNES 75 8.3 CONFIGURACIÓN ESCOGIDA 76 9. AJUSTE DE LA TAXONOMÍA A LA METODOLOGÍA 80 9.1 RELACIÓN TAXONOMÍA-METODOLOGÍA 81 10. APLICACIÓN DE LA METODOLOGÍA 86 10.1 ESPECIFICACIONES DE LA CONFIGURACIÓN 86 10.2 FASE I: IDENTIFICACIÓN DE VULNERABILIDADES Y ANÁLISIS DE AMENAZAS 88 10.2.1 DEFINICIÓN DEL ALCANCE DEL ANÁLISIS 88 10.2.2 CREACIÓN DEL ÁRBOL DE AMENAZAS 89 10.2.3 IDENTIFICACIÓN DE LOS AGENTES DE AMENAZA 124 10.2.4 DEFINICIÓN DE LOS INDICADORES Y
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ISC-2002-2-28
FUNCIONES DEL ÁRBOL 125 10.2.5 ASIGNACIÓN DE VALORES A LOS INDICADORES 129 10.2.6 PODA DEL ÁRBOL SEGÚN LOS AGENTES DE AMENAZA 151 10.3 REPRESENTACIÓN ESQUEMÁTICA DEL ÁRBOL DE AMENAZA 159 10.4 ANÁLISIS DE LOS ÁRBOLES PODADOS 166 10.5 FASE II: IMPACTO DE LOS INCIDENTES Y MITIGACIÓN DE AMENAZAS 174 10.5.1 IMPACTO DE LOS INCIDENTES 175 10.5.2 MITIGACIÓN DE AMENAZAS 176 11. DEFINICIÓN XML DE LOS ÁRBOLES DE AMENAZA 184 11.1 INTRODUCCIÓN A XML 184 11.2 VENTAJAS DE XML 185 11.3 BNF DE LOS ÁRBOLES DE AMENAZA 186 11.4 REPRESENTACIÓN XML DE UN ÁRBOL DE AMENAZA 187 CONCLUSIONES 191 GLOSARIO 194 BIBLIOGRAFÍA 196
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ISC-2002-2-28
LISTA DE FIGURAS
Figura 4.1 Secuencia Operacional de Ataques de Red y Computadores 23 Figura 4.2 Categorías de Atacantes de sus Motivaciones 25 Figura 4.3 Accesos para el Ataque 26 Figura 4.4 Resultados de un Ataque 27 Figura 4.5 Herramientas de Ataque 29 Figura 4.6 Taxonomía de Ataques 31 Figura 6.1 Componentes de un Árbol de Decisión 43 Figura 6.2 Introducción de un Producto en el Mercado 47 Figura 6.3 Análisis del Árbol de la Figura 6.2 48 Figura 7.1 Árbol de Amenaza 53 Figura 7.2 Árbol Disyunto 53 Figura 7.3 Árbol Conjunto 54 Figura 7.4 Cálculo de un Árbol Disyunto 54 Figura 7.5 Cálculo de un Árbol Conjunto 55 Figura 7.6 Árbol de Amenaza del ASCH 64 Figura 7.6 Árbol de Amenaza, Primer y Segundo Nivel 66
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 7.7 Subárbol, Pasar la Seguridad de las Puertas 68 Figura 7.8 Valores de los Indicadores 70 Figura 7.9 Subárbol, Entrar por la Ventana 71 Figura 7.10 Árbol, Robar la Casa, dos Primeros Niveles 72 Figura 8.1 Configuración Escogida 76 Figura 9.1 Puntos de la Taxonomía en los que se realizará el Análisis 85 Figura 10.1 Configuración Escogida 86 Figura 10.2 Primera Aproximación al Árbol de Amenaza 90 Figura 10.3 Árbol 1 91 Figura 10.4 Árbol 2 91 Figura 10.5 Daños al Portal 93 Figura 10.6 Primeros tres Niveles del árbol Daños al Portal 95 Figura 10.7 Subárbol Ataques Locales 96 Figura 10.8 Subárbol Ataques Remotos 100 Figura 10.9 Primeros Tres niveles del Árbol Daños al Portal 102 Figura 10.10 Subárbol , Ataques de Navegador 102 Figura 10.11 Subárboles del Árbol Ataques de Navegador 103 Figura 10.12 Subárboles del Árbol Ataques de Navegador (2) 106 Figura 10.13 Subárbol Ataque de Aplicación 109 Figura 10.14 Subárbol Base de Datos 110 Figura 10.15 Subárbol Controles de Acceso 111
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 10.16 Subárboles Errores de Configuración y Sistemas Externos 112 Figura 10.17 Subárbol Burlar la Autenticación 114 Figura 10.18 Subárbol Sistema Operativo 116 Figura 10.19 Subárbol Autenticación de Login 116 Figura 10.20 Subárbol Sistema de Almacenamiento 117 Figura 10.21 Subárbol Ataques Remotos 118 Figura 10.22 Ataques al Servidor 119 Figura 10.23 Subárboles de Ataques al Servidor 121 Figura 10.24 Subárbol Ataques por Protocolos 123 Figura 10.25 Esquema General del Árbol 124 Figura 10.26 Árbol de Amenaza Original 156 Figura 10.27 Árbol podado para el Hacker 157 Figura 10.28 Árbol Podado para el Vándalo 158 Figura 10.29 Numeración de los Nodos del Árbol 160
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
LISTA DE TABLAS Tabla 1.1 Ejemplos de Ataques 15 Tabla 3.1 Taxonomía Matricial 22 Tabla 7.1 Indicadores y Funciones Recomendadas 57 Tabla 10.1 Indicadores y Funciones Utilizadas 127 Tabla 10.2 Esquema para la Asignación de Valores 129 Tabla 10.3 Nodos Eliminados para el Primer Agente de Amenaza 170 Tabla 10.4 Nuevos Eliminados para el Segundo Agente de Amenaza 173
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
A mis padres, mi hermano
y mi Tio Sergio,
quienes siempre han
estado a mi lado y me
han ayudado
durante toda mi vida
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
AGRADECIMIENTOS
Este proyecto de grado es el resultado de cinco años de estudio y esfuerzo,
periodo de tiempo durante el cual hubo muchas personas importantes, que de una
u otra forma, me ayudaron a sobrepasar obstáculos e hicieron posible que
culminara este trabajo. Aunque es imposible mencionarlos a todos, quiero
aprovechar este momento para agradecer a quienes estuvieron a mi lado
apoyándome, compartiendo conmigo sus conocimientos y sobre todo,
brindándome su amistad.
A mis padres y mi hermano, porque su apoyo ha sido indispensable durante toda
mi vida.
A todos mis amigos, quienes han estado en el momento y lugar preciso
apoyándome de manera incondicional.
A la Ingeniera Beatriz Acosta, mi profesora de Interconectividad y mi asesora de
Tesis. Un profundo agradecimiento por todas las enseñanzas recibidas, pero en
especial quiero agradecer su maravillosa amistad y expresarle mis mejores
deseos.
Al Ingeniero Fernando Rodríguez, quien siempre me brindó sus conocimientos
durante el desarrollo de este trabajo e hizo posible su culminación. Quiero
agradecer sus incansables esfuerzos en la revisión de este trabajo.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Quiero agradecer de manera muy especial a mi tío Sergio Mendoza, por el cariño
y apoyo que siempre me ha manifestado, por sus enseñanzas y en especial por
ser un verdadero ejemplo a seguir.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
INTRODUCCIÓN
Hace algún tiempo, cuando la computación se encontraba en sus primeros años,
los recursos de hardware y software estaban disponibles única y exclusivamente
para las personas que contaban con accesos autorizados a zonas protegidas
físicamente. Aunque estas personas tenían los permisos necesarios para acceder
a la información almacenada en las máquinas, solo podían hacerlo si tenían
contacto físico con ellas. Esta limitación en el acceso a la información impulsó el
desarrollo de tecnologías de hardware y software que permitieran ingresar a los
sistemas de cómputo en forma remota y prácticamente desde cualquier
computador, dando origen a las redes computacionales.
Con el pasar de los años, las redes de computadores han evolucionado
rápidamente, trayendo consigo un gran número de ventajas y posibilidades para
las personas de todo el planeta, sin embargo, estos beneficios vienen
acompañados de algunos problemas, en su gran mayoría relacionados con la
seguridad de los datos y de los recursos que componen la red.
Aunque el número de ataques contra la seguridad de los datos y de los recursos
aumenta cada día, el número de formas para prevenir y contrarrestar dichos
ataques no aumenta con la misma velocidad. Lo verdaderamente preocupante no
es la discrepancia entre el número de ataques y el número de formas para
prevenirlos y contrarrestarlos, es la poca efectividad que tienen las formas
existentes de protección contra los ataques. El mayor problema de las diversas
metodologías utilizadas para el análisis de seguridad radica en su falta de
estructuración y en la carencia de una forma adecuada para representar las
amenazas posibles contra el sistema que se quiere proteger.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Si se pueden conocer y entender las diferentes formas en las cuales un sistema
puede ser atacado, es posible implementar contramedidas para contrarrestar
dichos ataques. Así mismo, si se sabe quienes son los atacantes del sistema, las
contramedidas se pueden enfocar hacia aquellos ataques al sistema que sean
realmente posibles. Aunque un sistema puede ser atacado en muchas formas,
solo algunas de ellas serán utilizadas por los atacantes, por tal razón, es necesario
que la metodología utilizada para el análisis de seguridad tenga en cuenta a los
agentes que pueden causar el ataque.
En 1999, Bruce Schneier, quien era en aquel entonces el CTO de Counterpane
Internet Security, autor del libro Criptografía Aplicada e inventor de los algoritmos
de encripción Blowfish y Twofish, publicó en el Dr. Dobb´s Journal su primer
artículo en el cual describía su metodología para el análisis de seguridad,
denominada Árboles de Amenaza. Los Árboles de Amenaza proveen una manera
formal y metodológica para describir la seguridad de los sistemas, basándose en
diversos ataques y atacantes.
Durante este proyecto de grado se mostrará el uso de la metodología diseñada
por Schneier, aplicada a un caso en particular de un sistema computacional. Se
pretende dar a conocer esta metodología como una valiosa herramienta para el
análisis de seguridad en sistemas computacionales, mostrando cuáles son sus
ventajas sobre otras metodologías existentes.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
OBJETIVO GENERAL Este proyecto de grado pretende aplicar la metodología de Árboles de Amenaza al
análisis de vulnerabilidades de seguridad en sistemas computacionales. La
metodología utilizada se enfoca en las metas u objetivos de los atacantes y en los
diversos métodos que utilizan para alcanzarlos. De esta forma, el objetivo general
de este trabajo es utilizar la metodología de Árboles de Amenaza y mostrarla
como una herramienta de apoyo para aquellas personas encargadas de la fase de
análisis de requerimientos de seguridad en el desarrollo de sistemas
computacionales.
OBJETIVOS ESPECIFICOS
• Definir una configuración específica sobre la cual se aplicará la
metodología.
• Construir y analizar el árbol de amenaza para la configuración escogida.
• Diseñar un estándar XML para la descripción de los Árboles de Amenaza.
ALCANCES Y LIMITACIONES Este proyecto de grado pretende abarcar la fase de análisis de requerimientos de
seguridad en el desarrollo de sistemas computacionales, sin embargo, se restringe
el análisis única y exclusivamente al análisis de la seguridad lógica, aunque la
metodología que será utilizada es conveniente también, si se quiere analizar la
seguridad física requerida para el sistema en cuestión.
Debido a que se pretende mostrar el uso, las ventajas y desventajas de la
metodología de Árboles de Amenaza, se hará con base en una configuración
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
genérica de un conjunto de servicios Web, sin amarrar la metodología a productos
de hardware y software específicos.
Así mismo, se pretende que investigaciones posteriores puedan extender este
trabajo y ponerlo en práctica haciendo una selección de productos disponibles en
el mercado y los cuales puedan ser usados en situaciones de la vida diaria.
Se espera también ser punto de partida para comenzar a utilizar la metodología de
Árboles de Amenaza con lenguajes estándares de programación como lo es XML,
lenguaje que comienza a ser usado en la gran mayoría de aplicaciones
computacionales y que poco a poco ha adquirido una gran importancia en la
comunicación e interoperabilidad de aplicaciones, en especial, aquellas
desarrolladas para ejecutarse sobre una red, bien sea pública o privada.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
JUSTIFICACIÓN Hoy en día vivimos en una sociedad que depende en gran medida de los
computadores y así como esa dependencia aumenta diariamente, el impacto de
los crímenes computacionales ha llegado a ser más desastroso. Sin embargo, no
solo ha aumentado el impacto que puede causar un crimen computacional, ha
aumentado también el atractivo que posee este tipo de delito para los criminales.
Llegar a obtener el dominio no autorizado de un sistema computacional, abre una
gran ventana de oportunidades dentro de un mundo digitalizado como el que
estamos disfrutando desde hace algunos años. Este rango de posibilidades
abarca desde algo tan sencillo como es publicar información no autorizada en
Internet hasta algo tan complejo y con consecuencias nefastas como es, por
ejemplo, eliminar los registros médicos y/o bancarios de una persona, se puede
incluso borrar toda evidencia de vida que tenga una persona en las bases de
datos de las empresas alrededor del mundo.
Se hace evidente que mejorar la seguridad de los sistemas computacionales es
ahora una prioridad, sin embargo, actualmente el análisis de seguridad se lleva a
cabo de una manera intuitiva y poco estructurada. Así mismo, existe un elevado
número de contramedidas para los ataques a la seguridad que en la gran mayoría
de los casos no se utilizan simplemente por desconocimiento de las mejoras que
se pueden obtener en la seguridad de un sistema después de su implementación.
Con este proyecto de grado se pretende dar a conocer las ventajas de utilizar una
metodología estructurada para el análisis de seguridad, como lo es la metodología
de Árboles de Amenaza. Luego de utilizar la metodología de Árboles de Amenaza
para el análisis de seguridad de un sitio Web típico, se realizará un compendio de
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
los ataques más comunes y perjudiciales que existen en la actualidad y cuáles son
las contramedidas más efectivas para prevenirlos. Como punto final de este
trabajo, se busca diseñar un estándar XML para los árboles de amenaza y abrir la
puerta a nuevos trabajos de investigación basados en esta metodología.
Se espera que enfocando los esfuerzos de este trabajo de grado en los tres
puntos mencionados anteriormente, se logre llenar los vacíos que existen
actualmente en la evaluación de vulnerabilidades y prevención de ataques a la
seguridad computacional.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
1. DEFINICIÓN DE SEGURIDAD
Según William R. Cheswick, “La seguridad computacional consiste en evitar que
las personas hagan a, hagan con o hagan desde sus computadores o periféricos
cosas que usted no quiere que hagan”.
En los primeros días de la era computacional, la seguridad era un tema de poca
relevancia e interés, sin embargo, los problemas de seguridad computacional
emergieron a principios de la década de los 50´s cuando los computadores
comenzaron a ser usados para almacenar información clasificada. La
confidencialidad se convirtió en aquel entonces en el principal tema de interés,
siendo el espionaje y la invasión a la privacidad las principales amenazas
discutidas. Para esa época, la seguridad era un problema de índole militar y era
tratado principalmente como un problema de seguridad de la información.
En la década de los 60’s, la aparición de las redes computacionales trajo consigo
problemas adicionales de seguridad. Los sistemas computacionales multiusuario
requerían de un grado de sofisticación mayor en sus sistemas operativos con el fin
de evitar que de manera intencional o no, los usuarios interfirieran en el trabajo de
otros usuarios de la red. Fue así como al tema de la privacidad de la información,
se añadió también el tema de la integridad de la información.
Según la definición de seguridad computacional dada por Cheswick, la seguridad
computacional no es una meta sino un mecanismo para alcanzar una meta, que
en este caso es la seguridad de la información. Otro punto de vista de la seguridad
computacional es el dado por Garfinkel y Spafford quienes afirman que “...un
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
computador es seguro si usted puede depender de él y su software se comporta
como usted desea”. Este concepto es llamado frecuentemente confianza y trata de
incluir factores y agentes externos que pueden influir en la seguridad de un
computador, como por ejemplo, los desastres naturales.
1.1 CATEGORÍAS DE LA SEGURIDAD COMPUTACIONAL
Para poder hacer frente a las amenazas a la seguridad de un sistema
computacional, se ha definido una serie de categorías de la seguridad
computacional con base en los servicios que se pueden ofrecer a través de un
sistema informático.
1.1.1 CONFIDENCIALIDAD
La confidencialidad se refiere al acceso a la información solo para aquellas
personas que están autorizadas para hacerlo. Existen básicamente dos tipos de
confidencialidad. La Confidencialidad de los datos, la cual consiste en proteger la
información intercambiada por todas las entidades autorizadas, en la mayoría de
los casos la protección se realiza mediante técnicas de cifrado. La
Confidencialidad de flujo de tráfico protege la identidad del origen y del destino del
mensaje.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
1.1.2 INTEGRIDAD La integridad hace referencia a que la información no sea alterada accidental o
intencionalmente y que todas las modificaciones a la información sean realizadas
por personal autorizado.
1.1.3 DISPONIBILIDAD
La disponibilidad significa que los sistemas computacionales se deben mantener
funcionando sin degradación del acceso a los usuarios y brindarles todos los
servicios a los cuales están autorizados.
Cuando se habla de seguridad informática y en especial cuando se quiere llegar a
establecer una definición de seguridad computacional formal, es necesario
responder a dos preguntas claves, la primera de ellas es ¿Qué recursos estamos
tratando de proteger? y la segunda pregunta es ¿Contra qué debemos proteger
los sistemas que estamos defendiendo?
¿Qué recursos estamos tratando de proteger? Según lo tratado hasta ahora en la
definición de seguridad y en las categorías de la seguridad computacional, los
recursos computacionales que queremos proteger son: los procesos, los archivos
y los datos en tránsito.
Los procesos son aquellos programas en ejecución y toda la información
necesaria para correr dichos programas.
Los archivos son una colección de registros o datos, designados por un nombre y
considerados como una unidad lógica por el usuario.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Los datos en tránsito son aquellos datos que están siendo transmitidos a través de
una red.
¿Contra qué debemos proteger los sistemas que estamos defendiendo? Hay
varias formas de contestar a esta pregunta. La primera de ellas contesta haciendo
referencia a las herramientas que están siendo utilizadas para llevar a cabo el
ataque. La segunda forma de responder es explicando el método que está siendo
utilizado para llevar a cabo el ataque. Una última forma de responder a esta
pregunta es buscando explicar cuál es el objetivo o propósito del ataque (Ver tabla
1).
Ataque Herramienta Método Propósito
Copiar archivo de passwords, lograr acceso a las cuentas del usuario y obtener privilegios de root.
tftp, crack, telnet, shell script.
Acceso no autorizado Copiar archivos y software
Enviar e-mail hasta inundar
un Sistema
Programa de e-mail Uso no autorizado Denegación de
servicio.
Tabla 1.1 Ejemplos de ataques
Teniendo en cuenta los conceptos hasta ahora vistos, se procederá a dar la
definición de seguridad computacional que será utilizada a lo largo de este trabajo
de grado. La seguridad computacional consiste en evitar que los atacantes alcancen sus objetivos a través del acceso y uso no autorizado de los computadores y las redes. Con esta definición se restringe el análisis de la
seguridad informática única y exclusivamente al análisis lógico, dejando de lado el
análisis de la seguridad física.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2. TAXONOMÍA DE ATAQUES
Una taxonomía de ataques se define como una categorización generalizada de
ataques potenciales que pueden llegar a ocurrir en un sistema computacional.
Todos aquellos ataques incluidos en una taxonomía son dependientes de las
amenazas identificadas para ese sistema y de las vulnerabilidades que presenta.
En la actualidad existen numerosas taxonomías de ataques a sistemas
computacionales, comenzando desde la taxonomía más sencilla, en la cual todos
los ataques pertenecen a una de tres categorías: Confidencialidad, Integridad o
Denegación de Servicio, pasando por las innumerables listas de términos, listas de
categorías, listas empíricas hasta llegar a algo un poco más complejo como son
las taxonomías matriciales.
2.1 REGLAS DE ACEPTACIÓN PARA UNA TAXONOMÍA
Sin importar de cuál taxonomía se esté hablando, es importante destacar que
todas ellas deben cumplir con ciertas reglas para ser consideradas como
categorizaciones adecuadas. A continuación se describen brevemente las reglas
dadas por Edward Amoroso para poder aceptar una taxonomía.
1. Todas las categorías de una taxonomía deben ser mutuamente excluyentes y
colectivamente exhaustivas. Esto significa, que cada amenaza debe pertenecer
a una y solo una de las categorías.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2. Todas las categorías deben estar acompañadas de un criterio de clasificación
claro y no ambiguo que permita establecer dónde colocar cada amenaza
posible.
3. La taxonomía debe ser comprensible y utilizable por personal con básicos
conocimientos en seguridad computacional, no solamente por peritos en el
tema.
4. La terminología de la taxonomía debe acomodarse a la terminología de
seguridad establecida.
2. 2 CONSIDERACIONES PARA SELECCIONAR UNA TAXONOMÍA
Amoroso establece también tres consideraciones que se deben tener en cuenta en
el momento de seleccionar una taxonomía de ataques.
1. Completitud: La taxonomía escogida debe abarcar a todos los posibles ataques
que se puedan presentar sobre el sistema
2. Conveniencia: La taxonomía escogida debe caracterizar apropiadamente los
ataques al sistema.
3. Amenazas internas Vs. Amenazas externas: Una taxonomía de ataque debe
diferenciar entre aquellos ataques que requieren de acceso al sistema y
aquellos ataques que pueden ser iniciados por atacantes externos quienes no
han tenido que ingresar al sistema.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
3.TAXONOMÍAS EXISTENTES
En la actualidad existe una gran variedad de taxonomías que son utilizadas para la
clasificación de ataques computacionales. Cada una de ellas tiene ventajas y
desventajas, las cuales dependen principalmente del contexto en el cual se esté
utilizando y del tipo de análisis de seguridad que se esté realizando.
A continuación se presentan las taxonomías más utilizadas, enunciando cuáles
son los principales inconvenientes que presentan. Se escogerá también una
taxonomía que será utilizada durante la implementación de la metodología de
Árboles de Amenaza con el fin de hacer más fácil su aplicación en el análisis de
requerimientos de seguridad.
La integración de la taxonomía y la metodología se realizará en un capítulo
posterior y aunque la metodología no exige que sea utilizada una taxonomía para
su aplicación, se consideró necesario hacerlo con el fin de poder realizar una
mejor categorización de los ataques dentro del árbol de amenaza.
3.1 LISTAS
Las taxonomías de listas consisten en enumeraciones exhaustivas de los diversos
ataques que puede sufrir un sistema. Para poder utilizar estas taxonomías es
necesaria la intervención de todas las personas que interactúan con el sistema,
quienes se reúnen con el fin de aportar ideas sobre las vulnerabilidades del
mismo. La generación de las listas se realiza mediante una tormenta de ideas
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
(Brain Storming), en la cual todas las personas mencionan vulnerabilidades y tipos
de ataques que puede sufrir el sistema.
Una de las principales desventajas que presentan las taxonomías de ataque
basadas en listas es el incumplimiento a la regla de exclusión mutua. Es muy
común encontrar en estas taxonomías clasificaciones que se sobreponen entre sí.
La otra gran desventaja de las taxonomías de listas es que para que sean
realmente útiles deben hacer una enumeración exhaustiva de los posible ataques
al sistema, sin embargo, entre más grande sea la lista se hace más difícil su
análisis y por lo tanto su efectividad de uso disminuye.
3.2 LISTAS DE CATEGORÍAS
Un caso particular de taxonomías basadas en listas son las listas de categorías y
entre ellas, una de las más famosas y reconocidas es la propuesta por Cheswick y
Bellovin, en donde clasifican los ataques en las siguientes siete categorías:
1. Robo de Passwords
2. Ingeniería social
3. Bugs y puertas traseras
4. Fallas de autenticación
5. Fallas de protocolo
6. Fugas de información
7. Denegación de servicio
Las listas de categorías son una mejora a las listas de términos porque tratan de
introducir algún tipo de estructura a la clasificación de los ataques, sin embargo, al
igual que las listas de términos, las listas de categorías tienden a convertirse en
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
extensas enumeraciones de ataques las cuales pueden llegar a salirse de control
al momento de analizarlas.
3.3 CATEGORÍAS DE RESULTADOS
Otra variante a los métodos de taxonomía basados en listas la encontramos en el
trabajo realizado por Cohem, trabajo que ha sido denominado Categorías de
Resultados. Cohem, al igual que Russell y Gangemi, agrupó los posibles ataques
de un sistema computacional en tres categorías: Corrupción (Modificación no
autorizada de los datos), fuga (la información llega a un destino no deseado) y
denegación (un servicio no está disponible para los usuarios). La única diferencia
entre la taxonomía de Cohem y la de Russell radica en que éste último utiliza los
antónimos de cada uno de los términos usados por Russell para la clasificación de
los ataques; así a los ataques que en la taxonomía de Cohem figuran dentro de la
categoría de corrupción, Russell los clasifica como ataques contra la integridad; a
los ataques de fuga los denomina ataques contra la confidencialidad y a los
ataques de denegación los denomina ataques contra la disponibilidad. Vale la
pena resaltar, que en la actualidad, muchos ataques no se pueden clasificar
dentro de alguna de estas tres categorías.
3.4 LISTAS EMPÍRICAS
Un ejemplo más de las diversas taxonomías de ataques que han sido utilizadas,
son las denominadas Listas Empíricas, desarrolladas entre otros por Newman y
Parker, quienes clasificaron los diversos ataques computacionales de su época en
ocho categorías, las cuales podían incluir aquellos ataques que no cubría la
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
taxonomía de Cohem y obviamente tampoco la de Russell. Las categorías
propuestas por Newman y Parker son:
1. Robo externo de información
2. Abuso externo de recursos
3. Enmascaramiento
4. Programas maliciosos
5. Violación de autenticación o autorización
6. Abuso de autoridad
7. Abuso por omisión
8. Abuso indirecto
Pese a que esta taxonomía cumple con las reglas de aceptación, Edward
Amoroso hace una fuerte crítica de ella puesto que es una taxonomía poco
intuitiva y difícil de comprender por personas con conocimientos básicos de
seguridad. Además de su dificultad de uso, la categorización de Newman y Parker
no muestra una estructura que relacione las categorías entre sí, siendo esta la
principal explicación a su poca aceptación y a su uso limitado.
3.5 TAXONOMÍAS MATRICIALES
Perry y Wallich son los personajes más reconocidos en el análisis de
vulnerabilidades mediante el uso de técnicas matriciales. El análisis matricial no es
otra cosa que colocar en una matriz bidimensional las vulnerabilidades del sistema
que se está analizando en uno de los ejes de la matriz y en el otro eje colocar a
todos los posibles atacantes del sistema (Ver tabla 3.1).
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Operadores Programadores �oftware�ón� de Datos
Interno Externo Intrusos
�oftware�ón física
Cortar los circuitos
�oftware�ón de
información
Borrar discos �oftware malicioso
�oftware malicioso
Vía modem
Datos falsos �oftware malicioso
Entrar datos falsos
Robo de servicios
Robo como usuario
Acción no autorizada
Vía modem
Navegar Robo de medios Acceso no autorizado
Vía modem
Robo de información
Acceso no autorizado
Vía modem
Tabla 3.1 Taxonomía matricial
La principal ventaja de esta taxonomía es la clara evidencia del principio de
exclusión mutua entre categorías, sin embargo el problema más complicado que
se debe afrontar cuando se usa esta taxonomía es la fuerte relación que puede
existir entre los resultados alcanzados por diversos atacantes, lo cual pue de
conducir a pensar (si no se es cuidadoso en su utilización) que la taxonomía viola
el principio de exclusión, cuando en realidad no es así.
Landwher utilizó una taxonomía matricial tridimencional cuyos ejes los clasificó
como origen del problema de seguridad, tiempo de introducción (etapa del ciclo de
vida del sistema en el cual se presenta el problema) y localización (hardware o
software). Debido a la complejidad que presenta la taxonomía matricial
tridimensional y puesto que va más allá del alcance del presente trabajo, se ha
decidido dejar a un lado su estudio, sin embargo, vale la pena que el lector
dedique un poco de tiempo a investigar un poco más sobre el trabajo realizado por
Landwher, para lo cual se recomienda ver “Formal Models for Computer Security,"
Computing Surveys, Vol. 13, No. 3, Septiembre, 1981, pp. 247-278
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
4. TAXONOMÍA A UTILIZAR La taxonomía que será utilizada en este trabajo de grado es el resultado de una
investigación realizada por John D. Howard en el Carnegie Mellon, titulada “An
Analysis of Security Incidents On the Internet”. Esta taxonomía, la cual se
explicará a continuación, fue desarrollada con el fin de poder clasificar muchos de
los actuales ataques que se presentan en Internet y que se encontraban aún sin
un sitio fijo dentro de las otras taxonomías, debido a que surgieron, en su gran
mayoría, en épocas anteriores a Internet.
Pese a que la taxonomía se encuentra bien definida, más adelante se realizarán
algunos ajustes con el fin de unificarla y aplicarla en conjunto con los Árboles de
Amenaza en el análisis de requerimientos de seguridad. A continuación se realiza
una descripción de la taxonomía sin realizar ningún ajuste, con el objetivo que el
lector tenga la libertad de realizar cambios diferentes a los acá propuestos y los
cuales considere convenientes según el contexto en el cual desee utilizar la
metodología.
Esta taxonomía utiliza un punto de vista operacional para la clasificación de los
ataques, es decir, analiza cuales son las herramientas, los tipos de acceso y los
resultados que unen a los atacantes con sus objetivos (Ver figura 4.1).
Atacantes Herramientas Acceso Resultados Objetivos
Figura 4.1 Secuencia operacional de ataques de red y computadores
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
4.1 CLASES DE ATACANTES
El primer paso en la definición de la taxonomía aquí utilizada consiste en definir
cuáles son los tipos de atacantes existentes y para esta definición se tuvo en
cuenta cuáles son las motivaciones y comportamientos de los atacantes hasta
ahora conocidos (Ver figura 4.2).
1. Hackers: Acceden a los sistemas por el reto al cual se enfrentan y el
reconocimiento obtenido al lograrlo.
2. Espías: Acceden a los sistemas para adquirir información que será utilizada
con fines políticos.
3. Terroristas: Acceden a los sistemas para causar temor y con ello ayudar a
lograr fines políticos.
4. Raiders corporativos: Empleados de una compañía que acceden a los
sistemas de la competencia con fines financieros
5. Criminales profesionales: Acceden a los sistemas con fines financieros
personales (No corporativos)
6. Vándalos: Acceden a los sistemas para causar daño.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Atacantes
Hackers Objetivos
Espías Reto, Prestigio
Terroristas Herramientas Acceso Resultados Fines políticos
Raiders Corporativos Fines financieros
Criminales profesionales Daño
Vándalos
Figura 4.2 Categorías de atacantes y sus motivaciones.
Conociendo cuáles son las categorías de atacantes que se tienen en cuenta en
esta taxonomía y sabiendo cuáles son los motivos que los impulsan para llevar a
cabo un ataque, se describirá en forma breve pero muy clara, cuáles son las
herramientas empleadas, medios de acceso utilizados y resultados obtenidos por
el atacante.
4.2 CLASES DE ACCESO
Antes de comenzar a explicar cuáles son los medios de acceso que utiliza el
atacante, se mencionará nuevamente cuáles son los elementos a los cuales está
tratando de acceder. El primer elemento del sistema al cual está tratando de tener
acceso el atacante son los procesos, siendo uno de los elementos más atacados
debido a la importancia que tienen para el sistema y el gran impacto que puede
llegar a causar una persona si tiene acceso a ellos. Un ejemplo de este tipo de
ataque es el de Inundación de Peticiones Identd, en las versiones de Linux
lanzadas antes de Agosto de 1997. Ident es el proceso de identificación que
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
ejecuta el Protocolo de Identificación. Un ataque de este tipo logra una denegación
de servicios total mediante la ocupación de gran cantidad de recursos del sistema.
Los otros dos elementos que son víctimas de los atacantes son los archivos y los
datos en tránsito, es decir, toda la información que maneja el sistema.
Existen dos niveles de acceso que puede tener un atacante según esta
taxonomía; por una parte puede tener permisos de root o superusuario o por el
contrario puede tener únicamente acceso como un usuario del sistema. Es
importante conocer estos dos niveles de acceso porque con base en ellos se
definirán los medios de acceso que puede tener el atacante.
El primer medio de acceso es el Acceso No Autorizado, el cual consiste en
sobrepasar los permisos con los cuales cuenta el usuario del sistema con el fin de
adquirir una mayor capacidad de interacción con este y por lo tanto un mayor
potencial para perjudicarlo.
El segundo medio de acceso es el Uso No Autorizado. Este medio de acceso es
con el que cuentan los superusuarios del sistema y que es aprovechado por
aquellos administradores inescrupulosos y faltos de ética que buscan atacar el
sistema gracias a los privilegios que les brinda su cargo.
Acceso
Vulnerabilidad
de implementación
Acceso no autorizado
Archivos
Vulnerabilidad de diseño
Uso no autorizado
Procesos Datos en Tránsito
Vulnerabilidad de configuración
Figura 4.3 Accesos para el ataque
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Para lograr cumplir sus objetivos, los atacantes hacen uso de las vulnerabilidades
que presenta el sistema y que Howard agrupó en tres clases: Vulnerabilidades de
implementación, de diseño o de configuración. Uno de los ejemplos más famosos
de vulnerabilidades de implementación y de diseño es el conocido programa
Sendmail de Unix. Su vulnerabilidad de implementación consistía en permitir el
acceso no autorizado a diversos hosts. Por otro lado, el diseño de Sendmail
permitía que se atacara un sistema mediante correos repetitivos generados
electrónicamente (mail spam), causando con ello una denegación de servicios.
Las vulnerabilidades de configuración son las más usuales y se generan
principalmente por la poca experiencia de los administradores del sistema,
quienes de manera accidental comienzan la operación con configuraciones por
defecto que vienen con los componentes, ya sean de hardware o de software,
dejando así grandes puertas de entrada para atacantes con algo de experiencia y
conocimiento de estos errores tan comunes.
4.3 CLASES DE RESULTADOS
Una vez que el atacante ha logrado tener acceso a los elementos del sistema que
se está tratando de proteger, cuenta con toda la libertad para corromper o revelar
la información, denegar o robar un servicio, siendo estos cuatro, los grupos en los
cuales se pueden clasificar los resultados que busca un atacante de un sistema
computacional.
Resultados
Corrupción de información
Revelación de Información
Robo de servicios
Denegación de servicios
Figura 4.4 Resultados de un ataque
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Se entiende por corrupción de la información todo cambio no autorizado de los
archivos del sistema o de la información en tránsito.
Revelar información consiste en dar a conocer a personal no autorizado los
archivos almacenados en el sistema o la información que por él circula.
Robar un servicio es el acto de utilizar un servicio sin la debida autorización sin
que esto perjudique a los demás usuarios.
La denegación de un servicio es la degradación o bloqueo intencional de los
recursos del sistema.
4.4 CLASES DE HERRAMIENTAS
Las herramientas son los medios usados por el usuario para aprovecharse de las
vulnerabilidades de los computadores y las redes. Igual de importante que definir
cuáles son las vulnerabilidades de seguridad que presenta el sistema lo es poder
clasificar cuáles son las herramientas que los atacantes tienen a su disposición
para lograr alcanzar los resultados que buscan. La presente taxonomía clasifica
estas herramientas en : comandos de usuario, programas de script, agentes
autónomos, toolkits, herramientas distribuidas y sondeo de datos. A continuación
se hace una breve descripción de cada una de ellas.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Herramientas
Comandos de usuario
Programas de Script
Agentes autónomos
Toolkit
Herramientas distribuidas
Sondeo de datos
Figura 4.5 Herramientas de ataque
Los comandos de usuario son aquellos comandos introducidos por el usuario a
través de una interfaz del sistema con el fin de interactuar con él.
Los programas de Script son una serie de comandos agrupados en un archivo que
puede ser ejecutado desde el shell de comandos del sistema.
Los agentes autónomos son aquellos programas que tienen la capacidad de
escoger cuáles elementos del sistema van a atacar. Dentro de esta categoría
podemos encontrar los famosos virus y gusanos computacionales. Un virus,
contrario a un gusano, está inmerso dentro de otro programa, el gusano en
cambio, corre y viaja independientemente en diversas máquinas a través de una
red.
Un Toolkit es un conjunto de scripts y agentes autónomos encapsulados en una
herramienta de fácil manejo para el usuario, usualmente con una interfaz gráfica
bastante amigable.
Las herramientas distribuidas son utilizadas para atacar un mismo host desde
distintos puntos de la red y con ello hacer más difícil y en muchos casos imposible,
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
el rastreo del origen del ataque. La dificultad para rastrear el origen del ataque
radica en que la mayoría de las veces la máquina que origina el ataque separa
cualquier conexión que se haya establecido con las máquinas substitutas antes
que el ataque comience. Al tratar de hacer un rastreo del ataque se van a
encontrar muchas fuentes físicas, es decir, el ataque se está llevando a cabo
desde diferentes direcciones IP, permitiendo así que el atacante escape al rastreo.
El sondeo de datos es una herramienta de ataque física que aprovecha las
características electromagnéticas de los medios de transmisión para poder tener
acceso a los datos en tránsito del sistema.
A continuación puede verse gráficamente el resumen de toda la taxonomía que va
a ser usada en este proyecto de grado para aplicar la metodología de Árboles de
Amenaza para el análisis de seguridad informática (Ver Figura 4.6).
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Atacantes
Herramientas
Acceso
Resultados
Objetivos
Hackers Comandos de
usuario Vulnerabilidades
de implementación
Acceso no autorizado
Archivos
Corrupción de información
Reto, Prestigio
Espías Programas de
Script Vulnerabilidades
de diseño Uso no
autorizado Procesos Datos en tránsito
Revelación de información Fines políticos
Terroristas Agentes
Autónomos Vulnerabilidades
de configuración
Robo de
servicios Fines financieros
Raiders Corporativos
Toolkit Denegación de servicio Daño
Criminales profesionales
Herramientas distribuidas
Vándalos
Sondeo de datos
Figura 4.6 Taxonomía de ataques
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
5. ANTECEDENTES DE LOS ÁRBOLES DE AMENAZA.
Antes que se comenzara a hablar de los Árboles de Amenaza existían diversas
formas de realizar análisis de vulnerabilidades en los sistemas computacionales y
muchas de ellas se siguen utilizando hoy en día. En el presente capítulo se hace
una breve reseña de las principales metodologías que se han utilizado y se
enunciarán cuáles han sido sus principales ventajas y desventajas en su
implementación.
5.1 MODELOS DE SEGURIDAD
Eliminar las amenazas y los ataques es una tarea imposible, la única opción que
nos queda es aprender a convivir con ellos. En este proceso de convivencia han
sido desarrolladas dos grandes visiones sobre la forma de manejarlos. En la
primera de ellas lo que se pretende es prevenir los posibles ataques antes que se
presenten. Este modelo, denominado seguridad holística es bastante rígido y una
vez que el ataque se presenta, el sistema no tiene forma de contrarrestarlo.
El segundo modelo es la seguridad adaptativa y se basa en la reacción y los
cambios del sistema de seguridad dependiendo de la interacción con elementos
del entorno.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
5.2 METODOLOGÍAS PARA EL DISEÑO DE SISTEMAS DE SEGURIDAD
Sin importar cuál de los dos modelos de seguridad es el que se desea
implementar, es necesario realizar un previo análisis de las posibles amenazas
a las cuales se ve expuesto el sistema, conociendo con el mayor nivel de
detalle las posibles causas y consecuencias de un ataque. Es necesario poder
diferenciar si las amenazas son deliberadas o si por el contrario son violaciones
accidentales de la vulnerabilidad del sistema, pero sin importar de qué tipo sea
la amenaza, siempre debe considerarse como factible.
Desde que se comenzó a pensar en seguridad, han existido diversas
metodologías para realizar el análisis de amenazas y poder llegar a diseñar
sistemas con niveles de seguridad razonables. Estas metodologías han
evolucionado con el transcurrir de los años, llegándose a hablar incluso de
generaciones de metodologías, metáfora similar a la utilizada para explicar la
evolución de los computadores.
Richard Baskerville hace referencia a tres generaciones: Primera generación,
métodos de listas de chequeo; Segunda generación, métodos de ingeniería
mecanicista; Tercera generación, métodos de lógica transformacional. Sin
embargo, se ha llegado a distinguir hasta siete posibles generaciones, que para
el propósito de este trabajo están a un nivel de abstracción muy elevado, por lo
cual se utilizará la descripción realizada por Baskerville.
5.2.1 MÉTODOS DE LISTAS DE CHEQUEO (1972)
El primer método al cual hace referencia Richard Baskerville se denomina
Listas de chequeo. Este método tuvo su aparición en 1972 y como muchas de
las otras metodologías, aún se aplica en algunos contextos.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
5.2.1.1 DEFINICIÓN
Algo que merece especial atención sobre este método es el objetivo que
persigue. La mayoría de las veces, este método es utilizado para evaluar un
sistema de seguridad que ya se encuentra implementado, más que para
diseñar futuros sistemas de seguridad.
Esta metodología comienza por hacer una revisión exhaustiva de todas las
posibles amenazas que puede sufrir un sistema así como todos los posibles
controles que se pueden implementar para afrontarlas. El paso siguiente en la
metodología es chequear si los controles ya están siendo utilizados y si están
cumpliendo con su objetivo. Si el control no se encuentra dentro del sistema, es
necesario evaluar las ventajas y desventajas de su implementación con el fin
de tomar la decisión de llevarla a cabo o no.
Para realizar una adecuada evaluación de la relación costo-beneficio que se
obtendría si se llevase a cabo la implementación de los controles posibles para
afrontar cada amenaza, se debe utilizar una metodología cuantitativa
denominada Análisis de riesgos. El análisis de riesgos le permite al analista de
la seguridad del sistema, tomar decisiones sobre la implementación de nuevos
controles en el sistema de una manera objetiva. Esta metodología se basa en
la asignación de una probabilidad de ocurrencia a cada una de las posibles
amenazas. Así mismo, además de tener una probabilidad de ocurrencia, cada
amenaza tiene asociado un costo, asignado según el impacto que puede tener
un ataque. El producto de la probabilidad y del costo asociado a cada
amenaza, le da al analista un valor monetario (denominado Riesgo), que le
servirá como criterio en el momento de tomar cualquier decisión.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
5.2.1.2 VENTAJAS Y DESVENTAJAS
La principal ventaja que tiene el método de listas de chequeo es su facilidad de
implementación. Una vez que se han identificado todas las posibles amenazas,
seguir la metodología es algo muy sencillo y no requiere de personal
especializado para su realización. La necesidad de poca especialización del
analista del sistema, hace de esta metodología la más económica de todas y
por tal razón la más utilizada.
Pese a ser una herramienta bastante económica para realizar una evaluación
de un sistema de seguridad, la facilidad de su implementación que inclusive
puede ser apoyada por diversas herramientas computacionales ya
desarrolladas, puede generar errores por parte del analista cuando los
sistemas son muy grandes, incurriendo en posteriores gastos para su
corrección y por lo tanto aumentando los costos finales.
A medida que los sistemas crecen, lo hacen también sus respectivas listas de
chequeo, las cuales por poseer un estilo poco estructurado y algo narrativo,
hacen la labor de análisis algo bastante complejo. Los documentos comienzan
a volverse difíciles de entender y de mantener. Relacionado con el aumento de
tamaño de los sistemas, se encuentra directamente relacionada la dependencia
a los análisis de riesgos, que pese a ser muy sencillos de realizar en proyectos
pequeños, llega a complicarse en proyectos de gran envergadura.
5.2.2 MÉTODOS DE INGENIERÍA MECANICISTA (1981)
En esta generación, la mayor parte de las metodologías están centradas en el
análisis y especificación de componentes físicos, como por ejemplo, puntos de
control y procedimientos de acceso a los sistemas, se habla por tal razón de
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
una orientación hacia los sistemas de transacción y procesamiento de
información.
5.2.2.1 DEFINICIÓN
El objetivo principal de esta metodología está basado en el principio
fundamental de divide y conquistarás. Lo que se pretende es dividir grandes
sistemas en detallados requerimientos funcionales que al finalizar el análisis
volverán a unirse, formando de nuevo el sistema original pero analizado en
detalle.
Entre los métodos más importantes de esta generación se encuentran, entre
otros, el Information System Security desarrollado por Fisher en 1984 y
Computer Security Program, desarrollado por Parker en 1981 para el Computer
Security Institute.
Como es natural en toda metodología estructurada, los métodos desarrollados
durante la segunda generación siguen una serie de pasos, comunes a todos
pero lógicamente con algunas variaciones:
• Identificar y evaluar los componentes del sistema.
• Identificar y evaluar las posibles amenazas.
• Análisis de los posibles controles implementables.
• Priorizar la implementación de los controles.
• Implementar y mantener cada uno de los controles.
El primer paso consiste en identificar y evaluar los componentes del sistema:
personal encargado, hardware, software e información. Este procedimiento
puede obviarse cuando se está seguro del buen diseño del sistema. La
segunda tarea que debe realizarse es identificar y evaluar las posibles
amenazas. Este es uno de los pasos que posee más variaciones según el
método que se esté utilizando. Luego de tener identificadas las amenazas se
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
debe realizar un exhaustivo análisis de los posibles controles implementables,
según su costo, efectividad y confiabilidad con su respectivo análisis de riesgo,
momento para el cual se estará en la etapa 4 del proceso. La etapa 5 y 6
consisten respectivamente en priorizar la implementación de los controles
dependiendo de su costo y la urgencia de su implementación e implementar y
mantener cada control.
Como es obvio, cada método desarrollado durante esta generación, adoptó de
manera distinta el seguimiento de cada uno de estos pasos, sin embargo, en
términos generales, siempre podremos encontrar cada uno de ellos.
5.2.2.2 VENTAJAS Y DESVENTAJAS
Gracias al proceso de descomposición en requerimientos del sistema que sigue
esta metodología, la comprensión y análisis resulta ser bastante sencillo para
el analista por tener que analizar de manera simultanea menores volúmenes de
información que si utilizara listas de chequeo.
La documentación que se genera al utilizar métodos de segunda generación
resulta ser mucho más detallada y organizada, logrando una reducción de
costos de operación y mantenimiento de los controles implementados.
Una de las desventajas más grandes que poseen los métodos de segunda
generación es el nivel de especialización y conocimiento del sistema que debe
poseer el analista. La necesidad de contar con un excelente analista de
sistemas y en especial de seguridad, hace de esta metodología una forma
costosa y difícil de llevar a cabo para analizar la seguridad informática.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
5.2.3 MÉTODOS DE LÓGICA TRANSFORMACIONAL (1988)
La principal diferencia de esta generación con respecto a sus predecesoras
radica en haber cambiado el enfoque que se daba al análisis de los sistemas. A
partir de esta generación se hace un énfasis especial en el aspecto lógico y
conceptual, dejando el aspecto físico en un segundo plano, lo cual no significa
que no sea importante durante el análisis.
5.2.3.1 Definición
Siguiendo con la forma como se ha comenzado a explicar en este trabajo cada
una de las generaciones, es clave mencionar cuál es el objetivo principal que
persiguen los métodos desarrollados durante la tercera generación. Las
metodologías de esta generación pretenden llegar a un nivel de abstracción
superior, tanto del problema como de su espacio de solución. La premisa
seguida en esta metodología es que el medio más efectivo para descubrir una
solución óptima a un problema consiste en modelar los atributos más
importantes del sistema al cual pertenece el problema y su solución.
En los métodos pertenecientes a esta generación, son claramente distinguibles
tres características propias. La primera de ellas consiste en producir e
implementar el tipo apropiado de seguridad para el sistema y no simplemente
en implementar correctamente controles de seguridad. La segunda
característica distintiva de esta generación es que el diseño y análisis de la
seguridad de un sistema puede regirse por modelos lógicos o
transformacionales o incluso ambos. Un modelo lógico expresa las
necesidades del sistema y su comportamiento en términos funcionales u
orientado a los datos. Un modelo transformacional por el contrario, expresa
necesidades organizacionales y va más allá de los requerimientos funcionales,
enfocándose en la formulación del problema y la autonomía del trabajador. Más
que enfocarse en analizar un problema, un modelo transformacional se
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
encarga de aprender del sistema en cuestión. La última característica de esta
metodología es el poco énfasis que se da al análisis de riesgo y la poca
relevancia que posee para la toma de decisiones en la implementación de
controles dentro del sistema.
Debido al carácter organizacional de esta metodología, el análisis de riesgo es
menos importante para la elección de los elementos del sistema que en la
primera y segunda generación.
5.2.3.2 Ventajas y desventajas
Gracias al nivel de abstracción de los métodos pertenecientes a la tercera
generación de diseño y análisis de seguridad, así como el segundo plano que
ocupa el aspecto físico del sistema, se obtiene con esta metodología una gran
independencia tecnológica del sistema, logrando una mayor portabilidad del
sistema de seguridad desarrollado.
El sistema de seguridad diseñado mediante esta metodología se encuentra
más relacionado con los objetivos y problemas organizacionales, dando como
resultado una solución a la medida para la empresa y una reducción de las
inconsistencias entre la seguridad del sistema y el funcionamiento del mismo.
Como desventajas de los métodos de tercera generación tenemos
principalmente la carencia que existe en la actualidad de controles abstractos
que se acoplen naturalmente al modelo y que no dependa, como lo hacen la
mayoría de controles, de aspectos físicos. Hoy en día, gran parte de los
controles que existen son definidos dependiendo de la plataforma y sistema en
el cual se desea implementar, lo cual hace difícil acoplar estas definiciones a
los métodos de tercera generación.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
El grado de abstracción puede llegar a hacer muy complicada la
implementación de la solución desarrollada, dejando también de lado la
solución a problemas de seguridad físicos.
La última gran desventaja de esta metodología radica en la separación total del
de riesgos lo cual puede complicar la toma de decisiones en el momento de
implementar los controles apropiados para el sistema.
Luego de analizar las características de cada generación, vale la pena resaltar
que la metodología de los árboles de amenaza no se acopla solamente a una
de ellas. Podríamos decir que los árboles de amenaza hacen parte de la
segunda y tercera generación, sin embargo, como se verá en el transcurso de
este trabajo, esta metodología tiene características que no se acoplan a
ninguna de las tres generaciones y por tal motivo no se hará, en este momento,
una clasificación de la metodología dentro de alguna de las generaciones
mencionadas.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
6. ÁRBOLES DE DECISIÓN Para poder entrar en el tema de los árboles de amenaza es necesario
comprender su origen. El uso de árboles de amenaza tiene su origen en ramas
de la ingeniería distintas a la informática, son en realidad una variante de los
árboles de decisión que se utilizan en los análisis financieros y proyectos de
inversión por lo tanto en esta sección se realiza una breve descripción del uso
de los árboles de decisión, donde se puede observar algunos ejemplos de su
aplicación en áreas distintas a la informática y computación, haciendo evidente
la importancia que tiene el uso de modelos en el proceso de toma de
decisiones.
Un árbol de decisión es una herramienta, como lo es también un diagrama de
influencia, que permite realizar un análisis cuantitativo de opciones con cierto
nivel de incertidumbre y en muchos casos con objetivos conflictivos. La
principal característica de los problemas que pueden ser resueltos con árboles
de decisión es el carácter secuencial de las opciones y los múltiples resultados
que se pueden obtener dependiendo del camino de opciones que se haya
elegido. Estas características permiten observar un gran problema en términos
de una serie de problemas más pequeños y obviamente más simples que el
problema original.
El uso de esta herramienta en el proceso de toma de decisiones se ha
incrementado en gran medida desde 1960, expandiéndose a áreas tan diversas
como medicina, administración, contabilidad, finanzas y derecho, por
mencionar solo unas pocas. Esta compleja diversificación ha generado una
gran variedad de notaciones para cada uno de los componentes de un árbol de
decisión, lo cual muchas veces puede causar desconcierto y confusión durante
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
su utilización. Una de las notaciones más comunes y de mayor uso es la
explicada a continuación.
6.1 ELEMENTOS DE UN ÁRBOL DE DECISIÓN
Un árbol de decisión se compone de diversos elementos, como lo son sus
nodos, las ramas y los caminos. A continuación se describe cada uno de ellos.
6.1.1 NODOS Un nodo en un árbol de decisión son aquellos puntos en los cuales es
necesario tomar una decisión o hacer una elección sobre varias alternativas.
6.1.1.1 NODOS DE DECISIÓN: Este tipo de nodo se representa mediante un cuadrado y hace referencia a una
alternativa o a un curso de acción que el encargado de tomar la decisión debe
elegir de un conjunto finito de posibilidades. Si existe un costo asociado con la
alternativa que representa este nodo, el costo debe ser escrito sobre la rama, la
cual a su vez puede finalizar en otro nodo de decisión, un nodo de elección o
en un resultado de decisión.
6.1.1.2 NODOS DE ELECCIÓN:
Un círculo es la figura geométrica utilizada para denotar esta clase de nodo.
Indica que un evento aleatorio es esperado en esta etapa del proceso, lo que
significa que un número de estados finitos pueden seguir en la etapa siguiente.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Al igual que en los nodos de decisión, la probabilidad correspondiente al evento
es escrita sobre la rama, la cual puede llegar a los mismos estados que la rama
que parte de un nodo de decisión.
Figura 6.1 Componentes de un árbol de decisión. 6.1.2 RAMAS
Una rama en un árbol de decisión se representa mediante una flecha que tiene
como origen y como destino dos nodos diferentes. Sirven para denotar las
posibles salidas de un evento aleatorio o una posible alternativa de decisión.
6.1.3 CAMINOS Un camino se define como el conjunto de nodos y ramas, seguidos desde un
nodo inicial hasta un nodo terminal.
1
Valor monetario esperado
Valor monetario esperado
Valor monetario esperado
Resultado
Resultado
Resultado
Resultado
Resultado
Resultado
2a
2b
Alternativa A1
Alternativa A2
Nodo de decisión
Nodo de elección
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
6.2 CONSTRUCCIÓN DE UN ÁRBOL DE DECISIÓN
Todo árbol de decisión debe tener en su raíz un nodo de decisión. Nunca se
debe comenzar la construcción de un árbol con un nodo de elección y mucho
menos con una rama.
A partir del nodo raíz se desprenden las ramas que sean necesarias para cubrir
el conjunto finito de estados que pueden seguir en el proceso de la toma de
decisiones y que puede ser un evento u otra decisión. Este proceso se continúa
en forma recursiva sobre cada uno de los nodos hasta obtener los resultados
finales de cada decisión. En la figura 3 se observa un árbol de decisión simple
con dos alternativas; cada una da origen a un nuevo nodo de elección con tres
posibles resultados.
6.3 EVALUACIÓN DEL ÁRBOL
El proceso de evaluación de un árbol de decisión se basa en principios de
programación dinámica y frecuentemente se denomina “rollback”. El rollback
consiste en dividir el árbol que se está evaluando en dos segmentos, en uno de
ellos se encuentran todos los nodos de elección con sus posibles estados
mientras que en el otro segmento se tienen todos los nodos de decisión y sus
alternativas.
Para evaluar el segmento correspondiente a los nodos de elección se deben
computar todos los valores esperados, es decir, debe calcularse la sumatoria
del producto de las probabilidades por el costo asignado a cada nodo terminal.
Esta sumatoria es considerada ahora, el valor esperado para la rama que se
encuentra a su izquierda.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
La evaluación del segmento de nodos de decisión no es más que la elección
del mejor valor esperado, previamente calculado para cada una de las
alternativas existentes.
6.4 RESUMEN DE LA METODOLOGÍA Teniendo ya conocimiento de la estructura, construcción y evaluación de un
árbol de decisión se puede sintetizar el uso de esta herramienta en una corta
pero eficaz metodología compuesta por cuatro pasos.
1. El punto de partida para el uso de un árbol de decisión consiste en
identificar todos los puntos de decisión y las posibles alternativas para
cada uno de ellos, dependiendo del problema que se esté analizando.
2. Una vez que se han identificado los puntos de decisión es necesario
pasar a identificar los puntos de elección y el rango de posibilidades
para cada uno.
3. El tercer paso de la metodología consiste en estimar los valores
necesarios para realizar el análisis. Estos valores son todas las
probabilidades y costos necesarios para poder calcular los distintos
valores esperados en el segmento de los nodos de elección.
4. El paso final de la metodología es el análisis de todas las alternativas,
comenzando con el nodo terminal más distante con el fin de poder llegar
a la mejor decisión inicial.
6.5 EJEMPLO DE USO
Es conveniente finalizar esta sección con un caso de estudio de la aplicación
de la metodología.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
El ejemplo consiste en el lanzamiento de un nuevo producto al mercado y con
él se pretende hacer un breve seguimiento de cada uno de los pasos de la
metodología.
1. Puntos de decisión: Se evaluarán solamente dos puntos de decisión.
El primero de ellos posee dos alternativas que hacen referencia a la
escala de introducción del producto, que puede ser nacional o regional.
En el siguiente punto de decisión se debe elegir entre distribuir a nivel
nacional o no.
2. Puntos de elección: Los puntos de elección nos presentan dos
opciones para cada decisión. Que exista una baja demanda o por el
contrario, que la demanda sea alta.
3. Valores del árbol: En la figura 6.2 se pueden ver claramente todos los
valores asignados a los nodos terminales así como las probabilidades en
cada rama de los nodos de elección.
4. Evaluación: En el ejemplo, la probabilidad de obtener una demanda alta
si se introduce el producto a nivel regional es 0.7 y la probabilidad de
obtener una baja demanda es 0.3. Cada combinación de decisiones y
eventos tiene un resultado (en este caso, valor presente neto, VPN)
asociado. En la figura del ejemplo el VPN de todas las ramas que
emanan del evento C es (4.5x.71+(-.5)x.29)=3.05 y para el evento D
es 2.355. Pasando al punto de decisión 2 se puede ver que la alternativa
seleccionada sería distribuir a escala nacional. Es decir, si el gerente se
ve eventualmente confrontado a tomar la decisión en el punto 2,
escogería esta alternativa y en todos los análisis posteriores puede
descartar cualquier otra alternativa. Siguiendo el análisis se pasa al
evento A; el VPN esperado en ese nodo es (1x.3+3.05x.7)=2.435. De un
modo similar el VPN esperado en el nodo B es 2.75. En la figura 6.3 se
resume todo el proceso y se observa que la decisión que se
seleccionaría sería introducir a nivel nacional. El criterio utilizado en este
análisis fue maximizar el VPN esperado.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 6.2 Introducción de un producto en el mercado.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 6.3 Análisis del árbol de la figura 6.2
Con el ejemplo anterior se ve claramente la ventaja de utilizar árboles de
decisión en procesos de toma de decisiones que involucran un número de
alternativas relativamente bajo. Hespos y Strassan han propuesto simplificar
los árboles de decisión cuando el número de alternativas es bastante alto (lo
cual puede llevar a resultados inadecuados), asignando distribuciones de
probabilidad a los nodos de azar y efectuando un proceso iterativo de
simulación. Otra forma de simplificación que proponen es realizar eliminaciones
durante el desarrollo del proceso con base en el valor esperado del proceso y
la varianza de las diferentes distribuciones resultantes. Estas simplificaciones,
sin embargo, son solo necesarias cuando el número de alternativas es muy
grande y si no se realizan, se obtienen resultados más confiables.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
7. ÁRBOLES DE AMENAZA
Antes de comenzar a estudiar en detalle la metodología de los Árboles de
amenaza, es necesario tener claros algunos conceptos que se utilizarán en
este proyecto de grado. Pese a que los conceptos que se tratan a continuación
son bastante comunes y frecuentemente utilizados, la interpretación que se
hace de ellos difiere en gran medida dependiendo del contexto en el cual sean
utilizados y de las personas que lo hagan, por tal razón, se trata de
estandarizar su significado y utilidad dentro de la metodología.
7.1 CONCEPTOS PREVIOS
Vulnerabilidades: Una vulnerabilidad es la forma en la cual un sistema puede
ser perjudicado por un atacante, bien sea dañándolo o haciendo un uso
indebido de sus componentes.
Amenaza: Una amenaza es la forma en la que se puede aprovechar una
vulnerabilidad del sistema. Una vulnerabilidad puede ser utilizada en forma
deliberada o accidental lo cual conduce a clasificar las amenazas en estos dos
tipos.
Ataque: Consiste en llevar a cabo una amenaza deliberada contra un sistema.
Accidente: Este es el término que se va a utilizar para hacer referencia a los
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
casos en los que una vulnerabilidad es aprovechada en forma accidental o no
intencional. Cualquier circunstancia o evento que conlleve a un accidente será
denominado disparador.
Incidentes: Los incidentes son aquellas amenazas, accidentes o ataques que
llegan a cumplir con su objetivo, es decir, cuando una amenaza deja de ser
potencial para convertirse en real se denomina incidente.
Impacto: Medida cuantitativa del daño causado al sistema por un incidente.
Riesgo: El riesgo es otra medida cuantitativa, derivada del impacto de un
incidente y de la probabilidad de que dicho incidente ocurra. Si denotamos el
riesgo con la letra R y a la probabilidad y al impacto con las letras P e I
respectivamente, se define el riesgo como : R = P x I
7.2 METODOLOGÍA DE ÁRBOLES DE AMENAZA
La metodología de Árboles de amenaza está dividida en dos grandes partes
como consecuencia de la definición de riesgo dada previamente. Cada una de
las partes de la metodología se asocia con cada una de las partes que
conforman la definición, es decir con la Probabilidad y con el Impacto.
La primera parte de la metodología consiste en identificar cuáles son las
distintas vulnerabilidades del sistema y se listan las formas en las que dichas
vulnerabilidades se pueden explotar. El punto esencial de esta primera parte
consiste en analizar cuáles son las amenazas con mayor probabilidad de
ocurrencia.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
La segunda parte consiste en evaluar el impacto de los incidentes. Se busca
establecer cómo pueden ser prevenidos estos incidentes y qué tan conveniente
es utilizar e invertir tiempo y recursos para mejorar el sistema.
Existen tres variables que determinan la probabilidad que tiene un atacante o el
entorno, de crear las condiciones necesarias para aprovechar una
vulnerabilidad:
• Nivel de exposición asociado con la vulnerabilidad. En el caso de un
ataque, es la medida de la dificultad para aprovecharse del ataque. En el
caso de un accidente es la medida del rango de condiciones que pueden
propiciar el accidente, propias del entorno.
• Posibilidad del atacante o del entorno para crear las condiciones que
disparen la vulnerabilidad.
• Nivel de motivación del atacante.
Establecer esta probabilidad, basándose en estas tres variables es una tarea
difícil y pese a que la metodología de Árboles de Amenaza simplifica en gran
medida esta labor, la importancia de su uso no radica en establecer cuál es
este valor numérico, por el contrario, la metodología es una fuerte herramienta
para establecer indicadores de las formas en las que la seguridad de un
sistema se puede ver comprometido.
A continuación se explica más detalladamente cada una de las partes que
componen la metodología y cuál es la forma correcta para utilizarla.
7.2.1 PRIMERA PARTE - IDENTIFICACIÓN DE VULNERABILIDADES Y ANÁLISIS DE AMENAZAS
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Como ya se mencionó anteriormente, la primer parte de la metodología
consiste en identificar cuáles son las distintas vulnerabilidades del sistema y
enumerar las formas en las que dichas vulnerabilidades se pueden explotar.
Existen cinco pasos que deben seguirse en el transcurso de esta etapa.
7.2.1.1 DETERMINAR EL ALCANCE DEL ANÁLISIS
El primer paso en el uso de esta metodología tiene como objetivo definir la
magnitud de la investigación y del análisis que se va realizar. Va de la mano
con el tamaño del sistema y en la gran mayoría de los casos depende
directamente de este, salvo en algunas ocasiones en las cuales es necesario
analizar solo algunos de los componentes del sistema. Este es otro de los
puntos a favor de los Árboles de Amenaza. Los componentes de un sistema de
gran tamaño pueden ser analizados individualmente y el análisis puede ser
realizado por diferentes personas, siendo posible unir cada uno de estos
análisis en un Árbol final de Amenaza, completo para el sistema, acoplándose
en un todo como si fuesen piezas de lego. Esta modularidad de la metodología
no solo es posible entre componentes de un mismo sistema sino también entre
análisis realizados a sistemas diferentes.
Esta reutilización de análisis previamente elaborados ha tomado fuerza en el
tema del apalancamiento de conocimiento (knowledge leverage) en seguridad
informática y es uno de las ventajas más grandes que tiene esta metodología
con respecto a sus competidoras.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
7.2.1.2 GENERAR EL ÁRBOL DE AMENAZA.
Un Árbol de Amenaza es una estructura jerárquica cuyos nodos son metas y
submetas que se deben cumplir para llevar a cabo un ataque (Ver figura 7.1).
Figura 7.1 Árbol de amenaza Existen divesas variables asociadas a cada nodo:
• Probabilidad de ocurrencia
• Daño potencial
• Esfuerzo requerido por el atacante Estas metas y submetas o amenazas y subamenazas que están
representadas en cada nodo deben, en algunos casos, llevarse a cabo al
mismo tiempo para poder atacar al sistema, sin embargo, en la gran mayoría
de casos, solo es necesario cumplir con alguna de ellas. Si se trata del primer
caso, se dice que las amenazas son conjuntas (Ver figura 7.3) y si se trata del
segundo caso, se dice que las amenazas son disyuntas (Ver figura 7.2).
Figura 7.2 Árbol disyunto
Amenaza
Subamenaza
Otras amenazas
subamenaza
Amenaza
subamenaza OrDisyunta
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 7.3 Árbol conjunto
Una vez que se tienen las variables asociadas a cada nodo y cuando se sabe
si las subamenzas son conjuntas o disyuntas, se debe proceder a evaluar el
árbol de amenaza. Por ejemplo, supongamos que la variable asociada a las
subamenazas es el esfuerzo requerido por el atacante y los valores posibles de
la variable son alto o moderado. Si las subamenazas son disyuntas, la
amenaza tomará el valor mínimo de las subamenazas, es decir el esfuerzo
para llevar a cabo la amenaza será moderado (Ver figura 7.4). Por el contrario
si las subamenazas son conjuntas, el esfuerzo requerido para llevar a cabo la
amenaza será alto, es decir, tomará el máximo valor que tengan las
subamenazas (Ver figura 7.5).
Figura 7.4 Cálculo en un árbol disyunto
subamenaza
Amenaza
subamenaza And
Conjunta
Subamenaza Esfuerzo = moderado
AmenazaEsfuerzo = moderado
Subamenaza Esfuerzo = alto
OR
Disyuntas
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 7.5 Cálculo en un árbol conjunto
7.2.1.3 IDENTIFICAR A LOS ATACANTES.
En este punto se debe también identificar cuales son las condiciones peligrosas
del entorno que son probables según la región donde se encuentra el sistema.
Estas personas y condiciones son conocidas dentro de la metodología como
Agentes de Amenaza.
Actualmente, la gran mayoría de los atacantes de sistemas de información son
personas oportunistas, quienes se encuentran buscando cuáles son las
vulnerabilidades de los sistemas que ellos pueden explotar y se encuentran
motivados por sentimientos de reconocimiento personal dentro de su grupo de
amigos. Sin embargo, cuando se piensa desde el punto de vista de una
organización que desea tratar de protegerse de posibles atacantes, es
necesario tener en cuenta a personas que pueden llegar a desear en algún
momento atacar los sistemas de la compañía. Estas personas encajan dentro
de diversos grupos, tales como los competidores, personas que van en contra
del negocio de la compañía, empleados descontentos e incluso personas que
han sido despedidas de la empresa y desea tomar venganza.
Subamenaza Esfuerzo = moderado
AmenazaEsfuerzo = alto
Subamenaza Esfuerzo = alto
And
conjuntas
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
En esta etapa es en la cual se identifican también los agentes de amenaza que
no son maliciosos, es decir, aquellos eventos fortuitos que pueden llegar a
dañar el sistema. Los principales agentes de amenaza fortuitos son los
desastres naturales, las fallas en fuentes de poder, los seres humanos, entre
otros.
Pese a que es necesario tener en cuenta todas las amenazas posibles, es
obvio que es necesario y supremamente útil desechar aquellas amenazas cuya
ocurrencia tenga una probabilidad igual a cero o en su defecto, aquellas que
tengan una probabilidad de ocurrencia despreciable. Por ejemplo, si el sistema
foco de nuestro análisis está ubicado en una zona tropical, sería ilógico incluir
dentro de las amenazas naturales a una tormenta de arena, caso que no
ocurriría si nuestro sistema se encontrase ubicado en el desierto.
7.2.1.4 ASIGNAR UNA FUNCIÓN MATEMÁTICA AL ÁRBOL.
Es necesario asignar una función matemática al árbol con el fin de establecer
cuáles son los costos y los recursos requeridos (entre otras cosas), que afectan
la probabilidad de que una amenaza se convierta en incidente.
Las variables más usuales en los análisis realizados mediante esta
metodología para poder asignar un valor a la probabilidad de que una amenaza
se convierta en incidente son:
• Habilidad técnica requerida
• Costo asociado al ataque
• Probabilidad de que el atacante sea atrapado y castigado
• Probabilidad que una vulnerabilidad sea aprovechada con éxito
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Una ventaja que tiene el analista para el cálculo de estos valores radica en que
las amenazas accidentales se rigen por factores estadísticos que se aproximan
bastante a la realidad. Los factores estadísticos y otros métodos utilizados para
determinar si una amenaza, ya sea intencional o accidental, puede llegar a
convertirse en un incidente son denominados dentro de la metodología de
Árboles de Amenaza como Indicadores. El número de indicadores asociados a
un análisis de seguridad informática oscila alrededor de los tres o cuatro y es
importante que el analista evite que se eleve para poder mantener la
complejidad dentro de niveles razonables y manejables, asegurando con esto
un análisis confiable.
Los valores de los indicadores de cada nodo están determinados por los
valores que tenga este indicador en los nodos hijos del nodo que se está
evaluando. Para poder obtener este valor es necesario tener en cuenta si los
nodos hijos son subamenazas disyuntas o conjuntas, como se explico
anteriormente.
La tabla que se presenta a continuación muestra cuáles son los indicadores
más utilizados en un análisis de seguridad y cuales son las funciones
matemáticas recomendadas para el cálculo de su valor (Tabla 7.1).
INDICADORES Y FUNCIONES RECOMENDADAS INDICADOR CONJUNCIÓN DISYUNCIÓN
Costo del ataque a+b+c+...+n Mínimo(a,b,c,...,n) Probabilidad de captura 1-[(1-a)*(1-b)*...*(1-n)] Mínimo(a,b,c,...,n)
Probabilidad de éxito a*b*c*...*n 1-[(1-a)+(1-b)+...+(1-n)] Dificultad técnica Máximo(a,b,c,...,n) Mínimo(a,b,c,...,n)
Tabla 7.1 Indicadores y funciones recomendadas
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
7.2.1.5 PODAR EL ÁRBOL DE AMENAZAS
Para finalizar esta parte de la metodología es necesario eliminar las amenazas
que no pueden ser llevadas a cabo por los agentes de amenaza, este proceso
se denomina podar el árbol, debido a la similitud que tiene con el proceso de
jardinería que consiste en quitar las hojas del árbol que ya no sirven.
Lo primero que debe tenerse en cuenta para realizar la poda del árbol son los
valores de los indicadores. Por ejemplo, si todos los posibles atacantes son
simples aficionados y con escasos recursos tecnológicos, podríamos eliminar
todas las amenazas que impliquen una dificultad técnica elevada y que llegaría
a ser imposible de ejecutar por los atacantes del sistema. En la práctica, la
poda del árbol de amenaza consiste en eliminar todos los caminos que
conduzcan del nodo raíz hasta aquella amenaza que no es factible que ocurra.
La poda del árbol será más complicada cuando se tenga en cuenta un mayor
número de indicadores para realizarla, sin embargo, podar el árbol
cuidadosamente puede ahorrar grandes cantidades de tiempo y recursos en el
resto del análisis de seguridad.
Se debe realizar al menos una poda del árbol por cada uno de los agentes de
amenaza existentes. Cada uno de estos árboles representarán los ataques que
pueden ser llevados a cabo por cada uno de los agentes de amenaza. Si se
realiza una unión de cada uno de estos sub-árboles, en un solo árbol, se
obtendrá una representación del conjunto completo de amenazas factibles que
pueden ser usadas por todos los agentes de amenaza.
7.2.2 SEGUNDA PARTE – IMPACTO DE LOS INCIDENTES Y MITIGACIÓN DE AMENAZAS
En esta parte de la metodología se busca encontrar una medida cuantificable
para el impacto que puede llegar a causar cada uno de los incidentes
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
encontrados, sin embargo, estimar el impacto de un incidente es una tarea
difícil e involucra a todos las personas que de una u otra forma se relacionan
con el sistema. Colocando esto en una situación práctica, si se está analizando
la seguridad de un sistema dentro de una compañía, es necesario involucrar en
el proceso de estimar el impacto a las directivas de la compañía, a los usuarios
del sistema y al personal técnico relacionado con el sistema.
Una vez que se ha culminado exitosamente la primera parte de la metodología,
los pasos que se deben seguir para estimar los impactos de los incidentes son
bastante simples. Vale la pena recordar que al comenzar a desarrollar la
segunda parte de la metodología, tendremos varios árboles de amenaza
podados, es decir, solo con aquellas amenazas viables según los agentes de
amenaza que estemos analizando. Las amenazas que aún permanezcan en
los árboles deben ser examinados según los siguientes criterios:
1. Si el impacto de la amenaza son lesiones a personas o pérdida de vidas
humanas, la amenaza debe ser mitigada.
2. Si el incidente va a desprestigiar el buen nombre de la compañía, la
amenaza debería ser mitigada a menos que las directivas de la
organización opinen lo contrario.
3. Cuando el incidente cause pérdidas financieras debe estudiarse cuándo
es justificable remediar el problema.
La razón para haber establecido el orden anterior de criterios radica en que lo
primero que se debe cuidar siempre, es la integridad y la seguridad humana,
por eso mismo, ese será el primer criterio para examinar las amenazas
restantes del árbol de amenaza. La razón para colocar en segundo lugar al
buen nombre de la compañía en lugar de las pérdidas financieras tiene que ver
con la importancia que tiene para la vida diaria el hecho de confiar en la
persona u organización con la cual se está interactuando. Muchas veces se ha
explicado el intercambio de productos y servicios por dinero como una
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
transacción basada principalmente en la confianza que tiene la gente en el
dinero, que objetivamente no es otra cosa que un papel impreso con un valor
en el cual todos confiamos. Desde este punto de vista, los recursos financieros
son menos importantes que el buen nombre de la compañía, porque sin
confianza en la empresa no se podría generar utilidades.
Cuando se llega a evaluar amenazas con el tercer criterio, es importante
reconocer cuándo se justifica tratar de remediar el problema, es decir,
implementar mecanismos para dificultar la tarea del atacante. Se justifica
mitigar una amenaza si el costo de hacerlo es menor que las pérdidas
causadas por el impacto.
Una vez que se ha decidido qué mecanismos deben ser implementados y
cuáles no, una buena medida del grado de seguridad alcanzado consiste en
recalcular los indicadores de los árboles de amenaza utilizados; cuanto más
desfavorables sean estos indicadores para el atacante, mejor será el nivel de
seguridad alcanzado en el sistema.
7.3 EJEMPLOS Durante las siguientes dos secciones se mostrarán dos aplicaciones de la
metodología. El primer ejemplo pretende dar una aproximación general a la
metodología, mostrando algunas de sus ventajas frente a otra metodología de
análisis de seguridad utilizada actualmente.
El segundo ejemplo es una aplicación de la metodología en el análisis de la
seguridad de una casa. Con este ejemplo se muestra la versatilidad de la
metodología en el análisis de seguridad en diversas áreas y no solo en el área
de la seguridad informática.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
7.3.1 SEGURIDAD DE LA INFORMACIÓN DE UN HOSPITAL
En la presente sección se muestra un ejemplo tomado de Fundamentals of
computer security technology de Edward Amoroso con el cual se pretende dar
una pequeña motivación al lector y mostrar solo algunas de las ventajas que
presenta el uso de la metodología de los Árboles de Amenaza. Se debe tener
en cuenta que con este ejemplo no se cubren todas las etapas de la
metodología y tampoco se utiliza en su totalidad, el único objetivo del ejemplo,
como su nombre lo indica es introducir al lector en la metodología y mostrar las
ventajas que esta presenta frente a uno de los métodos más utilizados en la
actualidad, como lo es, el listado de amenazas.
Uno de los métodos más utilizados en la identificación de riesgos y amenazas
durante el diseño, desarrollo o uso de un determinado sistema computacional
es el listado de amenazas. Esta metodología consiste, como se explicó
anteriormente, en la mención aleatoria y no estructurada de las posibles
amenazas de las que puede ser víctima el sistema. El listado de amenazas
generado, es el resultado de una lluvia de ideas realizada entre diversas
personas que interactúan con el sistema, como por ejemplo, desarrolladores,
administradores y usuarios, entre otros.
El uso de esta metodología presenta tres grandes inconvenientes:
a. Dudoso cubrimiento: Debido a su poca estructuración, es imposible estar
seguro de haber incluido en el listado todas las posibles amenazas del
sistema. Es bastante fácil que muchas amenazas importantes se queden
sin incluir en la lista, lo cual causará futuros problemas al sistema.
b. Carencia de racionalidad: La forma como es creado el listado de
amenazas hace bastante difícil sustentar cada una de ellas. En muchas
ocasiones es necesario identificar una situación dentro del sistema en la
cual la amenaza es factible.
c. Posibles inconsistencias: La independencia entre las amenazas que son
enunciadas hace posible que se generen contradicciones entre ellas.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Por ejemplo, una denegación de información es contradictoria con la
divulgación de información dentro de un sistema, pero pueden ser
igualmente válidas dependiendo del escenario del mismo.
Podemos ver en el siguiente ejemplo, los anteriores inconvenientes y cómo se
solucionarían con el uso de árboles de amenaza. El ejemplo muestra a grandes
rasgos cómo sería el uso de los Árboles de Amenaza, sin embargo, más
adelante, cuando comience a aplicarse, se explicará en detalle cada uno de los
pasos que se deben seguir en la metodología.
Supongamos que un grupo de desarrolladores de sistemas desea identificar un
conjunto de posibles amenazas para un sistema de almacenamiento y
procesamiento de información de los pacientes de un hospital. Luego de una
sesión utilizando la metodología de lluvia de ideas, podríamos obtener la
siguiente lista de amenazas:
• La información médica de los pacientes es corrompida.
• La información administrativa es corrompida.
• La información confidencial de los pacientes es revelada.
• La información confidencial de los pacientes no está disponible.
El dudoso cubrimiento se hace evidente en este ejemplo; trate de imaginar otro
tipo de amenaza para este sistema y verá que siempre será posible
encontrarlo. Sin embargo, entre más experimentado sea el grupo de
desarrolladores, más completa será la lista y por ende más difícil será
encontrar una amenaza que no se encuentre en ella.
Para poder explicar racionalmente cada una de las amenazas de la lista, sería
necesario recurrir a previas instancias en las cuales estas amenazas ya han
ocurrido.
Las dos últimas amenazas de la lista son claramente contradictorias, sin
embargo, las dos son igualmente válidas dependiendo del contexto en el cual
se analicen. Por ejemplo, una enfermera jefe podría tener acceso a la
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
información confidencial de los pacientes, pero no sería conveniente que otro
paciente conociera la información médica de su compañero de habitación. Es
posible que algún paciente desee mantener en secreto cuál es la enfermedad
que está padeciendo, si alguien diferente al personal médico conoce dicha
información, se estaría violando esta confidencialidad, pudiendo llevar al
paciente a tomar acciones legales contra la institución.
Observemos ahora el mismo ejemplo utilizando parte de la metodología de
árboles de amenaza.
Primero definiremos ASCH como el conjunto general de Amenazas del Sistema
Computacional del Hospital y será la raíz del árbol, de donde se desprenderán
diversas ramas dependiendo de cómo realicemos el análisis.
Supongamos que la información que se maneja en el hospital es de dos tipos:
Información Médica de los Pacientes (IMP) y Otra Información (OI). Estos dos
tipos de información serán los nodos hijos del nodo raíz.
Ahora refinaremos un poco más el proceso definiendo dos tipos de amenazas,
las vitales V y las no vitales NV. Así mismo, cada tipo de amenaza puede tener
tres categorías: Revelación R, Integridad I y Denegación del Servicio DS.
Volviendo al segundo nodo hijo del nodo raíz, podemos dividir las amenazas a
esta información como amenazas a Información Administrativa IA o amenazas
a información no administrativa INA. Cualquiera de estas dos amenazas puede
ser llevada a cabo por una persona maliciosa PM o por una persona que no
tenía la intención de causar daño PNM. Aunque podríamos seguir
incrementando el nivel de detalle, para efectos prácticos solo llegaremos hasta
este punto y comenzaremos a catalogar las amenazas de la lista en el nodo
que corresponda (Ver figura 7.6).
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 7.6 Árbol de amenaza del ASCH.
Con el ejemplo anterior se puede ver que la utilización de un árbol de amenaza
soluciona los problemas encontrados con una metodología no estructurada
como la descrita anteriormente. Al final de todo el proceso, se obtiene un
conjunto de riesgos y amenazas claramente documentados y especificados.
Otra ventaja de la metodología de árboles de amenaza es la posibilidad de
priorizar las diversas amenazas encontradas y establecer una mejor asignación
de los recursos utilizados para poder evitarlas. La aplicación de este método no
se restringe solo a configuraciones a la medida sino que se puede extender y
aplicar a problemas generales, lo cual le da un amplio rango de acción.
7.3.2 SEGURIDAD DE UNA CASA El siguiente ejemplo se encuentra incluido dentro del software de análisis de
seguridad denominado SecurITree, el cual fue desarrollado por Amenaza
Technologies Limited. Mediante este ejemplo se busca mostrar en su totalidad
la aplicación de la metodología de árboles de riesgo, sin embargo, no se
seguirán paso a paso los puntos que fueron enumerados cuando se explicó la
metodología.
Información médica de los pacientes es corrompida
Información confidencial de los pacientes no está disponible
Información confidencial de los pacientes es revelada
Información administrativa es corrompida
ASCH
IMP OI
V NV IA INA
R I DS R I DS PM PNM PM PNM
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
El árbol de este ejemplo modela las formas en las cuales una casa suburbana
puede ser robada. La casa para la cual se realizará el análisis es una típica
casa con una puerta frontal y una puerta trasera. En uno de los costados de la
casa se encuentra ubicado el garaje, el cual cuenta en su interior con una
puerta que comunica lo comunica con la casa. Ningún tipo de alarma se
encuentra implantado en la casa, principalmente por considerar que se
encuentra ubicada en un buen vecindario, rodeada por vecinos honestos.
Los indicadores asociados a los ataques han sido evaluados desde el punto de
vista del atacante, así cuando se habla de costo del ataque se hace referencia
al valor que está dispuesto a pagar el ladrón para lograr con su objetivo de
robar la casa. En este caso se utilizarán tres indicadores, el primero de ellos es
la habilidad técnica requerida. Su valor oscila entre 0 y 100, distribuidos en los
siguientes rangos: 1-10 significa que prácticamente cualquier persona puede
llevar a cabo el ataque. 11-25 representa un ataque que puede efectuar una
persona con habilidades básicas para desempeñar oficios singulares, como
usar un martillo o un destornillador. 26-40 son aquellos ataques que requieren
ser ejecutados por una persona con un dominio de diversas herramientas,
mucho más que un simple martillo o un destornillador. 41-60 se requiere de un
especialista en seguridad para llevar a cabo el ataque, por ejemplo, un
cerrajero. 61-80 requiere de habilidades un poco más desarrolladas que
aquellas que posee el especialista en seguridad, por ejemplo, un cerrajero que
pueda hacer su trabajo en total oscuridad. 80-100 requiere habilidades
extraordinarias. El segundo indicador es la probabilidad de aprehensión y como
cualquier probabilidad, su rango de valores está entre 0 y 1. El último indicador
es el costo del ataque determinado por la inversión económica que debe
realizar el ladrón para llevar a cabo el ataque y expresado siempre en este
trabajo en dólares americanos.
Para el presente análisis de seguridad se tendrán en cuenta únicamente 5 tipos
de ataques físicos: las puertas, las ventanas, el piso, las paredes y/o techos y
la chimenea. Existe además un ataque distinto a un ataque físico el cual es la
ingeniería social.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Los dos primeros niveles del árbol de amenaza se muestran en la figura 7.6.
Figura 7.6 Árbol de amenaza, primer y segundo nivel
A continuación se dará una breve explicación de los valores asignados a los
indicadores utilizados. Esta explicación se dará únicamente para las hojas del
árbol puesto que son ellas las que determinan el valor del resto del árbol.
El costo de hacer un túnel para ingresar a la casa se estima en
aproximadamente $10.000 puesto que es necesario utilizar maquinaria
especializada y cuya compra o alquiler es costosa. La probabilidad de
aprehensión al hacer un tunel se estima en 0.2 puesto que es bastante
complicado mantener en secreto que se está construyendo un túnel de tales
proporciones, debido al ruido, la maquinaria y los desechos que se generan.
Aunque la habilidad técnica requerida varía dependiendo de la longitud y
profundidad del túnel, entre otros factores, es obvio que no cualquier persona
puede construir un túnel y contar con la suerte de que no se derrumbe sobre
ella, por tal razón se considera que la habilidad técnica es elevada y se le
asigna un valor de 60.
Romper las paredes o el techo requiere de una herramienta sofisticada y
poderosa, una sierra que cumpla con los requisitos necesarios para realizar
esta labor puede tener un costo de adquisición de $250. La probabilidad de ser
aprehendido es bastante alta puesto que es una forma bastante evidente para
realizar un robo. La habilidad técnica puede tener un valor de 45 puesto que no
es fácil utilizar este tipo de herramienta, pero con un poco de práctica se puede
adquirir la destreza necesaria.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Aunque entrar por la chimenea es una acción bastante irreal por las
dimensiones requeridas por el ladrón, es factible considerarla como una opción
válida de ataque. Su costo es bastante bajo y solo dependen del ladrón puesto
que es su ropa la que va a quedar sucia con hollín y de él dependerá si la
manda a la lavandería o no, por tal razón se asigna un costo de $25. La
probabilidad de aprehensión se estima bastante baja, principalmente por el
hecho de la inexistencia de casos en los cuales un ladrón haya ingresado a una
casa por la chimenea, su valor puede ser entonces de 0.01. La habilidad
técnica es bastante elevada puesto que va contra las leyes de la física que un
ladrón normal pueda caber por la chimenea, por esto su valor es de 98.
Cualquier forma que utilice el ladrón para realizar ingeniería social para robar
una casa es obvio que debe inspirar confianza y por lo tanto debe estar bien
presentado, esto implica tener que invertir en un buen traje el cual puede estar
costando alrededor de $50. La probabilidad de aprehensión es bastante alta
(0.85), si se confía en que la gente no se deja timar tan fácilmente hoy en día.
La habilidad técnica requerida puede ser cercana a 40, debido a la facilidad de
palabra requerida.
A continuación se procederá a analizar cada uno de los subárboles que posee
el árbol de amenaza. El primero de ellos, cuya raíz se denomina “Pasar la
seguridad de las puertas” describe las diversas formas para ingresar a la casa
por cada una de las puertas que posee. Como se dijo con anterioridad, la casa
posee una puerta principal, una puerta trasera y una puerta que la comunica
con el interior del garaje. Este primer subárbol se divide a su vez en dos
subárboles más; en el primero de ellos se analizan las formas de ingresar por
la puerta frontal o por la puerta trasera debido a que se pueden utilizar los
mismos métodos de ingreso en cualquiera de las dos. Para ingresar a la casa
por la puerta que la comunica con el garaje es necesario llevar a cabo
conjuntamente dos ataques: lograr acceder al garaje y luego lograr acceder a la
casa por medio de la puerta que hay en el interior del garaje. Debido a que
estos dos ataques deben realizarse conjuntamente, este subárbol es un
subárbol conjunto y tiene una representación distinta a los subárboles
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
disyuntos. Antes de continuar se mostrará en su totalidad el primer subárbol del
árbol de amenaza principal (Ver figura 7.7).
Figura 7.7 Subárbol, pasar la seguridad de las puertas
Observe que el primero de los subárboles de ataques por el garaje tiene
también un subárbol denominado “Utilizar código de apertura”. Se utilizó este
subárbol para modelar aquellos garajes que cuentan con un dispositivo
electrónico de apertura. Se procede ahora a analizar cada uno de los valores
asignados a las hojas del árbol mostrado en la figura anterior.
El costo de romper una puerta puede estar alrededor de los $25 si se piensa
que es necesario comprar un mazo lo suficientemente grande para realizar el
trabajo de una manera eficiente. La probabilidad de aprehensión en este caso
puede ser 0.3 debido al ruido generado durante el desarrollo de la labor. Esta
probabilidad puede variar dependiendo de la proximidad de las casas vecinas,
del horario en el cual se realice el trabajo y de otros factores externos que sería
muy difícil analizar. Aunque la habilidad técnica requerida para romper una
puerta no es mucha, es necesario que la persona encargada de hacerla posea
la suficiente fuerza para hacerlo, lo cual hace que la habilidad técnica sea de
10.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Abrir una cerradura no es tan fácil como lo muestran las películas, en primer
lugar es necesario contar con las herramientas adecuadas, las cuales tienen un
costo de $250 aproximadamente y aumenta dependiendo de la calidad de la
herramienta. La sutileza del ataque hace disminuir la probabilidad de
aprehensión hasta hacerla llegar aproximadamente al 0.15, si se considera que
pese a que la puerta se puede abrir en 5 minutos o menos, aún falta lograr salir
de la casa con los artículos robados y sin ser descubierto. Sin importar con qué
tipo de herramienta se cuente, la complejidad que traen las cerraduras en la
actualidad es bastante elevada lo cual requiere una habilidad técnica alta,
alrededor de 65.
Robar una llave puede ser bastante fácil puesto que la mayoría de las personas
guarda las llaves en el bolsillo de su abrigo y sería muy fácil tomarlas de allí
durante un viaje en bus y el costo de un pasaje es de $2. Si se piensa que las
personas encargadas de robar en los buses son bastantes hábiles para
hacerlo, la probabilidad de aprehensión es relativamente baja, 0.2. Para lograr
que la probabilidad de aprehensión sea así de baja, se requiere tener una
habilidad técnica alta, puede oscilar alrededor de 70.
Utilizar la fuerza para abrir la puerta del garaje puede tener un costo elevado
debido a la herramienta requerida, esto se puede lograr con una sierra de
aproximadamente $150. Métodos basados en el uso de la fuerza bruta elevan
la probabilidad de ser capturados, llegando a ser mas del cincuenta por ciento,
puede ser inclusive hasta de 0.6. Utilizar una sierra como la que se necesita
puede requerir de una habilidad técnica de 25.
Si la puerta del garaje posee un mecanismo electrónico de apertura, es factible
espiar su código. La mayoría de estos mecanismos se basan en el envío de
ondas de radio a un receptor ubicado en el garaje y el cual se encarga de
activar el mecanismo mecánico para abrir la puerta. Hoy en día, la intensidad
de estas ondas de radio es bastante baja, lo cual hace difícil su intercepción.
Lograr interceptar y decodificar estas ondas de radio requiere un equipo
sofisticado el cual puede legar a adquirirse por $5000 o más. La probabilidad
de aprehensión es bastante baja debido a la sofisticación del ataque llegando a
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
ser de 0.05. La utilización del equipo necesario para espiar el código de
apertura puede requerir conocimientos de electrónica y computación por lo cual
el valor asociado a este indicador es de 75.
En lugar de espiar ondas de radio, sería mucho más fácil seguir al ocupante de
la casa que posea el control de apertura del garaje y esperar la oportunidad
para robarlo. Esto disminuye el costo del ataque a $5, si se tiene en cuenta que
es necesario seguir a la persona y luego abrir su auto para robar el control, lo
cual puede significar alguna inversión. Robar un auto hoy en día puede ser algo
difícil debido a las alarmas instaladas, sin embargo, ser aprehendido en el acto
es poco probable, alrededor de 0.2, siendo optimistas y mejorando las
estadísticas mostradas por la policía. La habilidad para robar un carro se puede
adquirir fácilmente después de hacerlo un par de veces y puede asignársele un
valor de 5.
Figura 7.8 Valores de los indicadores
Los valores asociados a cada nodo se muestran a su lado en el siguiente orden
de arriba abajo: Costo del ataque, probabilidad de aprehensión y habilidad
técnica.
El único subárbol que nos resta por analizar se muestra en la siguiente figura
(figura 7.9).
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 7.9 Subárbol, entrar por la ventana
Aunque romper una ventana es algo bastante trivial, es útil asignarle un costo
con el fin de poder realizar una poda del árbol posteriormente si es necesario,
pero para estar acordes con la realidad, se asigna un costo bastante bajo, $1.
Puesto que romper una ventana es ruidoso y los vecinos se percatarían
fácilmente, la probabilidad de aprehensión es 0.3. La única habilidad técnica
requerida para romper una ventana es tener la puntería necesaria para acertar
el tiro, luego su valor es bajo, 2.
La herramienta necesaria para cortar un vidrio es muy económica y puede
llegar a conseguirse por $5. Puesto que cortar un vidrio es más sutil que
romperlo, la probabilidad de aprehensión es menor, en este caso de 0.2. La
habilidad requerida para cortar un vidrio estando suspendido del marco de la
ventana, suponiendo que se está ingresando por una ventana elevada con
respecto al suelo, puede llegar a ser bastante difícil por lo cual requiere una
habilidad de 40.
En la siguiente figura (figura 7.10) se muestran los dos primeros niveles del
árbol principal con los costos asociados a cada nodo. A partir de este punto se
podrían analizar diversos escenarios mediante la poda del árbol por diversos
valores de los indicadores, labor que no se realizará en este punto para no
hacer más extenso el ejemplo y se hará más adelante en la aplicación de la
metodología.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 7.10 Árbol Robar la casa, dos primeros niveles
Fácilmente se puede ver que entrar por la ventana se convierte en la alternativa
más barata para el atacante, siendo también la tercer alternativa con
probabilidad de aprehensión más baja y la que requiere la menor habilidad
técnica. El árbol nos muestra que los ataques que se llevarían a cabo con
mayor frecuencia, teniendo en cuenta los valores de cada indicador, serían
intentar ingresar a la casa por la ventana o tratar de ingresar por alguna de las
puertas de la casa, siendo esto consistente con los robos a las casas que se
presentan a diario.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
8. DEFINICIÓN DE LA CONFIGURACIÓN
Antes de comenzar a utilizar la metodología de Árboles de Amenaza, la cual será
descrita con detenimiento en cada una de las etapas de este proyecto de grado,
es necesario definir la configuración de la red y la definición de los servicios que
se van a ofrecer a través de ella y para los cuales se desea hacer el análisis de
seguridad.
Vale la pena resaltar que el presente trabajo está enfocado a analizar única y
exclusivamente la seguridad lógica, tanto de la configuración de la red como de los
servicios prestados, por lo tanto, se deja a un lado el análisis de la seguridad
física.
8.1 COMPONENTES MÁS COMUNES
La presente sección tiene como finalidad describir los principales componentes
que hacen parte de una configuración de red sencilla sobre la cual se puedan
ofrecer servicios Web.
1. Web Server: Un Web Server es un computador dispuesto para el acceso
público a través de una red, en este caso, una LAN e Internet. Lo anterior
significa que muchas personas alrededor del mundo tendrán acceso a la
información almacenada en él. Sin embargo, sin importar cómo esté
configurada esta máquina y su software aplicativo, siempre existe la posibilidad
de descubrir vulnerabilidades y tener acceso no autorizado a la
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2. máquina, la información que almacena y los servicios que presta.
3. Firewall: Gateway entre redes que, mediante la aplicación de reglas de política
de seguridad, restringe el tráfico de comunicación de datos hacia y desde una
de las redes (la que está "adentro", típicamente una LAN corporativa o incluso
una computadora única), y así protege los recursos del sistema de esa red
contra amenazas provenientes de otras redes (que están "afuera", como
Internet). Un firewall es el principal instrumento utilizado para la
implementación de una política de seguridad de la red de una organización y
reduce, pero nunca evita por completo el riesgo de intrusión externa a la red
por parte de personas no autorizadas.
4. Router de Selección: Tipo especializado de router que proporciona la
capacidad de seleccionar paquetes con base en criterios como el tipo de
protocolo, los campos de dirección de origen y dirección de destino para un
tipo particular de protocolo y los campos de control que son parte del protocolo.
Gracias al control que permite hacer este tipo de router sobre el tráfico de la
red, se puede también controlar los tipos de servicios que puede ofrecer un
segmento de red determinado.
5. IDS: (Intrusion Detection System) Software especializado en escuchar y
analizar el tráfico de la red con el fin de detectar ataques.
6. Usuarios con acceso telefónico: Son aquellos usuarios que utilizan un modem
para poder conectarse a la red mediante una línea telefónica normal. En la
mayoría de los casos, tienen acceso a la un servidor especial en la red.
7. Usuarios de Internet: Son aquellos usuarios que acceden a la red desde
cualquier lugar del mundo por medio de Internet.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
8.2 SERVICIOS MÁS COMUNES
A continuación se enuncian y se explican brevemente los servicios Web que se
encuentran con mayor frecuencia en Internet y que debido a su gran difusión han
sido las victimas principales de numerosos atacantes.
1. HTTP (Protocolo de transferencia de hipertexto): Es el protocolo estándar de
transferencia en la WEB y se compone por dos elementos: el primer elemento
son todas las solicitudes hechas por diversos navegadores (browsers de
internet) al servidor; el segundo grupo lo conforman las respectivas respuestas
que van desde el servidor hacia los navegadores. El puerto utilizado para
brindar este servicio es el 80.
2. SMTP (Protocolo sencillo de transferencia de correo): Es uno de los protocolos
más utilizados para el envío de correo electrónico. El puerto utilizado por este
protocolo es el 25.
3. Secure Hypertext Transfer Protocol (Secure-HTTP, S-HTTP) - HTTP Seguro
Protocolo de Internet que proporciona servicios de seguridad entre cliente y
servidor para comunicaciones con HTTP; permite elegir la política de
seguridad, los mecanismos de administración de claves (tanto simétricas como
asimétricas) y los algoritmos criptográficos, mediante la negociación de
opciones entre las partes, para cada transacción. Su servicio se presta a través
del puerto 443.
4. POP3 (Protocolo de oficina postal 3): Este protocolo se encarga de obtener
correo electrónico del buzón o servidor remoto de correo y guardarlo en la
máquina local del usuario para su lectura. Una vez que los correos se obtienen
del servidor son eliminados con el fin de hacer un mejor uso del espacio
disponible. El POP3 tiene asignado el puerto 110.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
5. FTP (Protocolo de transferencia de archivos): Este protocolo permite la
descarga remota de archivos almacenados en el servidor. Este servicio se
presta por el puerto 21.
8.3 CONFIGURACIÓN ESCOGIDA
Teniendo conocimiento de los componentes y servicios encontrados con mayor
frecuencia en una red sencilla y con el fin de poder realizar un análisis detallado
de seguridad mediante el uso de la metodología de árboles de amenaza, se ha
decidido restringir la configuración básica a los siguientes componentes y
servicios, (Ver figura 8.1):
! Web server
! Firewall
! IDS
! Usuarios remotos (Internet)
! Usuarios de la LAN
! HTTP
! SMTP
! FTP
INTERNET
USUARIOS DE INTERNET
LAN
FIREWALL
SERVIDOR
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 8.1 Configuración escogida. El Carnegie Mellon Software Engineering Institute recomienda una serie de
prácticas para la instalación y puesta en marcha de servidores en general y
particularmente de servidores Web.
Dentro de las prácticas generales para servidores se encuentran entre otras:
• Desarrollar un plan de deployment computacional que incluya aspectos de
seguridad
• Incluir requerimientos de seguridad explícitos cuando se escojan los
servidores
• Mantener actualizados los sistemas operativos y el software aplicativo
• Ofrecer solo los servicios esenciales a las máquinas hosts
• Configurar los computadores para usar autenticación
• Configurar controles de acceso a los dispositivos y archivos del sistema
operativo
• Identificar y habilitar mecanismos de ingreso a la red
• Configurar los computadores para generar backups
• Proteger los computadores de virus y amenazas programadas similares
• Configurar los computadores para permitir una administración remota
• Permitir solo acceso físico apropiado a los computadores
Las prácticas recomendadas por este mismo instituto para lograr un servidor web
seguro son:
• Aislar el servidor Web de la red pública y de la red interna de la
organización
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
• Configurar controles de acceso a los dispositivos y archivos del sistema
operativo
• Identificar y habilitar mecanismos de ingreso al servidor
• Considerar las implicaciones de seguridad antes de seleccionar los
programas, scripts y plug-ins para el servidor Web
• Configurar el servidor para minimizar la funcionalidad de los programas,
scripts y plug-ins
• Configurar el servidor de web para utilizar tecnologías de autenticación y
encripción donde sean necesarias
• Mantener un backup de todo el contenido del servidor de Web en un host
seguro
Como se puede ver, adaptar las prácticas generales a un servidor específico, ya
sea Web, FTP o de bases de datos no es muy complicado, sin embargo, seguir
estas prácticas requiere de una metodología y es esto lo que se pretende mostrar
en este proyecto utilizando los Árboles de Amenaza.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
9. AJUSTE DE LA TAXONOMÍA A LA METODOLOGÍA
En el capítulo uno se plantearon dos preguntas a las cuales se busca encontrar
respuesta cuando se está tratando de establecer una definición formal de
seguridad computacional, ¿Qué recursos estamos tratando de proteger y contra
qué se deben proteger?. La metodología de árboles de amenaza se ha convertido
en una poderosa ayuda para aquellos profesionales en tecnologías de información
que buscan, día a día, comprender mejor los riesgos a los que están expuestos los
sistemas y poder así contrarrestarlos de una forma más efectiva. Sin embargo,
durante la aplicación inicial de la metodología, se hizo evidente que era necesario
tener una mayor estructuración de cuáles son los posibles ataques si se quería
responder a cabalidad la segunda pregunta planteada.
Durante los capítulos dos, tres y cuatro se estudiaron algunas de las taxonomías
que han sido utilizadas en los últimos años cuando se ha tratado de categorizar
los ataques que pueden sufrir los sistemas computacionales y se seleccionó una
de ellas con el fin de utilizarla en este trabajo. Clasificar los ataques brinda
numerosos beneficios a los analistas de seguridad, siendo uno de los más
importantes, el poder reutilizar los trabajos hechos anteriormente en el mismo
sistema o en sistemas similares y poder así disponer de más tiempo para posibles
refinamientos o para el descubrimiento de otros ataques.
Lo que se busca en el presente capítulo es lograr enriquecer la metodología de
Árboles de Amenaza con una clara categorización de los posibles ataques del
sistema en cuestión. Para poder aprovechar al máximo las ventajas de una
taxonomía de ataques sin perder el rumbo trazado al comienzo de este trabajo, el
cual consiste en poder conocer a fondo la metodología de Árboles de Amenaza,
se ha decidido restringir la taxonomía escogida en el capítulo cuatro, y abarcar con
ella, única y exclusivamente los ataques más comunes y perjudiciales para una
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
configuración de red que presta servicios de Web, como lo es la configuración
sobre la cual se va a aplicar la metodología.
En la figura 9.1 se han resaltado aquellas clases de atacantes, herramientas, tipos
de acceso, de resultados y los objetivos que busca un atacante y en los cuales se
va a enfocar la metodología durante su aplicación para el análisis de
requerimientos de seguridad de la configuración escogida en el capítulo ocho.
9.1 RELACION TAXONOMÍA-METODOLOGÍA
A medida que se vaya avanzando en el análisis del sistema y durante el
transcurso de la aplicación de la metodología se irá profundizando en cada una de
las etapas de la taxonomía, por ahora, se va a construir una relación entre los
pasos que sigue la metodología y la categorización realizada por la taxonomía.
Recordemos que la metodología de Árboles de amenaza se compone, a grandes
rasgos, de los siguientes pasos:
• Modelar las vulnerabilidades del sistema mediante el árbol de amenaza
• Identificar los agentes de amenaza del sistema
• Comparar matemáticamente, las capacidades de los agentes de amenaza
con las debilidades del sistema
• Revelar cuáles son las amenazas con mayor probabilidad de convertirse en
incidentes
• Eliminar aquellas amenazas con probabilidades bajas de convertirse en
incidentes
• Priorizar las amenazas que no fueron eliminadas por su probabilidad para
convertirse en incidentes
• Impacto de los incidentes y mitigación de amenazas.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Comencemos ahora a relacionar la categorización hecha por la taxonomía, con los
pasos generales que se siguen en la aplicación de la metodología.
La primera parte de la categorización realizada para el acceso, nos da una
excelente ayuda para poder descubrir cuáles son las vulnerabilidades del sistema.
En nuestro caso se hará énfasis en las vulnerabilidades de diseño y configuración
por ser las dos partes en las cuales se cometen los mayores errores y por tanto se
convierten en las principales debilidades del sistema, explotadas con mayor éxito
por los agentes de amenaza.
Para identificar a los agentes de amenaza del sistema se cuenta con una eficaz
clasificación de los posibles atacantes. Se ha escogido trabajar con los
denominados Hackers por ser ellos los atacantes más reconocidos en el mundo
de Internet.
La clasificación de las herramientas que pueden ser usadas por los agentes de
amenaza es una gran ayuda en el momento de comparar matemáticamente las
capacidades de los atacantes contra las debilidades del sistema. Como se verá
más adelante, las variables que sean seleccionadas para realizar la comparación
matemática estarán muy relacionadas con la facilidad que tenga el atacante para
conseguir y utilizar efectivamente alguna de estas herramientas.
El paso siguiente a la comparación matemática consiste en identificar cuáles son
las amenazas con probabilidades más altas y cuáles son aquellas con
probabilidades más bajas para convertirse en incidentes. Lógicamente, esta
identificación está relacionada tanto a las vulnerabilidades del sistema, como a la
clase de atacante, la herramienta seleccionada para llevar a cabo el ataque y el
tipo de acceso que se tenga para hacerlo. Esto quiere decir que la primera parte
de la taxonomía escogida corresponde fielmente a los pasos que se siguen en la
primera fase de la metodología de Árboles de Amenaza.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
La segunda parte de la taxonomía, es decir, la categorización de los recursos que
se tratan de proteger, los tipos de resultados y los objetivos que buscan los
atacantes se utilizará para el desarrollo de la segunda fase de la metodología, la
cual consiste en evaluar los impactos de los incidentes y en mitigar las amenazas.
Los recursos que se tratan de proteger son, en la gran mayoría de los casos, los
factores determinantes para evaluar cuál es el impacto que causa un incidente.
Aunque hace algunos años, los procesos que ejecutaban grandes computadores
(Main Frames), eran los recursos más importantes para las empresas, hoy en día,
en un mundo altamente interconectado, gobernado por las redes y la información,
estos procesos se han distribuido físicamente y muchas veces se encuentran
duplicados en distintos puntos de la red, lo cual ha disminuido en gran medida el
impacto que puede causar un incidente sobre ellos.
La disminución del impacto causado por un ataque a un proceso se ve
contrarrestado por el aumento del impacto que se logra cuando se lleva a cabo un
ataque sobre los archivos o los datos en tránsito. En la actualidad, uno de los
recursos más valiosos de todas las empresas es la información y el manejo que
hagan de ella. Perder esta información, ya sea del lugar donde se encuentra
almacenada (archivos) o del manejo que se este haciendo de ella (datos en
tránsito) puede destruir literalmente a casi cualquier organización actual y es por
tal razón que utilizaremos los Árboles de Amenaza para analizar los
requerimientos de seguridad de estos recursos.
Habiendo determinado cuál es el impacto de cada uno de los incidentes se puede
proceder a mitigar las amenazas. Para poder mitigar una amenaza es necesario
tener definido cuáles son los objetivos que busca lograr un atacante y cuales son
los resultados obtenidos. En la medida que se identifiquen los resultados y se
logre disminuir la probabilidad de que una amenaza se convierta en incidente, se
estará mitigando una amenaza. Es en este punto donde se hace importante
recalcular el árbol una vez que se han implantado todos los mecanismos posibles
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
para incrementar la seguridad del sistema; lo que se espera encontrar luego de
recalcular el árbol es que todas las funciones matemáticas utilizadas para el
análisis se han vuelto aún más desfavorables para el atacante de lo que eran
cuando se comenzó el análisis.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 9.1 Puntos de la taxonomía en los que se realizará el análisis
Atacantes
Herramientas
Acceso
Resultados
Objetivos
Hackers Comandos de
usuario Vulnerabilidades
de implementación
Acceso no autorizado
Archivos
Corrupción de información
Reto, Prestigio
Espías
Programas de Script
Vulnerabilidades de diseño
Uso no autorizado Procesos
Datos en tránsito
Revelación de información Fines políticos
Terroristas Agentes
Autónomos Vulnerabilidades
de configuración
Robo de
servicios Fines financieros
Raiders Corporativos
Toolkit Denegación de servicio Daño
Criminales profesionales
Herramientas distribuidas
Vándalos
Sondeo de datos
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
10. APLICACIÓN DE LA METODOLOGÍA
Durante los capítulos anteriores se dio a conocer la metodología de Árboles de
Amenaza, los pasos que deben seguirse para su correcta utilización y además se
enriqueció esta metodología con la adaptación de una taxonomía a cada una de
las fases que la componen.
En el capítulo ocho se definió también una configuración básica para un portal web
con el fin de poner en práctica la metodología en el análisis de seguridad para
dicha configuración.
Se procederá ahora a seguir cada una de las fases que componen el análisis de
seguridad en esta metodología teniendo en cuenta que se tendrá como escenario
la configuración seleccionada previamente.
10.1 ESPECIFICACIONES DE LA CONFIGURACIÓN
Figura 10.1 Configuración escogida
USUARIOS DE INTERNET
LAN
FIREWALL
Internet Servidor
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
La figura 10.1 describe la configuración que será utilizada para realizar el análisis
de seguridad, sin embargo, vale la pena colocar esta configuración dentro de un
contexto real para ver más claramente la utilidad de la metodología.
La configuración escogida es una arquitectura básica para un sitio web de
comercio electrónico, en particular comercio del tipo Business to Consumer (B2C).
Esta categoría de comercio electrónico consiste básicamente en dar a conocer los
productos y servicios que una compañía ofrece a sus clientes. Se brinda también
información acerca de los diferentes departamentos y divisiones que existen en el
interior de la organización y que en un momento dado pueden prestar algún
servicio a los clientes. En la gran mayoría de los casos, el flujo de información no
es unidireccional, por el contrario, los clientes y consumidores pueden expresar
sus opiniones a través del sitio web e incluso llevar a cabo las transacciones
comerciales con la empresa por este medio.
Es así como un portal de comercio electrónico B2C puede llegar a ser el activo
más valioso para una compañía. Imaginemos el impacto que tendría, por ejemplo,
que Amazon fuese víctima de ataques informáticos que lo inhabiliten para prestar
sus servicios o peor aún que sin inhabilitar el servicio que presta, se utilice el
portal para dirigir todo el dinero que recauda a la cuenta bancaria de un
delincuente informático, perjudicando así, no solo a la compañía sino también a
todos sus clientes.
Para nuestro caso se tendrá un portal de B2C, el cual cuenta con dos tipos de
acceso, uno para usuarios de Internet y el otro para usuarios que se encuentran
en el interior de la organización y hacen parte de una misma LAN. Los dos tipos
de usuario, acceden al servidor a través de un firewall y cuentan con servicios de
http, SMTP y FTP.
10.2 FASE I: IDENTIFICACIÓN DE VULNERABILIDADES Y ANÁLISIS DE
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
AMENAZAS La primera parte de la metodología es vital para el buen desarrollo de la misma.
Es en este punto donde se definen cuáles son las posibles vulnerabilidades del
sistema y aunque no existe una forma específica para realizar esta labor, vamos a
tratar de guiarnos por la taxonomía definida previamente, añadiendo cuando sea
necesario, nuevas categorías o eliminando aquellas que no se consideren
convenientes.
Las principales vulnerabilidades de los sistemas, en particular para aquellos
sistemas que se amoldan a la configuración escogida para el estudio, se pueden
agrupar en dos grandes grupos, las vulnerabilidades de diseño y las
vulnerabilidades de configuración. Sin embargo, existen vulnerabilidades
adicionales y que no están comprendidas en este grupo como son, las debilidades
de las políticas de seguridad que se implementen y la ingeniería social.
Posteriormente se identificaran amenazas pertenecientes a cada una de estas
categorías.
10.2.1 DEFINICIÓN DEL ALCANCE DEL ANÁLISIS
La forma usual para determinar cual va a ser el alcance del análisis consiste en la
reunión de una muestra significativa de personas que de una u otra forma
interactuaran con el sistema, a quienes se le solicita que pretendan pensar como
si fuesen un atacante y encuentren cuáles son las formas de afectar el sistema.
En este proyecto de grado se ha decidido seleccionar un alcance del análisis
basado en los alcances más comunes que escogen las compañías dedicadas al
comercio electrónico y quienes poseen una configuración base como la nuestra.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Fue de esta manera como surgió el siguiente alcance para el presente análisis de
seguridad:
Formas en las cuales se puede ver comprometida la seguridad del portal debido a acciones de personas conectadas a Internet
o personas que acceden a través de la LAN.
Como es evidente, las amenazas del entorno, aquellas como inundaciones,
incendios, terremotos, maremotos, entre otras, fueron excluidas en el alcance
puesto que son dependientes en muchos casos de la locación donde se encuentre
el sistema y por tal motivo se vuelven particulares para cada caso. La seguridad
física del sistema también se ha dejado de lado debido al alcance de este proyecto
de grado, el cual tiene como objetivo mostrar la utilización de la metodología de
Árboles de Amenaza y para ello basta con centrar el estudio en el análisis de la
seguridad lógica del sistema.
10.2.2 CREACIÓN DEL ÁRBOL DE AMENAZAS
Lo primero que se debe hacer antes de comenzar a crear el árbol de amenazas es
escoger una raíz para el árbol con un nombre significativo según el alcance del
análisis. Se debe tener en cuenta que este nombre debe ser corto, al igual que los
nombres de todos los nodos del árbol, con el fin de mantener siempre la legibilidad
y claridad del árbol. Vamos a seleccionar entonces como nodo raíz un nodo
titulado “Daños al portal”.
Clasificaremos ahora las vulnerabilidades de nuestro sistema en cuatro
categorías:
1. Vulnerabilidades de diseño
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2. Vulnerabilidades de configuración
3. Debilidades en las políticas de seguridad
4. Ingeniería social.
Esta clasificación podría llevarnos prematuramente a un árbol como el mostrado
en la figura 10.2
Figura 10.2 Primera aproximación al árbol de amenaza
Lo que se busca con un árbol de amenaza en la mayoría de los casos es generar
subárboles que sean reutilizables en distintos contextos y en muchas veces aún
en distintos sistemas. La ingeniería social, como se verá más adelante, no
corresponde en ningún caso a un subárbol, por el contrario corresponde a hojas
de diversos subárboles debido a que con ella se puede obtener por ejemplo,
acceso físico a los equipos (acceso no autorizado) o se puede obtener también
passwords de usuarios (robo de passwords). Aunque las vulnerabilidades de
configuración si pueden ser un subárbol, con el fin de permitir una reutilización del
árbol posteriormente, es importante notar que una vulnerabilidad de configuración
puede darse en distintos tipos de servidores, por ejemplo, servidores Unix, Linux o
Windows. Consideraciones como estas son de gran utilidad cuando se está
creando el árbol de amenaza, se debe siempre tener en mente qué nivel de
reutilización puede tener el árbol en un futuro. Estas razones justifican que el árbol
mostrado en la figura 10.2 no sea el más adecuado para el análisis de seguridad.
Supongamos por ejemplo que se está analizando la autenticación de usuarios
para una configuración similar a la escogida. Podrían surgir así dos clases de
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
árbol, siendo la primera la más conveniente por permitir descomponer el árbol en
subárboles reutilizables para distintos análisis de seguridad. (Ver figura 10.3 y
10.4).
Figura 10.3 Árbol 1
Figura 10.4 Árbol 2
El primer árbol no solo permite tener un conjunto de subárboles para su posterior
utilización, además se adapta mejor a la preparación técnica que posee el
personal de la organización. La gran mayoría de las empresas tienen personal
entrenado y capacitado en un sistema operativo en particular y es mucho más fácil
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
para ellos contar con un árbol que solo involucra problemas relativos al sistema
que ya conocen que tratar de encontrar causas a un problema para diversos
sistemas, como es el caso del segundo árbol en el cual la raíz es genérica para
diversos sistemas operativos.
Teniendo presente cuáles son los principales cuidados que se deben tener en
cuenta en la creación del árbol de amenazas, se va a emprender esta tarea.
Según lo definido en el alcance del análisis se van a tener ataques desde Internet
y desde la LAN, por lo tanto se construirá el primer nivel del árbol pensando cómo
pueden darse estos ataques. Es necesario resaltar que durante este trabajo de
grado se está tratando de enriquecer la metodología de Árboles de Amenaza con
el uso de una taxonomía de ataques, por lo tanto, no se debe olvidar que al llegar
a las hojas o nodos terminales del árbol, se deben cubrir las cuatro categorías de
vulnerabilidades escogidas para nuestro sistema, es decir, vulnerabilidades de
diseño, vulnerabilidades de configuración, debilidades de las políticas de
seguridad e ingeniería social.
Recordemos las características generales de nuestra configuración. Se cuenta con
acceso interno y externo al sistema (LAN e Internet). Además existen una serie de
recursos físicos como lo son los equipos de los usuarios y el servidor Web. Todo
esto se encuentra interconectado usando protocolos estándares de comunicación,
como por ejemplo TCP/IP, ofreciendo una serie de servicios a los usuarios.
Recordar los componentes de la configuración nos puede llevar directamente a la
construcción del primer nivel del árbol, puesto que atacando a alguno de estos
componentes se puede causar daño al portal. Nótese que la palabra “alguno” se
encuentra escrita en itálica, la razón para esta notación es bastante importante.
Como se vio en el capítulo que explicaba la metodología, un árbol de amenaza
puede ser conjunto o disyunto. La palabra alguno, en este caso, nos indica con
claridad que el árbol de amenaza en su totalidad va a ser disyunto, aunque puede
llegar a tener algunos de sus subárboles conjuntos.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
El primer nivel del árbol estará constituido entonces por tres subárboles, donde
cada uno de estos tres nodos identifica una de las tres formas mediante las cuales
se puede causar daño al portal. El primer nodo se denominará “Explotación del
PC” y será la raíz del árbol de amenazas que se pueden presentar utilizando las
vulnerabilidades de los PC´s que conforman la configuración. El segundo nodo de
este nivel se denominará “Ataques de Aplicación” y hará referencia a aquellas
amenazas que utilicen las vulnerabilidades de los diferentes aplicativos y servicios
que se encuentren presente en el sistema que se está analizando. El tercer y
último nodo de este nivel será denominado “Ataques por protocolos” y
comprenderá aquellos ataques que puedan llevarse a cabo mediante el
conocimiento del protocolo TCP/IP.
Se obtiene así un árbol de dos niveles como el mostrado en la figura 10.5.
Figura 10.5 Árbol Daños al portal
Teniendo el primer nivel del árbol de amenaza se puede tratar cada uno de los
subárboles en forma independiente, tratando de llegar a un nivel de detalle
considerablemente razonable y que permita realizar un buen análisis de la
seguridad del sistema.
En primer lugar se tratará de expandir el árbol cuya raíz será el nodo “Explotación
del PC”. Dentro del actual contexto se conocerá como PC a todos aquellos
equipos que hagan parte de la configuración escogida, por tal razón el servidor
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Web estará considerado dentro de esta categoría, así como los equipos utilizados
por los usuarios para sus conexiones. En un portal web existen principalmente tres
formas de afectar o comprometer un PC. La forma más común y posiblemente la
más fácil de llevar a cabo, consiste en introducir sofware malicioso al PC. Se
entiende por software malicioso aquellos programas de computación escritos con
el fin de causar daño a los archivos del sistema, afectando archivos y datos
almacenados en él. Dentro de esta categoría se encuentran los famosos virus
informáticos, los caballos de Troya y los gusanos.
El software malicioso, comúnmente conocido como malware (por la abreviación de
malicious software), se clasifica en la mayoría de los casos por el tipo de
propagación que utilice y por tal razón se hace una distinción entre los virus, los
caballos de Troya y los gusanos.
Un virus informático es una pieza de software que se inserta a si mismo dentro de
un host, incluyendo su sistema operativo, para propagarse. Un virus no puede
correr independientemente, por tal razón necesita que el programa que lo contiene
sea corrido previamente para activarlo.
Un gusano es un programa, que contrario a los virus, puede correr
independientemente, consumiendo los recursos del host con el fin de seguir
funcionando. La principal característica de un gusano es su capacidad para
propagarse entre distintos hosts.
Los caballos de Troya o Troyanos, como muchos les llaman, son código malicioso
disfrazado como código inofensivo. La única finalidad de los troyanos consiste en
lograr convencer a los usuario para que ejecuten el programa, bien sea colocando
un nombre al programa para que el usuario crea que va a ejecutar un programa
confiable o utilizando alguna otra técnica que permita engañar al usuario.
También es posible realizar diversos ataques al servidor, lo cual nos sugiere que
en este punto se debe introducir otro subárbol, el cual podría llevar por raíz un
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
nodo denominado “Ataques al servidor”. Más adelante nos encargaremos de
expandir este subárbol.
La forma en que los PC´s de los usuarios se conectan al servidor en un portal es
mediante el uso de un navegador o browser de Internet. Debido a que el
navegador es el mecanismo de comunicación con el servidor vale la pena estudiar
cuáles amenazas se pueden llevar a cabo mediante sus vulnerabilidades. Al igual
que como sucede con el servidor, el navegador puede ser el medio para permitir
numerosos ataques por lo cual es necesario introducir para él otro subárbol, cuyo
nodo raíz se denominará “Ataques de navegador”.
Se tiene hasta este punto un árbol como el mostrado en la figura 10.6.
Figura 10.6 Primeros tres niveles del árbol Daños al portal
Ahora es necesario comenzar a expandir cada uno de los subárboles que se
encuentran en el árbol anterior, es decir, se debe tratar de encontrar todas las
posibles formas en las que se pueden realizar ataques al servidor, ataques por
medio del navegador, ataques a las aplicaciones o ataques por medio de los
protocolos de red.
Para expandir el primer subárbol “Ataques al servidor”, se debe recordar que en el
alcance del análisis se definió que se iban a contemplar ataques desde Internet y
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
ataques desde la LAN, por tal motivo, este subárbol se va a descomponer en dos
subárboles más, “Ataques locales” y “Ataques remotos”. El primero de estos dos
subárboles se muestra en la figura 10.7.
Figura 10.7 Subárbol Ataques locales
Con respecto a los ataques locales se van a analizar principalmente dos aspectos,
el primero de ellos tiene que ver con la autenticación de usuarios para ingresar al
sistema y el segundo se refiere al almacenamiento de información que se realiza
en el servidor.
La taxonomía de ataques que se está utilizando en este trabajo menciona que un
sistema puede ser atacado, ya sea teniendo un acceso legítimo al sistema o
encontrando un acceso no autorizado al mismo. Vamos a suponer por simplicidad
que los usuarios que tienen un acceso legítimo al sistema no quieren causar daño,
o al menos no quieren hacerlo utilizando su propio acceso. Las hojas del subárbol
que se van a enunciar a continuación tratan de resumir cuáles son las formas de
lograr un acceso no autorizado al sistema.
Adivinar un password de usuario es una tarea bastante compleja, sin embargo, la
gran mayoría de personas tiene una manera sistemática para inventarse
passwords. La implementación de una adecuada política para administración de
passwords es la manera más efectiva para contrarrestar este tipo de ataque.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Frecuentemente se ve en las películas de ciencia ficción que alguien que debe
introducir un password desconocido a un sistema, por lo general hace varios
intentos hasta que logra adivinarlo. En la realidad, la gran mayoría de sistemas
permiten configurar el número de veces que puede ser introducido un password de
manera errónea antes de bloquear automáticamente la cuenta de ese usuario.
Además se puede también configurar la política de desbloqueo, la cual tiene como
fin únicamente mejorar la interacción de los usuarios con el administrador del
sistema y evitar así congestionar al administrador con llamadas de usuarios que
tengan bloqueada su cuenta debido a introducir una contraseña equivocada. Sin
embargo una política de desbloqueo automática permite al atacante seguir
intentando adivinar las contraseñas de los usuarios una vez se desbloquee la
cuenta.
Esta política de bloqueo tiene que ir acompañada por una correcta política de
administración de claves. Se ha visto muchas veces que algunas empresas
configuran sus sistemas para únicamente permitir passwords alfanuméricos y que
no se encuentren basados en información del usuario, como por ejemplo su
nombre o la fecha de su nacimiento, evitando tener passwords como por ejemplo
BA130372, donde se incluyen las iniciales del nombre y la fecha de nacimiento;
incluso algunos sistemas más robustos permiten introducir solo contraseñas que
no sean palabras semánticamente válidas. Si se implementa una política tan
restrictiva como esta última en conjunto con una política de bloqueo, por ejemplo
de tres intentos, se va a entrar en conflicto con el usuario, puesto que este va a
encontrar que para poder interactuar con el sistema necesita llevar a cabo un gran
esfuerzo, como por ejemplo, memorizar passwords que pueden lucir como esto:
ble081BEAM. Políticas de seguridad tan restrictivas como la anterior pueden abrir
agujeros de seguridad aún más peligrosos, como es el caso en el que los usuarios
comienzan a anotar sus passwords en papeles que muchas veces llegan a ser
adheridos en las pantallas de los computadores para un fácil acceso a su
información. Se puede ver claramente que una política de seguridad mal
implementada se puede convertir muchas veces en un arma de doble filo,
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
abriendo agujeros de seguridad aún más peligrosos y los cuales son los
explotados en mayor número por los usuarios de la empresa.
Un ataque que puede ser llevado a cabo fácilmente por cualquier usuario del
sistema consiste en un ataque de Denegación del servicio. Suponga que conoce
el login de un usuario y se tiene aplicada en la organización una política de
bloqueo automático de cuentas cuando se introduzca un password erróneo tres
veces. Se puede lograr bloquear la cuenta de cualquier empleado de la
organización de una manera sencilla y sin tener ningún tipo de conocimiento en
programación de computadores.
Ver passwords es uno de los ataques locales más comunes debido a su facilidad
para llevarlo a cabo. Muchas veces y por razones como las que ya fueron
explicadas, los usuarios tienen los passwords de sus cuentas escritas en papeles
que se encuentran adheridos a los monitores de sus computadores. Nada impide
que cualquier persona que ingrese a su oficina tenga acceso a estos passwords.
Otra forma de poder ver el password de un usuario consiste en mirar atentamente
por encima de su hombro mientras esta persona ingresa al sistema.
La ingeniería social consiste en timar a un usuario con el fin de obtener
información que permita ingresar al sistema. La forma de timo más común
consiste en realizar una llamada haciéndose pasar por el administrador del
sistema y solicitar al usuario que por favor diga cuál es su password con el fin de
realizar algunas pruebas técnicas en el servidor. Aunque parezca ridículo, existen
hoy en día muchos usuarios confiados e ingenuos que aun caen en este tipo de
engaño.
Aunque es una técnica más complicada que las anteriores y mucho más
arriesgada, el soborno de administradores es una forma bastante común para
obtener el login y la contraseña de alguno o en muchos casos, de todos los
usuarios.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Por el momento se puede dejar a un lado este primer subárbol de ataques locales
y comenzar a desarrollar los ataques al sistema de almacenamiento, el cual es el
segundo subárbol de los posibles ataques locales al sistema. La idea de tener un
subárbol de amenazas al sistema de almacenamiento surge de la taxonomía
utilizada en este trabajo en la cual se hace explícito que uno de los resultados que
buscan los atacantes consiste en corromper la información almacenada en el
sistema.
Acceder a los datos físicamente es una de las formas de ataque de mayor
utilización en el interior de las organizaciones. Para poder llevar a cabo este tipo
de ataque es necesario tener contacto físico con la máquina que se encarga del
almacenamiento. Se puede acceder a los datos robando el disco de
almacenamiento o copiando los archivos que hay en él. La única forma de poder
contrarrestar este tipo de ataque consiste en implementar una excelente política
de seguridad física, para lo cual se puede utilizar también la metodología de
árboles de amenaza pero que se escapa del alcance de este trabajo. Cuando un
atacante desea acceder a los datos puede estar buscando corromper, revelar o
utilizar en su propio beneficio esta información.
Según la taxonomía que se está utilizando y de acuerdo al alcance del análisis,
existen en este caso dos tipos de atacantes, los hackers y los vándalos. El primer
tipo de atacante tiene como objetivo en la gran mayoría de los casos obtener
prestigio o aceptar un reto, mientras que un vándalo solo busca causar daño, sin
obtener con esto ningún beneficio. Para este segundo tipo de atacante se tiene en
cuenta el nodo denominado “Destruir el almacenamiento”. Este ataque debe ser
llevado a cabo por alguien que tenga acceso físico a los dispositivos de
almacenamiento y puede ser también un ataque de denegación de servicio.
La figura 10.8 muestra los nodos que componen el subárbol de ataques remotos,
el cual será descrito a continuación.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Los servicios prestados por el servidor a través de la red representan una forma
para explotar las vulnerabilidades del sistema y causarle daño. Muchos de los
servicios prestados a través de un portal consisten en aplicaciones que reciben
datos de entrada del usuario. La mayoría de desarrolladores de software se
ocupan de la funcionalidad de las aplicaciones, olvidando casi siempre los
aspectos relacionados con la seguridad. En estos olvidos, muchos desarrolladores
no realizan una validación exhaustiva de los datos permitiendo así que la
aplicación reciba datos inválidos. Es posible comenzar a enviar datos inválidos a
las aplicaciones de un servidor y causar un colapso en la aplicación y algunas
veces en todo el sistema, produciendo así otra forma para denegar un servicio.
Figura 10.8 Subárbol Ataques remotos
Las vulnerabilidades explotadas en primera instancia por un atacante son aquellas
que quedan al dejar las configuraciones por defecto que traen los sistemas. Estas
configuraciones por defecto no traen las restricciones necesarias para crear, en
este caso, portales seguros y por el contrario, son configuraciones conocidas
ampliamente por los hackers y son los puntos débiles que primero revisan para
efectuar sus ataques. Es necesario revisar uno a uno todos los módulos
configurables con el fin de cambiar aquellos componentes que permitan un ingreso
no autorizado al sistema.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Al igual que como se hizo en el análisis de los ataques locales, en un ataque
remoto es necesario también analizar las formas en las cuales el sistema de
autenticación puede ser burlado. En un ataque remoto es igualmente válido
observar de alguna forma las contraseñas de los usuarios o realizar algún tipo de
ingeniería social para obtenerlas. Además de estos dos mecanismos se pueden
aprovechar también las vulnerabilidades de las técnicas de encripción utilizadas
por el sistema. Existen muchas aplicaciones legacy funcionando actualmente en el
comercio electrónico, las cuales están utilizando técnicas de criptografía que ya
han sido descifradas por los hackers y que las convierte en un blanco perfecto.
Otra forma para efectuar un ataque remoto al servidor es aprovechar las
debilidades de los protocolos de comunicación. Uno de los protocolos más
comunes para la manipulación de archivos del servidor de manera remota es el
Common Internet File System. Pese a ser un protocolo más seguro que FTP, se
han encontrado ya vulnerabilidades.
Protocolos de comunicación actuales como es el caso de TCP/IP y http, no
realizan una adecuada validación de los datos que reciben y esto permite enviar
datos inválidos que causen, como se vio anteriormente, denegaciones de servicio.
Hasta acá se ha hecho una cobertura general de los principales ataques, tanto
remotos como locales, que puede sufrir un servidor, para nuestro caso un servidor
Web. No se ha profundizado en ningún tipo de ataque puesto que el objetivo de
este proyecto de grado es crear un árbol de amenaza generalizado que pueda ser
adaptado posteriormente a productos específicos escogidos para poner en
práctica la configuración.
Antes de seguir adelante con la expansión del árbol de amenaza vale la pena
recordar en qué punto del árbol va el análisis hasta el momento. Aun quedan sin
expandir en el árbol tres grandes subárboles de amenaza denominados “Ataques
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
de navegador”, “Ataques de aplicación” y “Ataques por protocolos” (Ver figura
10.9).
Figura 10.9 Primeros tres niveles del árbol Daños al portal
La figura 10.10 muestra los siete subárboles que componen los ataques de
navegador.
Figura 10.10 Subárbol Ataques de navegador
En el árbol mostrado en la figura anterior se tuvieron en cuenta aquellos ataques
en los cuales se usa al navegador como una herramienta para causar daño al
portal o si se explotan las vulnerabilidades que poseen los navegadores para el
mismo propósito. Vale la pena resaltar que las vulnerabilidades que se encuentran
en este subárbol aplican para la gran mayoría de navegadores que existen
actualmente en el mercado, en especial, para Internet Explorer y Netscape
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Navigator. Se realizó una cuidadosa investigación para incluir en este análisis
aquellas vulnerabilidades que son comunes a ambos navegadores por lo cual se
advierte al lector que existen innumerables vulnerabilidades que aplican
separadamente a cada navegador y que es importante aplicar todos los parches
disponibles para ellas. Una vez que se han aplicado los parches disponibles es
necesario realizar un investigación acerca de las vulnerabilidades posibles pero de
las cuales aun no se han registrado ataques y tratar de encontrar medidas
efectivas para contrarrestarlas.
La siguiente figura (figura 10.11) muestra cómo están compuestos los primeros
cuatro subárboles que integran los ataques por medio del navegador.
Figura 10.11 Subárboles del árbol Ataques de navegador
Los navegadores utilizan el caché de la máquina local para almacenar archivos
con información relevante del usuario y del servidor con el cual se estableció la
conexión. Esta información no solo está disponible durante el periodo de conexión
sino también después de ella y la única seguridad que poseen estos archivos es la
que les brinda el sistema operativo sobre el cual se encuentre corriendo el
navegador. Es posible configurar el servidor web para marcar algunos de estos
archivos como “no cacheables”, sin embargo, muchos navegadores ignoran esta
información y continúan guardándolos en el caché. Cuando se utiliza esta
configuración del servidor se aumenta la carga de la red y el desempeño en el
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
intercambio de datos disminuye, por lo cual es necesario analizar cuidadosamente
las ventajas y desventajas de esta configuración para cada caso en particular. Es
posible realizar ataques basados en esta vulnerabilidad de los navegadores desde
un servidor malicioso con el fin de adquirir información sobre el usuario que está
ingresando al portal y sobre el servidor en el cual está almacenada la información
del mismo. Este tipo de ataque es un ataque pasivo porque su objetivo principal es
adquirir información del sistema, pero puede ser el punto de partida de un ataque
activo con un gran impacto.
La gran mayoría de portales web ofrecen servicios como foros de discusión y
FAQ´s generados dinámicamente mediante diversos lenguajes, como por ejemplo
PHP y ASP, entre otros. La generación dinámica de estos sitios web abre una
gran oportunidad para los atacantes informáticos. El ataque consiste en insertar
dentro de los mensajes de los foros de discusión, código de scripts maliciosos que
serán ejecutados cuando otro usuario del portal consulte la página en la cual fue
insertado el script. Cuando se genera la página con la información ingresada por
los diversos usuarios se ejecutan todos aquellos scripts maliciosos que fueron
insertados y se causa daño a los hosts de los usuarios. Los principales tags que
son insertados mediante este mecanismo son: <SCRIPT>, <OBJECT>,
<APPLET> y <EMBED>. La única forma para impedir estos ataques es realizar un
cuidadoso análisis de los mensajes ingresados por el usuario, para lo cual ya
existen diversos desarrollos de software en el mercado.
Además de los scripts maliciosos que son ingresados al servidor, existen otros
tags de HTML que pueden ser utilizados para causar daño u obtener información.
El tag más utilizado por los atacantes es el tag <FORM>, el cual puede ser
ingresado estratégicamente en el servidor redireccionando a un servidor malicioso
la información ingresada por el usuario en cada uno de los campos de la forma.
Otro ataque conocido en donde se utilizan los tags de HTML consiste en los
ataques de tipo cross-site scripting. Este tipo de ataque consiste en insertar código
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
malicioso en una página desde otra. El ataque más sencillo de este tipo consiste
en la suplantación del atributo SRC del tag <A HREF>. Mediante esta suplantación
se consigue que el usuario ingrese a una página de Internet con código malicioso
que se encuentra en otro servidor, cuando en realidad está creyendo que ingresa
a un sitio seguro. Es usado en aquellos servidores que ofrecen servicio gratuito de
hosting y los cuales no realizan una cuidadosa validación del contenido que
ingresan sus usuarios.
Posiblemente el mayor interés de los atacantes, tanto remotos como locales, pero
en especial estos últimos, radica en poder robar los passwords de los usuarios. En
la gran mayoría de las aplicaciones web que se encuentran dentro de una LAN, se
realiza el envío de passwords al servidor mediante Basic Authentication, que
consiste en el envío de texto a través de la red, la cual puede ser fácilmente
interceptada para adquirir esta información. Debido a requerir acceso físico a los
recursos, se convierte en un ataque difícil de realizar remotamente pero en uno de
los ataques con mayor acogida entre los empleados maliciosos de una
organización que buscan conocer los passwords de los demás empleados.
Como se explicó en las especificaciones de la configuración, uno de los servicios
ofrecidos por un portal de comercio electrónico es la realización de transacciones
comerciales. Para un intercambio seguro de información en este tipo de servicio
surgieron dos protocolos ampliamente utilizados y soportados por los
navegadores: Secure Socket Layer y Secure http (SSL y SHTTP). Los dos utilizan
técnicas de encripción para el intercambio de datos, sin embargo, a medida que
aumenta el poder computacional, llaves de encripción cortas se han vuelto
vulnerables a ser descubiertas mediante la fuerza bruta, es decir mediante
técnicas iterativas de “ensayo y error”. Aunque poder descifrar llaves actuales, las
cuales tienen una longitud de 128 bits o más, es bastante difícil, siempre se debe
tener en cuenta la posibilidad de que un atacante lo logre y la poca probabilidad de
que esto ocurra se puede controlar mediante los valores que más adelante se le
asignarán a los indicadores de cada nodo del árbol.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Hasta este punto se han explicado las hojas que conforman los primeros cuatro
subárboles de los “ataques de navegador”, ahora se analizarán los subárboles
restantes, mostrados en la figura 10.12.
Figura 10.12 Subárboles del árbol Ataques de navegador
Como ya se mencionó antes, el árbol “Daño al portal” es en su totalidad un árbol
disyunto, sin embargo, tiene en su interior subárboles conjuntos, como es el caso
del subárbol denominado “Ataques persistentes”.
Según lo mostrado en el subárbol “Ejecutar comandos en el host”, es posible
utilizar el navegador como una herramienta para insertar comandos maliciosos en
el servidor y atacar a sus usuarios. Este tipo de ataque puede hacerse persistente
en el cliente mediante la modificación remota de las cookies de usuario, lo cual es
un ataque bastante común, e incluso, ha sido utilizado por diversos portales de
comercio electrónico para obtener información sobre el comportamiento de sus
clientes sin su previa autorización, lo cual lo constituye en un delito. Es claro que
para que un ataque se vuelva persistente en el host de usuario, es necesario
primero llevar a cabo la inserción de los comandos maliciosos y luego modificar
las cookies para hacer persistir el ataque. La necesidad de llevar a cabo estas dos
tareas, hace que el subárbol “Ataques persistentes”, sea un subárbol conjunto.
Otra de las formas para utilizar el navegador como una herramienta de ataque o
para aprovechar sus vulnerabilidades es el uso de los diversos lenguajes de
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
programación soportan. En este análisis se va a hablar de dos de ellos en
particular: Java y JavaScript. Se escogieron estos dos lenguajes puesto que son
soportados por Internet Explorer y Netscape Navigator.
Java es un lenguaje orientado a objetos, de propósito general, introducido al
mercado por Sun Microsystems en 1995. Su mayor ventaja de diseño frente a
otros lenguajes es su portabilidad, siendo ejecutable sobre cualquier plataforma de
computo. Los supuestos de diseño que hacen de java un lenguaje “seguro” (si se
puede decir que existe algo seguro), son: variables fuertemente tipadas, carencia
de instrucciones de preprocesamiento, como las #include existentes en C, la
carencia de apuntadores y de variables y funciones globales. Otra particularidad
importante de java es el soporte que brinda para el desarrollo de pequeñas
aplicaciones llamadas applets, las cuales pueden ser embebidas dentro del código
HTML de una página web abriendo una puerta más a los hackers del mundo.
La característica más explotada de los applets por los hackers ha sido el poder
acceder a los recursos locales de una máquina. Un error de implementación de
java hace que sea posible para un applet acceder a todos los recursos locales de
una máquina que puedan ser alcanzados mediante un URL, lo cual incluye el
sistema de archivos mediante su sintaxis básica haciendo posible para un
atacante, tomar el control de la máquina en forma remota.
En 1998 se descubrió que mediante el uso de los applets era posible acceder
desde un servidor malicioso a los archivos que se encuentran almacenados en
otro servidor, aun si este se encuentra protegido por un firewall. Hasta ahora, la
única medida para evitar este ataque es deshabilitar el soporte para la ejecución
de programas de java en el navegador. Las únicas versiones de navegador que no
son vulnerables a este ataque son las versiones de IE para Macintosh.
Otra de las formas para atacar un host mediante un applet de java es causando
una denegación de servicio. Para este tipo de ataque se aprovechan las
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
características para consumir recursos del sistema en forma indiscriminada. Estos
ataques son imparables puesto que no se puede definir un número limitado de
recursos para que sean utilizados por un applet, lo cual deja un gran agujero de
seguridad en el sistema.
Otro de los lenguajes embebidos en HTML y soportado por los navegadores es
JavaScript. JavaScript es un lenguaje de script basado en objetos y que fue
diseñado específicamente por Netscape para embeber código ejecutable en
páginas HTML. Mediante el llamado a funciones de JavaScript es posible ejecutar,
de manera remota, archivos de audio, llamado de applets e incluso envío de
correos electrónicos.
Al igual que los applets de java, JavaScript permite tener acceso a los archivos
almacenados en el host del usuario y como se vio anteriormente, es posible
introducir comandos de JavaScript de manera remota en un navegador. Esto hace
vulnerables los archivos de los usuarios cuando están navegando en Internet. La
única restricción para llevar a cabo este ataque es que se necesita conocer de
antemano los nombres de los archivos que se desean leer.
JavaScript también permite a un atacante conocer de manera remota todo el
historial de las URL´s que han sido visitadas previamente, violando así la
privacidad del usuario y obteniendo información que puede ser usada en otros
tipos de ataques, como por ejemplo, ataques de ingeniería social en los cuales es
necesario conocer algunos patrones del comportamiento del usuario. Muchas
veces se puede obtener también los valores que fueron enviados a través de
formas a las páginas que figuran en el historial, dando a conocer datos
confidenciales de la persona que ingresó al sistema.
Otra vulnerabilidad conocida, aunque aun sin ataques reportados, consiste en la
inserción de formas falsas en páginas que despliegan frames en el navegador.
Esta vulnerabilidad, reportada por Richard Reiner en 1998, la poseen IE y
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Netscape Navigator cuando soportan frames y tienen habilitado el soporte para
JavaScript.
Figura 10.13 Subárbol Ataques de aplicación
Hasta este punto se han cubierto las posibles formas en las que pueden ser
explotadas las vulnerabilidades relacionadas con el PC para causar daño al portal.
Se comenzará ahora a analizar cuáles son las formas en las que se puede causar
daño al portal aprovechando las vulnerabilidades que tienen sus aplicativos (Ver
figura 10.13). Una configuración como la estudiada en este trabajo de grado tiene
básicamente cuatro componentes importantes. En primer lugar se encuentran los
servlets, es decir aquellos componentes de software que se encuentran en el lado
del servidor (en una aplicación cliente/servidor de dos niveles), los cuales
contienen, en la gran mayoría de los casos, la lógica del negocio, es decir, los
procesos fundamentales para la operación de una empresa. Soportando todos los
aplicativos se encuentra el sistema operativo, el cual es la base de todo el
software que se encuentre instalado, en este caso, para la operación del portal.
Otra pieza importante dentro del portal es el manejador de bases de datos que se
esté utilizando y en el cual radica información valiosa de los usuarios y del
sistema. Por último, es importante tener en cuenta las amenazas posibles al
servidor web que se esté utilizando, el cual será un componente vital para el buen
desempeño del portal y para una correcta prestación de los servicios a los
usuarios.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
En general, los servlets son un excelente punto de partida para encontrar
vulnerabilidades en un sistema. Casi ningún programador se preocupa por
desarrollar componentes seguros de software, por el contrario, se enfocan
principalmente en la funcionalidad que debe cumplir dicho componente generando
efectos de borde en la seguridad de todo el sistema. Un servlet se puede convertir
en la puerta de acceso no autorizado a la base de datos, al servidor web o
inclusive al sistema operativo.
En el análisis de las amenazas al manejador de bases de datos se van a incluir
cuatro subárboles (ver figura 10.14) en los cuales se cubrirán problemas del
control de acceso, autenticación de usuarios, errores de configuración y de
sistemas externos.
Figura 10.14 Subárbol Bases de datos
Antes de comenzar a explicar cada una de las hojas que posee el subárbol
“Controles de Acceso”, es importante que el lector se percate que existe un
subárbol justo debajo de la raíz y que no existen hermanos de este subárbol (Ver
figura 10.15).
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 10.15 Subárbol Controles de acceso
Se podría pensar que sería erróneo colocar un subárbol si no se tienen más hijos
de la raíz, sin embargo, se debe recordar que al realizar un árbol de amenazas se
busca maximizar la reutilización de cada uno de los subárboles. El hecho de crear
un subárbol denominado “Acceso directo al servidor”, hace pensar que
posteriormente se puede extender el árbol con otro subárbol denominado “Acceso
indirecto al servidor”, el cual puede cubrir otro tipo de ataques. Insertar o no este
subárbol sin nodos hermanos no afecta los cálculos que se hagan sobre el árbol
cuando se asignen indicadores a las hojas.
El subárbol “Acceso directo al servidor” cubre “ataques a la memoria” y “acceso a
los archivos del sistema”, los cuales pueden ser atacados de dos formas,
copiándolos o destruyéndolos.
La mayoría de sistemas manejadores de datos utilizan la memoria de la máquina
para almacenar los datos. Aunque el sistema operativo cuenta con mecanismos
para proteger estos sectores de memoria, es factible que un atacante
experimentado encuentre vulnerabilidades para acceder a los datos directamente
por el sistema operativo, que casi siempre es el componente más conocido por los
atacantes.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Los archivos el sistema pueden ser utilizados para tomar información que se
encuentre en ellos sobre el manejador de base de datos que se esté utilizando, o
bien pueden ser dañados con el fin de afectar el funcionamiento del manejador.
La figura 10.16, muestra expandidos los subárboles “errores de configuración” y
“sistemas externos”. Aunque son árboles relativamente pequeños, el lector debe
comprender que en este caso se está haciendo una descripción general de los
ataques y además no se hace referencia a ningún producto en especial, por lo
cual, al llevar a la práctica este mismo árbol con una configuración igual pero con
productos específicos, el árbol puede llegar a crecer considerablemente.
Figura 10.16 Subárboles Errores de configuración y Sistemas externos
Al realizar la configuración inicial de un manejador de bases de datos es necesario
prestar especial atención a los permisos dados a los usuarios, la creación de los
roles y privilegios correctos para dichos usuarios y a todos los demás archivos que
permitan ser configurados dentro del manejador. La gran mayoría de sistemas, no
solo manejadores de bases de datos, sino cualquier sistema que pueda ser
instalado por el usuario, tienen una configuración por defecto, la cual tiene una
gran cantidad de huecos de seguridad y que son conocidos ampliamente por los
atacantes experimentados, e incluso por aquellos que están comenzando a
incursionar en los delitos informáticos.
Los sistemas externos que interactúan con el sistema manejador de bases de
datos se convierten también en una oportunidad clara para realizar un ataque. Los
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
programas clientes que interactúan con la base de datos, por ejemplo en sitios que
brindan servicio de hosting con base de datos, se convierten en un acceso casi
directo con el manejador y con la base de datos. Estos programas cuentan ya con
ciertos permisos, accesos y privilegios sobre la base de datos y de esta forma se
convierten en un camino más corto para que los atacantes alcancen sus objetivos.
Casi todas las empresas con cierto grado de sistematización realizan copias de
seguridad de sus bases de datos esporádicamente. Como su nombre lo indica, se
trata de “copias” exactas del contenido almacenado en un momento dado en la
base de datos. Es importante que los administradores del sistema, implementen
medidas de seguridad sobre estos archivos puesto que son también un blanco
deseado de los atacantes, con lo cual logran burlar todos los mecanismos de
seguridad que rodean los archivos originales, que se encuentran y en
consecuencia, fuertemente protegidos. Dejar estos archivos sin una medida de
protección puede anular cualquier esfuerzo que se haya hecho por proteger el
sistema.
Muchas empresas se encargan de desarrollar, ellas mismas, mejoras sobre sus
sistemas computacionales, tanto de hardware como de software. Cuando las
empresas realizan este trabajo en el área de software, cuentan siempre con una
máquina de desarrollo y otra máquina de producción. En la máquina de desarrollo
se suele contar con una copia de los datos reales y se utiliza para realizar pruebas
antes de poner el nuevo programa en producción. Una vez que el programa está
probado y aceptado, no es raro que se realice una copia desde la máquina de
desarrollo hasta la máquina de producción, por lo tanto, en las dos máquinas se
van a encontrar, en un 80% de los casos, aplicaciones y datos idénticos. Al igual
que como sucede con los backups, la máquina de desarrollo debe contar con
medidas de seguridad que la protejan de los atacantes, puesto que atacarla a ella
es casi igual que atacar la máquina de producción.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
El último aspecto que se va a analizar con respecto a los ataques a la base de
datos consiste en los ataques a la autenticación, es decir, cómo burlar el
mecanismo de autenticación que posee el manejador de la base de datos. (Ver
figura 10.17).
Existe básicamente dos formas para burlar el sistema de autenticación de usuarios
del manejador de la base de datos. El primero de ellos consiste en adivinar el
password del usuario, proceso que puede resultar en algunos casos bastante
complejo, dependiendo de las políticas implementadas para la administración de
contraseñas y de las cuales ya se habló cuando se analizó el subárbol
“Explotaciones del PC”.
Figura 10.17 Subárbol Burlar la autenticación
La segunda forma consiste en acceder al archivo de passwords del sistema,
descubrir el mecanismo de encripción y utilizarlo para descifrar cuáles son las
contraseñas que allí se almacenan. Para poder utilizar este método es necesario
tener acceso físico a la máquina y poder acceder al archivo que contiene las
contraseñas encriptadas, lo cual dificulta aún más el ataque.
Si se analiza un poco el trabajo realizado hasta ahora, se puede ver que existen
en el árbol “Daño al sistema”, dos subárboles que son muy similares en su raíz, el
primero se encuentra ubicado bajo el subárbol “Explotación del PC” y el segundo
bajo el subárbol “Ataques de aplicación”. Cuando se analizaron los posibles
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
ataques a través del PC, se tuvieron en cuenta los ataques al sistema operativo,
que en ese caso hacía referencia al sistema operativo del host, el cual puede ser
diferente al sistema operativo utilizado para correr las aplicaciones del portal, pero
igual entre todos los usuarios de la LAN (Imagine por ejemplo que el portal se
encuentra soportado por Linux, mientras que los usuarios de la LAN utilizan
Windows NT). Ahora se tiene que analizar el sistema operativo sobre el que corren
las aplicaciones del portal y como se verá más adelante, los dos árboles son
bastante similares. En los párrafos siguientes se colocarán los subárboles
asociados al sistema operativo del portal y solo serán explicados aquellos nodos
que no figuren en el subárbol explicado cuando se hacía referencia al sistema
operativo del host. Posteriormente, durante la asignación de los valores de los
indicadores de los nodos, el lector se dará cuenta que aunque los subárboles son
muy parecidos, los costos difieren puesto que los ataques no se llevan a cabo de
la misma forma.
El sistema operativo puede sufrir ataques locales y remotos, entendiéndose por
ataque local, aquel ataque en el que se requiere acceso físico al sistema para
poder llevarlo acabo. Los subárboles de ataques locales y remotos se muestran en
la figura 10.18. Cada uno de estos subárboles serán explicados a continuación,
ignorando aquellos nodos que sean parecidos a los nodos que componen el
subárbol de amenaza del sistema operativo del host.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 10.18 Subárbol Sistema operativo
La primera expansión del árbol va a realizarse sobre el subárbol de “Autenticación
de Login” (Figura 10.19). Se puede ver que este árbol únicamente difiere en una
de sus hojas si se compara con el subárbol del sistema operativo de los hosts.
(Aunque ahora se denominó una de las hojas como “Bloquear la cuenta”, esta hoja
hace referencia a un ataque de denegación de servicio, como en el árbol anterior).
Figura 10.19 Subárbol Autenticación de login
Cuando se analizó el sistema operativo de los hosts, se supuso un nodo
denominado “Sobornar al administrador”. En el caso del sistema operativo del
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
portal se supondrá que el administrador es insobornable y en consecuencia el
atacante tendrá que crackear los passwords.
Existen circulando por Internet un gran número de aplicaciones encargadas de
crackear archivos de passwords de diferentes sistemas operativos, aunque
siempre existe la posibilidad de encontrar un atacante independiente que cree su
propia aplicación. La dificultad de este ataque radica en conseguir el archivo de
passwords, el cual por defecto se encuentra bien protegido (recuerde que las
instalaciones por defecto NO son seguras).
Figura 10.20 Subárbol Sistema de almacenamiento
Los ataques al sistema de almacenamiento (Ver figura 10.20), ocurren
básicamente de la misma forma en los dos sistemas operativos en cuestión, sin
embargo, como se verá luego, los valores de los indicadores de los nodos pueden
diferir.
Existen dos hojas adicionales en el subárbol de “Ataque locales”, las cuales no se
encontraban presentes en el subárbol del sistema operativo del host: “Comandos
del sistema” y “Ataques al kernel”. La gran mayoría de sistemas operativos que se
utilizan a nivel de usuario utilizan una interfaz amigable, es decir, una interfaz
gráfica. Los grandes sistemas operativos, sin embargo, permiten utilizar una
interfaz de comandos que les permite a los administradores obtener una mayor
funcionalidad del sistema. Tener acceso a los comandos del sistema por medio de
la interfaz de comando da la posibilidad también a los atacantes que tengan
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
acceso físico, a obtener mayores beneficios, llegando incluso a tomar los mismos
privilegios que tiene el root, es decir, poder controlar totalmente el sistema.
Así como se puede tener acceso a los comandos del sistema y aprovechar las
funcionalidades adicionales, se puede también causar un daño directamente al
kernel del sistema, el cual se encarga de administrar la memoria, los sistemas de
archivos, la programación de tareas y las interfaces de hardware. Atacar el kernel
es atacar el corazón del sistema y teniendo su control se puede inhabilitar todo lo
que depende de él.
Figura 10.21 Subárbol Ataques remotos
La figura 10.21, muestra las hojas que componen los dos subárboles del árbol
“Ataques remotos”. Solo se presentan dos hojas adicionales al árbol anteriormente
analizado: “Buffer overflows” y “Descifrar la encripción” (Aunque no todas las hojas
se denominen igual, hacen referencia al mismo tipo de ataque que en el árbol
anterior). Se adicionaron estos dos tipos de ataques puesto que se trata de
ataques remotos y causan un daño considerable al portal. El primer ataque
consiste en hacer que el servidor almacene en su región de datos del sistema,
más datos de los que puede almacenar. Esto causa un comportamiento anormal
del sistema operativo, puesto que se está escribiendo en la región de la pila de
programas, lo cual significa que se están sobrescribiendo datos que están siendo
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
utilizados por diversas aplicaciones, incluso por el mismo sistema operativo. Para
descifrar la encripción que se está utilizando en el sistema para enviar los datos a
través de la red es necesario interceptar estos datos y aunque es una tarea difícil,
nunca es imposible descifrar un sistema de encripción, sin embargo se
recomienda revisar que las llaves que están siendo utilizadas para la encripción se
encuentren actualizadas y no existan reportes de casos en los que hayan sido
descifradas, con el fin de dificultar la tarea del atacante.
Aun falta por analizar los posibles ataques que puede sufrir el servidor, con ello se
habrá finalizado el análisis de los posibles ataques de aplicación. El subárbol de
amenazas del servidor se muestra en la figura 10.22.
Figura 10.22 Ataques al servidor
Se comenzará por analizar los nodos que son hojas, para posteriormente centrar
la atención en los tres subárboles presentes. De la misma forma que sucede con
las instalaciones de los manejadores de bases de datos, los servidores pueden ser
instalados con las configuraciones que traen por defecto, como se ha venido
diciendo a lo largo de este trabajo, las configuraciones por defecto son grandes
agujeros de seguridad. Una vulnerabilidad muy aprovechada por los atacantes
consiste en la asignación de permisos a los usuarios en las configuraciones por
defecto. Los permisos de los usuarios no son lo suficientemente restrictivos,
brindando así la posibilidad a los atacantes de acceder a los recursos lógicos del
sistema.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Otro ataque relacionado con la configuración del servidor consiste en la posibilidad
que tiene el atacante para adquirir permisos de root en el sistema. Este ataque
está relacionado con la configuración del servidor puesto que la mayoría de
servidores existentes poseen un archivo de configuración de permisos, el cual, si
se encuentra correctamente configurado, brinda una seguridad bastante
razonable. Solo algunos procesos del sistema se ejecutan con permisos de root,
sin embargo, estos procesos son suficientes para que un atacante cause un daño
considerable al sistema si logra adquirir permisos de root. Es factible, adquiriendo
permisos de root, modificar los procesos del sistema con el fin de causar daño al
mismo.
Casi todos los servidores disponibles en el mercado son susceptibles de sufrir
ataques de buffer overflow. Uno de los productos más robustos contra esta
amenaza y sobre el cual no se han reportado ataques, es el servidor web de
Apache. Este servidor, pese a ser un producto de distribución libre, utiliza un buffer
de tamaño dinámico el cual contrarresta los ataques al buffer, aumentando su
capacidad según los requerimientos.
Existe en el subárbol de amenazas contra el servidor, una hoja denominada “Mala
configuración”. Se ha visto hasta este punto, que muchas de los otros ataques se
relacionan con debilidades causadas por una incorrecta configuración, pero debido
al gran número de configuraciones posibles, es necesario y conveniente dejar la
posibilidad de incluir en esta hoja, valores a los indicadores que cubran aquellas
vulnerabilidades de configuración que no se tuvieron en cuenta.
A continuación se analizarán los tres subárboles que conforman el árbol de
ataques al servidor (Ver figura 10.23).
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 10.23 Subárboles de ataques al servidor
En el presente análisis se tuvieron en cuenta, además de las amenazas ya
expuestas, tres clases de ataques adicionales, representadas por cada uno de los
subárboles mostrados en la figura anterior: Ataques de autenticación, ataques de
red y ataques al manejo de sesión.
Los ataques de autenticación se analizaron según los mecanismos de
autenticación más difundidos en los servidores que se encuentran funcionando
actualmente. Existen básicamente cuatro mecanismos de autenticación:
Autenticación basada en direcciones IP, Autenticación Básica (Basic
Authentication), Digest Authentication y archivo de passwords almacenados en el
servidor.
Casi todos los servidores permiten autenticar a los usuarios con base en las
direcciones IP desde las cuales se hacen los requerimientos al sistema, sin
embargo, técnicas actuales de spoofing permiten burlar este tipo de autenticación
de una manera relativamente sencilla.
Http también permite realizar dos mecanismos de autenticación: Basic y Digest. El
primer tipo de autenticación envía el login y el password sin encriptar a través de
la red, no es necesario decir que este tipo de autenticación es vulnerable a
técnicas de sondeo de datos en la red. Aunque el segundo método de
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
autenticación permitido por http (Digest), envía estos mismos datos en forma
encripatada, casi ningún navegador soporta este mecanismo, por lo cual casi
nunca es utilizado.
La última forma para burlar la autenticación en el servidor consiste en adquirir el
archivo de contraseñas y tratar de descubrir cuál es el mecanismo de encripción
que está siendo utilizado, para lo cual ya existen varias herramientas disponibles
en Internet.
Dentro de los posibles ataques de red, se analizarán en este trabajo los ataques
de rastreo de datos sin encriptar (sniffing) y los ataques de denegación de servicio.
A menos que se esté utilizando alguno de los protocolos seguros para el
intercambio de datos a través de Internet, como por ejemplo, SSL o SHTTP, todas
las transacciones sobre la red pueden ser observadas y comprendidas por
cualquier persona que intercepte la transmisión. Las técnicas de intercepción con
el fin de conocer la información que viaja por la red, son conocidas como sniffing.
Como se vio en el subárbol anterior, es posible descubrir el login y password de un
usuario mediante sniffing si se está utilizando Basic Authentication.
Los ataques más difíciles de contrarrestar en cualquier sistema son los ataques de
denegación de servicio. Como se ha visto a lo largo de este proyecto de grado,
existen numerosas técnicas para llevar a cabo este ataque, aun si no se tienen
conocimientos especiales sobre computación, basta simplemente con conocer
alguna vulnerabilidad del sistema o incluso conocer una política de seguridad mal
implementada en el sistema, como es el caso de la política de bloqueo de cuentas
al introducir un password erróneo repetidamente.
El último ataque al servidor que será analizado en este trabajo se relaciona con el
manejo de sesión entre el servidor y el usuario. Muchos servidores se basan en el
uso de cookies para realizar este trabajo. Puesto que muchas de estas cookies
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
que envía el servidor al usuario para mantener su sesión activa, son generadas de
forma algorítmica y predecible, es común encontrar ataques basados en la
suplantación de estas cookies, con el fin de hacer creer al servidor que se está
comunicando con un usuario válido, cuando en realidad se trata de la conexión
establecida por un atacante del sistema.
Es hora de volver al árbol “Daño al portal” puesto que solo resta por analizar el
último de sus subárboles, denominado “Ataques por protocolos”, (Ver figura
10.24). Este subárbol hace referencia a los ataques que se llevan a cabo
aprovechando las vulnerabilidades de los protocolos utilizados para la transmisión
de datos a través de la red. En este punto se vuelve a aprovechar la característica
de reutilización que presenta la metodología de árboles de amenaza puesto que
este subárbol es exactamente igual (aunque pueden variar los valores de los
indicadores asociados a las hojas), al subárbol “Ataques de red”, analizado dentro
de los ataques al servidor.
Figura 10.24 Subárbol Ataques por protocolos
Hasta este punto se ha cumplido con uno de los pasos más importantes en la
primera parte de la metodología el cual consiste en generar por completo el árbol
de amenaza, según el alcance definido para el análisis.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Es imposible, debido a la magnitud del árbol que ha sido creado hasta el
momento, graficarlo totalmente y de una forma legible, sin embargo, a
continuación se muestra el esquema general del árbol (Ver figura 10.25), y se
pretende que el lector identifique cada uno de los subárboles dentro él, teniendo
presente que cada uno de los subárboles explicados se encuentran en el árbol en
el mismo orden que fueron presentados en este trabajo, siguiendo un recorrido de
arriba hacia abajo y de izquierda a derecha.
Figura 10.25 Esquema general del árbol
10.2.3 IDENTIFICACIÓN DE LOS AGENTES DE AMENAZA
Según el alcance definido para el presente análisis de seguridad y con el apoyo de
la taxonomía que se está utilizando como respaldo a la metodología, se han
definido dos agentes de amenaza (posibles atacantes) del sistema.
En primer lugar se encuentran los denominados hackers. Los hackers son
individuos que buscan atacar diversos sistemas de información conectados a
Internet con el fin de obtener reconocimiento y prestigio o simplemente porque
consideran que llevar a cabo con éxito un ataque es un reto para su capacidad y
habilidad técnica e intelectual. Sus ataques se realizan de manera remota y
muchas veces no conocen a fondo la empresa que están atacando, únicamente
encontraron en ella vulnerabilidades que podían explotar. Estos atacantes se
caracterizan por tener una gran habilidad técnica y vastos conocimientos en redes
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
y programación de computadores, sin embargo, muchos de ellos cuentan con
modestos recursos para llevar a cabo el ataque y evitan a toda costa ser
atrapados por las autoridades.
El segundo tipo de atacante analizado en este trabajo son los vándalos. Estas son
personas que buscan causar daño al sistema. En este trabajo se van a considerar
aquellos empleados de la organización propietaria del sistema, los cuales carecen
de principios éticos o esperan tomar represalias contra su empleador causando
daño al sistema. Generalmente son personas con escasos conocimientos de
computación, dispuestos a realizar una inversión económica considerable en el
ataque y dispuestos a ser atrapados por las autoridades.
10.2.4 DEFINICIÓN DE LOS INDICADORES Y FUNCIONES DEL ÁRBOL El siguiente paso de la metodología consiste en asociar un costo a cada una de la
hojas del árbol, con el objetivo de poder evaluar cuáles son los ataques más
factibles, dependiendo de diversos indicadores.
En el paso anterior, identificación de los agentes de amenaza, se habló de algunas
de las características que identifican a los dos atacantes que se quieren tener en
cuenta en este análisis. Las características analizadas son: La inversión en dinero
que está dispuesto a realizar el atacante, la capacidad técnica que debe tener el
atacante y la probabilidad que existe de aprehender al atacante del sistema,
dependiendo del método que utilice para dañarlo. Estas características que se
están utilizando para identificar al atacante se denominan indicadores. Se pueden
utilizar diversos indicadores dependiendo de los resultados que se desee obtener
con el análisis, siendo posible incluir factores como la probabilidad de éxito del
atacante, disponibilidad de las herramientas necesarias, tiempo requerido por el
atacante, entre otros.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Los indicadores se asocian única y exclusivamente a las hojas del árbol puesto
que ellas son el punto de partida para cumplir con el objetivo del ataque, en este
caso, causar daño al portal. Esta restricción hace necesario que el analista de
seguridad encuentre una función matemática que le permita calcular el costo
asociado a la raíz del árbol dependiendo de los valores de los indicadores en las
hojas. Recuerde también que existen árboles disyuntos y conjuntos y el cálculo del
costo para estos árboles es distinto, aun cuando sus indicadores sean los mismos.
Antes de asignar las funciones matemáticas a los indicadores seleccionados se
utilizará el ejemplo estudiado en la sección 7.3.2 de este trabajo para observar
cómo se diferencia el cálculo del costo de un árbol disyunto al de un árbol
conjunto.
El subárbol Ataque por el garaje, es un subárbol conjunto, puesto que para
ingresar a la casa por este medio es necesario abrir la puerta del garaje Y luego
abrir la puerta que lo comunica con la casa. Suponga que se requiere una
herramienta para abrir el garaje y otra para abrir la puerta que permite ingresar a
la casa. Si la herramienta para abrir el garaje cuesta US$100 y la herramienta para
abrir la otra puerta cuesta US$50, el atacante tendrá que invertir en el delito un
total de US$150.
El subárbol Entrar por la ventana, es por el contrario, un subárbol disyunto y el
ataque se puede llevar a cabo de dos formas, rompiendo O cortando el vidrio. Si
para romper el vidrio lo único que necesita es conseguir una piedra, lo cual es
gratis, mientras que para cortar el vidrio necesita una herramienta especial, con un
valor al menos de US$25, es obvio que el atacante decidirá escoger el ataque en
el cual no tenga que realizar ninguna inversión monetaria, a menos que existan
factores que lo obliguen a utilizar el otro ataque, por ejemplo, evitar ser
descubierto efectuando el delito.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Como se puede ver en el ejemplo, cuando se analiza un indicador económico en
un árbol conjunto, es necesario sumar los costos de cada hoja del subárbol,
mientras que si el árbol es disyunto, se selecciona la hoja del árbol cuyo costo
para el atacante sea el menor. Observe que si el indicador cambia, también puede
cambiar su método de selección, por ejemplo, si el indicador es el retorno sobre la
inversión en seguridad realizada por la empresa, claramente se pretende
seleccionar el nodo con mayor valor para el indicador.
La tabla que se muestra a continuación (Tabla 10.1) resume las funciones
matemáticas asociadas a cada uno de los indicadores utilizados para el análisis de
la seguridad del portal web que se está evaluando.
INDICADORES Y FUNCIONES UTILIZADAS
INDICADOR CONJUNCIÓN DISYUNCIÓN Costo del ataque a+b+c+...+n Mínimo(a,b,c,...,n)
Probabilidad de captura 1-[(1-a)*(1-b)*...*(1-n)] Mínimo(a,b,c,...,n) Dificultad técnica Máximo(a,b,c,...,n) Mínimo(a,b,c,...,n)
Tabla 10.1 Indicadores y funciones utilizadas
Debido a que los tres indicadores se analizan desde el punto de vista del atacante,
los tres indicadores tienen como función asociada a los árboles disyuntos el
Mínimo de los valores de los nodos, esto significa que el atacante siempre
escogerá aquel ataque que tenga el menor costo, la menor dificultad técnica y
aquel en el cual la probabilidad de ser atrapado sea la más baja, según los puntos
de referencia sobre los cuales él evalúe los indicadores, puesto que aquello que
parezca costoso para un atacante, puede que no lo parezca para otro.
En aquellos árboles que son conjuntos, las funciones asociadas a los indicadores
cambian un poco. En el costo del ataque es necesario sumar los costos de todas
las hojas, como ya se explicó anteriormente. Para calcular la dificultad técnica
cuando se trata de un árbol conjunto, no sería lógico calcular la suma de las
dificultades técnicas asociadas a cada nodo, en este caso se tomará el máximo
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
valor dado al indicador en las hojas del árbol. Tal vez una de las funciones menos
obvias utilizadas en los cálculos de los árboles conjuntos es la función asociada a
las probabilidades, en este caso a la probabilidad de aprehensión del atacante, sin
embargo, aquellas personas que han tenido algún estudio básico de probabilidad,
se darán cuenta que la fórmula representa un caso de probabilidades de eventos
conjuntos.
Ahora que se conocen las funciones asociadas a cada indicador se explicarán
cuáles son los valores que van a tomar estos indicadores en el presente análisis.
El primer indicador es el costo del ataque y está determinado por la inversión
económica que debe realizar el atacante para causar daño al portal dependiendo
del tipo de ataque que esté llevando a cabo. El costo del ataque es un indicador
que servirá para eliminar del árbol aquellos ataques que sean mayores al
presupuesto del que dispone el atacante. Los valores de este indicador no tienen
una cota superior puesto que existen atacantes dispuestos a invertir grandes
cantidades de dinero con el fin de lograr su objetivo.
El segundo indicador utilizado en este análisis es la probabilidad de aprehensión el
cual es una medición de las posibilidades existentes para atrapar a la persona que
está llevando a cabo el ataque. Incluir este indicador en el análisis hará posible
podar el árbol dependiendo del riesgo que esté dispuesto a correr el atacante en
su intento de dañar el portal. Como cualquier probabilidad, la probabilidad de
aprehensión se encuentra dentro de 0 y 1, tomando cualquier valor decimal
posible entre estos dos números.
El último indicador es la habilidad técnica requerida. Este indicador hace
referencia a los conocimientos y destrezas que necesite el atacante para realizar
una clase de ataque. Su valor oscila entre 0 y 100, distribuidos en los siguientes
rangos: 1-10 significa que prácticamente cualquier persona puede llevar a cabo el
ataque. 11-25 representa un ataque que puede efectuar una persona con el
tiempo suficiente para descargar una herramienta de ataque desde Internet. 26-40
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
son aquellos ataques que requieren ser ejecutados por una persona que necesita
algún conocimiento adicional si desea utilizar una herramienta de ataque
disponible en Internet. 41-60 indica que la persona es capaz de descubrir
vulnerabilidades en el sistema y además es capaz de saber qué herramienta
utilizar. 61-80 la persona que realiza este ataque es un hacker experimentado y si
no existe una herramienta para llevar a cabo el ataque, es capaz de desarrollarla.
80-100 requiere habilidades y conocimiento superior al de un hacker
experimentado.
10.2.5 ASIGNACIÓN DE VALORES A LOS INDICADORES En la presente sección se asignarán valores a cada uno de los indicadores
seleccionados en la sección anterior. Como se mencionó previamente, es
necesario asignar estos valores única y exclusivamente a las hojas del árbol
puesto que al aplicar recursivamente las funciones matemáticas seleccionadas
para cada indicador se pueden calcular los valores para los otros nodos.
Para realizar esta labor en una forma clara se utilizará un esquema de tablas (Ver
tabla 10.2) en donde se encontrarán los nombres de los subárboles a los cuales
pertenecen las hojas, el nombre que se dio a cada hoja y los valores para cada
uno de los indicadores.
NOMBRE DEL SUBÁRBOL Nombre de la hoja Costo del ataque Probabilidad de
aprehensión Habilidad técnica
Tabla 10.2 Esquema para la asignación de valores
Antes de comenzar vale la pena mencionar que los costos de los ataques están
dados en dólares americanos puesto que se utilizaron estadísticas realizadas en
diversos países y fueron estandarizadas en esta moneda.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Explotación del PC Software malicioso $50
Existen básicamente dos formas para introducir software malicioso en un computador, la primera es teniendo acceso directo y la segunda utilizando la red (si dicho computador se encuentra conectado a una). El segundo caso es obviamente más costoso para el atacante y por tal razón se asignó dicho costo, asumiendo que el atacante tiene que pagar por la conexión que está utilizando.
0.1Las estadísticas han demostrado que de 100 personas que han difundido masivamente algún tipo de software malicioso solo 10 (en los mejores casos), han sido atrapadas por las autoridades.
25La habilidad técnica requerida para realizar este ataque ha disminuido en los últimos años debido al uso masivo de Internet, en donde se encuentran diversos programas previamente elaborados por diversos hackers.
Autenticación de login Adivinar passwords $1
Este es un ataque con un costo relativamente bajo para el atacante si la organización no tiene una adecuada política para la administración de contraseñas. La gran mayoría de personas posee passwords basados en sus nombres y/o fechas especiales
0.15La probabilidad de aprehensión es también baja puesto que en muchos casos solo se realizan auditorias sobre situaciones anómalas, pero al adivinar un password, el atacante ingresa al sistema como un usuario legítimo.
5La habilidad que requiere el atacante está directamente relacionada con la calidad de la política de asignación y administración de contraseñas de la organización. Entre más rigurosa sea dicha política más complicado para el atacante será adivinar un password
Denegación de servicio
$1Como se mencionó en el capítulo en el cual se construyó el árbol de amenaza del sistema, inhabilitar la
0.3La probabilidad de atrapar al atacante es alta si para acceder al sistema el atacante tiene que iniciar una
5La habilidad técnica del atacante es casi nula, lo único que se tiene que hacer es averiguar un login de
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
cuenta de un usuario en organizaciones con políticas de bloqueo resulta muy sencillo. El costo es casi nulo puesto que el atacante lo único que necesita conocer es el login del usuario e ingresar un password erróneo algunas veces.
sesión legítima con el sistema. Sin embargo, la mayoría de las veces es esta cuenta de sesión la que se utiliza para llevar a cabo el ataque.
usuario y ser capaz de digitar un password inválido un determinado número de veces.
Ver passwords $1A no ser que el atacante desee utilizar mecanismos tan sofisticados como cámaras de video para observar cuando un usuario digita su password, este tipo de ataca tiene un costo casi nulo. Basta con mirar cuidadosamente sobre el hombro del usuario o corriendo con más suerte solo basta con observar su libreta de apuntes donde posiblemente tiene escrito su contraseña.
0.2Descubrir quién observó el password puede lograrse si se desconfía de todas las personas que están alrededor, sin embargo, este no es el caso y muchas veces se digitan las claves de los sistemas en personas que no son de confianza (pero que tampoco han dado motivos para desconfiar de ellas).
1No es difícil descubrir que escribe una persona en un teclado, basta con tener una visión rápida, lo cual se consigue con un poco de práctica, además, un elevado porcentaje de la población digita en el teclado utilizando dos o cuatro de sus dedos, lo cual facilita la labor del atacante.
Ingeniería social $100Un ataque local de este tipo se realiza en la gran mayoría de los casos con presencia física del atacante. Es lógico que como mínimo, el atacante debe tener una presentación personal aceptable si quiere lograr timar a algún usuario. Se
0.4La probabilidad de aprehensión es alta pues aunque el atacante subcontrate a un tercero para llevar a cabo el ataque, corre el riesgo de ser delatado cuando esta persona sea atrapada.
5La habilidad técnica requerida depende del tipo de timo que esté tratando de realizar el atacante, en muchos casos basta con hacerse pasar por un administrador del sistema pero en otros es necesario utilizar un lenguaje técnico
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
asume en este caso que los gastos en los que incurre el atacante son aquellos como ropa, transporte y en casos extremos, una invitación a cenar para ganar credibilidad.
especializado.
Sobornar al administrador
$150.000Se ha comprobado que los rangos de valores utilizados para lograr sobornar a un administrador oscilan entre 2 y 10 años de salario, dependiendo de la información que se desee adquirir y de las consecuencias que tenga para el administrador si llega a ser descubierto.
0.25En este caso existe una gran probabilidad de aprehender al atacante. Se ha demostrado que el 25% de los administradores que son sobornados, denuncian el hecho a las autoridades.
5La habilidad del atacante solo radica en notar cuál de los administradores del sistema está más dispuesto a aceptar un soborno.
Sistema de almacenamiento Acceder a los datos $500
Para acceder a los datos es necesario tener un contacto físico con los dispositivos de almacenamiento. Si solo se necesita copiar algunos de los archivos del sistema, como por ejemplo el archivo de passwords, basta con comprar algunos diskettes; si se trata de elaborar una réplica exacta del disco, es necesario comprar un disco con
0.5La probabilidad de ser aprehendido es bastante alta puesto que se deben pasar las barreras de la seguridad física y luego poder salir de las instalaciones con la información.
25Interactuar con dispositivos físicos requiere de conocimientos específicos, además puede ser necesario tener otra clase de conocimiento para burlar otros tipos de acceso físico, como por ejemplo, puertas con ingreso de claves y mecanismos similares
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
las mismas características del original además de algunos dispositivos que permitan copiar la información
Destruir el almacenamiento
$25Para lograr destruir un tipo de almacenamiento físico basta con comprar un martillo o algunas tijeras especiales para cortar cable, por tal razón, el costo del ataque no es muy alto (es posible reemplazar el martillo por una piedra)
0.3La probabilidad de ser atrapado es significativa si se tiene en cuenta que casi siempre se cuenta con mecanismos de seguridad física para los medios de almacenamiento.
10Si el atacante quiere afectar un mecanismo en particular puede ser necesario que conozca cuál cable es el que debe cortar y en grandes centros de cómputo esta labor puede ser dispendiosa, incluso para el administrador del sistema.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Servicios de red
Envío de datos
inválidos
$100Este ataque tiene un costo considerable para el atacante puesto que es necesario realizar una investigación previa sobre los datos inválidos que pueden ser utilizados para cumplir con el objetivo. Además es necesario adquirir algún tipo de software especializado.
0.1El riesgo de ser capturado es relativamente bajo ya que muchas veces los datos inválidos recibidos son considerados como errores de la aplicación y son detectados después de que el ataque ha sucedido.
15La habilidad técnica es alta puesto que aunque el software que se necesita puede estar disponible en Internet, si el software es muy especializado será necesario que el atacante lo programe personalmente.
Explotar
instalaciones por
defecto
$100Para descubrir vulnerabilidades del sistema debidas a instalaciones por defecto, el atacante debe dedicar gran parte de su tiempo a investigaciones a través de la red, lo cual consume recursos valiosos, como por ejemplo, el tiempo de conexión.
0.1Debido a que se están explotando vulnerabilidades de instalaciones por defecto, la probabilidad de descubrir al atacante es baja ya que el sistema no emite ningún tipo de alarma.
20Descubrir este tipo de vulnerabilidades requiere de conocimiento y experiencia, en especial si ni siquiera se conoce qué tipo de sistema se está utlizando.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Sobrepasar la validación
Ver passwords $1A no ser que el atacante desee utilizar mecanismos tan sofisticados como cámaras de video para observar cuando un usuario digita su password, este tipo de ataca tiene un costo casi nulo. Basta con mirar cuidadosamente sobre el hombro del usuario o corriendo con más suerte solo basta con observar su libreta de apuntes donde posiblemente tiene escrito su contraseña.
0.2Descubrir quién observó el password puede lograrse si se desconfía de todas las personas que están alrededor, sin embargo, este no es el caso y muchas veces se digitan las claves de los sistemas en personas que no son de confianza (pero que tampoco han dado motivos para desconfiar de ellas).
10No es difícil descubrir que escribe una persona en un teclado, basta con tener una visión rápida, lo cual se consigue con un poco de práctica, además, un elevado porcentaje de la población digita en el teclado utilizando dos o cuatro de sus dedos, lo cual facilita la labor del atacante.
Ingeniería social $50La ingeniería social en forma remota es un poco más económica para el atacante que si la realiza localmente. Puede significar simplemente hacer una llamada telefónica o enviar un correo electrónico suplantando a alguien.
0.2Realizar este ataque de manera remota disminuye también la probabilidad de ser aprehendido puesto que el atacante en ningún momento deja ver su rostro y puede eliminar a los intermediarios.
5La habilidad técnica requerida no cambia si el ataque se realiza en forma local o en forma remota.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Mala encripción $50.000Descifrar un algoritmo de encripción requiere máquinas con altos niveles de procesamiento, las cuales son costosas, además se necesitan programas sofisticados cuyo desarrollo consume recursos económicos.
0.05Atrapar un atacante que está tratando de descifrar un algoritmo de encripción puede resultar casi imposible debido a que los mecanismos utilizados casi nunca disparan alarmas en el sistema.
35Directamente proporcional a la complejidad del algoritmo utilizado se encuentra la complejidad de descifrarlo. Además de requerir conocimientos en informática son necesarios conocimientos matemáticos.
Debilidad en los protocolos
Compartir archivos $5000Se requiere de investigación y desarrollo para poder llevar a cabo este ataque. No se conoce de herramientas de software publicadas en Internet para realizar este ataque.
0.1Aun no se tiene claro cuáles han sido las forma para explotar las vulnerabilidades de este protocolo por lo cual, descubrir al atacante es aún poco probable
35Debido a que no se conoce de herramientas distribuidas por Internet, es obvio que la habilidad requerida por el atacante debe ser alta y todo el trabajo tiene que ser realizado por él.
Enviar datos
inválidos
$200Es bien sabido que todos los protocolos existentes en el mercado tienen un diagrama de estados bastante deficiente y se comportan de una manera anormal y no determinística si reciben datos válidos, sin embargo, el atacante debe invertir tiempo y dinero para descubrir cuáles de estos datos le son útiles en su propósito
0.1Así como los protocolos no realizan una evaluación exhaustiva de los datos que reciben, tampoco permiten fácilmente generar alarmas cuando estos ataques se están llevando a cabo.
35Se requiere un amplio conocimiento para descubrir qué datos enviar al sistema y poder aprovechar las vulnerabilidades del protocolo.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Recolectar información basura
Robo remoto de
archivos del caché
$100Para poder llevar a cabo este ataque se necesita de un servidor web que pueda obtener la información del navegador que accede al servidor, lo cual puede tener un costo mínimo de $100, utilizando herramientas disponibles en el mercado
0.1Aunque algunos navegadores emiten un mensaje de error cuando algunos de los archivos del caché tratan de ser accedidos, casi todos los usuario ignoran este tipo de mensajes por lo cual el atacante no es atrapado.
25Es necesario programar una página web con un script especial que explote este tipo de vulnerabilidad, para lo cual se requiere un considerable conocimiento técnico y en programación.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Ejecutar comandos en el host
Inserción de scripts $100Es necesario que el atacante posea un servidor web en el cual colocar las páginas que deben ser accedidas por el usuario para poder insertar código en su computador.
0.1Una vez que el script ha sido insertado, su presencia solo se nota cuando el mal está hecho y ya es demasiado tarde para descubrir al atacante
30La programación de este tipo de script no es nada trivial, sin embargo algunos sitios contienen instrucciones para su construcción, lo cual disminuye un poco el trabajo del atacante.
Abusar de tags
HTML
$20Para llevar a cabo este ataque es necesario dedicar tiempo para descubrir cuáles sitios son vulnerables a través de las formas que despliegan a sus usuarios. La gran mayoría de los sitios no realizan una validación exhaustiva de los datos ingresados por el usuario.
0.2Es posible llevar un registro de las direcciones IP donde son originados los datos, sin embargo, esto no garantiza que el atacante pueda ser descubierto.
15Una vez que se conoce si un sitio es vulnerable a este tipo de ataque, existen muchos sitios en Internet que brindan instrucciones para aprovechar estas vulnerabilidades.
Cross-site scripting $100Es necesario que el atacante cuente con un servidor web para llevar a cabo este ataque.
0.1Al igual que el ataque de inserción de scripts en el host, este ataque solo es detectado cuando ya se ha llevado a cabo y cuando ya es demasiado tarde para atrapar al atacante.
15En la actualidad existen diversos sitios especializados en hacking, los cuales brindan tips bastante útiles para lograr llevar a cabo este ataque.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Robar passwords
Sniff passwords $100Aunque existen numerosos sitios que ofrecen en forma gratuita el código de sniffing necesario, es posible que el atacante deba incurrir en algunos gastos, como por ejemplo, un cable o un adaptador de red.
0.1Puesto que deben realizarse algunas conexiones físicas, existe una probabilidad mínima de que el atacante sea atrapado, sin embargo, muchos usuarios no se extrañan por las conexiones que poseen sus equipos
30Dependiendo de qué tantos segmentos de red existan, la habilidad técnica del atacante puede variar, teniendo incluso que añadir algunos nodos a la red para poder lograr filtrar información.
Revelar sesiones
Adivinar llave SSL $1.000.000En la actualidad existen organizaciones que utilizan llaves de 40 bits, las cuales son bastante inseguras y fáciles de descifrar. Las llaves de 128 bits, requieren de un gran poder computacional que no está al alcance de cualquier atacante.
0.01Al ser un ataque pasivo es muy difícil de detectar y por lo tanto hace casi imposible descubrir al atacante.
80Aun con un sofisticado sistema computacional, llevaría muchos años poder descifrar un algoritmo de encripción con llaves de 128 bits, sin embargo, se habla de grandes debilidades en estos algoritmos, aunque no han sido reveladas aún.
Desencriptar SHTTP $1.000.000Al igual que SSL, SHTTP es bastante seguro y requiere de máquinas de computo muy potentes.
0.01Es un ataca pasivo lo cual hace difícil su detección
80Llevaría años poder descifrar la llave, aun teniendo los mecanismos adecudos.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Ataques persistentes
Insertar código
malicioso
$100Es necesario tener un servidor web en el cual poder almacenar las páginas que contengan el script encargado de hacer el trabajo
0.2Si se realizan auditorias periódicas de los sitios visitados y el software instalado en el host, es posible descubrir al atacante
20Aunque los algoritmos pueden ser complejos, hoy en día existen numerosos ataques de este tipo lo cual facilita el proceso de investigación del atacante
Modificar cookies $100Es necesario tener un servidor web para ejecutar el ataque
0.1Una vez que las cookies son modificadas, es casi imposible descubrir quién lo hizo.
20Existen sitios web con ejemplos de código para realizar este ataque.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Utilizando java
Acceso ilegal URL´s $100Es necesario contar con un servidor web para este ataque
0.1Puesto que básicamente es un ataque basado en http, ningún sistema de detección de intrusos y ningún firewall podrían notar que se está llevando a cabo. La única forma de descubrir el ataque sería mediante los mensajes de error que emite un navegador no vulnerable.
35Se requieren habilidades de programación en java.
Denegación de
servicio
$100Es necesario contar con un servidor web.
0.03Este tipo de ataque son casi siempre considerados como errores de programación y no como un ataque, lo cual hace fácil que el atacante pase desapercibido
10Solo se requieren conocimientos básicos de programación en Java.
Leer archivos del
servidor
$100Se debe tener un servidor web.
0.2Existen aplicativos que emiten alarmas cuando se trata de acceder archivos del servidor en forma ilegal.
20El código puede tener un considerable nivel de complejidad, aunque existe suficiente información en Internet.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Utilizando JavaScript
Leer archivos del
usuario
$100Es necesario contar con un servidor web
0.1Los host de usuario no emiten ningún tipo de alarma cuando se acceden a los archivos, a menos que se tenga algún software especializado instalado en la máquina.
15La programación en JavaScript es común y por lo tanto este tipo de código ya es conocido por los atacantes.
Formas maliciosas $100Se necesita un servidor web.
0.2Debido a que el usuario sabe a qué sitios ha ingresado en la red, es factible conocer cuál sitio tenía formas atacantes.
15Programar una forma con JavaScript es algo relativamente sencillo cuando se tiene conocimiento del lenguaje.
Información de
URL’s
$100Se necesita un servidor web
0.1No se emiten alarmas en el sistema, por lo cual la probabilidad de aprehensión es baja.
15El código para realizar esta tarea ya es conocido.
Ataques de aplicación
Servlets inseguros $400El atacante debe realizar una ardua labor de investigación para descubrir cuáles son las vulnerabilidades del sistema.
0.3Debido a que el atacante debe realizar diversas pruebas antes de tener éxito, es posible descubrirlo antes de que pueda realizar el ataque.
65Debido a que no se sabe cuál es la vulnerabilidad que se debe explotar, el atacante debe tener amplios conocimientos del sistema y de programación.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Acceso directo al servidor
Ataque a la memoria $50Los costos en los que incurre el atacante son básicamente investigativos. Requiere conocer muy bien el sistema
0.15Las pruebas que debe realizar el atacante elevan la probabilidad de aprehensión.
60El atacante requiere conocer muy bien el manejador de la base de datos y el sistema operativo sobre el cual está ejecutándose, con el fin de saber cuáles vulnerabilidades facilitan su labor.
Acceso a archivos
Ataque a los archivos $50No se requiere un equipo especial para llevar a cabo este ataque. El mayor costo es el de investigación sobre las debilidades del sistema.
0.1No se emite ningún tipo de alarma cuando este ataque se está llevando a cabo.
55Se requiere poder sobrepasar la seguridad que ofrece el sistema operativo y luego poder burlar la seguridad del manejador.
Copiar datos $500Es necesario contra con dispositivos físicos de almacenamiento, los cuales oscilan alrededor de los $500 para bases de datos con un tamaño considerable
0.25Debido a que el atacante debe tener acceso físico al sistema, el riesgo de ser atrapado depende de las medidas de seguridad físicas que se encuentren implementadas.
25El mayor grado de habilidad puede radicar en burlar la seguridad física del sistema, aunque es necesario tener algunos privilegios de administración sobre el sistema para poder copiar sus datos.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Errores de configuración
Permisos $5El único costo en el que tiene que incurrir el atacante es el tiempo dedicado en el ataque.
0.15Como en la mayoría de los errores de configuración, no se emite ninguna alarma cuando se genera el ataque
30La habilidad del atacante varía directamente con la habilidad que posea el administrador del sistema.
Roles y privilegios $5Al igual que los ataques basados en la configuración de permisos, en los ataques basados en la configuración de roles y privilegios, el atacante solo tiene que invertir su tiempo.
0.2La probabilidad de ser atrapada es un poco mayor puesto que se tiene que hacer un ingreso más profundo al sistema y en general estos archivos están más protegidos.
25Más que habilidad, el atacante requiere tener paciencia, puesto que es necesario realizar muchos intentos.
Archivos de
configuración
$5Conocer los archivos de configuración cuando estos están desprotegidos es una tarea bastante sencilla y no requiere de inversiones económicas para lograrlo
0.1El sistema no emite ningún tipo de alarma.
25Una vez que se conoce el archivo de configuración, explotar sus vulnerabilidades solo requiere tiempo y persistencia.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Sistemas externos
Programas cliente $25Es necesario que el atacante conozca cuáles programas cliente están accediendo a la base de datos. En algunos casos es necesario adquirir el código fuente para poder conocer sus vulnerabilidades lo cual puede tener un costo mínimo.
0.1Debido a que los procesos necesarios en las aplicaciones muchas veces corren con permisos de administrador, el rastro dejado por el atacante puede ser eliminado por él mismo.
15Debido a que el sistema ya cuenta con los permisos necesarios para interactuar con el sistema, el trabajo del atacante es relativamente sencillo.
Backups $500Si se quiere realizar una copia de los archivos de seguridad, se requiere de dispositivos de almacenamiento los cuales son costosos.
0.4La probabilidad de ser atrapado es bastante alta puesto que el atacante debe tener acceso físico a los dispositivos de almacenamiento
15Se requieren habilidades básicas para copiar los diversos archivos y es posible que sea necesario realizar algún tipo de ingeniería social para acceder al sistema.
Servidor de
desarrollo
$500Se necesitan dispositivos de almacenamiento físico para copiar los datos del servidor.
0.15Casi ninguna organización tiene asegurados sus servidores de desarrollo por creer que nunca serán un blanco para los atacantes.
25Además de tener los datos del servidor es necesario contar con una réplica de la base de datos lo cual puede requerir habilidades extras.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Burlar la autenticación
Adivinar el password $5La única inversión es el tiempo dedicado por el atacante.
0.5La probabilidad de ser aprehendido se alta, en especial si se poseen sistemas de alerta basados en el número de ingresos de passwords erróneos.
5La única habilidad del atacante debe ser la paciencia y un poco de viveza para acertar en los passwords más obvios usados por los usuarios.
Crack passwords $25Es necesario contar con una máquina sobre la cual realizar pruebas en el proceso de cracking. Se asume que la mayoría de los atacantes ya cuentan con una por lo cual no hay en realidad una inversión elevada.
0.1Gracias a que el ataque se realiza de manera remota y muchas veces en una máquina distinta, la probabilidad de ser atrapado es baja.
40Se requieren conocimientos informáticos y matemáticos, además de paciencia y perseverancia.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Autenticación de login
Adivinar el password $25La única inversión es el tiempo dedicado por el atacante.
0.15La probabilidad de ser aprehendido se alta, en especial si se poseen sistemas de alerta basados en el número de ingresos de passwords erróneos.
5La única habilidad del atacante debe ser la paciencia y un poco de viveza para acertar en los passwords más obvios usados por los usuarios.
Bloquear la cuenta $25Puede ser necesario programar o conseguir algún tipo de herramienta para automatizar el proceso de ingreso de passwords
0.5La probabilidad de ser capturado es alta puesto que la gran mayoría de sistemas operativos pueden ser configurados para emitir mensajes de alerta.
15Si es necesario programar un script, la habilidad técnica puede ser alta, aunque el script puede llegar a ser bastante corto.
Ver los passwords $1No se debe incurrir en ningún costo para ver los passwords de los usuarios cuando estos los están digitando.
0.25Si no se tiene cuidado, el usuario puede percatarse de las intenciones del atacante.
2La única habilidad requerida es observar cuidadosamente lo cual se adquiere con práctica.
Ingeniería social $50Puede ser necesario comprar algún tipo de indumentaria o realizar algún número importante de llamadas telefónicas.
0.25Esta probabilidad varía según el tipo de timo que se trate de realizar. Depende también en gran medida de la habilidad que tenga el atacante.
15Se requiere básicamente una gran facilidad de expresión.
Crack passwords $1000Los computadores utilizados deben ser poderosos y por lo tanto son costosos
0.1El cracking es llevado a cabo en la máquina del atacante lo cual hace difícil descubrirlo.
45Se requieren conocimientos matemáticos e informáticos.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Sistema de almacenamiento
Acceder a los datos $5000Se requieren dispositivos de almacenamiento y de interconexión con el sistema operativo.
0.5Casi siempre es necesario interrumpir el funcionamiento normal del sistema, lo cual pone en evidencia la presencia del atacante.
20Se requiere de conocimientos en hardware y software.
Destruir el
almacenamiento
$100El daño a los dispositivos físicos puede llevarse a cabo con cualquier herramienta, desde una piedra hasta un sofisticado equipo de demolición. Sin embargo es posible que se necesiten algunas herramientas para abrir algunas puertas de acceso.
0.9Entrar a un centro de computo y comenzar a destruir elementos es una forma bastante obvia de ser descubierto y por lo tanto se puede ser aprehendido fácilmente.
2No es necesario ser muy hábil para destruir cosas.
Ataques locales
Comandos del
sistema
$25Se requiere investigación del atacante para descubrir cuales comandos poseen bugs que le ayuden en su propósito
0.2Las auditorias realizadas sobre las actividades de los usuarios es mínima, lo cual dificulta atrapar al atacante
30Se requieren conocimientos diversos sobre el sistema operativo y la forma como operan los comandos
Ataques al kernel $200Atacar el kernel requiere en algunos casos de computadores potentes y una ardua labor de investigación
0.15Es poco probable ser aprehendido puesto que la mayoría de las veces el ataque va acompañado de la eliminación de los rastros.
45El atacante requiere una gran habilidad técnica para interactuar con el sistema.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Vulnerabilidades de servicios
Datos Inválidos $200El costo del ataque radica en la investigación y pruebas que debe realizar el atacante.
0.3Debido al número de pruebas necesarias, la probabilidad de aprehensión se incrementa.
20Gracias al rango de posibilidades que se abren explotando esta vulnerabilidad, la habilidad técnica requerida no es mucha.
Instalaciones por
defecto
$1El trabajo que tenía que realizar el atacante fue eliminado cuando el administrador no desempeñó adecuadamente su labor.
0.15En las instalaciones por defecto no se emiten alarmas cuando se ataca el sistema.
20Es necesario conocer muy bien el sistema para saber cuales vulnerabilidades quedan expuestas en una instalación por defecto.
Buffer Overflaws $50Los costos en los que se debe incurrir son únicamente de experimentación.
0.15Debido a las múltiples formas de ejecutar este ataque, la probabilidad de captura es baja.
35Aunque existen ataques tan complejos que incluso toman el control del sistema, ataques de denegación son más comunes y sencillos y se encuentran disponibles en Internet.
Descifrar la
encripción
$20.000Los recursos computacionales necesarios son muy costosos.
0.15Como no se altera el funcionamiento normal del sistema, la probabilidad de ser capturado es baja.
50La habilidad requerida es alta puesto que los algoritmos de encripción son complejos
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Ataques de autenticación
Autenticación por
IP
$50El costo es bajo porque las herramientas para realizar spoofing son gratuitas en la red.
0.05Todos los logs del sistema muestran una dirección IP válida, lo cual permite al usuario pasar desapercibido.
35Se necesita un amplio conocimiento sobre el protocolo de Internet.
Basic authentication $100Colocar un sniffer puede requerir algunos cables y software especializado lo cual puede costar unos cuantos dólares.
0.1Es probable descubrir el punto en el cual se interceptó la red, pero se requiere un poco más de suerte para descubrir quién lo hizo.
25Cada día es más fácil instalar un sniffer pero aun es necesario tener acceso a la red.
Digest
authentication
$5El proceso para violar esta autenticación consiste básicamente en adivinar.
0.2La probabilidad es alta puesto que la gran mayoría de organizaciones que usan este mecanismo de autenticación están bastante interesadas en la seguridad del sistema y revisan periódicamente sus logs.
90La técnica de hashing utilizada por el mecanismo es prácticamente inviolable.
Obtener el archivo
de passwords
$50Se puede llegar a incurrir en gastos circunstanciales dependiendo de la ingeniería social que se realice.
0.2Se requiere un acceso local al sistema, aunque puede realizarse en forma remota si hay errores de configuración.
30Se requieren habilidades en programación para poder realizar el cracking del archivo.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Manejo de sesión
Cookies falsas $50Aunque podría necesitarse un servidor, es posible conseguir un hosting más económico.
0.1La probabilidad de aprehensión es muy baja puesto que es posible eliminar el rastro del atacante.
30La complejidad depende del navegador que esté utilizando el usuario y puede tener incluso que lidiar con números aleatorios de 128 bits.
Ataques por protocolos
Rastreo de datos $50Puede ser necesario conseguir algunos cables y dispositivos de red
0.1Atrapar al atacante en el momento que está realizando la interceptación de la red puede ser complicado
35El acceso a la red puede ser complicado.
Robo de sesión $200Es necesario realizar un cuidadoso estudio sobre las vulnerabilidades del sistema que permitan robar una sesión de usuario.
0.2Es probable atrapar al atacante mientras usa la sesión que robo, solo si el administrador del sistema se percata del ataque.
50Aunque se conozcan las vulnerabilidades del sistema, es necesario realizar programas que pueden llegar a ser complejos.
Hasta este punto se tienen los valores de los indicadores de todas las hojas del
árbol, ahora solo es necesario aplicar las funciones matemáticas seleccionadas en
la sección anterior con el fin de calcular los valores de todos los nodos del árbol.
10.2.6 PODA DEL ÁRBOL SEGÚN LOS AGENTES DE AMENAZA Según la taxonomía utilizada en este trabajo, se han escogido dos tipos de
atacantes o agentes de amenaza para realizar el análisis de seguridad, los
hackers y los vándalos.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Los hackers se caracterizan por tener una gran habilidad técnica y vastos
conocimientos en redes y programación de computadores, sin embargo, muchos
de ellos cuentan con modestos recursos para llevar a cabo el ataque y evitan a
toda costa ser atrapados por las autoridades.
Los vándalos son personas que buscan causar daño al sistema. En este trabajo se
van a considerar aquellos empleados de la organización propietaria del sistema,
los cuales carecen de principios éticos o esperan tomar represalias contra su
empleador causando daño al sistema. Generalmente son personas con escasos
conocimientos de computación, dispuestos a realizar una inversión económica
considerable en el ataque y dispuestos a ser atrapados por las autoridades.
A continuación se va a realizar una poda del árbol dependiendo de las
características que poseen los atacantes según los indicadores que fueron
analizados en el árbol de amenaza. La poda del árbol ayudará posteriormente a
enfocar los recursos y contramedidas en aquellas amenazas que son realmente
factibles y no desperdiciar tiempo y dinero contrarrestando ataques que los
posibles atacantes del sistema no pueden llevar a cabo.
La primer poda del árbol se realizará utilizando el primer agente de amenaza
mencionado, es decir, los hackers. El primer objetivo de este agente de amenaza,
como se vio en la metodología, consiste en obtener prestigio entre sus
compañeros y superar el reto que les impone la seguridad del sistema. La gran
mayoría de hackers son personas entre los 15 y 35 años de edad que dedican
gran parte de su tiempo al estudio e investigación en el área de la informática. En
general son personas de una gran habilidad técnica que evitan a toda costa ser
atrapados por las autoridades. Aunque en la mayoría de los casos son personas
adineradas, gracias al trabajo de sus padres, el presupuesto que están dispuestos
a invertir en su hobby es relativamente poco.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Para poder realizar la poda del árbol es necesario cuantificar las cualidades de los
agentes de amenaza, es decir, dar un valor al indicador. Se dirá en este proyecto
de grado que un hacker tiene una gran habilidad técnica y en términos del rango
del indicador, esta habilidad técnica se encuentra entre 0 y 80 (0<habilidad<=80).
El riesgo que desea correr el atacante es poco, es decir, la probabilidad de ser
aprehendido (P) debe ser baja, es decir 0<=P<=0.2. Por último, se habló del
presupuesto que está dispuesto a invertir el atacante en su trabajo, en este caso
se dijo que no era mucho, por tal razón se va a hablar de un presupuesto entre $0
y $200, (0<=Presupuesto<=200). La poda se puede realizar teniendo en cuenta
todos los indicadores o alguno de ellos, sin embargo, en este trabajo se realizarán
podas utilizando todos los indicadores.
El primer indicador utilizado para la poda es el costo del ataque, está poda eliminó
16 de los 108 nodos que posee el árbol de amenaza. Al utilizar para la poda el
indicador de la probabilidad de aprehensión, fueron eliminados 14 nodos más. Por
último, la poda basada en el indicador de habilidad técnica solo eliminó del árbol
un nodo. Fueron eliminados 31 nodos en total, lo cual es un gran ahorro de tiempo
para el analista de seguridad en el momento de diseñar un plan de mitigación de
amenazas.
La representación gráfica de los árboles de amenaza puede ser un poco incómoda
y dificulta el análisis de la metodología, por tal razón, en el presente capítulo solo
ser realizará la respectiva poda del árbol. En el siguiente capítulo se mostrará una
representación esquemática del árbol para posteriormente y antes de pasar a la
segunda fase de la metodología, poder analizar en detalle cuál es el impacto que
tuvo la poda sobre el árbol original.
Ahora se realizará la poda del árbol para el segundo agente de amenaza, los
vándalos. En el caso que se está analizando, se dijo que los vándalos son
aquellos empleados o exempleados de la compañía que quieren tomar represalias
contra la empresa por algún motivo, ya sea por discrepancias con sus jefes o por
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
haber sido despedidos sin justa causa. Este tipo de atacante está dispuesto a
correr un riesgo más alto que el dispuesto a correr un hacker puesto que está
seguro que si es atrapado, podrá salir bien librado en un tribunal, después de todo,
él está convencido que lo que le hizo la empresa fue una injusticia y él está en
todo su derecho de tomar represalias. Al asumir esta actitud vengativa y al ser un
empleado trabajador, es muy probable que esté dispuesto a invertir gran parte de
los ahorros de su trabajo en realizar el ataque, sin embargo, es también muy
común que su habilidad y conocimiento en computación sean escasos.
Se deben cuantificar ahora estos indicadores para el atacante. Se asumirá que la
máxima probabilidad de aprehensión que está dispuesto a asumir es 0.5, esto
significa que la probabilidad puede tomar un rango de 0<probabilidad<=0.5. El
presupuesto del que dispone este agente de amenaza es de $1000,
(0<presupuesto<=$1000). Por otra parte, la habilidad técnica de los vándalos es
mínima, es decir, 0<habilidad<=25, esta habilidad, tal como se vio en el capítulo
10 representa a una persona que pese a no tener conocimientos profundos en el
tema, es capaz de tomarse el tiempo para buscar y descargar alguna herramienta
en Internet que le sirva para causar algún tipo de daño al sistema.
Al utilizar como criterio para la poda del árbol el indicador habilidad técnica, se
eliminan 35 nodos del árbol de amenaza original, el cual posee 108 nodos. Según
el riesgo que está dispuesto a correr el atacante y al utilizar este indicador para la
poda, solo se elimina un nodo más. Por otro lado, al podar el árbol basados en el
costo del ataque, solo se eliminan dos nodos, es decir, del árbol de amenaza
original fueron eliminados en total 38 nodos.
En un capítulo posterior se analizará en más detalle cuáles fueron los resultados
de cada una de las podas realizadas sobre el árbol. Hasta este punto es evidente
que existe un mayor número de posibilidades de dañar el portal para una persona
con grandes habilidades técnicas como lo es un hacker, sin embargo, el mayor
riesgo que está dispuesto a asumir un vándalo y su mayor capacidad económica
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
hacen que sus posibilidades no difieran tanto a las de un hacker. Posteriormente
se analizará en mayor detalle este fenómeno.
La figura 10.26 muestra el árbol de amenaza original sin expandir todas sus
ramas, sin embargo servirá para mostrar algunos de los nodos que fueron
eliminados en cada una de las podas.
Obsérvese que en la figura 10.27 se muestra la primer poda realizada. Al
comparar este árbol con el de la figura 10.26 se ve que el nodo servlets inseguros
ya no aparece en el árbol podado. Si se compara el árbol de la segunda poda (ver
figura 10.28) se ve que además de no estar presente este nodo, se ha eliminado
por completo el subárbol ataques por protocolos. Si se extendieran todas las
ramas de los árboles se podría observar fácilmente cuáles fueron las hojas que
desaparecieron, sin embargo, esta labor no se realiza en este trabajo por
cuestiones de espacio. En secciones posteriores, luego de presentar una nueva
representación para los árboles de amenaza, se mostrarán todos los nodos de los
tres árboles mostrados en las figuras 10.26, 10.27 y 10.28.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 10.26 Árbol de amenaza original
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 10.27 Árbol podado para el hacker
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 10.28 Árbol podado para el vándalo
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
10.3 REPRESENTACIÓN ESQUEMÁTICA DEL ÁRBOL DE AMENAZA Hasta este punto el lector se debe haber percatado que la representación gráfica
de un árbol de amenaza con tantos nodos, como es el caso del árbol estudiado,
resulta poco práctica y puede llegar incluso a ser incomoda para su manipulación.
Esta sección tiene como fin introducir una nueva notación para los árboles de
amenaza y evitar tener que representar el árbol en una forma gráfica. El lector se
puede estar preguntando en este momento, por qué se hace la presentación de
una nueva representación en este punto y no antes?. La introducción de la
representación en este momento no es fortuita, se pretende que el lector haya
descubierto por si solo las ventajas y desventajas de una representación gráfica
del árbol y a su vez se busca mostrar paulatinamente diversas representaciones
para poder culminar este trabajo de grado con la introducción de un estándar XML
para los árboles de amenaza.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Figura 10.29 Numeración de los nodos del árbol
La figura 10.29 muestra parte del árbol Daños al portal. Observe que este árbol
tiene en sus nodos un número como prefijo al nombre del nodo. Para realizar esta
numeración se va a seguir el esquema que sigue la numeración de los capítulos
de un libro, siguiendo un recorrido descendente en el árbol y de izquierda a
derecha en sus ramas.
La numeración de los capítulos de un libro tiene una organización jerárquica, es
decir, existe un orden de precedencia. Suponga que un libro cuenta con dos
capítulos principales, en los cuales, el primer capítulo tiene dos subcapítulos y el
segundo capítulo tiene tres supcapítulos. Se dirá que al primer capítulo le
corresponderá el número 1 y al segundo capítulo le corresponderá el número 2.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Así mismo al primer subcapítulo del capítulo uno le corresponde el numero 1, pero
este número es jerárquico, es decir debe ir precedido por el número que identifica
al capítulo que lo contiene, en este caso, el número 1. De esta forma, el primer
subcapítulo del capítulo uno está identificado con el número 1.1. De igual manera,
el segundo subcapítulo estará identificado con el número 1.2. Aplicando un
análisis similar al capítulo dos, se pueden identificar sus tres subcapítulos con los
números 2.1, 2.2 y 2.3 respectivamente.
Una numeración similar a la anterior es la que se utiliza en los árboles de
amenaza. Se debe tener en cuenta que el nodo raíz del árbol principal no se
numera, se comienzan a numerar cada uno de sus hijos de izquierda a derecha y
de arriba hacia abajo. Los tres hijos del nodo raíz son Explotación del PC, Ataques
de aplicación y Ataques por protocolos. Los números asignados a estos hijos son
respectivamente 1, 2 y 3. Ahora se comienzan a numerar los hijos de estos nodos.
Como caso ilustrativo se realizará la numeración de los hijos del subárbol
Explotación del PC. Este subárbol cuenta con tres hijos, Software malicioso,
Ataques al servidor y Ataques de navegador, con una numeración 1.1, 1.2 y 1.3
respectivamente. El subárbol cuyo número es 1.2 (Ataques al servidor) tiene a su
vez dos hijos a quienes les corresponden respectivamente los números 1.2.1 y
1.2.2. Note que cada uno de los números separados por puntos identifican cuáles
son los nodos que se tienen que seguir desde la raíz hasta el nodo que se está
numerando (Ver figura 10.29).
La ventaja de tener esta representación es poder mostrarla en forma textual de
una manera inequívoca y además permitir ir de la representación gráfica a la
representación textual y viceversa sin temor a cambiar la estructura del árbol. A
continuación se muestra cómo se escribe el árbol de la figura 10.29 utilizando esta
representación.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Daños al portal 1<OR> Explotación del PC
1.1 Software malicioso 1.2 <OR> Ataques al servidor
1.2.1 <OR> Ataques locales . . .
1.2.2 <OR> Ataques remotos . . .
1.3 <OR> Ataques de navegador . . .
2 <OR> Ataques de aplicación . . .
3 <OR> Ataques por protocolos . . .
Los puntos en el árbol indican que la representación debe seguir, aunque no se
hace en este caso por tratarse de un ejemplo ilustrativo. Note además que existe
un campo adicional en la representación, en el presente ejemplo siempre ha sido
<OR>, sin embargo puede ser también <AND>, e indican qué tipo de árbol es el
que se está representando, es decir, si hace referencia a un árbol disyunto o aun
árbol conjunto.
Para finalizar esta sección y con el fin de que sirva como referencia para
explicaciones posteriores, se presenta a continuación, la representación textual
completa del árbol de amenaza denominado Daños al portal y el cual es el árbol
central de este trabajo.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Daños al portal
1 <OR> Explotación del PC
1.1 Software malicioso
1.2 <OR> Ataques al servidor
1.2.1 <OR> Ataques locales
1.2.1.1 <OR> Autenticación de login
1.2.1.1.1 Adivinar passwords
1.2.1.1.2 Denegación de servicio
1.2.1.1.3 Ver passwords
1.2.1.1.4 Ingeniería social
1.2.1.1.5 Sobornar al administrador
1.2.1.2 <OR> Sistema de almacenamiento
1.2.1.2.1 Acceder a los datos
1.2.1.2.2 Destruir el almacenamiento
1.2.2 <OR> Ataques remotos
1.2.2.1 <OR> Servicios de red
1.2.2.1.1 Envío de datos inválidos
1.2.2.1.2 Explotar instalaciones por defecto
1.2.2.1.3 <OR> Sobrepasar la validación
1.2.2.1.3.1 Ver passwords
1.2.2.1.3.2 Ingeniería social
1.2.2.1.3.3 Mala encripción
1.2.2.2 <OR> Debilidad en protocolos
1.2.2.2.1 CIFS (Compartir archivos)
1.2.2.2.2 Enviar datos inválidos
1.3 <OR> Ataques de navegador
1.3.1 <OR> Recolectar la información basura
1.3.1.1 Robo remoto de archivos del cache
1.3.2 <OR> Ejecutar comandos en el host
1.3.2.1 Inserción de Scripts
1.3.2.2 Abusar de tags HTML
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
1.3.2.3 Cross-site scripting
1.3.3 <OR> Robar passwords de sesión
1.3.3.1 Sniff passwords
1.3.4 <OR> Revelar sesiones seguras
1.3.4.1 Adivinar llave SSL
1.3.4.2 Desencriptar SHTTP
1.3.5 <AND> Ataques persistentes
1.3.5.1 Insertar código malicioso
1.3.5.2 Modificar cookies
1.3.6 <OR> Utilizando Java
1.3.6.1 Acceso ilegal a URLs
1.3.6.2 Denegación de servicio
1.3.6.3 Leer archivos del servidor
1.3.7 <OR> Utilizando Javascript
1.3.7.1 Leer archivos del usuario
1.3.7.2 Formas maliciosas
1.3.7.3 Información de URLs
2 <OR> Ataques de aplicación
2.1 Servlets inseguros
2.2 <OR> Bases de Datos
2.2.1 <OR> Controles de acceso
2.2.1.1 <OR> Acceso directo al servidor
2.2.1.1.1 Ataque a la memoria
2.2.1.1.2 <OR> Acceso a archivos del sistema
2.2.1.1.2.1 Ataque a los archivos
2.2.1.1.2.2 Copiar datos
2.2.2 <OR> Errores de configuración
2.2.2.1 Permisos
2.2.2.2 Roles y privilegios incorrectos
2.2.2.3 Archivos de configuración
2.2.3 <OR> Sistemas externos
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.2.3.1 Programas cliente
2.2.3.2 Backups
2.2.3.3 Servidor de desarrollo
2.2.4 <OR> Burlar la autenticación
2.2.4.1 Adivinar el password
2.2.4.2 Crack Password
2.3 <OR> Sistema operativo
2.3.1 <OR> Ataques locales
2.3.1.1 <OR> Autenticación de login
2.3.1.1.1 Adivinar el password
2.3.1.1.2 Bloquear la cuenta
2.3.1.1.3 Ver los passwords
2.3.1.1.4 Ingeniería social
2.3.1.1.5 Crack password
2.3.1.2 <OR> Sistema de almacenamiento
2.3.1.2.1 Acceder a los datos
2.3.1.2.2 Destruir el almacenamiento
2.3.1.3 Comandos del sistema
2.3.1.4 Ataques al kernel
2.3.2 <OR> Ataques remotos
2.3.2.1 <OR> Vulnerabilidades de servicios
2.3.2.1.1 Datos inválidos
2.3.2.1.2 Instalaciones por defecto
2.3.2.1.3 Buffer Overflows
2.3.2.1.4 Descifrar la encripción
2.3.2.2 <OR> Protocolos de red
2.3.2.2.1 Sistema de archivos
2.3.2.2.2 Denegación de servicio
2.4 <OR> Servidor
2.4.1 Permisos incorrectos
2.4.2 Permisos de Root
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.4.3 Buffer Overflow
2.4.4 Mala configuración
2.4.5 <OR> Ataques de autenticación
2.4.5.1 Autenticación por IP
2.4.5.2 Basic Authentication
2.4.5.3 Digest Authentication
2.4.5.4 Obtener el archivo de passwords
2.4.6 <OR> Ataques de red
2.4.6.1 Rastrear texto sin encriptar
2.4.6.2 Denegación de servicio
2.4.7 <OR> Manejo de sesión
2.4.7.1 Cookies falsas
3 <OR> Ataques por protocolos
3.1 Rastreo de datos
3.2 Robo de sesión 10.4 ANÁLISIS DE LOS ÁRBOLES PODADOS En la sección 10.2.6 se realizó la poda del árbol de amenaza original para los dos
agentes de amenaza identificados para la configuración web estudiada. Ahora,
teniendo una representación de los árboles más cómoda, se observarán cuales
son los nodos que fueron eliminados en el árbol después de la poda realizada.
En primer lugar se mostrará la representación textual para la primera poda, es
decir, para la poda cuyo agente de amenaza son los hackers.
Danos al portal
1 <OR> Explotacion del PC
1.1 Software malicioso
1.2 <OR> Ataques al servidor
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
1.2.1 <OR> Ataques locales
1.2.1.1 <OR> Autenticacion de login
1.2.1.1.1 Adivinar passwords
1.2.1.1.3 Ver passwords
1.2.2 <OR> Ataques remotos
1.2.2.1 <OR> Servicios de red
1.2.2.1.1 Envio de datos invalidos
1.2.2.1.2 Explotar instalaciones por defecto
1.2.2.1.3 <OR> Sobrepasar la validacion
1.2.2.1.3.1 Ver passwords
1.2.2.1.3.2 Ingenieria social
1.2.2.2 <OR> Debilidad en protocolos
1.2.2.2.2 Enviar datos invalidos
1.3 <OR> Ataques de navegador
1.3.1 <OR> Recolectar la informacion basura
1.3.1.1 Robo remoto de archivos del cache
1.3.2 <OR> Ejecutar comandos en el host
1.3.2.1 Insercion de Scripts
1.3.2.2 Abusar de tags HTML
1.3.2.3 Cross-site scripting
1.3.3 <OR> Robar passwords de sesion
1.3.3.1 Sniff passwords
1.3.6 <OR> Utilizando Java
1.3.6.1 Acceso ilegal a URLs
1.3.6.2 Denegacion de servicio
1.3.6.3 Leer archivos del servidor
1.3.7 <OR> Utilizando Javascript
1.3.7.1 Leer archivos del usuario
1.3.7.2 Formas maliciosas
1.3.7.3 Informacion de URLs
2 <OR> Ataques de aplicacion
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.2 <OR> Bases de Datos
2.2.1 <OR> Controles de acceso
2.2.1.1 <OR> Acceso directo al servidor
2.2.1.1.1 Ataque a la memoria
2.2.1.1.2 <OR> Acceso a archivos del sistema
2.2.1.1.2.1 Ataque a los archivos
2.2.2 <OR> Errores de configuracion
2.2.2.1 Permisos
2.2.2.2 Roles y privilegios incorrectos
2.2.2.3 Archivos de configuracion
2.2.3 <OR> Sistemas externos
2.2.3.1 Programas cliente
2.2.4 <OR> Burlar la autenticacion
2.2.4.2 Crack Password
2.3 <OR> Sistema operativo
2.3.1 <OR> Ataques locales
2.3.1.1 <OR> Autenticacion de login
2.3.1.1.1 Adivinar el password
2.3.1.3 Comandos del sistema
2.3.1.4 Ataques al kernel
2.3.2 <OR> Ataques remotos
2.3.2.1 <OR> Vulnerabilidades de servicios
2.3.2.1.2 Instalaciones por defecto
2.3.2.1.3 Buffer Overflows
2.3.2.2 <OR> Protocolos de red
2.3.2.2.1 Sistema de archivos
2.3.2.2.2 Denegacion de servicio
2.4 <OR> Servidor
2.4.1 Permisos incorrectos
2.4.4 Mala configuracion
2.4.5 <OR> Ataques de autenticacion
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.4.5.1 Autenticacion por IP
2.4.5.2 Basic Authentication
2.4.5.4 Obtener el archivo de passwords
2.4.6 <OR> Ataques de red
2.4.6.1 Rastrear texto sin encriptar
2.4.6.2 Denegacion de servicio
2.4.7 <OR> Manejo de sesion
2.4.7.1 Cookies falsas
3 <OR> Ataques por protocolos
3.1 Rastreo de datos
3.2 Robo de sesion
Los siguientes son los nodos que fueron eliminados durante la poda del árbol y el
motivo de su eliminación:
Motivo de la eliminación
Nodo eliminado Costo Del ataque
Probabilidad De captura
Habilidad Técnica
1.2.1.1.2 Denegación de servicio X 1.2.1.1.4 Ingeniería social X 1.2.1.1.5 Sobornar al administrador X X 1.2.1.2 <OR> Sistema de almacenamiento X X 1.2.1.2.1 Acceder a los datos X X 1.2.1.2.2 Destruir el almacenamiento X 1.2.2.1.3.3 Mala encripción X 1.2.2.2.1 CIFS (Compartir archivos) X 1.3.4 <OR> Revelar sesiones seguras X X 1.3.4.1 Adivinar llave SSL X X 1.3.4.2 Desencriptar SHTTP X X 1.3.5 <AND> Ataques persistentes X X 1.3.5.1 Insertar código malicioso X 1.3.5.2 Modificar cookies 2.1 Servlets inseguros X X 2.2.1.1.2.2 Copiar datos X X 2.2.3.2 Backups X X
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.2.3.3 Servidor de desarrollo X 2.2.4.1 Adivinar el password X 2.3.1.1.2 Bloquear la cuenta X 2.3.1.1.3 Ver los passwords X 2.3.1.1.4 Ingeniería social X 2.3.1.1.5 Crack password X 2.3.1.2 <OR> Sistema de almacenamiento X 2.3.1.2.1 Acceder a los datos X X 2.3.1.2.2 Destruir el almacenamiento X 2.3.2.1.1 Datos inválidos X X 2.3.2.1.4 Descifrar la encripción X 2.4.2 Permisos de Root X 2.4.3 Buffer Overflow X 2.4.5.3 Digest Authentication X X
Tabla 10.3 Nodos eliminados para el primer agente de amenaza
La tabla 10.3 permite ver que los principales indicadores de eliminación en la
primera poda, donde el agente de amenaza son los hackers, consiste en el costo
que implica el ataque y el riesgo que corre el atacante de ser aprehendido. Los
únicos nodos que presentan una dificultad técnica para el atacante que le impida
llevar a cabo el ataque son aquellos nodos que se relacionan con ataques a los
mecanismos de encripción de datos. En los casos de ataques a la encripción tanto
el costo del ataque como la habilidad técnica requerida son bastante elevados.
A continuación se muestra la representación textual del árbol resultado de la poda
realizada para el segundo agente de amenaza (Vándalos).
Danos al portal
1 <OR> Explotacion del PC
1.1 Software malicioso
1.2 <OR> Ataques al servidor
1.2.1 <OR> Ataques locales
1.2.1.1 <OR> Autenticacion de login
1.2.1.1.1 Adivinar passwords
1.2.1.1.2 Denegacion de servicio
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
1.2.1.1.3 Ver passwords
1.2.1.1.4 Ingenieria social
1.2.1.2 <OR> Sistema de almacenamiento
1.2.1.2.1 Acceder a los datos
1.2.1.2.2 Destruir el almacenamiento
1.2.2 <OR> Ataques remotos
1.2.2.1 <OR> Servicios de red
1.2.2.1.1 Envio de datos invalidos
1.2.2.1.2 Explotar instalaciones por defecto
1.2.2.1.3 <OR> Sobrepasar la validacion
1.2.2.1.3.1 Ver passwords
1.2.2.1.3.2 Ingenieria social
1.3 <OR> Ataques de navegador
1.3.1 <OR> Recolectar la informacion basura
1.3.1.1 Robo remoto de archivos del cache
1.3.2 <OR> Ejecutar comandos en el host
1.3.2.2 Abusar de tags HTML
1.3.2.3 Cross-site scripting
1.3.5 <AND> Ataques persistentes
1.3.5.1 Insertar codigo malicioso
1.3.5.2 Modificar cookies
1.3.6 <OR> Utilizando Java
1.3.6.2 Denegacion de servicio
1.3.6.3 Leer archivos del servidor
1.3.7 <OR> Utilizando Javascript
1.3.7.1 Leer archivos del usuario
1.3.7.2 Formas maliciosas
1.3.7.3 Informacion de URLs
2 <OR> Ataques de aplicacion
2.2 <OR> Bases de Datos
2.2.1 <OR> Controles de acceso
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.2.1.1 <OR> Acceso directo al servidor
2.2.1.1.2 <OR> Acceso a archivos del sistema
2.2.1.1.2.2 Copiar datos
2.2.2 <OR> Errores de configuracion
2.2.2.2 Roles y privilegios incorrectos
2.2.2.3 Archivos de configuracio
2.2.3 <OR> Sistemas externos
2.2.3.1 Programas cliente
2.2.3.2 Backups
2.2.3.3 Servidor de desarrollo
2.2.4 <OR> Burlar la autenticacion
2.2.4.1 Adivinar el password
2.3 <OR> Sistema operativo
2.3.1 <OR> Ataques locales
2.3.1.1 <OR> Autenticacion de login
2.3.1.1.1 Adivinar el password
2.3.1.1.2 Bloquear la cuenta
2.3.1.1.3 Ver los passwords
2.3.1.1.4 Ingenieria social
2.3.1.2 <OR> Sistema de almacenamiento
2.3.2 <OR> Ataques remotos
2.3.2.1 <OR> Vulnerabilidades de servicios
2.3.2.1.1 Datos invalidos
2.3.2.1.2 Instalaciones por defecto
2.3.2.2 <OR> Protocolos de red
2.3.2.2.2 Denegacion de servicio
2.4 <OR> Servidor
2.4.5 <OR> Ataques de autenticacion
2.4.5.2 Basic Authentication
2.4.6 <OR> Ataques de red
2.4.6.1 Rastrear texto sin encriptar
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
En la tabla 10.4 se muestran los nodos que fueron eliminados durante el proceso
de poda y cuáles fueron los indicadores cuyo valor sirvió para tomar la decisión de
eliminar el nodo.
Motivo de eliminación
Nodo eliminado Costo Del ataque Probabilidad De captura
HabilidadTécnica
1.2.1.1.5 Sobornar al administrador X 1.2.2.1.3.3 Mala encripción X X 1.2.2.2 <OR> Debilidad en protocolos X 1.2.2.2.1 CIFS (Compartir archivos) X X 1.2.2.2.2 Enviar datos inválidos X 1.3.2.1 Inserción de Scripts X 1.3.3 <OR> Robar passwords de sesión X 1.3.3.1 Sniff passwords X 1.3.4 <OR> Revelar sesiones seguras X X 1.3.4.1 Adivinar llave SSL X X 1.3.4.2 Desencriptar SHTTP X X 1.3.6.1 Acceso ilegal a URLs X 2.1 Servlets inseguros X 2.2.1.1.1 Ataque a la memoria X 2.2.2.1 Permisos X 2.2.4.2 Crack Password X 2.3.1.1.5 Crack password X X 2.3.1.2 <OR> Sistema de almacenamiento X 2.3.1.2.1 Acceder a los datos X X 2.3.1.2.2 Destruir el almacenamiento X 2.3.2.1.3 Buffer Overflows X 2.3.2.1.4 Descifrar la encripción X X 2.3.2.2.1 Sistema de archivos X 2.4.1 Permisos incorrectos X 2.4.2 Permisos de Root X 2.4.3 Buffer Overflow X 2.4.4 Mala configuración X 2.4.5 <OR> Ataques de autenticación X 2.4.5.1 Autenticación por IP X 2.4.5.3 Digest Authentication X 2.4.5.4 Obtener el archivo de passwords X 2.4.6.2 Denegación de servicio X 2.4.7 <OR> Manejo de sesión X 2.4.7.1 Cookies falsas X 3 <OR> Ataques por protocolos X 3.1 Rastreo de datos X 3.2 Robo de sesión X
Tabla 10.4 Nodos eliminados para el segundo agente de amenaza
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
La tabla anterior hace evidente que el mayor inconveniente para el segundo
agente de amenaza consiste en la dificultad técnica que involucra el ataque.
Observe por ejemplo que ataques relativamente sencillos como por ejemplo el
identificado en el nodo 1.3.6.1 (Acceso ilegal a URL), no pueden ser llevados a
cabo por atacantes que no tengan conocimientos en programación de
computadores. Sin embargo, ataques que no pueden ser llevados a cabo por un
atacante de escasos recursos como por ejemplo realizar una copia del servidor de
desarrollo (nodo 2.2.3.3), si pueden ser realizados por un atacante con mayor
capacidad económica.
10.5 FASE II: IMPACTO DE LOS INCIDENTES Y MITIGACIÓN DE AMENAZAS
Desde la sección 10.2 hasta la sección 10.4 de este proyecto de grado, se
desarrolló la primera fase de la metodología de árboles de amenaza. Se
recorrieron una serie de etapas durante esta fase como son: la definición del
alcance del análisis, la creación del árbol, la identificación de los agentes de
amenaza, la definición de los indicadores y funciones matemáticas asociadas al
árbol, la asignación de valores a los indicadores y las podas del árbol para cada
uno de los agentes de amenaza.
Hasta este punto del análisis se conoce cuáles son las vulnerabilidades del
sistema y quiénes y cómo pueden aprovechar dichas vulnerabilidades para llevar
a cabo un ataque. El lector de este trabajo debe tener muy claro que no se
pretende describir ataques específicos sobre productos del mercado que puedan
ser utilizados en una configuración similar a la estudiada, por el contrario, lo que
se busca es mostrar las ventajas que posee la metodología, por tal razón, la
segunda fase de la misma podrá parecer muy general, pero debe tenerse en
cuenta que no podemos mitigar una amenaza general con un producto específico,
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
por ello, en esta sección se darán algunas recomendaciones para subir los costos
de los indicadores del árbol y con ello poder hacer más difícil para los agentes,
llevar a cabo un ataque.
10.5.1 IMPACTO DE LOS INCIDENTES Esta primera etapa de la segunda fase de la metodología es tal vez una de las
etapas que tendrá que describirse de una manera muy general y abstracta en este
proyecto de grado.
La razón para no poder realizar una evaluación del impacto de los incidentes
radica en el grado de abstracción que se ha tenido desde el comienzo de este
análisis. Es prácticamente imposible saber cuál sería el impacto de que alguno de
estos ataques fuese realizado puesto que no se han manejado indicadores desde
el punto de vista de la organización propietaria del sistema.
Imagínese por ejemplo que se tienen estadísticas de ventas a través del portal
desde que la empresa lo colocó en funcionamiento en Internet. Suponga que se
llegase a presentar un ataque de denegación de servicio, específicamente en la
página web que utiliza el usuario para realizar su pedido y asuma que este ataque
causa daños que solo pueden ser corregidos tres días después. Luego de
observar los datos suministrados por las estadísticas de ventas, la empresa podría
determinar cuáles fueron los ingresos dejados de recibir durante los tres días que
no estuvo funcionando el sistema. Aquellos ingresos que no se recibieron son una
medida del impacto que causó el ataque de denegación de servicio.
Medir el impacto de los incidentes no es otra cosa que establecer una cantidad
cuantificable y comparable para los daños causados por los ataques al sistema.
Como ya se mencionó, en el presente trabajo no se hará énfasis en esta etapa, sin
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
embargo, existe la posibilidad que trabajos posteriores retomen lo que se ha
hecho hasta ahora y complementen la metodología con estos datos.
10.5.2 MITIGACIÓN DE AMENAZAS A continuación se presentan contramedidas para algunas de las amenazas
identificadas y que servirán para ilustrar la reutilización de la metodología para
establecer si se justifica invertir tiempo y dinero en la implementación de un
determinado mecanismo de seguridad.
No se busca mostrar una serie de medidas de seguridad para reducir las
vulnerabilidades del sistema, solo se quiere ilustrar con algunos ejemplos sobre
las amenazas encontradas, las variaciones que pueden sufrir los valores de los
indicadores y cómo al realizar una segunda poda se obtiene un árbol de amenaza
con menores nodos, lo cuál es una medida de la efectividad de las protecciones
que se pueden implementar en el sistema.
Aunque el cambio en los indicadores es solo un estimado y para obtener valores
reales sería necesario realizar pruebas de simulación, para los fines de este
trabajo son rangos razonables y cumplen con el propósito establecido, es decir,
evaluar cómo se comporta la metodología en el análisis de seguridad informática.
Para la mejor comprensión del trabajo que se está realizando en esta etapa, se
utilizará una tabla como la mostrada a continuación (Tabla 10.5), en la cual se
tiene la identificación del nodo que se está analizando, la contramedida que se
podría implementar para mitigar la amenaza, los valores anteriores de cada
indicador y los valores que podrían llegar a tomar luego de implementar la
contramedida enunciada
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Costo
Probabilidad
Habilidad Técnica
Nodo analizado Contramedida posible
Antes Después Antes Después Antes Después
Tabla 10.5
A continuación se presentan contramedidas posibles contra algunos de los
ataques que puede sufrir la configuración estudiada. Si se retoma la sección 10.1
de este trabajo se observa que cuando se definió la configuración se incluyó un
Firewall. El objetivo de incluir este componente en ese momento era resaltar que
es una de las contramedidas más utilizadas en la actualidad pero no es una
contramedida efectiva para todos los ataques.
Costo
Probabilidad
Habilidad Técnica
Nodo analizado Contramedida
posible Antes Después Antes Después Antes Después
Software malicioso Validación de direcciones IP
50 50 0.1 0.6 25 25
Adivinar passwords Política de manejo de contraseñas
1 1 0.15 0.15 5 30
Denegación de servicio Política de bloqueo de cuentas
1 1 0.3 0.3 5 25
Explotar instalaciones por defecto
Programas de auditoria de seguridad
100 250 0.1 0.1 20 35
Ver passwords Política de manejo de contraseñas
1 1 0.2 0.6 10 10
Ingeniería social Manual de procedimientos
50 60 0.2 0.7 5 15
Inserción de scripts Deshabilitar scripts 100 100 0.1 0.1 30 90
Abusar de tags HTML Programación en el servidor
20 30 0.2 0.5 15 80
Modificar cookies Deshabilitar cookies
100 100 0.1 0.2 20 90
Sniff de passwords Instalar hubs en lugar de switches
100 200 0.1 0.3 30 40
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Denegación de servicio utilizando Java
Filtrar programas de Java por Firewall Reconfiguración de la máquina virtual de Java
100 200 0.03 0.3 10 30
Permisos Programas de auditoria
5 250 0.15 0.15 30 40
Roles y privilegios Programas de auditorias y políticas de administración
5 200 0.2 0.3 25 40
Archivos de configuración Programas de auditoria
5 100 0.1 0.2 25 40
Servidor de desarrollo Aislar de la red el servidor de desarrollo
500 800 0.15 0.3 25 90
Permisos incorrectos Programas de auditoria.
50 60 0.1 0.2 30 50
Rastrear texto sin encriptar
Encriptar todos los datos relevantes
100 200 0.05 0.1 25 80
Una vez que se cambian los valores de los indicadores en el árbol se debe
proceder a realizar las podas respectivas para cada agente de amenaza.
Cuando se realiza la poda del árbol para el primer agente de amenaza (hackers)
se eliminan 18 nodos que sobrepasan el presupuesto del atacante, 23 nodos que
sobrepasan el riesgo que está dispuesto a correr sin ser capturado y 2 nodos más
que sobrepasan su habilidad técnica. Se han eliminado un total de 43 nodos, 12
amenazas más que las eliminadas sin implementar ninguna contramedida.
A continuación se presenta el esquema del árbol después de haber realizado la
poda según las características del primer agente de amenaza.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Danos al portal
1 <OR> Explotacion del PC
1.2 <OR> Ataques al servidor
1.2.1 <OR> Ataques locales
1.2.1.1 <OR> Autenticacion de login
1.2.1.1.1 Adivinar passwords
1.2.1.1.3 Ver passwords
1.2.2 <OR> Ataques remotos
1.2.2.1 <OR> Servicios de red
1.2.2.1.1 Envio de datos invalidos
1.2.2.1.3 <OR> Sobrepasar la validacion
1.2.2.2 <OR> Debilidad en protocolos
1.2.2.2.2 Enviar datos invalidos
1.3 <OR> Ataques de navegador
1.3.1 <OR> Recolectar la informacion basura
1.3.1.1 Robo remoto de archivos del cache
1.3.2 <OR> Ejecutar comandos en el host
1.3.2.3 Cross-site scripting
1.3.6 <OR> Utilizando Java
1.3.6.1 Acceso ilegal a URLs
1.3.6.3 Leer archivos del servidor
1.3.7 <OR> Utilizando Javascript
1.3.7.1 Leer archivos del usuario
1.3.7.2 Formas maliciosas
1.3.7.3 Informacion de URLs
2 <OR> Ataques de aplicacion
2.2 <OR> Bases de Datos
2.2.1 <OR> Controles de acceso
2.2.1.1 <OR> Acceso directo al servidor
2.2.1.1.1 Ataque a la memoria
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.2.1.1.2 <OR> Acceso a archivos del sistema
2.2.1.1.2.1 Ataque a los archivos
2.2.2 <OR> Errores de configuracion
2.2.2.3 Archivos de configuracion
2.2.3 <OR> Sistemas externos
2.2.3.1 Programas cliente
2.2.4 <OR> Burlar la autenticacion
2.2.4.2 Crack Password
2.3 <OR> Sistema operativo
2.3.1 <OR> Ataques locales
2.3.1.1 <OR> Autenticacion de login
2.3.1.1.1 Adivinar el password
2.3.1.3 Comandos del sistema
2.3.1.4 Ataques al kernel
2.3.2 <OR> Ataques remotos
2.3.2.1 <OR> Vulnerabilidades de servicios
2.3.2.1.3 Buffer Overflows
2.3.2.2 <OR> Protocolos de red
2.3.2.2.1 Sistema de archivos
2.3.2.2.2 Denegacion de servicio
2.4 <OR> Servidor
2.4.1 Permisos incorrectos
2.4.4 Mala configuracion
2.4.5 <OR> Ataques de autenticacion
2.4.5.1 Autenticacion por IP
2.4.5.2 Basic Authentication
2.4.5.4 Obtener el archivo de passwords
2.4.6 <OR> Ataques de red
2.4.6.1 Rastrear texto sin encriptar
2.4.6.2 Denegacion de servicio
2.4.7 <OR> Manejo de sesion
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.4.7.1 Cookies falsas
3 <OR> Ataques por protocolos
3.1 Rastreo de datos
3.2 Robo de sesion
El lector puede constatar cuáles fueron los nodos que desaparecieron después de
implementar las medidas de seguridad comparando este esquema con el
mostrado en la sección 10.3.
Con el segundo agente de amenaza, los denominados vándalos, se eliminan 8
nodos basándose en el costo del ataque, 4 nodos más si se tiene en cuenta la
probabilidad de aprehensión y 43 nodos más por superar la habilidad técnica que
posee el atacante. Fueron eliminados en total 55 nodos del árbol original, es decir
24 nodos más que sin aplicar ningún tipo de mecanismo de seguridad.
El siguiente es el esquema del árbol después de la poda para el segundo agente
de amenaza :
Danos al portal
1 <OR> Explotacion del PC
1.2 <OR> Ataques al servidor
1.2.1 <OR> Ataques locales
1.2.1.1 <OR> Autenticacion de login
1.2.1.1.2 Denegacion de servicio
1.2.1.1.3 Ver passwords
1.2.1.1.4 Ingenieria social
1.2.1.2 <OR> Sistema de almacenamiento
1.2.1.2.1 Acceder a los datos
1.2.1.2.2 Destruir el almacenamiento
1.2.2 <OR> Ataques remotos
1.2.2.1 <OR> Servicios de red
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
1.2.2.1.1 Envio de datos invalidos
1.2.2.1.3 <OR> Sobrepasar la validacion
1.3 <OR> Ataques de navegador
1.3.1 <OR> Recolectar la informacion basura
1.3.1.1 Robo remoto de archivos del cache
1.3.2 <OR> Ejecutar comandos en el host
1.3.2.3 Cross-site scripting
1.3.6 <OR> Utilizando Java
1.3.6.3 Leer archivos del servidor
1.3.7 <OR> Utilizando Javascript
1.3.7.1 Leer archivos del usuario
1.3.7.2 Formas maliciosas
1.3.7.3 Informacion de URLs
2 <OR> Ataques de aplicacion
2.2 <OR> Bases de Datos
2.2.1 <OR> Controles de acceso
2.2.1.1 <OR> Acceso directo al servidor
2.2.1.1.2 <OR> Acceso a archivos del sistema
2.2.1.1.2.2 Copiar datos
2.2.3 <OR> Sistemas externos
2.2.3.1 Programas cliente
2.2.3.2 Backups
2.2.4 <OR> Burlar la autenticacion
2.2.4.1 Adivinar el password
2.3 <OR> Sistema operativo
2.3.1 <OR> Ataques locales
2.3.1.1 <OR> Autenticacion de login
2.3.1.1.1 Adivinar el password
2.3.1.1.2 Bloquear la cuenta
2.3.1.1.3 Ver los passwords
2.3.1.1.4 Ingenieria social
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
2.3.1.2 <OR> Sistema de almacenamiento
2.3.2 <OR> Ataques remotos
2.3.2.1 <OR> Vulnerabilidades de servicios
2.3.2.1.1 Datos invalidos
2.3.2.2 <OR> Protocolos de red
2.3.2.2.2 Denegacion de servicio
2.4 <OR> Servidor
2.4.5 <OR> Ataques de autenticacion
2.4.5.2 Basic Authentication
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
11. DEFINICIÓN XML DE LOS ÁRBOLES DE AMENAZA En los capítulos anteriores se presentó y utilizó la metodología de los árboles de
amenaza, se mostraron también dos representaciones, en primer lugar una
representación gráfica y luego una representación textual. Se hizo evidente que
una representación gráfica en árboles de amenaza con mucho nodos resulta poco
práctica y por el contrario la representación textual brinda la misma información de
una manera más sencilla.
En 1998 el World Wide Web Consortium (W3C) definió un subconjunto de SGML
(Structured Generalized Markup Language) y lo denominó XML (eXtensible
Markup Language).
Durante este capítulo se pretende definir los árboles de amenaza utilizando XML
con el fin de contar con una representación textual más amigable que la
presentada en la sección 10.3 y la cual brindará bondades adicionales a la
metodología.
11.1 INTRODUCCIÓN A XML XML fue definido por el W3C con el propósito de permitir que SGML fuera
distribuido, recibido y procesado a través de la red de la misma forma que se hace
utilizando HTML pero manteniendo la interoperabilidad entre los dos lenguajes,
SGML y HTML.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Antes de definir qué es XML es importante tener claro qué NO es XML. Aún hoy
en día, muchas personas definen XML como un lenguaje de programación y otras
lo definen como la próxima generación de HTML. Las dos definiciones anteriores
son totalmente erróneas y no dan una idea clara de lo que es y mucho menos de
para qué sirve XML.
XML es una forma clara para declarar, definir e intercambiar datos.
En la anterior definición de XML debe darse a la palabra datos su verdadero
significado, es decir, debe entenderse como dato toda aquella información provista
de significado, ya sea una fórmula matemática, un poema épico o la
representación mediante dígitos binarios de un dibujo.
Un documento XML contiene elementos individuales delimitados por etiquetas
(tags, de donde surge el término markup). Los tags contienen los nombres de los
elementos los cuales permiten diferenciar los elementos entre si.
Un tag de inicio de un elemento está compuesto de un signo menor que y un signo
mayor que < > mientras que un tag de finalización tiene además un slash entre
los símbolos anteriores </ >.
En este trabajo se supondrá que el lector ya tiene conocimiento de XML y por lo
tanto solo se hará énfasis en la utilización de XML para definir los árboles de
amenaza, tema central de este estudio.
11.2 VENTAJAS DE XML La principal ventaja que posee XML radica en la fácil interpretación que tiene el
lenguaje, siendo procesado por lenguajes de programación o por el ser humano
sin ninguna dificultad.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Por ser un lenguaje orientado a objetos, XML es capaz de modelar cualquier tipo
de dato existente en el mundo, convirtiéndose así en uno de los estándares con
mayor número de adeptos en el área informática.
Todo parece indicar que la interconexión de sistemas y el intercambio de datos se
dirigen hacia XML y todos los estándares que giran a su alrededor, como por
ejemplo, XSLT, X¨Path, XPointer, entre otros.
Debido a esta tendencia y pretendiendo ser el punto de partida para
investigaciones posteriores, se ha decido incluir una aproximación a una definición
en XML de los árboles de amenaza.
11.3 BNF DE LOS ÁRBOLES DE AMENAZA Antes de definir un documento XML de un árbol de amenaza vale la pena notar
que un árbol de amenaza es un lenguaje formal y como tal puede definirse su
BNF.
BNF es el acrónimo para Backus Naur Form. John Backus y Peter Naur fueron los
primeros en introducir una notación formal para describir la sintaxis de un
lenguaje. Los meta-símbolos definidos en BNF son:
::= significa es definido como
| significa o
< > son utilizados para definir categorías de nombres
[ ] Todo lo que exista dentro de estos símbolos son items opcionales del lenguaje.
{ } Encierra aquellos items repetitivos del lenguaje.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
A continuación se presenta la BNF básica para describir los árboles de amenaza
utilizados hasta este momento.
Amenaza ::= Identificador Nombre { subamenazas }
Identificador ::= Digito [{ .Digito }]
Nombre ::= Literal
Subamenazas ::= Subamenaza [ { operador Subamenaza }]
Subamenaza ::= Literal Costo
Operador ::= And | Or
Costo ::= Literal “=” Numero
Con la BNF anterior se hace un poco más clara la visualización de los árboles de
amenaza en XML y aunque no es una transformación directa, pasar de la BNF al
documento XML, es una labor relativamente sencilla, como se verá en la siguiente
sección.
11.4 REPRESENTACIÓN XML DE UN ÁRBOL DE AMENAZA Ya se ha dado una breve introducción a XML y se han descrito las ventajas que
tendría utilizar este método para describir un árbol de amenaza. También se
mostró que un árbol de amenaza es un lenguaje sintácticamente correcto, es hora
de entrelazar estos dos hechos y construir una representación XML para los
árboles de amenaza.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE arbol_de_amenaza SYSTEM "C:\tesis\xml\AmenazaDTD.dtd">
<arbol_de_amenaza>
<encabezado>
<nombre>........</nombre>
<descripción>...</descripción>
<versión>...</versión>
</encabezado>
<amenaza nombre="String">
<operador_lógico valor="String">
<subamenaza nombre="String" costo="1.0">
</subamenaza>
</operador_lógico>
</amenaza>
</arbol_de_amenaza>
Esta definición en XML fue validada utilizando XMLSPY. Este mismo software se
utilizó para generar la siguiente DTD:
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v5 rel. 2 (http://www.xmlspy.com) by Oscar Mendoza (Los
andes) -->
<!--DTD generated by XMLSPY v5 rel. 2 (http://www.xmlspy.com)-->
<!ELEMENT amenaza (operador_lógico)>
<!ATTLIST amenaza
nombre CDATA #REQUIRED
>
<!ELEMENT arbol_de_amenaza (encabezado, amenaza)>
<!ELEMENT descripción (#PCDATA)>
<!ELEMENT encabezado (nombre, descripción, versión)>
<!ELEMENT nombre (#PCDATA)>
<!ELEMENT operador_lógico (subamenaza)>
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
<!ATTLIST operador_lógico
valor CDATA #REQUIRED
>
<!ELEMENT subamenaza (#PCDATA)>
<!ATTLIST subamenaza
nombre CDATA #REQUIRED
costo CDATA #REQUIRED
>
<!ELEMENT versión (#PCDATA)>
Se ha añadido a la descripción en XML, un componente al árbol de amenaza
como mecanismo para poder documentarlo y hacer más fácil el trabajo del analista
de seguridad. El tag Arbol de amenaza, contiene tres tags adicionales que tienen
este propósito y han sido denominados Nombre, Descripción y Versión.
El primer Tag adicional es realmente un componente que ya existe en el árbol y
hace referencia al literal identificador de la raíz. Su finalidad es identificar cuál fue
el análisis de seguridad realizado con el árbol.
El segundo tag permite al analista realizar una explicación detallada del análisis
realizado en el árbol pudiendo especificar cuáles componentes se estudiaron y
cuál era el sistema en cuestión.
El tercer tag permite controlar las modificaciones realizadas al árbol durante el
análisis y poder retomar árboles después de haber sido modificados, garantizando
un proceso de desarrollo del análisis más claro y organizado.
La DTD asociada al documento XML fue generada utilizando la versión de
evaluación de XMLSpy 5.2 Enterprise Edition y por tal razón trabajos posteriores
deben encargarse de realizar los ajustes respectivos y construir así una DTD que
se ajuste perfectamente a los árboles de amenaza.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Se deja como ejercicio al lector migrar el árbol de amenaza estudiado a un
documento XML que cumpla con la DTD mostrada anteriormente.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
CONCLUSIONES
La metodología de Árboles de Amenaza brinda una manera formal para describir y
analizar la seguridad de diversos sistemas y subsistemas. Un árbol de amenaza
puede ser visto como un agregado de muchos árboles de amenaza, lo cual
permite al analista de la seguridad del sistema, delegar el análisis de seguridad a
expertos en cada uno de los subsistemas existentes. En el caso analizado en este
trabajo, existen diversos subsistemas que componen el portal web, imagínese por
ejemplo al servidor web, al servidor de bases de datos y a los protocolos de red
utilizados, como tres subsistemas diferentes que componen una parte del portal.
En este caso se utilizó el mismo árbol para el análisis de seguridad, sin embargo,
para cada uno de los subárboles se recurrió a sitios y personas especializadas,
formando finalmente un gran agregado de árboles, denominado Daños al portal.
La metodología utilizada provee una forma estructurada para apalancar
conocimiento acerca de la seguridad de un determinado sistema. La forma como
se identifican las amenazas y atacantes permite clasificar fácilmente los ataques
posibles y reutilizarlos en futuros análisis de seguridad. Uno de los mayores
inconvenientes al realizar análisis de seguridad en sistemas ya implementados
consiste en la poca documentación existente sobre análisis anteriores lo cual
desperdicia el tempo del analista y restringe en gran medida el alcance y
efectividad del análisis. Los Árboles de Amenaza permiten reutilizar conocimientos
previos que se realizaron sobre el sistema o reutilizar y adaptar análisis que hayan
sido realizados sobre sistemas similares. Cada uno de los subárboles,
pertenecientes a diversos subsistemas, pueden clasificarse como librerías de
referencia para futuros estudios de seguridad, dando así un punto de partida más
avanzado que el que existe actualmente cuando se comienza un análisis de
seguridad.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Uno de los puntos más importantes de la metodología de Árboles de Amenaza es
la facilidad que brinda para realizar análisis de los cambios que se presentan en la
seguridad de un sistema. Uno de los mecanismos utilizados para modelar los
posibles cambios, ya sea por la aparición de nuevas formas de llevar a cabo un
determinado ataque o por la implementación de medidas de seguridad, consiste
en realizar podas de los árboles de amenaza, basándose en los costos asociados
a las hojas de los árboles. Cada árbol obtenido en las diversas podas, puede ser
visto como el modelo de un escenario diferente para la seguridad del sistema,
además pueden ser utilizados para enfocar recursos a posibles soluciones y
contramedidas para los ataques, encontrando la mejor solución al problema
utilizando de manera óptima los recursos disponibles.
Otra de las ventajas que se mostró en este trabajo radica en la posibilidad que
brindan los Árboles de Amenaza para la automatización de parte del proceso del
análisis de seguridad. Como se describió en el último capítulo de este proyecto de
grado, la sintaxis de los Árboles de Amenaza puede ser descrita utilizando un
lenguaje formal e incluso se construyó su BNF. Al utilizar un lenguaje formal para
representar los Árboles de Amenaza y la información que contienen, es posible
utilizar un lenguaje de programación para realizar diversos análisis sobre el árbol,
tarea que es imposible de realizar con una metodología diferente, como por
ejemplo con las listas de amenazas. Además, los costos que se asocian a las
hojas del árbol, las funciones matemáticas utilizadas para calcular los costos de
los otros nodos, junto con la representación formal del árbol y la posibilidad de
utilizar técnicas de programación para su análisis, permiten desarrollar
aplicaciones de software especializadas para automatizar los cálculos
matemáticos y recursivos, ahorrando un tiempo valioso al analista del sistema y
permitiendo realizar un mayor número de análisis para diversos escenarios sobre
el mismo sistema.
Futuros estudios pueden basarse en el trabajo realizado en este proyecto de
grado, para profundizar en temas relacionados con la metodología. Una de las
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
opciones que se presentó como futuro tema de estudio es la posibilidad de migrar
la representación de los Árboles de Amenaza a un nuevo esquema, como lo es el
estándar XML, creado recientemente y que aún se encuentra en etapa de
desarrollo pero que se está convirtiendo en el estándar universal para el
intercambio de datos e interconexión de productos de software.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
GLOSARIO
Acceso: Establecer una conexión con un proceso, archivo o dato en tránsito. Leer
o escribir a un archivo.
Accidente: Este es el término que se va a utilizar para hacer referencia a los casos
en los que una vulnerabilidad es aprovechada en forma accidental o no
intencional. Cualquier circunstancia o evento que conlleve a un accidente será
denominado disparador.
Agente de amenaza: Personas o eventos que pueden llegar a causar daño al
sistema. Los empleados de una compañía pueden ser un agente de amenaza, ya
sea llevando a cabo un ataque deliberado o accidental. Otro agente de amenaza
muy común es la naturaleza. Un incendio o una inundación son amenazas para
los sistemas, por lo tanto la madre naturaleza es considerada como un agente de
amenaza.
Amenaza: Una amenaza es la forma en la que se puede aprovechar una
vulnerabilidad del sistema. Una vulnerabilidad puede ser utilizada en forma
deliberada o accidental lo cual conduce a clasificar las amenazas en estos dos
tipos.
Ataque: Consiste en llevar a cabo una amenaza deliberada contra un sistema.
Incidentes: Los incidentes son aquellas amenazas, accidentes o ataques que
llegan a cumplir con su objetivo, es decir, cuando una amenaza deja de ser
potencial para convertirse en real se denomina incidente.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
Indicador: Influencias que determinan cuándo puede ocurrir un incidente.
Impacto: Medida cuantitativa del daño causado al sistema por un incidente.
Riesgo: El riesgo es otra medida cuantitativa, derivada del impacto de un incidente
y de la probabilidad de que dicho incidente ocurra. Si denotamos el riesgo con la
letra R y a la probabilidad y al impacto con las letras P e I respectivamente, se
define el riesgo como : R = P x I
Vulnerabilidades: Una vulnerabilidad es la forma en la cual un sistema puede ser
perjudicado por un atacante, bien sea dañándolo o haciendo un uso indebido de
sus componentes.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
BIBLIOGRAFÍA
Amoroso, E., “Fundamentals of computer security technology”, Prentice Hall, New
Jersey.
Northcutt, S., Novak, J., “Detección de intrusos, Segunda Edición, Guía
avanzada”, Prentice may, Madrid, 2001.
Siyan, K., Hare, C., “Firewalls y la seguridad en internet”, Prentice Hall, Ciudad de
México, 1997.
Schneier, B., “Attack Trees, Secret and lies”, John Wiley and Sons”, New York,
2000.
Schneier, B., “Attack Trees: Modeling security threats”, Dr. Dobb´s Journal,
Diciembre, 1999.
Http://www.sans.org/topten.html “How to eliminate the ten most critical Internet
security Threats”, Sans Institute, 2001.
Aslam, T., Spafford, E., “Use of a taxonomy of security faults”, National Information
Systems Security Conference, 1996.
ÁRBOLES DE AMENAZA APLICADOS AL ANÁLISIS DE SEGURIDAD INFORMÁTICA ICS-2002-2-28
http://cve.mitre.org, “common vulnerabilities and exposures”, The MITRE
corporation, Bedford Massachusets, 2001.
“Understanding IT risk through threat tree modelling”, Amenaza technologies
limited, Canadá, 2001.
Russell, R., Teri, B., “Hack proofing your e-commerce site”, www.syngress.com,
2001.
Russell, R., Teri, B., “Hack proofing your internet network”, www.syngress.com,
2001.
Russell, R., Teri, B., “Hack proofing your web applications”, www.syngress.com,
2001.
Moore, A., Ellison, R., “Attack modeling for information security and survivability”,
Nota Técnica del Carnegie Mellon, 2001
Knight, E., “Computer Vulnerabilities”, Security Paradigm, 2000.
Topf, J., “The HTML Form Protocol Attack”, 2001.
Bishop, M., “Address Spoofing”, Department of computer science, Universidad de
California, 1996.
top related