Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços...

14
Um Modelo de Falhas em Cascata para Sistemas Globais de Gerenciamento de Identidades Ricardo Macedo 1 , Aldri Santos 1 , André Luiz Pires Guedes 1 , Michele Nogueira 1 , Yacine Ghamri-Doudane 2 1 Universidade Federal do Paraná – Curitiba – PR – Brasil 2 University of La Rochelle – La Rochelle CEDEX 1 – France {rtmacedo,aldri,andre,michele}@inf.ufpr.br, [email protected] Abstract. The increasing number of portable devices requires a global iden- tity management system. However, these systems are cascading failures prone, that is, failures arosed by the coordinated exploitation of common vulnerabi- lities among identities providers to manipulate the authentication operations. Although there are theoretical models to analyze cascading failures resulted from nodes overload, cascading failures effects from the coordinated exploi- tation of vulnerabilities in authentication operations remains no investigated. This paper presents an analytical cascading failure model for identity mana- gement systems, enabling the investigation these failures. Results from a case study indicate that failure dissemination in biggest sets of identities providers can compromise a identity management system in about 100%. Resumo. A explosão do número de dispositivos portáteis conectados tem de- mandado sistemas de gerenciamento de identidades globais. Entretanto, esses sistemas são propensos a falhas em cascata, as quais são oriundas da explora- ção coordenada de vulnerabilidades em comum entre provedores de identida- des para manipular as operações de autenticação. Apesar de existirem modelos teóricos para analisar falhas em cascata resultantes da sobrecarga da capaci- dade de nós, o efeito de falhas em cascata decorrente da exploração de vulne- rabilidades nas operações de autenticações em sistemas de gerenciamento de identidades permanece em sua maioria desconhecidos. Este trabalho apresenta um modelo analítico de falhas em cascata para sistemas de gerenciamento de identidades, possibilitando a investigação dessas falhas. Resultados de um es- tudo de caso indicam que a disseminação de falhas nos conjuntos maiores de provedores de identidades pode comprometer até 100% do sistema. 1. Introdução Atualmente, a explosão do número de dispositivos portáteis conectados tem deman- dado um Sistema de Gerenciamento de Identidades (SGI) global. Recentemente, a Cisco Systems, empresa líder no oferecimento de soluções para redes e comunica- ções, previu que no final de 2014 o número de dispositivos portáteis conectados ex- cederá o número de pessoas no planeta e que em 2018 existirão em média 1.4 dispo- sitivos móveis por pessoa [Cisco 2014]. Uma das consequências desta explosão será Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014 105

Transcript of Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços...

Page 1: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

Um Modelo de Falhas em Cascata para Sistemas Globais deGerenciamento de Identidades

Ricardo Macedo1, Aldri Santos1, André Luiz Pires Guedes1,Michele Nogueira1, Yacine Ghamri-Doudane2

1Universidade Federal do Paraná – Curitiba – PR – Brasil

2University of La Rochelle – La Rochelle CEDEX 1 – France

{rtmacedo,aldri,andre,michele}@inf.ufpr.br, [email protected]

Abstract. The increasing number of portable devices requires a global iden-tity management system. However, these systems are cascading failures prone,that is, failures arosed by the coordinated exploitation of common vulnerabi-lities among identities providers to manipulate the authentication operations.Although there are theoretical models to analyze cascading failures resultedfrom nodes overload, cascading failures effects from the coordinated exploi-tation of vulnerabilities in authentication operations remains no investigated.This paper presents an analytical cascading failure model for identity mana-gement systems, enabling the investigation these failures. Results from a casestudy indicate that failure dissemination in biggest sets of identities providerscan compromise a identity management system in about 100%.

Resumo. A explosão do número de dispositivos portáteis conectados tem de-mandado sistemas de gerenciamento de identidades globais. Entretanto, essessistemas são propensos a falhas em cascata, as quais são oriundas da explora-ção coordenada de vulnerabilidades em comum entre provedores de identida-des para manipular as operações de autenticação. Apesar de existirem modelosteóricos para analisar falhas em cascata resultantes da sobrecarga da capaci-dade de nós, o efeito de falhas em cascata decorrente da exploração de vulne-rabilidades nas operações de autenticações em sistemas de gerenciamento deidentidades permanece em sua maioria desconhecidos. Este trabalho apresentaum modelo analítico de falhas em cascata para sistemas de gerenciamento deidentidades, possibilitando a investigação dessas falhas. Resultados de um es-tudo de caso indicam que a disseminação de falhas nos conjuntos maiores deprovedores de identidades pode comprometer até 100% do sistema.

1. Introdução

Atualmente, a explosão do número de dispositivos portáteis conectados tem deman-dado um Sistema de Gerenciamento de Identidades (SGI) global. Recentemente, aCisco Systems, empresa líder no oferecimento de soluções para redes e comunica-ções, previu que no final de 2014 o número de dispositivos portáteis conectados ex-cederá o número de pessoas no planeta e que em 2018 existirão em média 1.4 dispo-sitivos móveis por pessoa [Cisco 2014]. Uma das consequências desta explosão será

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

105

Page 2: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

que cada dispositivo demandará pelos menos uma identidade (ID) para prestar e con-sumir serviços disponibilizados em sistemas distribuídos, tais como nuvens, arquitetu-ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas[Lampropoulos and Denazis 2011, Lynch 2011, Angulo and Wästlund 2013]. Neste ce-nário, será necessário um SGI capaz de garantir as operações de autenticação, gestão deautorizações e controle de acesso em escala global.

