Resumo de artigo: “Paradigmas de Segurança em Sistemas de Informação”

Resumo do artigo “Paradigmas de Segurança em Sistemas de Informação” Desenvolvido pelos estudantes do Instituto de Computação da Universidade Estadual de Campinas Diogo Ditzel Kropiwiec e Paulo Lício de Geus.

Download do Artigo "Paradigmas de Segurança em Sistemas de Informação", disponível em: http://www.mediafire.com/view/9lv65q91rt0a8u1/04%20paradigmas%20de%20segurança%20em%20sistemas%20operacionais.pdf

Download do Resumo do Artigo, disponível em:

                Os estudantes da Universidade Estadual de Campinas Diogo Ditzel Kropiwiec e Paulo Lício de Geus elaboraram um estudo sobre os Paradigmas de Segurança da Informação, visto o crescimento no numero de incidentes ocorridos nesse contexto, ou seja, o avanço dos hackers diante de falhas de segurança nos Sistemas Operacionais.

                Inicialmente, os sistemas operacionais foram desenvolvidos com uma preocupação não tão especial em se tratando de segurança. No entanto, a expansão computacional, principalmente em razão do advento da computação em rede resultou em uma grande nuvem de informações, muitas vezes de muito valor, o que rapidamente passou a ser alvo de hackers e criminosos.


Os sistemas operacionais de uso mais comum, ou uso corrente como eles definem, estão enquadrados em derivados do Unix, Windows, e MacOS, os quais são classificados como sistemas operacionais de terceira geração [Tanenbaum and Woodhul, 1997][1]. Por isso, tais sistemas apresentam uma estrutura e paradigmas básicos de segurança, nos quais se é detalhadamente analisado e discutido as características, falhas e maneiras de solucioná-las. São abordados conceitos de direitos de acesso de um usuário (ou grupo de usuários) a um recurso (arquivo, periférico, memória, etc.), baseado no conceito de permissões de acesso em anéis.

O primeiro paradigma de segurança presente nesses sistemas de terceira geração apresentado consiste do usuário como limitador de segurança. Cada usuário compõe o seu próprio domínio, que se trata de um conjunto de permissões de leitura, escrita e execução, que o mesmo associa para arquivos e aplicações. Como fica a critério e responsabilidade de cada usuário compor o seu domínio conforme necessidades, aplicativos e arquivos pertinentes, é muito comum que essa configuração seja tratada de forma errônea, seja por desconhecimento, descuido ou descaso. Isso causa algumas vulnerabilidades nos sistemas, que podem comprometê-los de forma drástica. A primeira delas pode ocorrer, se um dos domínios estiver comprometido, e caso, outros domínios permitirem, esse pode acessar indevidamente arquivos de outros domínios e assim por diante. Outro ponto relevante complementado pelos estudantes está na execução de aplicações. Por serem executadas por um determinado usuário, as aplicações consequentemente podem ter contato indevido com o domínio do mesmo, caso o software esteja configurado por algum invasor para isso.

O segundo paradigma apontado consiste na concentração e isolamento dos direitos privilegiados do computador. Nesses sistemas operacionais, esses direitos são atribuídos a um usuário denominado super-usuário ou administrador, e possibilita a ele acesso a todos os recursos da máquina e operações privilegiadas. É importante perceber, que algumas operações privilegiadas são necessárias para execução de algumas aplicações. Já que geralmente são executados por outros usuários, que não o administrador, o núcleo desses sistemas operacionais possuem um interface bem definida para filtrar essas tarefas privilegiadas permitindo o acesso apenas a subconjunto do domínio principal, impedindo assim que seja causada alguma falha de operação do sistema operacional, seja acidentalmente ou intencionalmente. Nesse contexto, surge um problema bastante sério a ser discutido. Conforme observado por Kropiwiec e Geus, algumas aplicações necessitam de acesso privilegiado a alguma operação não suportada pela API, e acabam tendo acesso irrestrito ao domínio do super-usuário. Caso esse aplicativo seja mal intencionado, ele pode comprometer todo o sistema, já que tem acesso irrestrito a todos os recursos pela definição do primeiro paradigma. Segundo eles, isso ocorre principalmente pela falta de granularidade dos sistemas operacionais, ou seja, todos os privilégios são centralizados e isolados em um único domínio, o do super-usuário, impossibilitando a aplicação ter acesso apenas a um subconjunto mínimo de operações necessárias que possuam menos importância para a confiabilidade e segurança do sistema.

