Resumos dos capítulos :::

Segurança em Sistemas de Computação

  1. Introdução

  2. Autenticação

  3. Controle de permissões

Os tópicos a serem examinados podem ser encontrados nos seguintes capítulos de livros:

  1. Computer Networks, Tanenbaum, cap. 7

  2. Modern Operating Systems, Tanenbaum, cap. 4

  3. Operating Systems Concepts, Peterson/Silberschatz, cap. 11

  4. Outros bons livros de redes de computadores ou de sistemas operacionais, nos capítulos sobre segurança

1. Introdução

No capítulo anterior mencionou-se que segurança seria um dos serviços a serem providos pela camada de aplicação de um protocolo de rede. Entretanto, a segurança de um sistema computacional não difere muito se tratada do ponto de vista de rede ou de uma máquina isolada, uma vez que o problema básico de segurança é o controle de acesso, que pode ser dividido entre as atividades de autenticação do usuário e de controle de permissões. Essas duas atividades, exceto pelo escopo de sua atuação e vulnerabilidade, são semelhantes quer aplicadas para uma ou mais máquinas.

Nesse capítulo faremos uma revisão rápida dos principais problemas envolvidos em fornecer segurança a um sistema computacional (máquina ou rede), examinando inicialmente os problemas envolvidos com autenticação e depois aqueles referentes ao controle de permissões. Saliente-se que o exame desse tópico aqui não deve, nem pode, ser considerado como um curso introdutório de segurança de computadores.

Assim sendo, é interessante começar com uma lista de alguns dos tipos mais comuns de ataques perpretados contra sistemas de computação. São eles:

  1. Denial of Service (DoS) ou Distributed Denial of Service (DDoS), em que uma máquina recebe um número exorbitante de solicitações de serviço causando sua paralização;

  2. Brechas de sistema, em que se aproveita de bugs na implementação de um sistema operacional para se ganhar acesso ao equipamento. Isso envolve, em geral, uso de scanners que procuram na rede por sistemas que apresentem tais vulnerabilidades;

  3. Sniffing, em que se escuta as mensagens circulando pela rede na busca de dados importantes, como nomes de usuários e de suas senhas.

2. Autenticação

O serviço de autenticação de usuários é o responsável por permitir que o acesso lógico ao sistema seja habilitado na forma e grau determinados para cada usuário. Tanto do ponto de vista de acesso à rede quanto de uma máquina, o processo de autenticação envolve a identificação do usuário.

Dependendo do grau de restrição de acesso ao sistema, o processo de autenticação exige procedimentos distintos. Por exemplo, numa máquina isolada, instalada em um quarto de uma residência, a autenticação pode envolver simplesmente o acesso físico ao equipamento, através da chave da residência. Já num ambiente de máxima segurança esse processo pode envolver mecanismos sofisticados, tais como verificação de timbre vocal, iris do olho, impressão digital, DNA, etc.

O tratamento dos problemas associados ao processo de autenticação se restringem basicamente à possibilidade de burla de senhas ou outros mecanismos quaisquer. Numa máquina isolada cabe ao usuário cuidar que sua senha não seja facilmente descoberta e que a mesma seja trocada com uma certa frequência. Numa rede o problema é agravado com a possibilidade de escutas na rede (sniffers), que podem capturar nomes e senhas de usuários que estejam fazendo acesso remoto, ou ainda por malwares para captura dessas informações. O problema com sniffers pode ser minimizado se os mecanismos de acesso remoto fizerem uso de criptografia, como é o caso do ssh, por exemplo.

Na prática, então, o controle de autenticação depende de um bom mecanismo de proteção de informações, que vai desde serviços de criptografia (existem inúmeras técnicas para se criptografar, como PGP, DES, RSA, etc.) até mesmo ao cuidado do usuário em evitar que sua senha seja óbvia ou que o vejam digitando-a.

No contexto de redes de computadores, esses cuidados dever ser ampliados para incluir autenticação de máquinas. Isso significa garantir que as máquinas em conexão são, de fato, as máquinas esperadas. Uma forma de se resolver isso é através do um serviço de DNS reverso de encaminhamento confirmado (FRrDNS), que procura garantir as identidades das máquinas envolvidas.

3. Controle de permissões

Uma vez que o usuário tenha ganho acesso ao sistema ainda é preciso controlar suas ações dentro dele. Isso envolve basicamente a verificação das permissões dadas a ele, controlando o acesso do mesmo aos vários recursos do sistema (máquinas, aplicativos, comandos, arquivos) de acordo com tais permissões.

O modo de se realizar esse controle varia de sistema para sistema e de recurso para recurso. No caso de arquivos (e diretórios), por exemplo, o controle normalmente é feito através de informações armazenadas sobre cada arquivo, que dizem o tipo de acessibilidade que o mesmo tem. A mesma estratégia pode ser usada para o acesso a aplicativos e comandos do sistema.

Para o acesso a máquinas, a estratégia pode envolver o uso de mecanismos de autenticação explícitos ou ainda, como é o caso do UNIX, fazer uso de arquivos que delimitam o acesso de cada máquina ou aplicação (arquivos .allow e .deny, por exemplo).

Vale ainda indicar aqui que no caso de uma máquina, todo esse controle de segurança é feito pelo sistema operacional, através de seu módulo de gerenciamento de arquivos (o Sistema de Arquivos), que será examinado no próximo capítulo.


 
 
DISCLAIMER
 
 
O conteúdo desta página é de minha total responsabilidade, não representando o pensamento ou posições da UNESP.