2 Políticas, Modelos e Mecanismos de Segurança O papel do controle de acesso Matriz de controle de acesso Resultados fundamentais Políticas de segurança Modelos de segurança Mecanismos e implementação (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 1 Modelos de segurança (1) Modelo Bell-LaPadula (Bell & LaPadula, 1975) Modelo Clark-Wilson (Clark & Wilson, 1987) Modelo Chinese Wall (Brewer & Nash, 1989) Controle de acesso controlado pelo originador (ORCON) Controle de Acesso Baseado em Papéis (Ferraiolo et al., 2001) (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 2 Modelos de segurança (2) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (1) • Política de confidencialidade – Lida com o fluxo da informação – Prevenir a liberação não autorizada da informação • Modelo de segurança multinível – Classificação no estilo militar • Influência para muitos outros modelos e também no desenvolvimento de tecnologias de segurança computacional (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 3 Modelos de segurança (3) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (2) • Versão preliminar (2) – Níveis (liberações ou clearance) de segurança dispostos em ordem linear Super secreto: mais alto Secreto Confidencial Não classificado: mais baixo – Níveis são associados a sujeitos e objetos Um sujeito s tem liberação de segurança L(s) Um objeto tem classificação de segurança L(o) (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 4 Modelos de segurança (4) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (3) • Versão preliminar (2) – exemplo Nível de segurança Sujeito objeto Super secreto Tamara Arquivos pessoais Secreto Samuel Arquivos de e-mail Confidencial Clara Logs de atividade Não classificado Lila Lista telefônica • Tamara pode ler todos os arquivos • Clara não pode ler arquivos pessoais ou de e-mail • Lila somente pode ler a lista telefônica (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 5 Modelos de segurança (5) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (4) • Versão preliminar (2) - Leitura da informação – A informação flui para cima e não para baixo “Reads up” proibido, “reads down” permitido – Condição de segurança simples Um sujeito s pode ler o objeto o se e somente se, L(o) ≤ L(s) e s tem permissão para ler o » Nota: combina o controle de acesso compulsório (relacionamentos dos níveis de segurança) com controle de acesso discricionário (a permissão requerida para leitura) Também chamada de regra “no reads up” (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 6 Modelos de segurança (6) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (5) • Versão preliminar (3) - Escrita da informação – A informação flui para cima e não para baixo “Writes up” permitido, “writes down” proibido – Propriedade-* Um sujeito s pode escrever no objeto o se e somente se, L(s) ≤ L(o) e s tem permissão para escrever em o » Nota: combina o controle de acesso compulsório (relacionamentos dos níveis de segurança) com controle de acesso discricionário (a permissão requerida para escrita) Também chamada de regra “no writes down” (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 7 Modelos de segurança (7) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (6) • Versão preliminar (4) – Teorema básico da segurança Seja um sistema com um estado inicial seguro 0 e seja T um conjunto de transformações de estado. Se cada elemento de T preserva a condição de segurança simples e a propriedade-*, então cada i, i 0, é seguro » Prova: indução no número de transições (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 8 Modelos de segurança (8) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (7) • Versão estendida (1) – Expande a noção de nível de segurança para incluir categorias – Um nível de segurança tem a forma (liberação, conjunto de categorias) – Exemplos (Super secreto, {NUC, EUR, ASI }) {NUC, EUR, US} (Confidencial, {EUR, ASI }) (Secreto, {NUC, ASI }) {NUC, EUR} {NUC, US} {EUR, US} {EUR} {US} 9 – As categorias geram um reticulado Linhas representam a relação de ordem induzida por {NUC} (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop Modelos de segurança (9) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (8) • Versão estendida (2) – Níveis e reticulados definem a relação dom (domina) O nível de segurança (L, C) dom (domina) o nível de segurança (L, C) se e somente se L ≤ L and C C – Exemplos (Super Secreto, {NUC, US}) dom (Secreto, {NUC}) (Secreto, {NUC, EUR}) dom (Confidencial,{NUC, EUR}) (Super Secreto, {NUC}) dom (Confidencial, {EUR}) – Sejam C o conjunto de classificações e K o conjunto de categorias. O conjunto de níveis de segurança L = C K, e a relação dom formam um reticulado lub(L) = (max(A), C) glb(L) = (min(A), ) (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 10 Modelos de segurança (10) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (9) • Versão estendida (3) – Níveis e ordenação Níveis de segurança são parcialmente ordenados » Pares quaisquer de níveis de segurança podem ou não serem relacionados por dom A relação “domina” tem o mesmo papel que a relação “maior que” na versão preliminar do modelo » Embora, seja uma relação de ordem total e não parcial (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 11 Modelos de segurança (11) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (10) • Versão estendida (4) - Leitura da informação – A informação flui para cima e não para baixo “Reads up” proibido, “reads down” permitido – Condição de segurança simples Um sujeito s pode ler o objeto o se e somente se, L(s) dom L(o) e s tem permissão para ler de o » Nota: combina o controle de acesso compulsório (relacionamentos dos níveis de segurança) com controle de acesso discricionário (a permissão requerida para leitura) Também chamada de regra “no reads up” (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 12 Modelos de segurança (12) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (11) • Versão estendida (5) - Escrita da informação – A informação flui para cima e não para baixo “Writes up” permitido, “writes down” proibido – Propriedade-* Um sujeito s pode escrever no objeto o se e somente se, L(o) dom L(s) e s tem permissão para escrever em o » Nota: combina o controle de acesso compulsório (relacionamentos dos níveis de segurança) com controle de acesso discricionário (a permissão requerida para leitura) Também chamada de regra “no writes down” (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 13 Modelos de segurança (13) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (12) • Versão estendida (6) – Teorema básico da segurança Seja um sistema com um estado inicial seguro 0 e seja T um conjunto de transformações de estado. Se cada elemento de T preserva a condição de segurança simples e a propriedade-*, então cada i, i 0, é seguro » Prova: indução no número de transições (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 14 Modelos de segurança (14) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (13) • Problema – Um coronel tem nível (Secreto, {NUC, EUR}) – Um major tem nível (Secreto, {EUR}) O major pode falar com o coronel (“write up” ou “read down”) O coronel não pode falar com o major (“read up” ou “write down”) – Obviamente, isto é um absurdo! (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 15 Modelos de segurança (15) Modelo Bell-LaPadula (Bell & LaPadula, 1975) (14) • Solução – Definir os níveis máximo e corrente para um sujeito nível_max(s) dom nível_corrente(s) – Exemplo Tratar o major como um objeto (o coronel está escrevendo para ele) O coronel tem nível_max (Secreto, { NUC, EUR }) O coronel define seu nível_corrente para (Secreto, { EUR }) Agora L(Major) dom nível_corrente(Coronel) » O coronel pode escrever para o major sem violar a regra “no writes down” L(s) significa nível_corrente(s) or nível_max(s)? » Precisa-se de uma notação precisa e formal (C) 2005mais Gustavo Motta ©2002-2004 Matt Bishop 16 Modelos de segurança (16) Modelo Clark-Wilson (Clark & Wilson, 1987) (1) • Política de integridade – Difere das políticas militares por enfatizar a preservação da integridade dos dados – Requisitos (Lipner, 1982) 1. Usuários não escrevem seus próprios programas, mas usam programas e bancos de dados de produção 2. Programadores desenvolvem e testam programas em sistemas que não são de produção. Caso necessitem de dados de produção, esses serão fornecidos por um processo especial para serem usados no ambiente de desenvolvimento 3. Um processo especial deve ser seguido para instalar um programa do ambiente de desenvolvimento para o ambiente de produção 4. O processo especial no requisito 3 deve ser controlado e auditado 5. Os administradores e auditores devem ter acesso tanto ao estado do sistema, quanto aos logs de sistema gerados 2005 Gustavo Motta de operação – Estes requisitos sugerem(C) vários princípios ©2002-2004 Matt Bishop 17 Modelos de segurança (17) Modelo Clark-Wilson (Clark & Wilson, 1987) (2) – Princípios Separação de responsabilidades » Caso dois ou mais passos sejam requeridos para realizar uma função crítica, pelo menos duas pessoas diferentes devem executar os passos Separação de função » Desenvolvedores não devem desenvolver novos programas em ambientes de produção, nem processar dados de produção em ambientes de desenvolvimento Auditoria » Sistemas comerciais devem permitir auditorias abrangentes, requerendo, portanto, logs também abrangentes Necessidade de saber » Se um indivíduo necessita saber uma informação específica para desempenhar sua função, o acesso a informação é concedido – Políticas comerciais geralmente demandam uma administração descentralizada, enquanto as militares requerem administração centralizada (C) 2005 Gustavo Motta 18 ©2002-2004 Matt Bishop Modelos de segurança (18) Modelo Clark-Wilson (Clark & Wilson, 1987) (3) • Foco nas transações das aplicações comerciais e na separação de responsabilidades • Integridade definida por um conjunto de restrições – Os dados estão em estado consistente (válido) quando as restrições são satisfeitas • Exemplo: banco – D depósitos diários, SQ saques, SA saldo do dia anterior, SH saldo de hoje Restrição de integridade: SH = D + SA – SQ • Transações bem formadas (TBF) levam o sistema de um estado consistente para outro estado consistente 2005 Gustavo 19 • Questão: quem examina, (C) certifica queMotta elas foram definidas corretamente? ©2002-2004 Matt Bishop Modelos de segurança (19) Modelo Clark-Wilson (Clark & Wilson, 1987) (4) • O modelo (1) – Entidades CDIs: itens de dados constrangidos » Dados sujeitos a restrições de integridade UDIs: itens de dados não constrangidos » Dados não sujeitos a restrições de integridade IVPs: procedimentos de verificação de integridade » Procedimentos que verificam se os CDIs estão em conformidade com as restrições de integridade TPs: procedimentos transacionais » Procedimentos que levam o sistema de um estado válido para outro estado válido (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 20 Modelos de segurança (20) Modelo Clark-Wilson (Clark & Wilson, 1987) (5) • O modelo (2) – Regras de certificação 1 e 2 CR1:quando qualquer IVP executa, ele deve assegurar que todos os CDIs estão num estado válido CR2: para algum conjunto de CDIs associados, uma TP deve transformar tais CDIs de um estado válido para um outro estado (possivelmente diferente) também válido » Define a relação certificada que associa um conjunto de CDIs com uma TP específica » Exemplo: TP saldo, CDIs contas-correntes, num banco (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 21 Modelos de segurança (21) Modelo Clark-Wilson (Clark & Wilson, 1987) (6) • O modelo (3) – Regras de coerção 1 e 2 ER1: o sistema deve manter as relações certificadas e deve assegurar que somente as TPs certificadas para uma CDI possam operar sobre essa CDI ER2: o sistema deve associar um usuário a cada TP e conjunto de CDIs. A TP pode acessar tais CDIs em benefício do usuário associado. A TP não pode acessar as CDIs em benefício de um usuário não associado àquela TP e para estas CDIs » O sistema deve manter e impor a relação certificada » O sistema também deve restringir o acesso (C) 2005 Gustavo Mottabaseado na identidade do usuário (relação permitida) 22 ©2002-2004 Matt Bishop Modelos de segurança (22) Modelo Clark-Wilson (Clark & Wilson, 1987) (5) • O modelo (4) – Usuários e regras CR3: a relação permitida deve atender os requisitos impostos pelo princípio da separação de responsabilidades » A relação permitida é definida por um conjunto de triplas (usuário, TP, {conjunto de CDIs}) ER3: o sistema deve autenticar todo usuário que tente exexcutar uma TP » O tipo de autenticação não é especificado e depende de instanciações do modelo » A autenticação não é necessária antes do uso do sistema, mas é requerida antes da manipulação de CDIs (que requer(C) o uso 2005 deGustavo TPs) Motta ©2002-2004 Matt Bishop 23 Modelos de segurança (23) Modelo Clark-Wilson (Clark & Wilson, 1987) (6) • O modelo (5) – Logging CR4: todas as TPs devem anexar numa CDI (que permite apenas append) informação suficiente para reconstruir uma operação realizada » Esta CDI é o log » O auditor dever ser capaz de determinar o que aconteceu durante a revisão das transações – Lidando com entradas não confiáveis CR5: qualquer TP que recebe como entrada uma UDI pode realizar apenas transformações válidas, ou nenhuma transformação, para todos os valores possíveis da UDI. A transformação ou rejeita a UDI ou a transforma numa CDI » Num banco, números entrados pelo teclado são UDIs, logo podem ser entradas de TPs. TPs devem validar estes números (para torná-los uma CDI) antes de serem usados; caso a validação 2005 Gustavo Motta 24 falhe, a TP rejeita a(C) UDI ©2002-2004 Matt Bishop Modelos de segurança (24) Modelo Clark-Wilson (Clark & Wilson, 1987) (7) • O modelo (6) – Separação de responsabilidades no modelo ER4: apenas o certificador de uma TP pode modificar a lista de entidades associadas com essa TP. Nenhum certificador de TP, ou de uma entidade associada a essa TP, pode, jamais, ter permissão de execução em relação a essa entidade » Impõe a separação de responsabilidades para as relações permitida e certificada (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 25 Modelos de segurança (25) Modelo Clark-Wilson (Clark & Wilson, 1987) (8) • Contribuições do modelo – Captura o modo como as organizações empresariais trabalham com dados Empresas não classificam dados usando um esquema multinível Empresas impõem a separação de responsabilidades – Separa a noção de certificação da noção de coerção Assumindo projeto e implementação corretos, um sistema seguindo esta política assegura que as regras de coerção são obedecidas Entretanto, as regras de certificação requerem intervenção externa e o processo de certificação é, em geral, complexo, e sujeito a erros e a incompletudes » Certificadores fazem suposições sobre o que pode ser confiável (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 26 Modelos de segurança (26) Modelo Clark-Wilson (Clark & Wilson, 1987) (9) • Exemplo: implementação UNIX (1) – Considera-se a relação permitida (usuário, TP, { conjunto de CDIs}) – Cada TP tem um usuário proprietário distinto Estes “usuários” são, na realidade, contas bloqueadas, logo nenhum usuário real pode efetuar login nelas; mas isto fornece a cada TP um UID único para o controle dos direitos de acesso O TP executa com dos direitos de acesso do proprietário e não com os do usuário que executa a TP – O grupo de cada TP contém o conjunto de usuários autorizados a executá-lo (C) 2005 Gustavo Motta – Cada TP é executável apenas pelo grupo, e não por todo mundo ©2002-2004 Matt Bishop 27 Modelos de segurança (27) Modelo Clark-Wilson (Clark & Wilson, 1987) (10) • Exemplo: implementação UNIX (2) – Configurações dos CDIs CDIs são propriedade do root ou de algum usuário único com conta bloqueada O grupo de cada CDI contem os usuários donos de TPs autorizados a manipular a CDI Cada TP pode manipular CDIs para um único usuário – Exemplos: Acesso à CDI restringido apenas por usuário » Na tripla certificada, TP pode ser qualquer TP » Coloque as CDIs num grupo contendo todos os usuários autorizados a manipular a CDI Acesso à CDI restringido apenas por TP » Na tripla permitida, o usuário pode ser qualquer um » As CDIs permitem acesso ao proprietário, o usuário dono da TP (C) 2005 Gustavo Motta » A TP autorizada a acessar a CDIMatt podeBishop ser executada por qualquer um ©2002-2004 28 Modelos de segurança (28) Modelo Clark-Wilson (Clark & Wilson, 1987) (11) • Exemplo: implementação UNIX (3) – Problemas 2 usuários diferentes não podem usar a mesma TP para acessar 2 conjuntos de CDIs distintos » Necessita de 2 cópias separadas do TP (uma para cada usuário e conjunto de CDIs) TPs são programas setuid » Maior ameaça de modificar privilégios inadequadamente, logo necessita-se reduzir seu número O root pode assumir a identidade dos usuários donos das TPs, portanto, não pode ser separado dos certificadores » A resolução deste problema implica numa mudança radical da natureza do root (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 29 Modelos de segurança (29) Modelo Chinese Wall (Brewer & Nash, 1989) (1) • Foco em conflito de interesses encontrados em ambientes empresariais – Considera igualmente a confidencialidade e a integridade • Problema: João é consultor de investimentos para o banco A Ele é convidado para prestar consultoria para o banco B – A aceitação do convite cria uma situação de conflito de interesses O conselho para um banco pode afetar o seu conselho para outros bancos » Os interesses do bancos são conflitantes (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 30 Modelos de segurança (30) Modelo Chinese Wall (Brewer & Nash, 1989) (2) • Organização – Entidades em conflito de interesses são dispostas em classes – O acesso dos sujeitos para cada classe é controlado A escrita em cada classe é controlada para assegurar que informações não sejam repassadas violando regras – Permite que dados “limpos” sejam vistos por qualquer um (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 31 Modelos de segurança (31) Modelo Chinese Wall (Brewer & Nash, 1989) (3) • Definições – Objetos: itens de informação relacionados a uma empresa – Dataset empresarial (CD): contêiner de objetos relacionado a uma única companhia Denotado por CD(O) – Classe de conflito de interesses (COI): contém datasets de empresas competidoras Denotado por COI(O) Assume-se que cada objeto pertence a exatamente uma classe COI Classe COI de bancos Bank of America Citibank Classe COI de cias de petróleo Shell Oil Bank of the West Union ’76 (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop Standard Oil ARCO 32 Modelos de segurança (32) Modelo Chinese Wall (Brewer & Nash, 1989) (4) • Elemento temporal – Caso João leia qualquer CD numa COI, ele jamais poderá ler outro CD nessa COI Possivelmente, a informação apreendida anteriormente poderá influenciar suas decisões futuras Define-se PR(S) como sendo o conjunto de objetos lidos pelo sujeito S • Condição de segurança simples – s pode ler o, se e somente se, uma das condições seguintes for verdadeira: 1. Existe um objeto o tal que s tenha acessado o e CD(o) = CD(o) – Significa que s leu alguma coisa no dataset de o’ 2. Para todo o O, o PR(s) COI(o) ≠ COI(o) – Significa que s não leu nenhum objeto da classe de conflito de interesses de o – Ignora dados “limpos” (C) 2005 Gustavo Motta – Inicialmente, PR(s) = ,©2002-2004 logo, a acesso para primeira leitura é concedido Matt Bishop 33 Modelos de segurança (33) Modelo Chinese Wall (Brewer & Nash, 1989) (5) – Supondo que um único COI tenha n CDs, então pelo menos n sujeitos são necessários para acessar cada CD • “Limpeza” de dados – Informações públicas podem pertencer a um CD Como são disponíveis para todos, os conflitos de interesses não emergem Logo, não deveriam afetar a capacidade de um consultor lê-los, por exemplo Tipicamente, dados que tiveram toda informação sensível removida podem ser liberados publicamente e são chamados de dados “limpos” (sanitized) – Adiciona-se então uma terceira condição à condição de segurança simples: 3. o é um objeto “limpo”(C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 34 Modelos de segurança (34) Modelo Chinese Wall (Brewer & Nash, 1989) (6) • Escrita – João e Ana trabalham na mesma corretora – João pode ler o CD do Citibank e o CD da cia de petróleo Shell – Ana pode ler o CD do Bank of America e o CD da cia de petróleo Shell – Caso João possa escrever no CD da cia de petróleo Shell, Ana poderá ler esta informação Logo, indiretamente, ela pode ler informação do CD do Citibank, um claro conflito de interesses (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 35 Modelos de segurança (35) Modelo Chinese Wall (Brewer & Nash, 1989) (7) • Propriedade-* – s pode escrever em o, se e somente se, as seguintes condições forem verdadeiras 1. A condição de segurança simples permite s ler o; e 2. Para todo objeto o não “limpo”, se s pode ler o, então CD(o) = CD(o) – Diz-se que s pode escrever para um objeto se todos os objetos (não “limpos”) que ele pode ler estão no mesmo dataset • O fluxo de informações não “limpas” fica confinado ao dataset de uma mesma empresa (C) 2005 Gustavo Motta • Informações “limpas” podem fluir livremente pelo sistema ©2002-2004 Matt Bishop 36 Modelos de segurança (36) Modelo Chinese Wall (Brewer & Nash, 1989) (8) • Discussão dos modelos Bell-LaPadula e Chinese-Wall – Fundamentalmente diferentes O Chinese-Wall não tem rótulos de segurança, enquanto o Bell-LaPadula tem O Chinese-Wall tem a noção de acesso passado, enquanto o Bell-LaPadula não tem – Bell-LaPadula pode capturar um estado do Chinese-Wall em qualquer momento Cada par (COI, CD) tem uma categoria de segurança atribuída Duas liberações, S (“sanitized”) and U (“unsanitized”) são definidas » U dom S São atribuídos níveis de segurança para sujeitos, desde que para compartimentos sem múltiplas categorias correspondendo a CDs numa mesma classe COI » O nível de segurança (U, {Bank of America, ARCO}) é atribuído para João, de modo que ele possa acessar CDs de COIs distintos » Embora o Bell-LaPadula possibilite o nível (U, {Bank of America, Citibank)}, o modelo Chinese-Wall o proíbe existir, porque as categorias (CDs) estão num mesmo COI 37 (C) de 2005 Gustavo Motta Matt Bishoppermite a existência de 12 níveis de segurança » No exemplo visto, ©2002-2004 o modelo Chinese-Wall Modelos de segurança (37) Modelo Chinese Wall (Brewer & Nash, 1989) (9) • Discussão dos modelos Bell-LaPadula e Chinese-Wall – Bell-LaPadula não é capaz de acompanhar mudanças que ocorrem com o passar do tempo Susana fica doente, Anna precisa substituí-la » A historia dos acessos de Ana no Chinese Wall indica se ela pode ou não substituí-la » Não há como o Bell-LaPadula capturar isto – Restrições de acesso se modificam com o passar do tempo Inicialmente, sujeitos no modelo Chinese-Wall podem ler qualquer objeto O modelo Bell-LaPadula restringe o conjunto de objetos que um sujeito pode ler » Uma solução, seria, inicialmente, liberar todos os sujeitos para todas as categorias » Porém, isto violaria a condição de segurança simples do modelo Chinese-Wall » Necessita de uma entidade confiável para modificação dos níveis de segurança no modelo BellLaPadula – Conclusão: o modelo Bell-LaPadula não pode emular o modelo Chinese Wall38 (C) 2005 Gustavo Motta ©2002-2004 Bishopsão distintos fielmente, implicando que os dois Matt modelos Modelos de segurança (38) Modelo Chinese Wall (Brewer & Nash, 1989) (10) • Discussão dos modelos Clark-Wilson e Chinese-Wall – O modelo Clark-Wilson cobre vários aspectos de integridade, como validação e verificação, assim como aspectos de controle de acesso Como o modelo Chinese-Wall lida exclusivamente com controle de acesso, não pode emular o modelo Clark-Wilson completamente Considera-se apenas os aspectos de controle de acesso – O modelo Chinese Wall trata sujeitos como usuários humanos que executam ou tentam executar transações num sistema – Uma única pessoa poderia usar múltiplos processos para violar a condição de segurança simples do modelo Chinese Wall Mas, ainda assim, estaria em conformidade com o modelo Clark-Wilson Entretanto, o modelo Chinese-Wall é consistente com o modelo Clark-Wilson, quando se requer que um “sujeito” seja uma pessoa específica, assim como os processos que atuem em seu benefício (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 39 Modelos de segurança (39) Controle de acesso controlado pelo originador (ORCON) (1) • Problema – Uma organização que crie um documento, deseja controlar sua disseminação – Exemplo: Uma empresa de desenvolvimento de software criou e distribui para empresas parceiras o código fonte de um programa. Qualquer disseminação futura deste código deve ser autorizado pelo criador. Ou seja, o acesso é controlado pelo criador (originador) • Requisitos – Sujeito s S marca objeto o O como ORCON em benefício da organização X. X permite a distribuição de o para sujeitos atuando em benefício da organização Y com as seguintes restrições: 1. o não pode ser liberado para sujeitos atuando em benefício de outras organizações sem a permissão de X, e (C) 2005 Gustavo Motta 2. Quaisquer cópias de o©2002-2004 devem ter Matt as mesmas restrições colocadas para ele Bishop 40 Modelos de segurança (40) Controle de acesso controlado pelo originador (ORCON) (2) • O controle de acesso discricionário falha em atender estes requisitos – O proprietário pode modificar quaisquer permissões Não se pode impor a restrição do item 2 anterior • O controle de acesso compulsório também falha – Primeiro problema: explosão de categorias Categoria C contém o, X, Y, nada mais. Se um sujeito y Y deseja ler o, x X faz uma cópia o de o. Note que o tem categoria C. Se y deseja conceder para z Z uma cópia, z deve estar em Y—por definição, ele não está. Caso x deseje conceder para w W o direito de ler o documento, então uma nova categoria C contendo o, X, W é necessária – Segundo problema: abstração A classificação no MAC, assim como as categorias, são controladas centralmente, e o acesso também é controlado por uma política centralizada 2005 Gustavo Motta ORCON é controlado (C) localmente ©2002-2004 Matt Bishop 41 Modelos de segurança (41) Controle de acesso controlado pelo originador (ORCON) (3) • O ORCON combina ambos os enfoques – DAC e MAC – O proprietário de um objeto não pode modificar os controles de acesso do objeto – Quando um objeto é copiado, as restrições de controle de acesso desta fonte também são copiados e anexados à cópia – Estas regras são compulsórias – MAC – o proprietário não tem controle – O criador (originador) pode alterar as restrições de controle de acesso por sujeito e por objeto O proprietário tem o(C)controle, como no DAC 2005 Gustavo Motta ©2002-2004 Matt Bishop 42 Modelos de segurança (42) Controle de acesso baseado em papéis (RBAC) (Ferraiolo et al., 2001) (1) • Acesso regulado segundo os papéis exercidos pelo usuário – Um papel denota uma função organizacional Autoridade Responsabilidade • Autorizações de acesso são atribuídas para papéis e não usuários (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 43 Modelos de segurança (43) Controle de acesso baseado em papéis (RBAC) (Ferraiolo et al., 2001) (1) • Papéis são atribuídos para usuários de acordo com suas funções – Princípio da necessidade de saber/fazer é inerente ao modelo • Separação de responsabilidades estática e dinâmica • Facilita a administração da política de acesso – Visão organizacional – Mudanças de pessoal têm baixo impacto Facilita procedimentos de admissão/demissão (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 44 Modelos de segurança (44) Controle de acesso baseado em papéis (RBAC) (Ferraiolo et al., 2001) (1) • Padrão estabelecido pelo NIST – ANSI/INCITS 359-2004. Information Technology: Role Based Access Control. InterNational Committee for Information Technology Standards, Feb. 2004. 56 p. – Slide Presentation on Proposed RBAC Standard – Presentation on RBAC standard (courtesy Wilfredo Alvarez) (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 45 Referências (1) BELL, D. e LAPADULA L. Secure Computer System: Unified Exposition and Multics Interpretation. Technical Report MTR-2997 Rev. 1, MITRE Corporation, Bedford, MA (Março 1975). CLARK, D.; WILSON, D. A comparison of commercial and military computer security policies. In: IEEE SYMPOSIUM ON SECURITY AND POLICY, 1987. Proceedings... p. 184-194. LIPNER, S. Non-Discretionary Controls for Commercial Applications. In: THE 1982 SYMPOSIUM ON PRIVACY AND SECURITY, 1982. Proceedings... p. 2–10. BREWER, D. F. C.; NASH, M. J. The Chinese wall security policy. In: IEEE SYMPOSIUM ON SECURITY AND POLICY, 1989. Proceedings... p. 206-214. FERRAIOLO, D. F.; SANDHU, R.; GAVRILA, S.; KUHN, D. R.; CHANDRAMOULI, R. Proposed NIST standard for role-based access control. ACM Transactions on Information and System Security, v. 4, n. 3, p. 224-274, ago. 2001. (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 46