Laboratório de Sistemas Integráveis
LSI-USP
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
Sumário






Introdução
Trabalhos relacionados
Arquitetura GridMultiPolicy
Implementando Políticas
Teste operacional
Conclusões
Introdução
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
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
Os trabalhos produzidos seguem
duas orientações distintas:


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
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
•
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)
Aplicação
PEP
Recurso alvo
PDP
Poíticas
GridMultiPolicy – Arquitetura
Uso integrado de duas entidades:


JMPE (Java Multi Policy Environment)
MPMS (Multi Policy Manager Service)
Sítio da VO
Aplicação
JMPE
PEPs
Recursos do sistema
PDPs
Políticas
MPMS
GridMultiPolicy - MPMS


Módulo principal (XACML)
Módulos secundários (formato próprio)
Módulo Principal
Política Principal
Módulo 1
Módulo 2
Escopo
Escopo
Políticas
Políticas
Módulo n
...
Escopo
Políticas
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
public interface PolicyInterface
public byte[] createPolicy(RSL Description, VOUser user);

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”
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
Processo de estabelecimento dos PDPs
JMPE
inicialização
Descritor de
tarefas (RSL)
Lista de PDPs
Ambiente
configurado
JMPE
PDP 1
PDP 2
...
PDP n
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:
4
Aplicação
JMPECLassLoader
5
3

Lista de
instruções
2
Arquivos
binários
Java
1
JVM
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”, “firstapplicable” e “only-one-applicable”.
GridMultiPolicy
Integração com GT4
1 - recebe a
credencial
MPMS
Sítio
3-
po
líti
ca
s
4-
WS-GRAM
iníc
tare ia a
fa
2- submissão de tarefa
Usuário da
VO
5 tarefa acabada
JMPE
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
IDS Sensor #2
Grid Host
IDS_Control
PDE
PDE #2
...
PDE #2
GER
Internet
Internal
Network
IDS Sensor #1
IDS Management
Central
JMPE
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/GridCliente
fail 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/test
WS “ 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/GridCliente2
fail to write /bin/malicioso2
fail to conect to 192.168.0.77:7
fail to conect to 192.168.0.22:1024 .
fail WS “admin” in http://lsi.usp.br/axis
fail to WS “test” in http://lsi.usp.br/axis
End 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áveis
LSI-USP
Download

Plataforma para efetivação de múltiplas políticas de