No entanto, em um SGI há a possibilidade de uma falha em cascata. Uma falhaem cascata consiste em um tipo de falha capaz de ser disseminada através da interdepen-dência de elementos de um sistema [Crucitti et al. 2004]. Nos SGIs uma falha em cascatasurge em decorrência de um ataque coordenado visando explorar as vulnerabilidades emcomum entre provedores de identidades para manipular grande parte das respostas das au-tenticações com intuito de personificar IDs [Camp 2010, Wang et al. 2012, Bertino 2012].A ocorrência desse tipo de falha gera um estado de caos no SGI, pois a garantia das ope-rações de autenticação, gestão de autorizações e controle de acesso é comprometida nosprovedores de serviço. Atualmente, um método eficaz para eliminar os efeitos de umafalha em cascata é desconhecido.

Na literatura, a caracterização de falhas surge como o passo inicial para criaçãode medidas de contenção e mitigação de falhas em cascata [Kinney et al. 2005]. Nasredes de distribuição de energia elétrica e na Internet a ocorrência de colapsos de fun-cionamento impulsionou a consolidação de modelos teóricos que permitem a análise doefeito das falhas em cascata nesses sistemas [Motter and Lai 2002, Crucitti et al. 2004,Havlin et al. 2010]. Todavia, esses modelos assumem como premissa que uma falha emcascata ocorre em virtude da sobrecarga da capacidade dos nós. Em um SGI essa pre-missa não é válida, pois uma falha em cascata dá-se em função da exploração coordenadade vulnerabilidades em comum entre provedores de identidades para manipular as res-postas de autenticações e não em decorrência da sobrecarga de nós, impedindo a merautilização dos modelos existentes. Consequentemente, os efeitos de uma falha em cascatadessa natureza permanecem desconhecidos nos SGIs, reforçando a necessidade de meiospara analisá-los.

Este trabalho apresenta um modelo analítico de falhas em cascata em SGIs, pos-sibilitando a investigação dessas falhas nesse tipo de sistema. A abstração do SGI é rea-lizada através de um grafo. Os vértices desse grafo são particionados em três conjuntos,representando as entidades do sistema, como as IDs, os provedores de identidades e osprovedores de serviços. As arestas representam a interdependência entre os elementos doSGI, descrevendo os diferentes tipos de relações entre estes tipos de entidades. A disse-minação da falha em cascata oriunda da exploração de vulnerabilidades no processo deautenticação entre provedores de identidades é representada através de um caminho entreesses provedores. A falha em cascata é demonstrada através de uma prova por indução nonúmero de provedores de identidades presentes neste caminho.

Um estudo de caso do modelo envolvendo dados reais do sistema Shibboleth daUniversidade de Buffalo mostra que as falhas em cascata podem resultar em danos catas-tróficos. A presença de vulnerabilidades em comum entre os provedores de identidadesé caracterizada pelo modelo proposto através da variação de probabilidades da distribui-ção binomial, resultando em diferentes conjuntos de vértices conectados entre si. Umaanálise do efeito da falha em cascata no maior conjunto de provedores de identidades em

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

106

Page 3: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

detrimento de conjuntos de tamanho aleatório é realizada através da métrica Impacto daFalha em Cascata (IFC). O IFC é obtido através da divisão do número de provedores deidentidades falhos pelo número total de provedores de identidades. Os resultados indi-cam que o IFC nos conjuntos maiores atinge 100% dos provedores de identidades comprobabilidade de presença de vulnerabilidades de 0.45 e que em conjuntos de tamanhoaleatório o IFC chega a atingir 70% dos provedores de identidades. Esse resultado mostraque mesmo com baixa probabilidade de vulnerabilidade entre provedores de identidadesos efeitos de uma falha em cascata em um SGI global são catastróficos.

O restante do trabalho está organizado como segue. Na Seção 2 são apresenta-dos os trabalhos relacionados. A Seção 3 detalha o modelo de falhas em cascata paraSGIs. A Seção 4 explica um estudo de caso envolvendo dados reais de gerenciamento deidentidades coletadas do sistema Shibboleth. Na Seção 5 são apresentadas as conclusões.

2. Trabalhos RelacionadosNa literatura, existem diversas iniciativas para caracterizar falhas em sistemas distribuí-dos, destacando-se a forte análise do comportamento das falhas em cascata. A títulode exemplo, um modelo temporal para caracterizar falhas intermitentes em dispositi-vos elétricos foi proposto [Correcher et al. 2012]. Além disso, também as falhas levesde datacenters foram caracterizadas visando incrementar a disponibilidade dos serviçosprestados [Sankar and Gurumurthi 2013]. Atualmente, a presença de colapsos de funci-onamento em diversos sistemas de larga escala, tais como a Internet e os sistemas SmartGrid, impulsionou investigações para caracterizar falhas em cascata.

Em [Huang et al. 2013] um modelo para caracterizar falhas em cascata em SmartGrid foi apresentado. Nele, a caracterização de falhas considera a relação entre a redede distribuição de energia e a rede de comunicação. Assumiu-se que a falha em umadessas redes implica diretamente na outra. Outra premissa consiste na existência de in-terdependência entre as redes resultantes de uma relação de um para muitos, pois cada nóobtém energia de uma estação de abastecimento específica. Os autores advogam a capa-cidade de caracterizar de modo prático falhas em cascata em Smart Grids, mas salientamas limitações do modelo.

O trabalho de [Wang et al. 2014] apresentou um modelo empregando grafos di-nâmicos para caracterizar falhas em cascata e seus comportamentos na Internet. O dife-rencial desse modelo foi assumir diferentes tipos de vértices para representar os hosts eroteadores da Internet. Essa abordagem possibilitou uma análise mais criteriosa da falhaem cascata e seus efeitos. A caracterização dessas falhas foi realizada assumindo que asfalhas em cascatas são disparadas por ataques intencionais a uma única aresta, represen-tando a conexão entre os vértices do grafo.

