Árbol de ataque
Los árboles de ataque son diagramas conceptuales que muestran cómo se podría atacar un activo u objetivo. Los árboles de ataque se han utilizado en diversas aplicaciones. En el campo de las tecnologías de la información, se han utilizado para describir amenazas a sistemas informáticos y posibles ataques para materializar esas amenazas. Sin embargo, su uso no se limita al análisis de sistemas de información convencionales. Se utilizan ampliamente en los campos de defensa y aeroespacial para el análisis de amenazas contra sistemas electrónicos resistentes a manipulaciones (por ejemplo, aviónica en aviones militares). Los árboles de ataque se aplican cada vez más a los sistemas de control informático (especialmente los relacionados con la red eléctrica). Los árboles de ataque también se han utilizado para comprender las amenazas a los sistemas físicos.
Algunas de las primeras descripciones de árboles de ataque se encuentran en artículos y artículos de Bruce Schneier, cuando era CTO de Counterpane Internet Security. Schneier estuvo claramente involucrado en el desarrollo de conceptos de árboles de ataque y jugó un papel decisivo en su publicidad. Sin embargo, las atribuciones en algunos de los primeros artículos disponibles públicamente sobre los árboles de ataque también sugieren la participación de la Agencia de Seguridad Nacional en el desarrollo inicial.
Los árboles de ataques son muy similares, si no idénticos, a los árboles de amenazas. Los árboles de amenazas fueron desarrollados por Jonathan Weiss de Bell Laboratories para cumplir con la orientación de MIL STD 1785 para el trabajo de AT&T en comando y control para aplicaciones federales, y se describieron por primera vez en su artículo de 1982. Este trabajo se analizó más tarde. en 1994 por Edward Amoroso.
Básica

