Plataforma para efetivação de múltiplas políticas de controle de acesso em ambientes de grade...

Preview:

Citation preview

Plataforma para efetivação de múltiplas políticas de controle de acesso em ambientes de grade computacional

Leonardo Mattes, Leonardo C. Militelli, João Antonio Zuffo

Laboratório de Sistemas IntegráveisLSI-USP

Introdução Trabalhos relacionados Arquitetura GridMultiPolicy Implementando Políticas Teste operacional Conclusões

Sumário

Grade computacionais:

Compartilhamento de recursos e serviços de forma integrada e dinâmica entre múltiplos domínios lógicos e tecnológicos.

Um típico cenário de grade computacional envolve VO (Organizações Virtuais).

Introdução

Organizações Virtuais domínios sobre domínios

Introdução

Ao oferecer maior integração e flexibilidade entre domínios heterogêneos, grades computacionais aumentam também a possibilidade de riscos e vulnerabilidade.

Desafio de segurança para grades computacionais é o oferecimento de um serviço integrado aos diferentes modelos de políticas e mecanismos existentes nos sítios de uma VO;

Introdução

Introdução

Desafios de grade computacional Permitir a integração de políticas de domínios

autônomos; Oferecer serviços de segurança de forma integrada

com os mecanismos pré-existentes; Oferecer suporte ao princípio de privilégio mínimo; Manter compatibilidade com as aplicações legadas.

Trabalhos Relacionados

infra-estruturas distribuídas e flexíveis de controle de acesso para controlar serviços de rede (CAS, PERMIS e Shibboleth ) ;

Instanciação remota de tarefas: Gerenciamento e mapeamento de contas remotas; Máquinas virtuais

Os trabalhos produzidos seguem duas orientações distintas:

GridMultiPolicy

Modelo de controle de acesso flexível, que oferece:

Suporte e gerenciamento a múltiplos formatos de linguagens de políticas;

Abrangência necessária para para exercer controle, tanto no oferecimento de serviços, como no ambiente de execução das aplicações;

Estabelecimento dinâmico de múltiplos mecanismos de segurança;

Políticas de segurança especificas para cada contexto de execução;

Criação dinâmica de pontos de efetivação de políticas.

GridMultiPolicy- modelo de autorização

Recurso alvo

PDP

Aplicação

PEP

Poíticas

• Modelo de Autorização da especificacão AAA• PEP (Policy Enforcement Point -Ponto de Efetivação de

Política)• PDP (Policy Decision Point- Ponto de Decisão de Política)

GridMultiPolicy – Arquitetura

JMPE (Java Multi Policy Environment) MPMS (Multi Policy Manager Service)

MPMS

Sítio da VO

Recursos do sistema

Aplicação

JMPE PDPsPEPs Políticas

Uso integrado de duas entidades:

GridMultiPolicy - MPMS

Módulo principal (XACML) Módulos secundários (formato próprio)

Política Principal

Módulo 1

...Escopo

Políticas

Módulo 2

Escopo

Políticas

Módulo n

Escopo

Políticas

Módulo Principal

GridMultiPolicy - MPMS

Escopo (XACML), define a atuação de uma política secundária em relação:

Ações; Regras para definir o contexto de atuação de

uma políticas (sítios, recursos, perfis); PDP correlacionado, mecanismo capaz de

efetivar as políticas correlacionada; Informações sobre os PEPs necessários

GridMultiPolicy - MPMS

Interface de comunicação PDP principal e secundário

Parâmetros para gerar políticas secundárias especificas a contexto de execução: Descrição da tarefa ou serviço por meio de um arquivo

no formato RSL; Dados do usuário objeto “VOuser”

public interface PolicyInterface public byte[] createPolicy(RSL Description, VOUser user);

GridMultiPolicy - JMPE

Tem como objetivo a criação de um ambiente de execução customizado para fazer cumprir as múltiplas políticas estabelecidas;

Estabelecimento dinâmico dos PDPs, PEPs e políticas necessários.

GridMultiPolicy – JMPE

JMPE

Descritor detarefas (RSL)

JMPE

Lista de PDPs

PDP 1 PDP 2 PDP n...

inicialização

Ambienteconfigurado