Apesar da existência de modelos para caracterizar falhas em cascata em vários sis-temas, nos SGIs esses modelos representam apenas falhas em cascata oriunda da sobre-carga dos serviços prestados. Na literatura há diversos modelos consolidados para carac-terizar falhas em cascata [Motter and Lai 2002, Crucitti et al. 2004, Havlin et al. 2010].Entre esses modelos, uma característica em comum é que o efeito em cascata é desen-cadeado através da sobrecarga dos nós ativos. Em um SGI esses modelos representamapenas falhas em cascata oriundas da sobrecarga dos serviços prestados, enquanto que osefeitos das falhas em cascatas em função da exploração de vulnerabilidades em comum

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

107

Page 4: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

no processo de autenticação entre provedores de identidades continuam desconhecidos.

Este trabalho apresenta um modelo analítico de falhas em cascata para SGIs. Oprincipal diferencial deste modelo consiste em tratar de falhas em função da exploração devulnerabilidades no processo de autenticação de provedores de identidades. Assim comomodelos de falhas em cascata em Smart Grids, assumimos como premissa a interdepen-dência entre elementos do sistema. No SGI, a interdependência ocorre entre diferentesfederações, indicando que a falha em uma federação implicará em falhas em outras fede-rações. Além disso, tal como na caracterização de falhas em cascata na Internet, usamosdiferentes tipos de vértices para diferentes elementos do SGI. Em nosso modelo usamostrês diferentes tipos de vértices para representar as IDs, provedores de identidades e pro-vedores de serviços de um SGI.

3. Modelo de Falhas em Cascata para Sistemas de Gerenciamento deIdentidades

Esta seção detalha o modelo proposto para representar falhas em cascata em um SGI. Asubseção 3.1 detalha a modelagem do SGI através de um grafo. A subseção 3.2 descreveo comportamento do sistema através da teoria dos conjuntos; e a subseção 3.3 demonstrao efeito de falhas em cascata por meio de uma prova por indução.

3.1. Modelo do Sistema de Gerenciamento de Identidades

Os principais conceitos envolvidos em um SGI consistem na entidade, ID, identificadore credencial. Uma entidade pode ser uma pessoa, um serviço de rede ou um disposi-tivo [Torres et al. 2013]. Uma ID consiste na representação digital de uma entidade eminterações eletrônicas [Phiri and Agbinya 2006]. Uma entidade pode assumir várias iden-tidades com diferentes objetivos, por exemplo, em um sistema um usuário pode ter umaconta de usuário comum e outra como super usuário. O identificador consiste em um ín-dice único usado para referenciar uma ID no SGI. Uma credencial trata-se de informaçõesconfidenciais das IDs usadas para provar sua autenticidade em um SGI, podendo ser umasenha ou informações biométricas [Smedinghoff 2012]. A Figura 1 demonstra a relaçãoentre entidade, ID, identificador e credencial.

Figura 1. Relação entre Entidade, Identidade, Identificador e Credencial

Na Figura 1, é ilustrado que uma entidade pode ter várias identidades e que cadaidentidade possui um identificador único e uma credencial. Os conceitos de identificadore credencial podem parecer confusos, mas a principal diferença entre eles é o fato de queum identificador deve ser único em um SGI e a credencial não. No SGI, os provedo-res de identidades consistem nas entidades responsáveis por controlar as credenciais das

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

108

Page 5: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

IDs e prover serviços de autenticação. As entidades incumbidas de disponibilizar servi-ços especificamente para as IDs consistem nos provedores de identidades. Uma federa-ção é um ambiente cooperativo formado pela união de um conjunto de domínios, ondecada domínio agrega diferentes IDs, provedores de identidades e provedores de serviços[Cao and Yang 2010]. Para fins de modelagem, o SGI é considerado como um ambientecooperativo formado pela associação de diversas federações.

As principais operações de um SGI consistem na identificação, autenticação, au-torização e auditoria. A identificação consiste na operação inicial de reconhecimento deuma ID no SGI com base em seu identificador, esta operação não apresenta validação. Aautenticação consiste no ato de verificação da legitimidade de uma ID por meio da veri-ficação de credenciais. A autorização compreende a concessão de privilégios a uma IDapós autenticação. A auditoria consiste no registro das ações realizadas por uma entidadeem um SGI. Essas operações são críticas para o funcionamento correto de um SGI. Omodelo proposto contempla a exploração de vulnerabilidades nas operações de autentica-ção, pois o comprometimento dessa operação pode implicar em falhas nos processos deautorização e de auditoria.

Com este objetivo um SGI é representado por um grafo direcionado G = (V,E),sendo V composto por vértices provenientes do particionamento de três conjuntos devértices, A, B e C. Esses conjuntos caracterizam respectivamente as IDs, os provedoresde identidades e os provedores de serviços do sistema, logo o conjunto de vértices de G é aunião dos conjuntos A, B e C. As arestas de G são representadas pelos conjuntos E1, E2,E3, E4, E5, onde E1 = {(a, b)|a ∈ A, b ∈ B}, E2 = {(b, c)|b ∈ B, c ∈ C}, podendotambém existir arestas entre os elementos de cada conjunto, E3 = {(a1, a2)|a1 ∈ A, a2 ∈

A}, E4 = {(b1, b2)|b1 ∈ B, b2 ∈ B}, E5 = {(c1, c2)|c1 ∈ C, c2 ∈ C}, logo E =5⋃