O terceiro paradigma exposto, e também como o mais seguro entre os três está na cifragem das informações. Compõem técnicas de cifragem aplicadas tanto a rede como quanto ao armazenamento de dados em disco rígido. Com base em chaves de criptografia, o usuário tem a garantia de que mesmo que outros usuários tenham acesso a informação ou dado, esta será ilegível para o invasor, por não dispor da chave de criptografia apropriada. Apesar de o terceiro paradigma ser considerado como o mais seguro, os estudantes apontam a possibilidade dos invasores terem acesso às chaves criptografadas necessárias através do domínio do super-usuário, e ainda complementam que mesmo que não consigam ler os arquivos, eles podem ser apagados apenas com acesso ao domínio do usuário proprietário.

A partir de todos esses problemas citados, os estudantes da Universidade Estadual de Campinas defendem a tese de existir uma grande necessidade de desenvolvimento e implantação de novos paradigmas de segurança para sistemas operacionais, que possam sustentar um desenvolvimento computacional seguro, sem depender exclusivamente das aplicações.

Em se tratando de novos paradigmas de segurança, os estudantes classificaram três que julgaram ser mais relevantes e solucionadores: o controle de acesso mandatório, o principio do privilégio mínimo, e, proteção dos mecanismos da API do sistema operacional. O principio de controle de acesso mandatório (MAC) consiste em um conjunto de politicas de segurança que limitam as permissões que usuário dispõe sobre arquivos e aplicações, o que surge assim, a necessidade de um administrador de politicas de segurança, distinto e isolado do administrador do sistema operacional, solucionando a falha apresentada pelo segundo paradigma dos sistemas operacionais de terceira geração. Com base em [Ferraiolo and Kuhn, 1992][2], os estudantes definem o principio de privilegio mínimo como sendo a ideia de que as operações de cada usuário e aplicação sejam classificadas somente conforme o necessário para executar suas tarefas, a fim de impedir acessos privilegiados, por aplicações ou usuários comuns, contornando assim os problemas apresentados pelos primeiro, segundo e terceiro paradigmas de segurança apresentados. Por último, mecanismos da API devem ser protegidos pelo próprio sistema operacional, contra ataques de spoofing, contorno (bypassing) e interferência (tampering). Para que isso ocorra, precisa ser garantido que os mecanismos como canais de comunicação, mecanismos de criptografia, controle de acesso, acesso aos dispositivos de entrada e saída, entre outros não tenham seu comportamento alterado seja por qualquer aplicação ou qualquer outra vulnerabilidade do sistema, o que reduz em muito a chance de invasões indesejadas.

No estudo, são citados como exemplos de sistemas operacionais que já adotam os novos paradigmas de segurança, o micro-kernel, o Fluke, o Exokernel, o L4, o Flask, e o DTOS. A grande maioria já se baseia em um gerenciador de politicas  e restritor de segurança. No entanto, esses sistemas não compõem o quadro de sistemas operacionais utilizados nas grandes organizações e empresas, tampouco para uso pessoal. Segundo o artigo, é possível perceber que os computadores mais comuns utilizados são em grande escala, se não em quase sua totalidade, baseados em sistemas compostos pelos paradigmas antigos de segurança. Por isso, apesar dos estudantes apontarem a grande importância em se implantar sistemas com novos paradigmas de segurança nas empresas, organizações, e até para uso pessoal, eles dizem ser muito difícil substituir todos os sistemas, pois gera a necessidade de adaptação não só de novos sistemas e desenvolvimento de novas aplicações como também de treinamento de pessoas, e isso tudo geraria um custo inviável para o negócio empresarial de qualquer empresa. Outra sugestão, segundo eles, é a reestruturação dos sistemas já existentes para se adequarem aos novos paradigmas, no entanto, também gera vários problemas de incompatibilidade, não só de software, mas de hardware também.

Finalmente, os estudantes Diogo Ditzel Kropiwiec e Paulo Lício de Geus, explicam que os sistemas operacionais amplamente distribuídos e utilizados hoje em dia, são provenientes de uma geração onde os riscos eram bem menores e isolados, logo não dispõem de segurança necessária para o atual quadro computacional que devido à expansão da computação em rede, os ambientes ficam muito mais vulneráveis a ataques e invasões do que antigamente. Por isso ao concluírem, defendem a necessidade de focar a atenção em novos paradigmas de segurança, como aprimoramento de técnicas de programação segura, topologias de redes, firewalls, além do desenvolvimento e estudo das politicas de segurança de sistemas operacionais futuros, a fim de que a própria filosofia, arquitetura e estrutura dos mesmos dificultem ou até impossibilitem ataques que hoje em dia são comuns.



[1] Tanenbaum, A. S. and Woodhull, A. S. (1997). Operating systems: Design and Implementation.
Prentice Hall, New Jersey - USA, 2nd edition.
[2] Ferraiolo, D. and Kuhn, R. (1992). Role-based access control. In Poceedings of The 15th
National Computer Security Conference.

Nenhum comentário:

Postar um comentário