Segundo a NBR ISO/IEC 27001:2006 (2006), o conceito de segurança da informação consiste na preservação das propriedades de confidencialidade, de integridade e de disponibilidade da informação. A preocupação com a segurança da computação é um fator relevante no desenvolvimento e na aplicação tecnológica dos computadores em toda a sociedade (LANDWEHR, 2001).
Para Landwehr (2001), para um sistema ser seguro, cinco propriedades de segurança devem ser garantidas. A seguir essas propriedades são descritas:
1. Confidencialidade: garantia de que a informação não será divulgada sem autorização;
2. Integridade: garantia de que a informação não será modificada sem autorização;
3. Disponibilidade: garantia de que a informação ou recurso estará acessível para os usuários autorizados sempre que requisitados6;
4. Autenticidade: garantia de que cada entidade é quem afirma ser;
5. Não-repúdio: garantia de que a participação de uma entidade em uma dada transação ou evento não pode ser negada.
A violação de segurança ocorre quando há a quebra de uma ou mais propriedades de segurança (BRANDÃO; FRAGA, 2008). Vulnerabilidade é a fraqueza em um sistema de informação, nos procedimentos de segurança, nos controles internos ou na implementação do sistema que pode ser explorada por uma ameaça (CNSSI-4009, 2006).
Ameaça é qualquer circunstância ou evento com potencial para afetar negativamente as operações de um sistema de informação através de acesso não autorizado, da destruição, da divulgação, da modificação de informações e/ou da negação de serviço. Intrusão é quando um ataque foi bem sucedido, ou seja, um ato não autorizado de contornar os mecanismos de segurança.
(CNSSI-4009, 2006).
6 Esta dissertação tem como foco a propriedade de segurança de disponibilidade.
O risco é a medida da extensão em que uma entidade está ameaçada por um potencial circunstância ou evento. O que pode ser representado na função dos impactos adversos que surgem se a circunstância ou evento ocorrer e da probabilidade de ocorrência (CNSSI-4009, 2006).
Stallings (2008) apresenta a arquitetura de segurança OSI (Open System Interconnection)7 que oferece uma estrutura sistemática para definir os requisitos de segurança e caracterizar as técnicas para satisfazer esses requisitos. Essa arquitetura engloba serviços de segurança, ataques e mecanismos.
Um serviço de segurança aumenta a segurança dos sistemas de processamento de dados e as transferências de informação. Os serviços de segurança servem para frustrar ataques à segurança e utilizam um ou mais mecanismos de segurança para garantir as propriedades se segurança (STALLINGS, 2008).
2.2.1 Ataque à segurança
Conforme Stallings (2008), um ataque à segurança pode ser definido como qualquer ação que comprometa a segurança da informação. Esses ataques são classificados em ataques passivos e ataques ativos.
Um ataque passivo tenta monitorar o sistema com o objetivo de obter informações, mas não afeta os recursos ou altera os dados envolvidos. Por essa razão, esse tipo de ataque é muito difícil de detectar. A prevenção dos ataques passivos é a melhor forma de impedir o sucesso do ataque e o emprego de criptografia é normalmente adotado para esse fim (STALLINGS, 2008).
Ainda segundo Stallings (2008), os ataques passivos podem ser de dois tipos:
Liberação do conteúdo da mensagem (eavesdropping): ocorre quando uma informação é captada e o seu conteúdo é lido pelo atacante; e
7 A arquitetura de segurança OSI é proposto pela ITU (International Telecomunications Union), a qual realiza uma série de especificações para padrões de comunicação entre sistemas. A arquitetura de segurança OSI não está relacionada com o modelo de rede em sete camadas, conhecido como modelo OSI ou camadas OSI.
Analise de tráfego: ocorre quando o tráfego da troca de uma informação (criptografada ou não) é analisado para identificar padrões nas mensagens. Com a análise, o atacante poderia descobrir o local, a identidade dos envolvidos e qual a natureza da comunicação.
Ao contrário das características dos ataques passivos, os ataques ativos envolvem alguma modificação do fluxo de dados ou na formação de um fluxo falso, afetando a operação do sistema.
Stallings (2008) divide os ataques ativos em quatro categorias:
Disfarce (impersonation ou masquerading): ocorre quando uma entidade finge ser outra entidade diferente;
Repetição (replay): ocorre quando os dados são capturados passivamente e subsequentemente retransmitidos para produzir um efeito não autorizado;
Modificação da mensagem: ocorre quando alguma parte da mensagem original é alterada para produzir um efeito não autorizado;
Negação de serviço (Denial-of-Service ou DoS): ocorre quando há um impedimento ou inibição do uso ou gerenciamento normal das instalações de comunicação.
Segundo Texier (2009), um sistema baseado em uma NoC insegura pode ser alvo de três categorias de ataque:
Sequestro (hijacking): Nesta categoria, o atacante faz um acesso de escrita em uma área segura com o intuito de modificar a execução ou a configuração do sistema, comprometendo a sua integridade;
Extração de informação secreta: Nesta segunda categoria, o atacante tenta obter dados sensíveis ou privados em áreas de memória ou registradores; e
Negação de serviço: Assim como na categorização feita por Stallings (2009), nesta categoria o atacante também visa degradar o desempenho do sistema seja: (i) consumindo a largura de banda da rede com acessos repetitivos; (ii) injetando um pacote na rede destinado a um endereço inexistente de modo a bloquear alguns recursos da rede (ex.:
buffers de roteadores); (iii) criando deadlocks que paralisam a rede inteira; ou (iv) injetando um pacote que nunca encontre um destinatário e fique rodando infinitamente na rede (em livelock), aumentando a latência, o consumo de banda e a energia.
2.2.2 Mecanismos de segurança
O mecanismo de segurança é um processo projetado para detectar, impedir ou permitir a recuperação de um ataque à segurança (STALLINGS, 2008). Os mecanismos de segurança específicos podem ser categorizados como:
Cifragem: mecanismo que usa algoritmos matemáticos para transformar dados em um formato que não seja prontamente decifrável;
Assinatura digital: mecanismo que utiliza a transformação criptográfica ou através de dados anexados para permitir que o destinatário comprove a origem e a integridade dos dados;
Controle de acesso: mecanismo que impõe direitos de acesso aos recursos;
Integridade dos dados: mecanismo que busca garantir a integridade de dados ou fluxo de dados;
Troca de informações de autenticação: mecanismo que busca garantir a identificação de uma entidade por meio da troca de informações; e
Preenchimento de tráfego: mecanismo com a inserção de bits nas lacunas de um fluxo de dados para frustrar as tentativas de análise de tráfego.