i=1

Ei.

Cada conjunto de arestas representa um tipo específico de Relação (Re). O con-junto de arestas E1 representa quais provedores de identidades b ∈ B uma ID a ∈ Apode usar para se autenticar. E2 descreve quais provedores de serviço c ∈ C confiamnas autenticações de um provedor de identidades b ∈ B. E3 retrata a composição de IDsparciais de um usuário. E4 expõe a relação dos provedores de identidades que apresen-tam propriedades em comum. E5 representa a composição de provedores de serviços, ouseja, situações onde serviços podem ser consumidos por outros serviços, tal como ocorreem SOAs. Em outras palavras, em G qualquer tipo de relação pode existir, exceto as as-sociações de IDs com provedores de serviços, pois essa relação não é fiel a forma comoos recursos são compartilhados em um SGI.

As direções das arestas em G representam as características do SGI. As arestasentre os conjuntos seguem a direção A → B → C. A direção A → B representa aassociação das IDs com seus respectivos provedores de identidades. B → C indica dequais provedores de identidades os provedores de serviços aceitam autenticações. Dentrode cada conjunto (A, B, C) existem arestas com direção dupla. A análise vai usar a dire-ção das arestas, mas no caso destas, se coloca direção dupla justamente porque as direçõesnão importam para caracterizar as falhas em cascata. Além disso, o grafo G não considerapeso nas arestas, retratando a indiferença de qual provedor de identidades irá autenticaruma ID, contanto que o provedor de serviços desejado aceite essa autenticação. Comotambém, através da perspectiva do provedor de serviços, é indiferente qual provedor de

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

109

Page 6: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

identidades que ele confia autenticou uma ID. A Figura 2 ilustra um exemplo de grafo G.

Figura 2. Exemplo de Grafo de um Sistema Gerenciamento de Identidades Global

Na Figura 2, os vértices de cor branca representam IDs (conjunto A), os de corcinza representam os provedores de identidades do conjunto B e os de cor preta, os pro-vedores de serviços do conjunto C. As arestas de G apresentam a direção A → B → Ce não possuem peso. Também se observa que G é conexo, pois não existem vértices semarestas. Além disso, nota-se que podem existir ciclos em G entre elementos do mesmoconjunto. Sendo Cn um ciclo onde n vértices são adjacentes, o centro do grafo apre-senta um C4 entre elementos de C, representado uma composição de quatro provedoresde serviço. Logo abaixo do C4, um C5 entre elementos do conjunto B é encontrado,caracterizando cinco provedores de identidades com vulnerabilidades em comum no me-canismo de autenticação. A esquerda do centro do grafo, um C6 entre os elementos de A,descrevendo a composição de uma ID através de seis identidades parciais.

3.2. Modelo de Falhas em CascataNesta subseção o modelo de falhas em cascata para um SGI global é descrito usando ateoria dos conjuntos. Na sequência, o modelo de autenticação e da falha em um único nóé apresentado. Considere o particionamento de três conjuntos não vazios de vértices A,B e C de um grafo G, onde V = A ∪ B ∪ C. Seja C ′ o conjunto de subconjuntos de C,ou seja, C ′ = 2|C|, logo os elementos de C ′ representam todas as combinações possíveisdos elementos de C. Em outras palavras, cada elemento de C ′ é um subconjunto deprovedores de serviço que confiam na autenticação de uma ID a ∈ A por um provedorde identidades b ∈ B. Como não existem arestas entre o conjunto de vértices A e C,podemos denotar o conjunto A como o domínio de uma função e B como seu contradomínio formado pelas arestas que saem de A para B. Da mesma forma, o conjunto Bcomo domínio de uma função e C ′ como seu contradomínio.

Seja f : A→ B a função bijetora que descreve as arestas do conjunto A para B eg : B → C ′ a função sobrejetora que descreve as arestas do conjunto B para C ′. Onde,

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

110

Page 7: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

A é o domínio da função f , B é o contra domínio e a imagem é o subconjunto de B.Considerando a função g, o conjunto B é o domínio e C é o contra domínio e a imagem éo subconjunto de C. A Figura 3 ilustra a relação entre esses conjuntos. A Figura 3 ilustraa relação entre esses conjuntos.

Figura 3. Modelo de representação das arestas entre os conjuntos de vértices

Com base nas funções f e g uma função para autenticação é modelada. Seja auth :A× B × C → {verdadeiro, falso} a função bijetora de autenticação cujo retorno é umvalor booleano verdadeiro ou falso. Dessa forma, seja a uma ID do SGI, a função auth(a)descreve uma requisição de acesso da ID a ∈ A para um provedor de identidades b ∈ Bpara acessar um provedor de serviços c ∈ C. Se as credenciais apresentadas para a IDa forem verdadeiras, esta será autenticada com sucesso e auth(a) retornará verdadeiro,caso contrário retornará falso. Seja b ∈ B o provedor de identidades escolhido pelousuário para autenticar a ID a, logo a função g(b) pode ser usada para extrair a quantidadede provedor de serviços que auth nos proporcionará acesso, o resultado desta função seráum valor de no mínimo um e no máximo |C|.

Tendo definido a função de autenticação, o modelo da falha em um único nó doSGI é apresentado. Assumimos uma falha como a exploração de uma vulnerabilidadeno processo de autenticação de um provedor de identidades que resulta na violação dasmedidas de monitoramento e controle das IDs. O modelo da falha é realizado provando oseguinte lema.

