Introducción
Este post tiene como objetivo el explicar en detalle una metodología
propia de análisis de riesgos. En el pasado he utilizado esta
metodología con éxito en la realización de diversos análisis de
riesgos de Seguridad de la Información. Aunque, obviamente, guarda
similitudes y ha nacido a la luz de otras metodologías ampliamente
utilizadas como Magerit o ISO31000, posee peculiaridades que posibilitan realizar análisis
de riesgos rigurosos pero muy sencillos de comprender y ejecutar.
Empezemos explicando el escenario (ficticio) que utilizaremos como
ejemplo para desarrollar el análisis de riesgos.
La empresa Mascultura es una libreria online. Se dedica
exclusivamente a la venta de libros (físicos, no en formato digital)
a través de su página web. No tiene stock de libros, si no que los
adquiere directamente a un mayorista. Dado que su negocio se basa en
la venta online, y por tanto en la información, ha decidido llevar a
cabo un análisis de riesgos para tener claro qué riesgos tiene y
qué puede hacer para disminuirlos.
Catálogo de
Amenazas
Lo primero que vamos a hacer será elaborar el catálogo de amenazas
a considerar. Para ello, lo que normalmente hago es partir de un
catálogo amplio, como por ejemplo el que tiene Magerit y eliminar
aquellos que no son relevantes en ese caso concreto. Además, suelo
agrupar algunas amenazas similares para simplificar el proceso de
analizar los riesgos. Hay que tener en cuenta que trabajar con un
catálogo muy amplio, aunque permitirá un análisis más riguroso,
también multiplicará los esfuerzos y el tiempo necesario para
llevar a cabo dicho análisis. Mi recomendación es tratar de no
sobrepasar las 10 amenazas en nuestro catálogo.
En el caso de Mascultura, para simplificar al máximo en análisis,
estas son las amenazas que vamos a considerar:
- Desastres Naturales
- Errores de los usuarios
- Errores de los programadores
- Errores en la administración de los equipos
- Malware
- Ataques intencionados
Aunque agrupemos amenazas para reducir su número, es importante que
todas las categórias de amenazas que realmente puedan afectar a la
información del negocio estén recogidas en nuestro catálogo para
que el análisis sea riguroso y no menospreciemos riesgos relevantes.
Asimismo, para elaborar el catálogo se debería considerar en
contexto en el que opera la organización, tanto interno como
externo. Por ejemplo, según qué tipo de organización estemos
analizando tendrá sentido o no hablar de fraude interno, robo de
activos o desastres industriales como amenazas a considerar.
Siguiendo con nuestro ejemplo, ahora que tenemos nuestro catálogo de
amenazas, vamos a darle un valor de probabilidad estándar para cada
una de ellas. Este será el valor de probabilidad que consideraremos
por defecto, aunque podrá verse modificado en cada activo en función
de sus vulnerabilidades. Para evaluar la probabilidad (y el resto de
valores evaluables) voy a utilizar una escala de 5 valores. En
función del grado de detalle que queramos para nuestro análisis se
podrían utilizar únicamente 3 valores, o irnos a un modelo de más
valores (7, 10 o incluso más):
5- Extremadamente probable
4- Muy probable
3- Probable
2- Poco probable
1- Probabilidad prácticamente despreciable
Así, nuestro catálogo de amenazas quedará de la siguiente manera
(entre paréntesis la dimensión o dimensiones a las que puede
afectar la amenaza):
- Desastres Naturales (Disp): 1
- Errores de los usuarios (Conf, Int, Disp): 4
- Errores de los programadores (Conf, Int, Disp): 3
- Errores en la administración de los equipos (Conf, Int, Disp): 3
- Malware (Conf, Int, Disp): 5
- Ataques intencionados (Conf, Int, Disp): 4
Mapa de
Procesos
Ahora que ya tenemos nuestro catálogo de amenazas definido, vamos a
realizar el BIA (Business Impact Analysis). Para ello, si no
disponemos ya de uno, necesitaremos el mapa de procesos de nuestra
empresa.
Para simplificar el ejemplo, vamos a considerar que únicamente
existen los siguientes procesos, aunque en cualquier empresa real
existirían muchos más procesos transversales o de soporte. Asimismo
vamos a identificar las aplicaciones que soportan cada proceso:
- Proceso de venta de libro a los clientes:
- Aplicación web de venta de libros.
- Mail corporativo para la atención al cliente/resolución de dudas.
- Aplicación para la facturación al cliente. (se cobra únicamente con tarjeta de crédito)
- Proceso de compra de libros al mayorista:
- Aplicación web de venta de libros (la aplicación envía un pedido directamente al mayorista utilizando el mail corporativo)
- Mail corporativo
- Proceso de entrega del libro al cliente
- Aplicación web de venta de libros (la aplicación envía un pedido a la empresa de mensajería indicando qué libro recoger en el mayorista y a qué dirección entregarlo).
- Mail corporativo
BIA
(Business Impact Analysis)
Procedamos ahora con nuestro Análisis de Impacto al Negocio. Para
ello vamos a valorar el impacto que tendría un compromiso en la
Confidencialidad, Integridad o Disponibilidad de la información
asociada a cada uno de los procesos de negocio que acabamos de
identificar. Esta valoración, además, considerará diferentes
ámbitos en los que puede existir un impacto.
Algunos ejemplos de ámbitos posibles son:
- Económico
- Legislativo/regulatorio
- Operativo
- Ambiental
- Daño a las personas
- Daño a la imagen de la empresa o pérdida de confianza de sus clientes
- Etc..
En nuestro caso, como algunos ámbitos no son de aplicación (daño
medioambienta, o daño a las personas), vamos a valorar únicamente
los impactos en los siguientes ámbitos:
|
Económico
|
Legislativo/ regulatorio
|
Muy Bajo
|
Menos de 500€
|
-
|
Bajo
|
Entre 500€ y 2500€
|
-
|
Medio
|
Entre 2500 y 7500€
|
Apercibimiento
|
Alto
|
Entre 7500 y 20000€
|
Multa o sanción
|
Muy Alto
|
Más de 20000€
|
Revocación de la licencia de comercialización.
|
La escala de valores que utilicemos deberá estar alineada con las cifras de negocio que maneje la organización que estamos analizando. Las cuantías establecidas en el ejemplo son considerando que se trata de una pequeña empresa para la que sufrir una pérdida de 20000€ sería una pérdida de gran impacto, mientras que para otras organizaciones, una pérdida de esta misma cuantía estará catalogada como un impacto muy bajo.
Analicemos por tanto el impacto para cada uno de los procesos de
negocio:
Si analizamos la confidencialidad del proceso de venta a los
clientes, podemos ver que un compromiso en la confidencialidad de la
información del proceso tendrá un impacto económico muy alto,
puesto que la aplicación trata con los datos personales de los
clientes y las multas de LOPD en su rango más bajo pueden alcanzar
los 40.000€. En lo que se refiere a impacto legislativo, estaríamos
en un nivel Alto, puesto que se pueden dar multas o sanciones también
de tipo LOPD.
Realizaremos un análisis similar para la Integridad y la
Disponibilidad (en este caso valoraremos el impacto de que el proceso
no funcione durante 1 hora, 1 día o 1 semana):
Proceso de venta a los clientes
|
Económico
|
Legislativo
|
|
Confidencialidad
|
Muy Alto (5)
|
Alto (4)
|
|
Integridad
|
Muy Alto (5)
|
Alto (4)
|
|
Disponibilidad
|
1 hora
|
Muy Bajo (1)
|
-
|
1 día
|
Bajo (2)
|
-
|
|
1 semana
|
Medio (3)
|
-
|
Finalmente, para cada una de las dimensiones nos quedamos con el
impacto más alto de entre las categorías que estamos valorando.
Nuestro BIA quedará de la siguiente guisa:
|
Confidencialidad
|
Integridad
|
Disponibilidad
|
||
|
|
|
1 hora
|
1 día
|
1 semana
|
Venta
|
5
|
5
|
1
|
2
|
3
|
Compra
|
1
|
5
|
0
|
0
|
1
|
Entrega
|
5
|
5
|
0
|
0
|
2
|
Nivel de
Riesgo Tolerable
Una vez finalizado el BIA ya estamos en disposición de establecer
cual es el nivel de riesgo tolerable para nuestra organización. Es
decir, dónde vamos a establecer la linea que separará los riesgos
aceptables de aquellos que requieran acciones urgentes para su
resolución. Establece este umbral teniendo en cuenta que no desea
aceptar riesgos que superen los 7.500€ o puedan suponerle multas o
sanciones ni, por supuesto, la revocación de su licencia para vender
libros online, es decir, que no se tolerarán riesgos con un valor de
4 o 5.
Inventario
de activos y Mapa de Dependencias
Ahora que ya tenemos nuestro BIA finalizado y el umbral de riesgos
definido, necesitamos disponer del inventario de activos y el mapa de
dependencias antes de iniciar propiamente el análisis de riesgos.
Veamos nuestro inventario de activos (simplicado, ya que no vamos a
considerar ubicaciones o personal):
Aplicaciones:
- Aplicación Venta de libros (APP_Venta)
- Mail corporativo (App_Mail)
- Aplicación de facturación (App_facturación)
Bases de datos:
- Base de datos de clientes (BD_clientes) (SQL Server)
- Base de datos con maestro de libros (BD_Maestro)(SQL Server)
- Base de datos histórico de operaciones (BD_Operaciones)(SQL Server)
Sistemas:
- Sistema A (Linux + Apache)
- Sistema B (Windows XP)
- Sistema C (Windows 2008 Server)
Las aplicaciones se ejecutan en el Sistema A, el Sistema B aloja el
correo electrónico y el Sistema C tiene el SQL Server con las bases
de datos identificadas.
Veamos ahora nuestro mapa de dependencias:
Proceso de VENTA -> App_venta -> Sistema A
-> BD_clientes -> Sistema C
-> BD_Maestro -> Sistema C
-> App_Mail -> Sistema B
-> App_facturación -> Sistema A
-> BD_clientes -> Sistema C
Proceso de COMPRA -> App_venta -> Sistema A
-> BD_Maestro -> Sistema C
-> App_Mail -> Sistema B
Proceso de ENTREGA -> App_venta -> Sistema A
-> BD_clientes -> Sistema C
-> BD_Operaciones -> Sistema C
-> App_Mail -> Sistema B
-> App_facturación -> Sistema A
-> BD_clientes -> Sistema C
Ahora vamos a hacer que los activos hereden la clasificación de
impacto según este mapa de dependencias. El resultado de impactos
que obtendremos será el siguiente:
|
Confidencialidad
|
Integridad
|
Disponibilidad (1 día)
|
||
|
|
|
1 hora
|
1 día
|
1 semana
|
Venta
|
5
|
5
|
1
|
2
|
3
|
Compra
|
1
|
5
|
0
|
0
|
1
|
Entrega
|
5
|
5
|
0
|
0
|
2
|
APP_Venta
|
5
|
5
|
1
|
2
|
3
|
APP_Mail
|
5
|
5
|
1
|
2
|
3
|
APP_Facturación
|
5
|
5
|
1
|
2
|
3
|
BD_Clientes
|
5
|
5
|
1
|
2
|
3
|
BD_Maestro
|
5
|
5
|
1
|
2
|
3
|
BD_Operaciones
|
5
|
5
|
0
|
0
|
2
|
Sistema A
|
5
|
5
|
1
|
2
|
3
|
Sistema B
|
5
|
5
|
1
|
2
|
3
|
Sistema C
|
5
|
5
|
1
|
2
|
3
|
El siguiente paso a realizar es coger cada uno de los activos de
nuestro inventario (o tipología de activo si se quiere simplificar)
y analizar si son o no vulnerables a cada una de las amenazas
identificadas en nuestro catálogo:
|
Aplicaciones
|
Bases de Datos
|
Sistemas
|
Desastres Naturales
|
No Vulnerable
|
No Vulnerable
|
Vulnerable
|
Errores usuarios
|
Vulnerable
|
No Vulnerable
|
No Vulnerable
|
Errores de los programadores
|
Vulnerable
|
No Vulnerable
|
No Vulnerable
|
Errores en la administración
|
No Vulnerable
|
Vulnerable
|
Vulnerable
|
Malware
|
No Vulnerable
|
No Vulnerable
|
Vulnerable
|
Ataques intencionados
|
Vulnerable
|
Vulnerable
|
Vulnerable
|
Vamos ahora a calcular el riesgo intrínseco que soportan los activos
de nuestro inventario, es decir, el riesgo sin tener en cuenta los
controles de seguridad que existen para disminuir el impacto o la
probabilidad de los riesgos. Para no alargar en exceso este post,
realizaremos el ejemplo sobre un único activo; el sistema A.
Para calcular el Riesgo usaremos la siguiente matriz en función del
Impacto y la probabilidad. Esta matriz es una propuesta totalmente
adaptable en función del tipo de negocio que se esté analizando,
puesto que en determinados sectores, puede tener sentido dar un mayor
peso al impacto que a la probabilidad con objeto de considerar los
posibles 'cisnes negros'.
|
|
Impacto
|
||||
|
|
5
|
4
|
3
|
2
|
1
|
Probabilidad
|
5
|
5
|
5
|
4
|
3
|
2
|
4
|
5
|
4
|
4
|
3
|
2
|
|
3
|
4
|
4
|
3
|
3
|
2
|
|
2
|
3
|
3
|
3
|
2
|
1
|
|
1
|
2
|
2
|
2
|
1
|
1
|
Veamos pues el riesgo inherente de nuestro 'Sistema A':
Sistema A – Riesgo inherente
|
Impacto
|
Probabilidad
|
Riesgo
|
Desastres Naturales
|
Disponibilidad: 2
|
1
|
1
|
Errores usuarios
|
No Vulnerable
|
||
Errores de los programadores
|
No Vulnerable
|
||
Errores en la administración
|
Confidencialidad: 5
|
3
|
4
|
Integridad: 5
|
|||
Disponibilidad: 2
|
|||
Malware
|
Confidencialidad: 5
|
5
|
5
|
Integridad: 5
|
|||
Disponibilidad: 2
|
|||
Ataques intencionados
|
Confidencialidad: 5
|
4
|
5
|
Integridad: 5
|
|||
Disponibilidad: 2
|
Por lo tanto, vemos que el riesgo inherente de nuestro Sistema A es
muy Alto (5). Veamos ahora qué controles tiene implementados el
sistema para calcular cual es su riesgo efectivo:
- Antivirus actualizado y con actualización diaria de firmas. (reduce considerablemente la probabilidad de la amenaza de malware).
- Alojado en red interna separado de la DMZ y de Internet mediante firewalls bien gestionados. (reduce la probabilidad de ataques intencionados).
- Se le realiza un análisis de vulnerabilidades anual, y aunque en el último mostraba vulnerabilidades, las más críticas ya están corregidas. (dado que es anual, se decide no bajar aún más la probabilidad de malware o ataques intencionados. Si el proceso fuera al menos trimestral con corrección de las vulnerabilidades en corto espacio de tiempo, se podría reducir aún más la probabilidad de estas amenazas).
- La organización dispone de un procedimiento de gestión de cambios sólido que reduce la probabilidad de errores de administración y también su impacto, puesto que siempre se cuenta con un procedimiento de 'marcha atrás'.
Por lo tanto, el riesgo efectivo de nuestro sistema será el
siguiente:
Sistema A – Riesgo efectivo
|
Impacto
|
Probabilidad
|
Riesgo inherente
|
Riesgo Efectivo
|
Desastres Naturales
|
Disponibilidad: 2
|
1
|
1
|
1
|
Errores en la administración
|
Confidencialidad: 4
|
2
|
4
|
3
|
Integridad: 4
|
||||
Disponibilidad: 2
|
||||
Malware
|
Confidencialidad: 5
|
3
|
5
|
4
|
Integridad: 5
|
||||
Disponibilidad: 2
|
||||
Ataques intencionados
|
Confidencialidad: 5
|
3
|
5
|
4
|
Plan de
Tratamiento de Riesgos
Ahora que ya tenemos nuestro mapa de riesgos (inherentes y efectivos)
para todos los activos o grupos de activos de nuestra organización,
podemos proceder a elaborar el plan de tratamiento de riesgos. A tal
fin, determinaremos acciones a realizar para aquellos riesgos que
sobrepasen el umbral que hemos definido como tolerable en nuestra
organización (4 en el caso de ejemplo).
Para cada uno de estos riesgos tendremos las siguientes alternativas:
- Evitarlo: Dejar de efectuar la actividad que origina el riesgo. En el caso de ejemplo, apagar el Sistema A, desconectarlo de la red y darlo de baja de nuestra organización.
- Asumirlo: Asumir que no se puede hacer nada para paliar este riesgo, y que por lo tanto la Organización prefiere mantenerlo. Esta estrategia puede ser válida cuando el activo está a punto de ser dado de baja o cuando las alternativas existentes para rebajar su nivel de riesgo son excesivamente costosas y podrían superar incluso el coste potencial de la materialización del riesgo.
- Transferirlo: En ocasiones, existen riesgos que pueden transferirse a terceras empresas mediante la contratación de un seguro o la externalización de determinados servicios.
- Mitigarlo: En la mayoría de los casos esta será la estrategia óptima. Consiste en establecer o mejorar los controles de seguridad del activo para reducir sus riesgos hasta niveles aceptables, bien por reducir la probabilidad de las amenazas o bien por reducir el impacto que estas tendrían en caso de materializarse.
En nuestro ejemplo, los riesgos a tratar son dos:
Sistema A
|
Impacto
|
Probabilidad
|
Riesgo inherente
|
Riesgo Efectivo
|
Malware
|
Confidencialidad: 5
|
3
|
5
|
4
|
Integridad: 5
|
||||
Disponibilidad: 2
|
||||
Ataques intencionados
|
Confidencialidad: 5
|
3
|
5
|
4
|
Y el plan de tratamiento asociado en este caso, podría ser el
siguiente:
- Aumentar la frecuencia de escaneos de vulnerabilidades en el equipo para realizarlos mensualmente.
- Adquirir el compromiso de resolver todas las vulnerabilidades que se detecten en el sistema en un plazo máximo de 2 meses.
- Hardenizar el servidor para eliminar todos aquellos servicios que no sean necesarios.
Lo ideal, a la hora de establecer el plan de tratamiento de riesgos
será priorizar las acciones en función del riesgo que ayuden a
mitigar y, siempre que sea posible, agruparlas en proyectos
transversales que permitan mitigar los riesgos de toda una tipología
de activos en lugar de abordarlos de manera individual en cada caso.
Tras analizar los efectos que estas medidas tendrán sobre los
riesgos, establecemos cual será el riesgo residual, es decir, el
riesgo efectivo que permanecerá una vez implantadas las medidas
definidas:
Sistema A – Riesgo Redidual
|
Impacto
|
Probabilidad
|
Riesgo Efectivo
|
Riesgo Residual
|
Desastres Naturales
|
Disponibilidad: 2
|
1
|
1
|
1
|
Errores en la administración
|
Confidencialidad: 4
|
2
|
3
|
3
|
Integridad: 4
|
||||
Disponibilidad: 2
|
||||
Malware
|
Confidencialidad: 5
|
2
|
4
|
3
|
Integridad: 5
|
||||
Disponibilidad: 2
|
||||
Ataques intencionados
|
Confidencialidad: 5
|
2
|
4
|
3
|
Espero que hayáis encontrado útil este post. Como siempre, si
encontráis cualquier error en el mismo, queréis proponer cualquier
mejora al respecto del tema tratado o simplemente queréis dejar un
comentario opinando sobre el mismo, no dudéis en hacerlo!
Twitter: @omarbenjumea
http://about.me/omarbenjumea
No hay comentarios:
Publicar un comentario