Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 MECANISMOS DE SEGURANÇA DE REDES 1 SUMÁRIO NOSSA HISTÓRIA .......................................................................................... 2 Tecnologia da informática ................................................................................ 3 DADOS ............................................................................................................ 4 SISTEMAS GERENCIADORES DE BANCOS de dados ................................ 7 Principais recursos de um SGBD .................................................................. 10 Segurança de redes ...................................................................................... 11 A segurança e o DBA .................................................................................... 17 CONTROLE DE FLUXO ................................................................................ 17 CRIPTOGRAFIA ............................................................................................ 18 BACKUPS ..................................................................................................... 19 Usuários ........................................................................................................ 19 Domínio de Segurança .................................................................................. 20 Privilégios ...................................................................................................... 20 Controle de acesso obrigatório e para segurança multi-nível ........................ 21 Controle de acesso baseado em papéis ........................................................ 22 Controle de acesso utilizando Triggers .......................................................... 23 Controle de acesso utilizando Views ............................................................. 23 REFERENCIAS ............................................................................................. 24 2 NOSSA HISTÓRIA A nossa história inicia com a realização do sonho de um grupo de empresários, em atender à crescente demanda de alunos para cursos de Graduação e Pós- Graduação. Com isso foi criado a nossa instituição, como entidade oferecendo serviços educacionais em nível superior. A instituição tem por objetivo formar diplomados nas diferentes áreas de conhecimento, aptos para a inserção em setores profissionais e para a participação no desenvolvimento da sociedade brasileira, e colaborar na sua formação contínua. Além de promover a divulgação de conhecimentos culturais, científicos e técnicos que constituem patrimônio da humanidade e comunicar o saber através do ensino, de publicação ou outras normas de comunicação. A nossa missão é oferecer qualidade em conhecimento e cultura de forma confiável e eficiente para que o aluno tenha oportunidade de construir uma base profissional e ética. Dessa forma, conquistando o espaço de uma das instituições modelo no país na oferta de cursos, primando sempre pela inovação tecnológica, excelência no atendimento e valor do serviço oferecido. 3 TECNOLOGIA DA INFORMÁTICA A tecnologia tem se tornado cada vez mais predominante em todos os segmentos da sociedade. Podemos citar alguns exemplos, como educação, emissão de documentos fiscais, transações bancárias, dentre muitos outros. É fundamental que essa informação seja armazenada, mas também que esteja corretamente armazenada, para que possa ser utilizada com agilidade e eficiência quando houver necessidade. No Brasil, no que tange a emissão de documentos fiscais, passou-se a utilizar de documentos eletrônicos em formato XML (eXtensible Markup Language) para a troca de informações. Documentos estes que podem ser gerados, transmitidos e armazenados pela Receita Federal ou até mesmo pelos contribuintes. Estes documentos XML devem ser armazenados por um determinado período exigido por lei, e esse armazenamento é essencial para que seja possível realizar futuras consultas. A Linguagem XML foi inicialmente desenvolvida para ser utilizada na WEB e foi reconhecida como uma abordagem importante para representar dados semiestruturados. Sua estrutura simples tornou a XML ideal para o intercâmbio de informações entre fontes heterogêneas. Em contrapartida os bancos de dados relacionais representam uma coleção de dados estruturados, organizados em forma de tabelas e registros. O armazenamento destes documentos, no formato digital em um SGBD (Sistema Gerenciador de Banco de Dados) permite uma maior flexibilidade, segurança e organização. Essa forma torna o processo de armazenamento e consulta destes documentos muito mais fácil e rápido, desde que o SGBD possua o suporte necessário para que seja possível armazenar e consultar os documentos nativamente, ou seja, é uma maneira direta de armazenar os documentos XML em uma coluna, utilizando o data type XML, preservando a ordem e estrutura do documento. 4 Considerando este contexto, torna-se de grande valia definir quais tecnologias em SGBD são mais adequadas para armazenar os documentos eletrônicos em formato XML. Para que esta escolha seja a mais assertiva possível, devem-se estabelecer parâmetros que permitam que o SGBD seja avaliado em uma série de aspectos relevantes, como desempenho, estabilidade, capacidade de processamento. DADOS Armazenar informações em bancos de dados nas últimas décadas se tornou ponto crucial de muitos sistemas. A informação é muitas vezes considerada o recurso mais valioso da empresa, e possuir esse material e poder acessá-lo sempre que for necessário chega a ser primordial para a tomada de decisões importantes. Assim, ter controle de acesso a essas informações garante a segurança dos dados e confiabilidade naquilo que está sendo armazenado. Banco de Dados ou Base de Dados se trata de um conjunto de dados relacionados armazenados, de forma a permitir a manipulação de tais dados, como alterar, inserir, remover e realizar consultas. SIEBRA (2010). De acordo com SIEBRA (2010; p.8): “Os tipos de “coleções de dados” são ilimitados (ex: dados de um produto, de um estudante, mapas, dados sobre genes humanos, etc), ou seja, quaisquer aplicações do mundo real que possam ser representadas através de dados computáveis poderão ser armazenadas em um banco de dados”. DATE (2000), descreve: “Um Banco de Dados é uma coleção de dados operacionais armazenados, sendo usados pelos sistemas de aplicação de uma determinada organização”. De acordo com o autor Rezende (2003) dados são conjuntos de informações puras, podendo ser organizadas ou não. E podem ser considerados como sendo quantitativos, qualitativos, categóricos e indefinidos. Conforme os autores Navathe e Elmasri (2011), o modelo relacional de dados representa o banco de dados, como sendo uma coleção de relações, cada relação é semelhante a uma tabela de valores ou até certo ponto, um arquivo plano de registros. Ele é chamado arquivo plano porque cada registro tem uma simples estrutura linear 5 ou plana. Uma relação é considerada uma tabela de valores, onde cada linha representa uma coleção de valores e dados relacionados. Cada uma das linhas representa um fato que normalmente corresponde a uma entidade ou relacionamento do mundo real. (NAVATHE;ELMASRI, 2011). De acordo com Mello (2003) os Dados Estruturados são dados que seguem um modelo pré-definido, ou seja, na sua representação são regidos por regras, estão subordinados a manter um padrão imposto por um esquema definido antes do conhecimento dos dados. Segundo os autores Navathe e Elmasri (2011) dados pertencentes ao modelo relacional podem possuir muitas relações em um banco de dados relacional. As tuplas pertencentes a estas relações podem estar relacionadas de várias formas, como por exemplo, constraints e outras regras pertencentes ao minimundodo banco de dados. Sendo assim, os Bancos de Dados Relacionais consistem em um conjunto de tabelas, que contém linhas e colunas e se relacionam entre si, delimitados por uma estrutura rígida. Cada tabela possui várias colunas e cada uma das colunas tem um nome único. Elas possuem ainda colunas que são definidas como campos chaves e possibilitam a conexão entre elas. É possível realizar consultas por meio de linguagens como a SQL (Structured Query Language), sendo que toda consulta feita resulta também em uma tabela (NAVATHE;ELMASRI, 2011). Bancos de Dados Relacionais sempre prezam pela consistência dos dados que nele são armazenados, isso se deve ao conjunto de regras de integridade presentes no modelo relacional como integridade de chave e integridade referencial. A organização interna dos SGBDR’s é fundamental para que o modelo relacional possa atingir o máximo de confiabilidade, pois sempre que um dado for solicitado este deverá ser localizado e apresentado. Não Estruturados Ao contrário dos dados estruturados, os dados não estruturados não apresentam qualquer padrão, não podem ser armazenados de acordo com um esquema. Exemplos de tais dados são: as imagens, o texto livre, vídeos, documentos, dentre outros (MELLO, 2003). 6 Semiestruturados De acordo com os autores Abiteboul, Suneman e Suciu (2000) Dados semiestruturados são aqueles nos quais há um sistema de representação presente, explícita ou implicitamente. Pode-se dizer que dados semiestruturados são auto- descritivos. Os autores Navathe e Elmasri (2011) complementam que em dados semiestruturados as informações do esquema são misturadas com os valores dos dados, pois os objetos podem ter atributos diferentes que geralmente não são conhecidos de forma antecipada. E segundo o autor Mello (2003), ao contrário dos dados estruturados, os dados não estruturados não apresentam qualquer padrão, não podem ser armazenados de acordo com um esquema. Mesmo em sistemas de integração nos quais as fontes de dados são estruturadas, é comum o aparecimento de informações semiestruturadas. Dados semiestruturados apresentam uma representação de estrutura heterogênea, de forma a não serem completamente não estruturados, nem estritamente tipados (ATZENI; MECCA; MERIALDO, 2016). O exemplo mais prático e conhecido de dados com essa característica heterogênea citada acima, são os dados contidos na web, onde fontes de origens diversas, com padrões diferentes são lançadas neste mundo virtual que é a internet. Outro ponto que merece ser mencionado em relação a estes dados é que são considerados auto-descritivos, pois possuem uma representação na qual o esquema está presente no próprio dado. Sendo assim, o esquema não é pré-definido, como no caso dos dados estruturados. Esquemas para dados semiestruturados são definidos após a existência dos mesmos e por possuírem esta representação auto-descritiva, os valores e a estrutura em muitos casos se confundem. 7 SISTEMAS GERENCIADORES DE BANCOS DE DADOS Segundo ELMASRI e NAVATHE (2011), um sistema gerenciador de banco de dados se trata de uma coleção de programas que tornam possível os usuários de criarem e manterem um banco de dados. Esse software facilita a construção, definição, manipulação e compartilhamento do banco através de diferentes aplicações. Segundo o autor Graves (2003), um Banco de Dados é um conjunto de dados armazenados de maneira que persistam e possam ser manipulados. Entendendo que persistência é a permanência dos dados em seus locais depois que o trabalho que os utiliza for encerrado e o computador desligado. Sendo assim a maioria dos arquivos são persistentes, como arquivos textos, planilhas e figuras. A definição de um banco de dados está relacionada à especificação dos tipos, estruturas e regras de restrições de dados que serão armazenadas, tais informações são guardadas pelo SGBD, gerando uma espécie de catálogo, denominado de metadados. O acesso às informações contidas no banco de dados é feita por uma aplicação, que fica responsável pelo envio das consultas ou solicitações de dados ao SGBD. Normalmente quando se fala em um Banco de dados, se estabelece uma aplicação, a qual estará acessando a informação presente no banco de dados, uma camada de acesso e o banco de dados em si, conforme figura 1 a seguir: 8 Figura 1 – Diagrama simplificado de um ambiente de banco de dados. Fonte: Elmasri e Navathe (2011, p. 04) Observando a Figura 1, é possível verificar que a fonte de alimentação do banco de dados é uma aplicação, sendo a aplicação que está interagindo (usuários) com o mundo real. A camada de acesso por sua vez é quem faz a conexão entre a camada de aplicação e o banco de dados, e na maioria das vezes ela está presente. De acordo com os autores Elmasri e Navathe (2011), os bancos de dados possuem algumas propriedades, dentre elas é importante destacarmos: Um banco de dados representa algum aspecto do mundo real, ou seja, uma parte da rotina de uma empresa, ou de alguma organização, cujos dados precisam ser armazenados. Isso pode ser fisicamente organizado de forma cronológica ou não seu armazenamento. Os dados devem se relacionar e seguir uma lógica, dados aleatórios, sem uma lógica na interação não podem ser referenciados como um 9 Banco de Dados. Essa lógica é garantida exatamente pela característica anterior, visto que, se o Banco de dados é baseado em algum aspecto do mundo real, ele segue uma lógica e possui semântica, ou seja, não são meros dados, são dados em um contexto, o que os caracterizam, após alguns processamentos, uma informação armazenada. Todo Banco de Dados têm um objetivo específico, portanto, deve ficar claro quais são seus usuários, quais as restrições de acesso, quais as aplicações estabelecidas. Sendo assim, um Banco de Dados pode ser compreendido segundo os autores Navathe e Elmasri (2011) como sempre sendo uma fonte de alimentação, uma relativa interação com o mundo real, o minimundo e um grupo de usuários. O Banco de Dados ainda possibilita que os dados estejam atualizados a todo instante, ou seja, operações de inserção, remoção e consultas são facilitadas e coordenadas por um software gestor, o SGBD. O banco de dados relacional é um conjunto de entidades que possuem relacionamentos entre si. Desta forma, o banco de dados relacional preza pela integridade dos dados nele armazenados, não permitindo que os dados sejam armazenados com sua integridade comprometida ou fora de seu devido contexto. O Sistema Gerenciador de Bancos de Dados (SGBD) é quem coordena o Banco de Dados, e por consequência a sua organização. De acordo com o autor Date (2004), o SGBD é composto por softwares e aplicativos que dinamizam as operações de inserção, consulta e atualização de forma que usuários não autorizados não tenham acesso a componentes críticos do sistema. Assim pode-se compreender que o principal objetivo de um SGBD é proporcionar um ambiente tanto conveniente quanto eficiente para recuperação e armazenamento das informações no Banco de Dados. Os sistemas gerenciadores de banco de dadas são de suma importância para que um conjunto de dados possa ser armazenado, manipulado e consultado de forma mais simples e objetiva. O SGBDR é que mantém integridade e organização dos dados, para que os mesmo estejam sempre disponíveis e sejam apresentados o mais rápido possível quando solicitados. 10 PRINCIPAIS RECURSOS DE UM SGBD ELMASRI e NAVATHE (2011) levantam os seguintes recursos que descrevem algumas das funções de um SBGD: Segurança lógica: proteger a base de dados contra acessos não autorizados conforme regras que definem quais os utilizadores do sistema podem acessar a base ou não. Também separa dentro dos usuários autorizados, as quais arquivos podem ter acessoe que tipos de operações podem executar (gravar, ler, modificar, apagar, etc.), assim como oferecer um subsistema que somente o DBA tem acesso a fim de criar restrições ou novas contas de usuário. Controle de redundância: prevenir que uma mesma informação seja gravada em dois locais diferentes, gerando assim inconsistência. Por exemplo, usuários distintos criando dois cadastros separados de um mesmo produto ou cliente. Processamento eficiente de consultas: oferecer estruturas de dados e técnicas de pesquisas para agilizar a busca de registros, normalmente utilizando índices para auxiliar no processo. Como o banco de dados é gravado em um disco no servidor, quando uma informação é retornada, necessariamente precisa ser copiada na memória principal do servidor. O SGBD conta com um módulo de buffering de dados, que mantem partes do banco de dados nos buffers de memoria principal, Em geral, o sistema operacional fica encarregado do buffering entre disco e memória, entretanto, a maioria dos SGBDs realizam essa tarefa visando melhor desempenho. Backup e Recuperação: ser capaz de se recuperar de falhas de software ou hardware. Por exemplo, se houver falha durante uma transação, garante que o banco de dados seja restaurado ao seu estado exatamente como era antes da transação ser realizada. Já o backup é essencial, pois se ocorrer problemas no disco, o SGBD fica encarregado de executar as rotinas de backup estabelecidas pela equipe de DBA. Múltiplas interfaces de usuário: o sistema inclui diversas interfaces de usuário, para atender diferentes níveis de conhecimento técnico. Por exemplo, linguagens de consultas para usuários casuais, interfaces de linguagens de programação para programadores de aplicação, e menus de linguagem natural para usuários isolados. 11 Integridade: grande parte das aplicações de banco de dados possuem regras que especificam, por exemplo, um tipo de dado para cada item em determinado registro, como gravar um dado numérico em um campo referente a um nome de indivíduo. Deste modo, o SGBD oferece a capacidade para definir e impor tais restrições de dados e tratamento de inserção de forma automática. SEGURANÇA DE REDES Inicialmente, grande parte dos acessos à Internet eram realizados por meio de conexão discada com velocidades que dificilmente ultrapassavam 56 Kbps. O usuário, de posse de um modem e de uma linha telefônica, se conectava ao provedor de acesso e mantinha esta conexão apenas pelo tempo necessário para realizar as ações que dependessem da rede. Desde então, grandes avanços ocorreram e novas alternativas surgiram, sendo que atualmente grande parte dos computadores pessoais ficam conectados à rede pelo tempo em que estiverem ligados e a velocidades que podem chegar a até 100 Mbps1. Conexão à Internet também deixou de ser um recurso oferecido apenas a computadores, visto a grande quantidade de equipamentos com acesso à rede, como dispositivos móveis, TVs, eletrodomésticos e sistemas de áudio. Independente do tipo de tecnologia usada, ao conectar o seu computador à rede ele pode estar sujeito a ameaças, como: Furto de dados: informações pessoais e outros dados podem ser obtidos tanto pela interceptação de tráfego como pela exploração de possíveis vulnerabilidades existentes em seu computador. Uso indevido de recursos: um atacante pode ganhar acesso a um computador conectado à rede e utilizá-lo para a prática de atividades maliciosas, como obter arquivos, disseminar spam, propagar códigos maliciosos, desferir ataques e esconder a real identidade do atacante. Varredura: um atacante pode fazer varreduras na rede, a fim de descobrir outros computadores e, então, tentar executar ações maliciosas, como ganhar acesso e explorar vulnerabilidades. 12 Interceptação de tráfego: um atacante, que venha a ter acesso à rede, pode tentar interceptar o tráfego e, então, coletar dados que estejam sendo transmitidos sem o uso de criptografia. Exploração de vulnerabilidades: por meio da exploração de vulnerabilidades, um computador pode ser infectado ou invadido e, sem que o dono saiba, participar de ataques, ter dados indevidamente coletados e ser usado para a propagação de códigos maliciosos. Além disto, equipamentos de rede (como modems e roteadores) vulneráveis também podem ser invadidos, terem as configurações alteradas e fazerem com que as conexões dos usuários sejam redirecionadas para sites fraudulentos. Ataque de negação de serviço: um atacante pode usar a rede para enviar grande volume de mensagens para um computador, até torná-lo inoperante ou incapaz de se comunicar. Ataque de força bruta: computadores conectados à rede e que usem senhas como método de autenticação, estão expostos a ataques de força bruta. Muitos computadores, infelizmente, utilizam, por padrão, senhas de tamanho reduzido e/ou de conhecimento geral dos atacantes. Ataque de personificação: um atacante pode introduzir ou substituir um dispositivo de rede para induzir outros a se conectarem a este, ao invés do dispositivo legítimo, permitindo a captura de senhas de acesso e informações que por ele passem a trafegar. Cuidados gerais Alguns cuidados que você deve tomar ao usar redes, independentemente da tecnologia, são: Mantenha seu computador atualizado, com as versões mais recentes e com todas as atualizações aplicadas; 13 Utilize e mantenha atualizados mecanismos de segurança, como programa antimalware e firewall pessoal; Seja cuidadoso ao elaborar e ao usar suas senhas; Utilize conexão segura sempre que a comunicação envolver dados confidenciais; Caso seu dispositivo permita o compartilhamento de recursos, desative esta função e somente a ative quando necessário e usando senhas difíceis de serem descobertas. Wi-Fi Wi-Fi (Wireless Fidelity) é um tipo de rede local que utiliza sinais de rádio para comunicação. Possui dois modos básicos de operação: Infraestrutura: normalmente o mais encontrado, utiliza um concentrador de acesso (Access Point - AP) ou um roteador wireless. Ponto a ponto (ad-hoc): permite que um pequeno grupo de máquinas se comunique diretamente, sem a necessidade de um AP. Redes Wi-Fi se tornaram populares pela mobilidade que oferecem e pela facilidade de instalação e de uso em diferentes tipos de ambientes. Embora sejam bastante convenientes, há alguns riscos que você deve considerar ao usá-las, como: Por se comunicarem por meio de sinais de rádio, não há a necessidade de acesso físico a um ambiente restrito, como ocorre com as redes cabeadas. Devido a isto, os dados transmitidos por clientes legítimos podem ser interceptados por qualquer pessoa próxima com um mínimo de equipamento (por exemplo, um notebook ou tablet); Por terem instalação bastante simples, muitas pessoas as instalam em casa (ou mesmo em empresas, sem o conhecimento dos administradores de rede), sem qualquer cuidado com configurações mínimas de segurança, e podem vir a ser abusadas por atacantes, por meio de uso não autorizado ou de "sequestro"; Em uma rede Wi-Fi pública (como as disponibilizadas em aeroportos, hotéis e conferências) os dados que não estiverem criptografados podem ser indevidamente coletados por atacantes; 14 Uma rede Wi-Fi aberta pode ser propositadamente disponibilizada por atacantes para atrair usuários, a fim de interceptar o tráfego (e coletar dados pessoais) ou desviar a navegação para sites falsos. Para resolver alguns destes riscos foram desenvolvidos mecanismos de segurança, como: WEP (Wired Equivalent Privacy): primeiro mecanismo de segurança a ser lançado. É considerado frágil e, por isto, o uso deve ser evitado. WPA (Wi-Fi Protected Access): mecanismo desenvolvido para resolver algumas das fragilidades do WEP. É o nível mínimo de segurança que é recomendado. WPA-2: similarao WPA, mas com criptografia considerada mais forte. É o mecanismo mais recomendado. Bluetooth Bluetooth é um padrão para tecnologia de comunicação de dados e voz, baseado em radiofrequência e destinado à conexão de dispositivos em curtas distâncias, permitindo a formação de redes pessoais sem fio. Está disponível em uma extensa variedade de equipamentos, como dispositivos móveis, videogames, mouses, teclados, impressoras, sistemas de áudio, aparelhos de GPS e monitores de frequência cardíaca. A quantidade de aplicações também é vasta, incluindo sincronismo de dados entre dispositivos, comunicação entre computadores e periféricos e transferência de arquivos. Embora traga muitos benefícios, o uso desta tecnologia traz também riscos, visto que está sujeita às várias ameaças que acompanham as redes em geral, como varredura, furto de dados, uso indevido de recursos, ataque de negação de serviço, interceptação de tráfego e ataque de força bruta. Um agravante, que facilita a ação dos atacantes, é que muitos dispositivos vêm, por padrão, com o bluetooth ativo. Desta forma, muitos usuários não percebem que possuem este tipo de conexão ativa e não se preocupam em adotar uma postura preventiva. 15 Cuidados a serem tomados: Mantenha as interfaces bluetooth inativas e somente as habilite quando fizer o uso; Configure as interfaces bluetooth para que a opção de visibilidade seja "Oculto" ou "Invisível", evitando que o nome do dispositivo seja anunciado publicamente. O dispositivo só deve ficar rastreável quando for necessário autenticar-se a um novo dispositivo ("pareamento"); Altere o nome padrão do dispositivo e evite usar na composição do novo nome dados que identifiquem o proprietário ou características técnicas do dispositivo; Sempre que possível, altere a senha (PIN) padrão do dispositivo e seja cuidadoso ao elaborar a nova (mais detalhes no Capítulo Contas e senhas); Evite realizar o pareamento em locais públicos, reduzindo as chances de ser rastreado ou interceptado por um atacante; Fique atento ao receber mensagens em seu dispositivo solicitando autorização ou PIN (não responda à solicitação se não tiver certeza que está se comunicando com o dispositivo correto); No caso de perda ou furto de um dispositivo bluetooth, remova todas as relações de confiança já estabelecidas com os demais dispositivos que possui, evitando que alguém, de posse do dispositivo roubado/perdido, possa conectar-se aos demais. Banda larga fixa Banda larga fixa é um tipo de conexão à rede com capacidade acima daquela conseguida, usualmente, em conexão discada via sistema telefônico. Não há uma definição de métrica de banda larga que seja aceita por todos, mas é comum que conexões deste tipo sejam permanentes e não comutadas, como as discadas. Usualmente, compreende conexões com mais de 100 Kbps, porém esse limite é muito variável de país para país e de serviço para serviço3. 16 Computadores conectados via banda larga fixa, geralmente, possuem boa velocidade de conexão, mudam o endereço IP com pouca frequência e ficam conectados à Internet por longos períodos. Por estas características, são visados por atacantes para diversos propósitos, como repositório de dados fraudulentos, para envio de spam e na realização de ataques de negação de serviço. O seu equipamento de banda larga (modem ADSL, por exemplo) também pode ser invadido, pela exploração de vulnerabilidades ou pelo uso de senhas fracas e/ou padrão (facilmente encontradas na Internet). Caso um atacante tenha acesso ao seu equipamento de rede, ele pode alterar configurações, bloquear o seu acesso ou desviar suas conexões para sites fraudulentos. Cuidados a serem tomados: Altere, se possível, a senha padrão do equipamento de rede (verifique no contrato se isto é permitido e, caso seja, guarde a senha original e lembre-se de restaurá-la quando necessário); Desabilite o gerenciamento do equipamento de rede via Internet (WAN), de tal forma que, para acessar funções de administração (interfaces de configuração), seja necessário conectar-se diretamente a ele usando a rede local (desta maneira, um possível atacante externo não será capaz de acessá-lo para promover mudanças na configuração). Banda Larga Móvel A banda larga móvel refere-se às tecnologias de acesso sem fio, de longa distância, por meio da rede de telefonia móvel, especialmente 3G e 4G4. Este tipo de tecnologia está disponível em grande quantidade de dispositivos móveis (como celulares, smartphones e tablets) e é uma das responsáveis pela popularização destes dispositivos e das redes sociais. Além disto, também pode ser adicionada a computadores e dispositivos móveis que ainda não tenham esta capacidade, por meio do uso de modems específicos. Assim como no caso da banda larga fixa, dispositivos com suporte a este tipo de tecnologia podem ficar conectados à Internet por longos períodos e permitem que o usuário esteja online, independente de localização. Por isto, são bastante visados por atacantes para a prática de atividades maliciosas. 17 A SEGURANÇA E O DBA O administrador de banco de dados (DBA) é a autoridade máxima, onde suas funções são incluir concessão de privilégios, classificação de usuários e dados de acordo com as políticas de acesso da empresa. Também conhecido como superusuário, o DBA concede e revoga privilégios a usuários específicos e/ou a grupos de usuários, digitando comandos para as seguintes situações: Criação de contas: cria contas para novos usuários ou grupos para assim habilitar o acesso ao banco. Concessão de privilégios: é a ação em que se concedem novos privilégios a determinadas contas. Revogação de privilégios: consiste em cancelar certos privilégios antes concedidos a algumas contas. Dessa forma, o DBA é o responsável por garantir que os dados estejam seguros de qualquer ameaça externa. CONTROLE DE FLUXO É um mecanismo que previne que as informações fluam por canais secretos e violem a política de segurança ao alcançarem usuários não autorizados. Ele regula a distribuição ou fluxo de informação entre objetos acessíveis. Um fluxo entre o objeto A e o objeto B ocorre quando um programa lê valores de A e escreve valores em B. Os controles de fluxo têm a finalidade de verificar se informações contidas em alguns objetos não fluem explicita ou implicitamente para objetos de menor proteção. Dessa maneira, um usuário não pode obter indiretamente em B aquilo que ele ou ela não puder obter diretamente de A. O controle de fluxo controla o fluxo das informações entre objetos. Conforme afirmaram ELMASRI e NAVATHE (2006, p. 538), “os controles de fluxo verificam se informações contidas em alguns objetos não fluem explicita ou implicitamente para objetos de menor proteção”. Uma política de fluxo mais simples utiliza-se de duas classificações para as informações: confidencial (C) e não confidencial (NC). 18 Esse método na maioria das situações resolve o problema, por exemplo, de quando se contém dados dos clientes, onde alguns deles são de caráter sigiloso. Segundo ELMASRI e NAVATHE (2006), as técnicas de controle de fluxo devem garantir que só fluxos autorizados, explícitos e implícitos, sejam executados. Canais secretos Um canal secreto seria a permissão de uma transação de dados que infrinja as regras de segurança. Então, ele permite que uma informação de nível alto passe para um nível mais baixo, de maneira ilegal. Especialistas dizem que a melhor forma de se evitar essa prática é bloquear o acesso dos programadores a informações pessoais de clientes, como salário ou saldo bancário, por exemplo. CRIPTOGRAFIA A criptografia é uma das melhores soluções para se armazenar ou transferir dados, suponha que alguma informação caia em mãos erradas, se ela estiver cifrada, ou seja, que tenhasido usado um algoritmo de criptografia, a pessoa que a obteve terá dificuldades em conseguir encontrar o significado real, pois a criptografia mascara a informação trocando os caracteres por outros, disfarçando o sentido das palavras. É uma medida de controle final, utilizada para proteger dados sigilosos que são transmitidos por meio de algum tipo de rede de comunicação. Ela também pode ser usada para oferecer proteção adicional para que partes confidenciais de um banco de dados não sejam acessadas por usuários não autorizados. Para isso, os dados são codificados através da utilização de algum algoritmo de codificação. Assim, um usuário não autorizado terá dificuldade para decifrá-los, mas os usuários autorizados receberão chaves para decifrar esses dados. A criptografia permite o disfarceda mensagem para que, mesmo com o desvio da transmissão, a mensagem não seja revelada. 19 BACKUPS O backup de dados é algo de extrema importância, até porque imagine o tamanho do transtorno caso uma empresa perca os seus dados, o que pode ocorrer por diversos motivos, queda de energia, vírus no servidor, falha humana, entre outros. Uma das soluções é o uso de mídias ópticas (CD ou DVD) ou de um HD externo. Você pode criar rotinas diárias ou semanais, para a cópia de arquivos do seu servidor ou computador. Existe outra bem utilizada que o uso de servidores espelhados, onde eles trabalham ao mesmo tempo. “Os HDs são configurados para serem “espelhos” um do outro, ou seja, os arquivos gerados no HD principal são automaticamente gravados nos demais HDs espelhados” (A IMPORTÂNCIA de backup, s.d; s.p.). Assim, se ocorrer do servidor principal falhar por algum motivo, o servidor secundário passa a ser o primário. USUÁRIOS Abrange usuários e esquema do banco de dados onde cada banco de dados Oracle tem uma lista de nomes de usuários. Para acessar um banco de dados, um usuário deve usar um aplicativo desse tipo e tentar uma conexão com um nome de usuário valido. Cada nome tem uma senha associada para evitar o uso sem autorização. Devem ser implementados ainda diferentes perfis de usuário para diferentes tarefas no Oracle, tendo em vista que cada aplicação/usuário tem a sua necessidade de acesso. Existe ainda a possibilidade de proteger os perfis com senha, o que é uma excelente medida. Além dessas medidas, o uso de cotas aumenta a restrição de espaço em disco a ser utilizado por usuários/aplicativos. 20 DOMÍNIO DE SEGURANÇA Onde cada usuário tem um domínio de segurança, um conjunto de propriedades que determinam coisas como ações (privilégios e papeis) disponíveis para o usuário; cota de tablespaces (espaço disponível em disco) do usuário; limites de recursos de sistema do usuário. As tabelas (tablespaces) do sistema, como a system, devem ser protegidas de acessos de usuários diferentes dos usuários de sistema. A liberação de escrita e alteração de dados em tais tabelas é muito comum em ambientes de teste, onde os programadores e DBAs tomam tal atitude para evitar erros de aplicação por falta de privilégios. Porém, em ambientes de produção, tal medida é totalmente desaconselhável. PRIVILÉGIOS Os privilégios são permissões únicas dadas a cada usuário ou grupo. Eles definem permissões para tipos de autorização. Pelos privilégios é possível autorizar o usuário a modificar ou alcançar determinado recurso do Banco de Dados. Os privilégios também são armazenados em catálogos do próprio Banco de Dados, visto que os grupos de autoridade por já possuírem grupos predefinidos de privilégio concedem implicitamente privilégios a seus membros. Tipos de privilégios discricionários O SGBD deve oferecer acesso seletivo a cada relação do banco de dados baseando-se em contas específicas. As operações também podem ser controladas; assim, possuir uma conta não necessariamente habilita o possuidor a todas as funcionalidades oferecidas pelo SGBD. Informalmente existem dois níveis para a atribuição de privilégios para o uso do sistema de banco de dados: O nível de conta: Nesse nível, o DBA estabelece os privilégios específicos que cada conta tem, independente das relações no banco de dados. 21 O nível de relação (ou tabela): Nesse nível, o DBA pode controlar o privilégio para acessar cada relação ou visão individual no banco de dados. Revogação de privilégios Em alguns casos, interessa conceder um privilégio temporário a um usuário. Por exemplo, o proprietário de uma relação pode querer conceder o privilégio SELECT a umusuário para uma tarefa específica e depois revogar aquele privilégio quando a tarefa estiver completada. Por isso, é necessário um mecanismo para a revogação de privilégios. Em SQL, um comando REVOKE é introduzido com o intento de cancelar privilégios. CONTROLE DE ACESSO OBRIGATÓRIO E PARA SEGURANÇA MULTI-NÍVEL Neste método, o usuário não tem um meio termo, ou ele tem ou não tem privilégios, sendo utilizado normalmente em BD que classificam dados de usuários, onde é necessário um nível a mais de segurança. A maioria dos SGBDs não oferecem esse tipo de controle de acesso obrigatório, ficando com os controles discricionários ditos anteriormente. Normalmente são utilizados em sistemas governamentais, militares ou de inteligência, assim como industriais e corporativas. As classes de segurança típicas são altamente sigilosas (top secret, TS), secreta (secret, S), confidenciais (confidential) (C) e não Classificada (unclassified, U), em que TS é o nível mais alto e U é o mais baixo. 22 De uma forma geral, os mecanismos de controle de acesso obrigatório impõem segurança multinível, pois exigem a classificação de usuários e de valores de dados em classes de segurança e impõem as regras que proíbem o fluxo de informação a partir dos níveis de segurança mais altos para os mais baixos. CONTROLE DE ACESSO BASEADO EM PAPÉIS É uma abordagem para restringir o acesso a usuários autorizados e uma alternativa aos sistemas de controles de acesso do tipo MAC e DAC. O conceito de controle de acesso baseado em papéis surgiu com os primeiros sistemas computacionais multiusuários interativos. A idéia central do RBAC é que permissões de acesso são associadas a papéis, e estes papéis são associados a usuários. Papéis são criados de acordo com os diferentes cargos em uma organização, e os usuários são associados a papeis de acordo com as suas responsabilidades e qualificações. Vários indivíduos podem ser designados para cada papel. Os privilégios de segurança comuns a um papel são concedidos ao nome dele, e qualquer indivíduo designado para esse papel automaticamente teria esses privilégios concedidos. Os usuários podem ser facilmente remanejados de um papel para outro. Mudanças no ambiente computacional, como instalação de novos sistemas e remoção de aplicações antigas, modificam apenas o conjunto de permissões atribuídas aos diferentes papeis, sem envolver diretamente o conjunto de usuários. A separação de tarefas é um requisito importante em diversos SGDBs. É necessária para impedir que um usuário realize sozinho o trabalho que requer o envolvimento de outras pessoas. A exclusão mútua de papéis é um método que pode ser implementado com sucesso. Outro aspecto relevante nos sistemas RBAC são as restrições temporais possíveis que podem existir nos papéis, como o tempo e a duração das ativações de papéis e o disparo temporizado de um papel por uma ativação de outro papel. O uso se um modelo RBAC é um objetivo altamente desejado pela para solucionar os principais requisitos de segurança das aplicações baseadas na web. 23 CONTROLE DE ACESSO UTILIZANDO TRIGGERS Com a utilização das Triggers é possível criar mecanismos de segurança mais complexos que podem ser disparados cada vez que um evento é chamado. O comando Insertna tabela é exemplo de um evento que pode ser usado para disparar uma Triggers, além disso, as mesmas podem ser disparadas antes ou depois de comando especificado com o objetivo de prover maior rigor no controle de segurança. Se o comando executado pelo usuário não for validado pela Triggers, um erro é sinalizado do corpo da própria Triggers para impedir que a tabela seja modificada indevidamente. CONTROLE DE ACESSO UTILIZANDO VIEWS As views constituem um outro método de controle de acesso, normalmente utilizadas para restringir o acesso direto aos dados. Com a view é possível permitir acesso de usuário concedendo privilégios, ocultar linhas e colunas de informações confidenciais ou restritas residentes na tabela original das indicações do SQL. Os privilégios e concessões são definidos somente na view e não afetam a tabela base sendo o acesso dos usuários delimitado pela view, a qual é gerada criando um subconjunto de dados na tabela referenciada. A opção With Verification provê maior segurança porque não permite ao usuário modificar as linhas de tabela sem ter privilégios de leitura dentro da view. 24 REFERENCIAS CARVALHO, Licarião. Gerenciamento de Configuração. Comunidade Viacerta. 2 abr. 2013. CORRÊA, Juliano Soares; MARCONDES Marcos Roberto. Vantagens e Desvantagens da Utilização do Banco de Dados Oracle 2003, Salvador - Artigo Científico (Escola de formação complementar do exército). DATE, C. J. Introdução a sistemas de bancos de dados. Rio de Janeiro: Campus, 2000. DETTMER, Klaus; WATSON, Andy. CMBD in 5 Steps: A Project Guideline for Implementing a Configuration Management Database. iET Solutions. 3 abr. 2013. ELMASRI, R. & NAVATHE, S. B. Sistemas de Banco de Dados. 6ª ed. São Paulo: Pearson Education do Brasil, 2011. FLECKENSTEIN, Mike. Enterprise Information Management (EIM) and Data Governance. Project Performance Corporation, Master Data Management and Data Governance Practice. 1 nov. 2012. GODINEZ, Mario et al. The Art of Enterprise Information Architecture. Boston, EUA: IBM Press, 2010. HEUSER, Carlos Alberto. Projeto de Bancos de Dados. 4ª ed. Porto Alegre: Sagra Luzzatto, 2001. IKEMATU, Ricardo Shoiti. Realizando Tuning na Base de Aplicações. Disponível em: . Acesso em: 30 out 2015. IEEE Standards Association. IEEE Standard 1471-2000. IEEE Recommended Practice for Architectural Description of Software-Intensive Systems-Description. 2004. 15 dec. 2009. IT Govenance Institute. COBIT 4.1: Modelo, Objetivos de Controle, Diretrizes de Gerenciamento, Modelos de Maturidade. Rolling Meadows, EUA. 2007. KLOECKNER, Kristof. Prefácio. In: GODINEZ, Mario et al. The Art of Enterprise Information Architecture. Boston, EUA: IBM Press, 2010. LADLEY, John. Making Enterprise Information Management (EIM) Work for Business. Burlington, EUA: Morgan Kaufman, 2010. 518p. LAM, Vincent; TAYLOR, J. T. Enterprise Information Management (EIM): The Hidden Secret to Peak Business Performance. Information Builders 19 jan. 2013. MERSCHMANN, Luiz Henrique. Conceitos e Arquitetura de Sistemas de Banco de Dados. Disponível em: < 25 http://www.decom.ufop.br/luiz/site_media/uploads/arquivos/bcc321/slides02_bdi.pdf > Acesso em: 26 set 2015. NWSOFTARE. Disponível em: . Acesso em: 1 nov 2015. ORACLE. Oracle's History: Innovation, Leadership, Results. Disponível em: . Acesso 26 out 2015. ORACLE 10G. Manual Banco de Dados Oracle 10g: Workshop de Administração. Oracle University, 2004. SIEBRA, Sandra de Albuquerque. Banco de Dados. Recife: Universidade Federal Rural de Pernambuco, 2010. SOUZA, Michel. Benchmark. Disponível em: . Acesso em: 23 out 2015. SYMANTEC. The ITIL Open Guide. 1 nov. 2012. TOLIDO, Ron. Prefácio. In: GODINEZ, Mario et al. The Art of Enterprise Information Architecture. Boston, EUA: IBM Press, 2010. WEGENER, Ha ans. Aligning Business & IT with Metadata. Chichester, Inglaterra: Wiley, 2007. 279p.
Compartilhar