Lema 1 Se existe uma vulnerabilidade vul em um provedor de identidades b ∈ B quequando explorada possibilita burlar as credenciais de uma ID, então existem falhas deautorização em no mínimo um e no máximo |C| provedores de serviços c ∈ C.

Prova. Direta. Seja vul uma vulnerabilidade de um provedor de identidades b ∈ B, demodo que vul possibilita manipular a resposta da função auth retornando verdadeiropara um atacante que objetiva passar-se indevidamente por uma ID a ∈ A. Seja faulta função que representa esta falha de segurança no SGI. Logo, podemos denotar faultcomo uma função composta f(g(x)), onde fault(a) = f ◦ g(a) = f(g(a)). Comoauth, possibilita acesso para no mínimo um e no máximo |C| provedor de serviços, logo,se auth for manipulada por um atacante, o número de provedores de serviços afetadospor essa falha também será no mínimo um e no máximo |C|. Portanto, se existe umavulnerabilidade vul em um provedor de identidades b ∈ B que se explorada possibilitaburlar as credenciais de uma ID, então existem falhas de autorização em no mínimo um eno máximo |C| provedores de serviços c ∈ C. �

3.3. Prova por Indução da Falha em CascataEsta subseção demonstra como ocorre a falha em cascata em um SGI. Através do Lema 1provamos que quando um atacante obtém sucesso ao explorar uma vulnerabilidade vul de

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

111

Page 8: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

um provedor de identidades que o possibilita burlar uma credencial de uma ID qualquer,automaticamente todos os provedores de serviços que confiam na autenticação deste pro-vedor de identidades concederão acesso indevido ao atacante para a ID com a autenticaçãoburlada.

Agora, a ocorrência da falha em cascata em um SGI é demonstrada através de umaprova por indução. Este tipo de prova oferece iteratividade, pois através dela podemosrepresentar os estágios da disseminação da falha de segurança e seus efeitos. A ideiabase desta prova consiste em mostrar a existência de um caminho entre os provedores deidentidades que apresentam a mesma vulnerabilidade.

Prova. Por indução no número de provedores de identidades compondo um caminho entreesses provedores com a mesma vulnerabilidade.

Hipótese. Existe um caminho entre os provedores de identidades que representa o efeitode uma falha em cascata.

Base. Queremos demonstrar o efeito de uma falha em cascata quando o caminho entre osprovedores de identidades tem apenas dois vértices.

Seja b1 ∈ B o provedor de identidades cuja a vulnerabilidade vul foi explorada paraburlar o acesso da ID a ∈ B. Seja b2 ∈ B o provedor de identidades adjacente à b1.Seja E4 o conjunto de arestas que representa a relação dos provedores de identidadescom propriedades em comum. Logo, as arestas incidentes à b1 ∈ E4 descrevem quaisprovedores de identidades a vulnerabilidade vul pode ser explorada. Logo, exitem doisvértices b1, b2 conectados por arestas pertencentes à E4. Seja um caminho em um grafouma sequência de vértices, onde cada vértice apresenta uma aresta para o próximo vérticeda sequência. Logo, existe um caminho Pa somente com dois elementos do conjunto devértices B, onde b1 é o vértice inicial e b2 o elemento final. Este caminho representa porquais vértices a falha em cascata pode ser disseminada pelo SGI. Considerando o Lema1, a falha de cada provedores de identidades deste caminho afetará no mínimo um e nomáximo |C| provedores de serviços. �

Passo. Queremos provar que existe um caminho com i+1 provedores de identidades querepresentam uma falha em cascata em um SGI.

Suponha a existência de i provedores de identidades em um caminho Pa.

Logo, existe um caminho Pa = {b1, b2..., bi}, onde cada provedor de identidades possuia vulnerabilidade vul.

Logo, aplicando o Lema 1, existe um caminho Pa = {b1, b2..., bi+1}.Portanto, sabemos que cada um destes vértices pode comprometer no mínimo um e nomáximo |C| provedores de serviço.

Note que através do modelo de falha em cascata proposto, o funcionamento doprovedor de identidades sob ataque não é falha em decorrência da sobrecarga, pois paraautenticações de IDs legítimas, o SGI funcionará normalmente, inclusive com provedoresde identidades falhos. Neste ponto o modelo proposto se diferencia dos modelos de falhaem cascata da literatura, pois a disseminação da falha não ocorre com base na sobrecargados nós e sim na exploração de vulnerabilidades presentes em um conjunto de provedoresde identidades.

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

112

Page 9: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

4. Estudo de CasoEsta seção descreve um estudo de caso aplicando o modelo proposto. A Subseção 4.1detalha informações da base de dados coletada de um SGI. A Subseção 4.2 apresenta aabstração do sistema através do modelo proposto. A Subseção 4.3 explica a análise doefeito da falha em cascata na abstração do SGI.

4.1. Descrição da Base de Dados ShibbolethO estudo de caso é realizado sobre dados coletados do sistema Shibboleth. O Shibbolethconsiste no framework de gerenciamento de identidades federado mais utilizado no meioacadêmico para Web Single Sign-on [Watt et al. 2011]. A técnica de Single Sign-on per-mite que uma autenticação bem sucedida em um provedor de identidades de um domínioseja aceita em outros domínios da federação, sem a exigência de novas autenticações acada nova sessão e minimizando a necessidade do usuário memorizar um grande númerode senhas. Esta solução federada vem sendo projetada para suprir a necessidade de ga-rantir o acesso seguro a recursos compartilhados entre diferentes domínios de maneiradescentralizada.

