Upload
internet
View
107
Download
0
Embed Size (px)
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