Processo de estabelecimento dos PDPs

GridMultiPolicy - JMPE

Estabelecimento dos PEPs

Granularidade básica fornecida pelo gerente de segurança Java.

Granularidade estendida modificações em tempo de execução de bibliotecas para a inserção dos PEPs.

GridMultiPolicy - JMPE

Processo de criação dinâmica dos PEPs: Com base no escopos dos módulos secundários se estabelece a

lista de instruções para inserção de PEP; Em tempo de execução as classes são carregadas e modificadas:

JVM

AplicaçãoJMPECLassLoader

Arquivosbinários

Java

Lista deinstruções

3

12

4

5

GridMultiPolicy - JMPE

GridMultiPolicy - JMPE

Efetivação de Políticas de segurança:

Analisa a ação e os parâmetros de utilização para verificar quais os PDPs possuem escopos de atuação compatíveis;

coleta as decisões dos PDPs para a dada ação; em caso de conflito das decisões, aplica o

algoritmo de resolução de conflito; autoriza ou nega a ação; algoritmos de resolução de conflitos do XACML:

“deny-overrides”, “allow-overrides”, “first-applicable” e “only-one-applicable”.

GridMultiPolicy

Integração com GT4

Usuário daVO

MPMS

1 -

re

ceb

e a

cre

de

nci

al

WS-GRAM

2- submissão de tarefaJMPE

5 tarefa acabada

Sítio

Implementando políticas

LeastPrivilege, controle de acesso a: Arquivos locais; conexões TCP/IP; Web Services.

<Action> File_write /tmp/* write</Action><Action>Socket/lsi.usp.br:7</Action><Action>WS/lsi.usp.br/axis:</Action>

Implementando políticas

Instrução para PEP de web service

<PEP action="webServiceInvoke" grain="webService" classtarget="org.apache.axis.client.Call" > Method="org.apache.axis.client.Call" <Method name="invoke">

<property name="host" value="transport.url"/><property name="service" value="operationName.getNamespaceURI()"/><property name="port" value="perationName.getLocalPart()"/>

</Method></PEP>

Implementando políticas

IDS_Control promove a integração com sistema IDS local

O PDP “br.usp.lsi.IDSControl“ armazena dados sobre acessos;

GER (Grid Event Receiver) recebe informações de ataque da central de gerenciamento de IDS e compara com os acessos realizados.

Implementando políticas

InternalNetwork

IDS Sensor #1

IDS Sensor #2

IDS ManagementCentral

Internet

Grid Host

GER

JMPE

IDS_Control PDE

PDE #2

...

PDE #2

Teste operacional

Uso do LeastPrivilege e IDS_Control; Realiza duas séries de ações e simula um ataque a

um servidor web; Cadastrado no IDS o acesso em

http://lsi.usp.br/axis como ataque.

Teste operacional

Resultado primeira série de ações: Obteve acesso aos recursos previstos pelas

políticas LeastPrivilege.

******************** first round !***********Write in /tmp/GridClientefail to write /bin/malicioso Connected to 192.168.0.77:7 !fail to Connect to 192.168.0.22:1024 .fail WS “admin” in http://lsi.usp.br/testWS “ test” in http://lsi.usp.br/axis

Teste operacional

Resultado segunda série de ações: Depois de detectado o ataque, todas as ações

são bloqueadas.

*************** second round !*********fail to write /tmp/GridCliente2fail to write /bin/malicioso2fail to conect to 192.168.0.77:7fail to conect to 192.168.0.22:1024 .fail WS “admin” in http://lsi.usp.br/axisfail to WS “test” in http://lsi.usp.br/axisEnd of the test!

Conclusões

Modelo de autorização flexível para a próxima geração de plataformas de grade computacional, com as seguintes características: Permitir que administradores e usuários possam

estabelecer suas próprias políticas; Oferece serviço de distribuição de políticas de

segurança de múltiplos formatos; Utiliza um ambiente de execução flexível, que

permite o estabelecimento de múltiplos mecanismos;

Implementa de forma dinâmica e em tempo de execução os pontos de efetivação de políticas necessários;

Perguntas?

Laboratório de Sistemas IntegráveisLSI-USP

Recommended