Uma base de dados composta por logs de autenticação de um sistema Shibbolethreal foi empregada para criação de um cenário de análise. Os dados foram coletadospelo SGI da Universidade de Buffalo, localizada em Nova York. O período de coletacompreendeu os meses de Abril de 2009 até Setembro de 2013. Os logs de autentica-ção são categorizados por mês e ano representando as autenticações por domínio e porserviço. Esses dados utilizados podem ser encontrados no sítio Web da Universidade deBuffalo [UBI ]. As autenticações por domínio contabilizam as requisições de autentica-ção originadas por navegadores do domínio interno da rede. As autenticações por serviçocontabilizam e categorizam as requisições pelo serviço Web destino.

Ao todo, 110 arquivos categorizados por mês são extraídos. Para cada mês sãoobtidos dois arquivos, um contendo as requisições de autorização por domínio e outrocom as requisições de autenticação por serviço. Para evitar a análise de uma grandequantidade de dados, um arquivo com maior representatividade para análise foi escolhido,sem a perda de generalidade. Desta forma, são escolhidos os dados de autenticação deum mês com maior número de provedores de identidades, provedores de serviços e o maisrecente possível. Com base nestes critérios, o mês de Setembro de 2013 foi selecionadopara análise. Neste mês a infra-estrutura de gerenciamento de identidades analisada contacom seis provedores de identidades s e dez principais provedores de serviços, totalizandomais de dois milhões de autorizações.

4.2. Abstração do sistema Shibboleth Através do Modelo PropostoA abordagem utilizada para representar o sistema Shibboleth através do grafo propostocomo modelo consiste em separar os provedores de serviços, os provedores de identidadese as IDs em diferentes conjuntos de vértices e em seguida relacioná-los. Denotamos umainstância desse grafo como H = (V,E), onde V é o particionamento de três conjuntosde vértices, A, B e C, caracterizando IDs, provedores de identidades e provedores deserviços, respectivamente, logo V = A ∪B ∪ C, conforme definido no modelo.

Com base nas informações disponibilizadas não foi possível extrair o númeroexato de IDs para o conjunto A, pois somente as requisições originadas por cada do-mínio foram disponibilizadas. Isto impossibilitou a identificação da existência de ciclos

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

113

Page 10: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

entre IDs e das associações entre IDs e provedores de identidades. Entretanto, entende-se que esse fato não compromete os objetivos da análise, pois podemos considerar asIDs como um único conjunto e investigar a disseminação da falha entre os provedores deidentidades. Com esse fim o vértice denominado identidades foi criado.

Para definição dos conjuntos B e C foi possível extrair o número exato de ele-mentos. O conjunto B, responsável por agregar os provedores de identidades, apre-senta seis elementos, sendo eles: download.acsu.buffalo.edu, myub.buffalo.edu, uble-arns.buffalo.edu, ubsis.buffalo.edu, myaccount.myubcard.com e ubmail.buffalo.edu. En-quanto que o conjunto C, incumbido de representar os provedores de serviços, totalizadez elementos, sendo eles: messagesystems.com, rr.com, optonline.net, level3.net, pa-vlovmedia.com, mycingular.net, verizon.net, com.sg, myvzw.com e buffalo.edu. A Figura4 ilustra o grafo H .

Figura 4. Grafo do Sistema de Gerenciamento de Identidades Shibboleth

Na Figura 4, os vértices de cor branca, cinza e preta, representam respectivamenteos conjuntos A, B e C pertencentes a H e suas respectivas arestas. O único vértice brancoda figura foi usado para representar o conjunto identidades que agrega todas as IDs doSGI. Os vértices de cor preta representam seis provedores de identidades da Universidadede Buffalo, constituindo o conjunto B. Aqueles de cor cinza representam os provedores deidentidades e consequentemente o conjunto C. O conjunto de arestas E1 é representadopelas linhas do conjunto A para cada elemento do conjunto B. O conjunto de arestasE2 é caracterizado pelas linhas contínuas que partem de cada elemento do conjunto Bpara todos os elementos do conjunto C. Os conjuntos de arestas E3, E4 e E5 não foramrepresentadas nesta figura, pois os dados analisados não descreviam essas relações. Maisdetalhes sobre o conjunto de arestas E4 são descritos na Subseção 4.3.

Tendo definido o grafo a ocorrência da falha em cascata neste sistema é analisada.Considere que os seis provedores de identidades do grafo H apresentam uma vulnerabili-dade vul em comum. Dessa forma, existe um caminho Pa contendo os seis provedores deidentidades pertencentes ao conjunto de vértices B que demonstra uma possível sequên-cia de falhas decorrentes da exploração de vul. Tendo como base o Lema 1, então cadaum destes provedores de identidades afetará no mínimo um e no máximo |C| provedoresde serviços c ∈ C. Como todos os provedores de identidades foram afetados, logo |C|provedores de serviços serão comprometidos. Dessa forma, Pa representa o caminho de

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

114

Page 11: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

uma falha em cascata no sistema Web Single Sign-on Shibboleth utilizado como estudo decaso, embasando a aplicabilidade do modelo neste sistema.

É possível perceber que ao realizar essa demonstração da falha em cascata teve-se o cuidado para não realizá-la de maneira exaustiva e repetitiva. Outra questão quepode chamar atenção é que o estudo de caso apresentado baseia-se em dados coletadosde apenas uma federação de identidades, mas o modelo proposto visa representar umSGI composto por diversas federações. Essa decisão é justificada pela capacidade domodelo proposto em representar tanto federações, quanto um SGI composto por diversasfederações. O modelo proposto representa as entidades do SGI e as relações entre essasentidades, não distinguindo a qual federação a entidade pertence.