Los árboles de ataque son diagramas de varios niveles que constan de una raíz, hojas y elementos secundarios. De abajo hacia arriba, los nodos secundarios son condiciones que deben cumplirse para que el nodo principal directo sea verdadero; cuando la raíz está satisfecha, el ataque se completa. Cada nodo puede ser satisfecho sólo por sus nodos secundarios directos.
Un nodo puede ser el hijo de otro nodo; en tal caso, resulta lógico que se deban tomar múltiples pasos para llevar a cabo un ataque. Por ejemplo, considere las computadoras del aula que están fijadas a los escritorios. Para robar uno, se debe cortar el cable de seguridad o desbloquear la cerradura. La cerradura se puede desbloquear forzando u obteniendo la llave. La clave se puede obtener amenazando a quien la posee, sobornándola o sacándola de donde está guardada (por ejemplo, debajo de una alfombrilla para el ratón). Por lo tanto, se puede dibujar un árbol de ataque de cuatro niveles, de los cuales una ruta es (Sobornar a Keyholder, Obtener clave, Desbloquear cerradura, Robar ordenador).
Un ataque descrito en un nodo puede requerir uno o más de muchos ataques descritos en nodos secundarios para ser satisfecho. Nuestra condición anterior muestra sólo condiciones O; sin embargo, se puede crear una condición Y, por ejemplo, asumiendo una alarma electrónica que debe desactivarse si y sólo si se cortará el cable. En lugar de hacer de esta tarea un nodo secundario de cortar la cerradura, ambas tareas pueden simplemente llegar a una unión sumadora. De esta manera se crea la ruta ((Desactivar alarma, Cortar cable), Robar computadora).
Los árboles de ataque están relacionados con el formalismo del árbol de fallas establecido. La metodología del árbol de fallas emplea expresiones booleanas para controlar las condiciones cuando los nodos principales son satisfechos por los nodos hoja. Al incluir probabilidades a priori con cada nodo, es posible calcular probabilidades con nodos más altos utilizando la regla de Bayes. Sin embargo, en realidad no se dispone de estimaciones de probabilidad precisas o su obtención es demasiado costosa. Con respecto a la seguridad informática con participantes activos (es decir, atacantes), la distribución de probabilidad de los eventos probablemente no sea independiente ni esté uniformemente distribuida, por lo que el análisis bayesiano ingenuo no es adecuado.
Dado que las técnicas analíticas bayesianas utilizadas en el análisis del árbol de fallas no pueden aplicarse legítimamente a los árboles de ataque, los analistas utilizan otras técnicas para determinar qué ataques preferirá un atacante en particular. Estos pueden implicar comparar las capacidades del atacante (tiempo, dinero, habilidad, equipo) con los requisitos de recursos del ataque específico. Los ataques que están cerca o más allá de la capacidad de ejecución del atacante son menos preferidos que los ataques que se perciben como baratos y fáciles. El grado en que un ataque satisface los objetivos del adversario también afecta las elecciones del atacante. Los ataques que están dentro de las capacidades del adversario y que satisfacen sus objetivos son más probables que aquellos que no lo hacen.
Examen
Los árboles de ataques pueden volverse grandes y complejos, especialmente cuando se trata de ataques específicos. Un árbol de ataque completo puede contener cientos o miles de rutas diferentes, todas ellas conducentes a la finalización del ataque. Aun así, estos árboles son muy útiles para determinar qué amenazas existen y cómo afrontarlas.
Los árboles de ataque pueden prestarse para definir una estrategia de aseguramiento de la información. Es importante considerar, sin embargo, que implementar una política para ejecutar esta estrategia cambia el árbol de ataque. Por ejemplo, se puede proteger contra los virus informáticos negando el acceso del administrador del sistema para modificar directamente los programas y carpetas de programas existentes, requiriendo en su lugar el uso de un administrador de paquetes. Esto añade al árbol de ataques la posibilidad de fallos de diseño o exploits en el administrador de paquetes.
Se podría observar que la forma más eficaz de mitigar una amenaza en el árbol de ataques es mitigarla lo más cerca posible de la raíz. Aunque esto es teóricamente válido, normalmente no es posible simplemente mitigar una amenaza sin otras implicaciones para el funcionamiento continuo del sistema. Por ejemplo, la amenaza de que los virus infecten un sistema Windows se puede reducir en gran medida utilizando una cuenta estándar (que no sea de administrador) y un sistema de archivos NTFS en lugar de FAT, de modo que los usuarios normales no puedan modificar el sistema operativo. Implementar esto anula cualquier forma, prevista o imprevista, de que un usuario normal pueda llegar a infectar el sistema operativo con un virus; sin embargo, también requiere que los usuarios cambien a una cuenta administrativa para realizar tareas administrativas, lo que crea un conjunto diferente de amenazas en el árbol y una mayor sobrecarga operativa. Además, los usuarios aún pueden infectar archivos sobre los que tienen permisos de escritura, que pueden incluir archivos y documentos.
Desde el año 2000 se han construido sistemas que utilizan agentes cooperativos que examinan e identifican dinámicamente cadenas de vulnerabilidad, creando árboles de ataque.
Ataque árbol modelado software
Hay disponibles varios paquetes comerciales y productos de código abierto.
Fuente abierta
- ADTool de la Universidad de Luxemburgo
- AT
- Decidido
- Ent
- SeaMonster
Comercial
- AttackTree+ de Isograph
- SecurITree de Amenaza Technologies
- RiskTree from 2T Security
Véase también
- Inseguridad informática
- Seguridad informática
- Virus informático
- Análisis de árboles por defecto
- Riesgo de TI
- Amenaza (computador)
- Vulnerabilidad (computación)
Referencias
- ^ R. Shirey (agosto de 2007). Glosario de seguridad de Internet, Versión 2. Grupo de Trabajo sobre redes. doi:10.17487/RFC4949RFC 4949. Información.
- ^ Departamento de Defensa de EE.UU., "Guía de Adquisición de Defensa", Sección 8.5.3
- ^ Chee-Wooi Diez, Chen-Ching Liu, Manimaran Govindarasu, Vulnerability Assessment of Cybersecurity for SCADA Systems Using Attack Trees, "Copia fija" (PDF). Archivado desde el original (PDF) en 2010-06-30. Retrieved 2012-04.
{{cite web}}: CS1 maint: copia archivada como título (link) - ^ Schneier, Bruce (diciembre de 1999). "Attack Trees". Dr. Dobb's Journal, v.24, n.12. Archivado desde el original el 6 de agosto de 2007. Retrieved 2007-08-16.
- ^ Chris Salter, O. Sami Saydjari, Bruce Schneier, Jim Wallner, Hacia una ingeniería de sistemas seguros Metodología, "Copia fija" (PDF). Archivado (PDF) original el 2011-06-23. Retrieved 2012-04.
{{cite web}}: CS1 maint: copia archivada como título (link) - ^ "MIL-STD-1785 SYSTEM SEGURIDAD ENGINEERING PROGRAMA". everyspec.com. Retrieved 2023-09-05
- ^ "Un proceso de ingeniería de seguridad del sistema, 14a Conferencia Nacional de Seguridad Informática, Washington DC" (PDF). Retrieved 2023-03-18.
- ^ Amoroso, Edward (1994). Fundamentos de seguridad informática. Upper Saddle River: Prentice Hall. ISBN 0-13-108929-3.
- ^ "Manual de árbol falso con aplicaciones aeroespaciales" (PDF). Archivado desde el original (PDF) on 2016-12-28. Retrieved 2019-02-26.
- ^ Donald L Buckshaw, Gregory S Parnell, Willard L Ulkenholz, Donald L Parks, James M Wallner, O. Sami Saydjari, Mission Oriented Design Analysis of Critical Information Systems, Military Operations Research V10, N2, 2005, [1]
- ^ Terrance R Ingoldsby, Amenaza Technologies Limited, Attack Tree-based Threat Risk Analysis, A vendedor white paper, "Copia fija" (PDF). Archivado (PDF) del original en 2016-03-04. Retrieved 2012-04-09.
{{cite web}}: CS1 maint: copia archivada como título (link) - ^ "NOOSE - Reded Object-Oriented Security Examiner, 14th Systems Administration Conference (LISA 2000), New Orleans". Retrieved 2010-04-21.