4.3. Análise do Efeito da Falha em Cascata

Esta subseção apresenta a análise da falha em cascata no SGI Shibboleth da Universidadede Buffalo. A análise do efeito da falha em cascata compõe três etapas. A primeira etapaconsiste em representar o subgrafo de provedores de identidades através de uma matrizde adjacência. A segunda aplica diferentes probabilidades da distribuição binomial paravariar a presença de vulnerabilidades em comum nos mecanismos de autenticação destesprovedores de identidades. A terceira mensura o efeito da disseminação de falhas nascomponentes conexas através da definição da métrica impacto da falha em cascata.

Seja H ′ o subgrafo com seis vértices que descreve as relações entre os provedo-res de identidades do grafo H e M como a matriz de adjacência para representá-lo, logoM(H ′) = M6,6 . Para denotar o conjunto de arestas E4, responsáveis por descrever vul-nerabilidades em comum entre mecanismos de autorização de provedores de identidades,é necessário que as entradas mi,j da matriz M contenham 1 se mi,j e mj, i são adjacentese 0 caso contrário. A Figura 5 apresenta a matriz de adjacência M .

M6,6 =

índices 1 2 3 4 5 6

1 m1,1 m1,2 m1,3 m1,4 m1,5 m1,6

2 m2,1 m2,2 m2,3 m2,4 m2,5 m2,6

3 m3,1 m3,2 m3,3 m3,4 m3,5 m3,6

4 m4,1 m4,2 m4,3 m4,4 m4,5 m4,6

5 m5,1 m5,2 m5,3 m5,4 m5,5 m5,6

6 m6,1 m6,2 m6,3 m6,4 m6,5 m6,6

Figura 5. Matriz de Adjacência M

Na Figura 5, os índices de 1 à 6 representam os vértices que especificam meca-nismos de autenticação dos provedores de identidades do subgrafo H ′. O conjunto deelementos em vermelho (estilo de fonte em negrito) representa o triângulo superior damatriz. O conjunto de elementos em azul (estilo normal de fonte) caracteriza o triânguloinferior. Enquanto que o conjunto de elementos em verde (estilo de fonte em itálico)descreve a diagonal principal. A diagonal principal da matriz m é preenchida com zeros,indicando a inexistência de arestas de um vértice para si mesmo. Os valores do triângulosuperior e inferior variam entre zero e um de forma simétrica ao longo da diagonal prin-cipal para compor o conjunto de arestas E4. A garantia da simetria da matriz ao longo

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

115

Page 12: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

da diagonal principal é garantida através da soma da matriz com a diagonal principal e otriângulo inferior mais sua transposta, ou seja, M = T (M).

A distribuição binomial é aplicada com diferentes probabilidades para obtençãodos valores da matriz de adjacência, gerando um espaço amostral da presença de vulnera-bilidades. Para representar as arestas entre os seis vértices são necessários quinze valoresdistribuídos de forma simétrica entre o triângulo superior e inferior, variando entre zero eum. O total de combinações de zeros e uns para quinze valores é igual a 215, resultandoem 32768 combinações. Considerando a presença de um grande número de provedoresde identidades em um SGI global, percebe-se que analisar todas as possibilidades podeser uma tarefa exaustiva, justificando a análise de amostras.

Ao todo dez variações de probabilidades são analisadas, para cada uma delas 35amostras foram colhidas. O intervalo de variação de probabilidade para caracterizar apresença de vulnerabilidades em comum entre os mecanismos de autenticação do SGIShibboleth compreende os valores 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45 e 0.5.Como resultado da aplicação destes valores na matriz de adjacência, cada amostra dosubgrafo H ′ apresenta n componentes conexas de provedores de identidades.

A análise para mensurar o impacto da falha em cascata dá-se através da com-paração da disseminação de falhas nas componentes conexas gigante em detrimento àscomponentes conexas aleatórias. Assumimos que a descoberta de uma vulnerabilidadede uma componente conexa sempre será disseminada para todos os demais provedores deidentidades. Além disso, definimos como provedores de identidades falhos aqueles quetiveram as vulnerabilidades de seus mecanismos de autenticação exploradas. Para men-surar o efeito da falha em cascata a métrica IFC, denotada pela equação IFC = NPIF

NTPI,

é definida. Onde NPIF consiste no número de provedores de identidades falhos e NTPIrepresenta o número total de provedores de identidades.

Os resultados da análise mostram que uma falha em cascata em um SGI real poderesultar em danos catastróficos. A comparação entre a disseminação de falhas na Compo-nente Conexa Gigante (CCG) e em Componente Conexa Aleatória (CCA) aponta que adisseminação de falhas na componente conexa gigante são mais prejudiciais. No entanto,mesmo a disseminação de falhas em componentes conexas de tamanho aleatório podecomprometer um SGI em cerca de 70%. A Figura 6 ilustra esses resultados.

10

20

30

40

50

60

70

80

90

100

00.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

Impac

to d

a F

alha

em C

asca

ta (

%)

Probabilidade de Vulnerabilidade

CCG CCA

Figura 6. Comparação da Disseminação de Falhas na CCG e em CCAs

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

116

Page 13: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

Na Figura 6 é ilustrada a média da comparação da disseminação de falhas na CCGem detrimento a CCA de provedores de identidades do SGI Shibboleth da Universidadede Buffalo com intervalo de confiança de 95%. A análise deste gráfico aponta que o IFCna maior componente conexa apresenta um crescimento exponencial próximo a 100%dos provedores de identidades com 0.45 de probabilidade da presença de vulnerabilida-des. Em contraste, o ápice do IFC nas componentes conexas aleatórias compreendeu umvalor inferior a 70% de provedores de identidades com 0.4 de probabilidade da presençade vulnerabilidade. Esse resultado mostra que mesmo com baixa probabilidade de vulne-rabilidade entre provedores de identidades os efeitos de uma falha em cascata em um SGIglobal são catastróficos.

5. Conclusões

Este trabalho apresentou um modelo analítico de falhas em cascata em um SGI e ana-lisar seu efeito. O SGI foi modelado através de um grafo e seus comportamentos coma teoria dos conjuntos. A disseminação da falha em cascata foi representada através deum caminho entre provedores de identidades com vulnerabilidades em comum no pro-cesso de autenticação. Um estudo de caso foi realizado para demonstrar a aplicabilidadedo modelo proposto considerando dados reais de gerenciamento de identidades coletadosdo Web Single Sign-On Shibboleth da Universidade de Buffalo. No estudo de caso, a pre-sença de vulnerabilidades em comum entre os provedores de identidades foi caracterizadaatravés de variações de probabilidades da distribuição binomial, resultando em diferentesconjuntos de vértices conectados entre si. Os resultados indicam que a disseminação defalhas com probabilidade de vulnerabilidades de 0.45 nos conjuntos maiores impacta em100% dos provedores de identidades e a disseminação de falhas em conjuntos de tamanhoaleatório pode comprometer até 70% desses provedores.

Referências

UB Identity Management and Authentication Metrics. https://ubidm.buffalo.edu/stats/. Último Acesso em Outubro de 2013.

Angulo, J. and Wästlund, E. (2013). Identity management through “profiles”: Prototypingan online information segregation service. In Kurosu, M., editor, Human-ComputerInteraction. Users and Contexts of Use, volume 8006 of Lecture Notes in ComputerScience, pages 10–19. Springer Berlin Heidelberg.

Bertino, E. (2012). Trusted identities in cyberspace. IEEE Internet Computing, 16(1):3–6.

Camp, J. (2010). Identity management’s misaligned incentives. IEEE Security Privacy,8(6):90 –94.

Cao, Y. and Yang, L. (2010). A survey of identity management technology. In IEEEInternational Conference on Information Theory and Information Security (ICITIS),2010, pages 287 –293.

Cisco (2014). Cisco Visual Networking Index. http://www.cisco.com/c/en/us/solutions/collateral/service-provider/visual-networking-index-vni/white_paper_c11-520862.pdf.Último Acesso em Fevereiro de 2014.

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

117

Page 14: Um Modelo de Falhas em Cascata para Sistemas Globais de ... · ras orientadas a serviços (Service-oriented Architectures - SOA) ou Internet das coisas [Lampropoulos and Denazis 2011,

Correcher, A., Garcia, E., Morant, F., Quiles, E., and Rodriguez, L. (2012). Intermittentfailure dynamics characterization. IEEE Transactions on Reliability, 61(3):649–658.

Crucitti, P., Latora, V., and Marchiori, M. (2004). Model for cascading failures in complexnetworks. Phys Rev E Stat Nonlin Soft Matter Phys, 69(4 Pt 2):045104.

Havlin, S., Araujo, N. A. M., Buldyrev, S. V., Dias, C. S., Parshani, R., Paul, G., andStanley, H. E. (2010). Catastrophic cascade of failures in interdependent networks.Nature.

Huang, Z., Wang, C., Ruj, S., Stojmenovic, M., and Nayak, A. (2013). Modeling casca-ding failures in smart power grid using interdependent complex networks and perco-lation theory. In IEEE Conference on Industrial Electronics and Applications, pages1023–1028.

Kinney, R., Crucitti, P., Albert, R., and Latora, V. (2005). Modeling cascading failures inthe north american power grid. The European Physical Journal B - Condensed Matterand Complex Systems, 46(1):101–107.

Lampropoulos, K. and Denazis, S. G. (2011). Identity management directions in futureinternet. IEEE Communications Magazine, 49(12):74–83.

Lynch, L. (2011). Inside the identity management game. IEEE Internet Computing,15(5):78–82.

Motter, A. E. and Lai, Y.-C. (2002). Cascade-based attacks on complex networks. Phys.Rev. E, 66:065102.

Phiri, J. and Agbinya, J. (2006). Modelling and information fusion in digital identitymanagement systems. In Networking, International Conference on Systems and In-ternational Conference on Mobile Communications and Learning Technologies, page181.

Sankar, S. and Gurumurthi, S. (2013). Soft failures in large datacenters. IEEE ComputerArchitecture Letters, 99(RapidPosts):1.

Smedinghoff, T. J. (2012). Solving the legal challenges of trustworthy online identity.Computer Law & Security Review, 28(5):532 – 541.

Torres, J., Nogueira, M., and Pujolle, G. (2013). A survey on identity management forthe future network. IEEE Communications and Surveys Tutorials, 15(2):787–802.

Wang, J., Jiang, C., and Qian, J. (2014). Robustness of internet under targeted attack:A cascading failure perspective. Journal of Network and Computer Applications,40(0):97 – 104.

Wang, R., Chen, S., and Wang, X. (2012). Signing me onto your accounts through fa-cebook and google: A traffic-guided security study of commercially deployed single-sign-on web services. In IEEE Symposium on Security and Privacy, pages 365 –379.

Watt, J., Sinnott, R., Inman, G., and Chadwick, D. (2011). Federated authentication andauthorisation in the social science domain. In International Conference on Availability,Reliability and Security, pages 541 –548.

Anais do XIX Workshop de Gerência e Operação de Redes e Serviços– WGRS 2014

118