Requisitos de Segurança de Banco de dados
Por: adrsena • 26/8/2017 • Artigo • 2.385 Palavras (10 Páginas) • 271 Visualizações
Requisitos de Segurança de Banco de dados
Lucas Menchone, Adriano Sena, Keven Guimarães e Lucas Martins
Instituto de Educação, Ciência e Tecnologia da Bahia - IFBA
Eunápolis – BA – Brasil
Análise Desenvolvimento de Sistemas – ADS 2015.1
{lucas.menchone@hotmail.com, adrsena@live.com, kevendps@hotmail.com}
Abstract. This article seeks to introduce the discussion about database security requirements and how it’s managed by the administrator to be maintained the integrity and privacy of their information.
Resumo. Este artigo busca introduzir a discussão a respeito dos requisitos de segurança de banco de dados e como ele é gerenciado pelo administrador para que seja mantida a integridade e a privacidade das informações armazenadas.
1. Introdução
O banco de dados se tornou um item imprescindível na vida da maioria das pessoas atualmente, muitas delas podem não perceber sua interação com esses sistemas, mas sem saber, ao realizarem o cadastro em um aplicativo, utilizarem um banco online ou serviços de compras online elas estão interagindo com um banco de dados. Essa ferramenta da tecnologia tem um grande impacto nas áreas de negócios, e-commerce, engenharia e medicina, pois automatizou o trabalho de armazenamento de dados gerados e possibilitou um melhor manuseio dos mesmos.
O banco de dados em resumo é uma coleção de dados relacionados, podendo ser estruturados ou não. Os dados armazenados são fatos que podem ser registrados e possuem um entendimento explicito no caso de dados estruturados ou implícitos no caso dos dados não estruturados.
Os exemplos citados acima se referem a bancos de dados de dados tradicionais, onde a maioria das informações é textual ou numérica. Com a evolução da computação surgiram bancos de dados mais modernos que possuem a capacidade de armazenar, imagens, áudios ou streamings de vídeo, fazendo parte dos bancos de dados de multimídia.
A maioria dos bancos de dados atuais é gerenciada por um SGBD (Sistema gerenciador de banco de dados, sigla traduzida para o português), que segundo Navathe(1989) é uma ferramenta que possibilita o usuário a criar e manter um banco de dados, por meio de um sistema de software de uso geral que permite a definição, construção, manipulação e compartilhamento de banco de dados entre vários usuários e aplicações.
Como podemos perceber os bancos de dados possuem uma grande tarefa em grandes corporações, governos e outros meios que o utiliza, o peso de armazenar com segurança a informação, o bem mais valioso de uma corporação. Nas próximas páginas abordaremos mais sobre os requisitos de segurança nos bancos de dados, as principais técnicas de prevenção e as maiores ameaças a um banco de dados.
2. Administração da conta e controle de acesso
Para que haja total controle do BD¹ de forma coerente e sem falhas, é necessário seguir uma hierarquia de acesso com regras bem definidas pelo DBA².
O DBA cria contas de concessão de acessos aos usuários do BD de acordo com a sua necessidade. Portanto é imprescindível que o administrador adote medidas de controle para que não haja perdas na qualidade da gerencia dos dados armazenados. Essas medidas de controle são constituídas principalmente pela criação de contas com login e senha para os usuários, concessão de privilégios das contas determinando o que cada user pode fazer no BD, a revogação de privilégios que destitui uma conta de suas credenciais de acesso ou modificação de dados, a atribuição do nível de segurança que define a hierarquia dos users de acordo com a autoridade por ela exercida.
Existem dois mecanismos de segurança para atribuição de privilégios: o mecanismo discricionário onde o próprio DBA libera acessos a setores específicos do BD, e o mecanismo obrigatório onde os arquivos armazenados possuem uma classificação de segurança onde o user só consegue acessar dados que lhe corresponda ao nível de segurança.
Esse controle metódico existe para preservar a integridade, a disponibilidade e a confiabilidade dos arquivos em um banco de dados.
A integridade trata-se da veracidade dos arquivos mantidos, onde é importante manter controle das alterações dos arquivos; uma violação grave deste atributo resulta-se em perda de dados, exclusão não autorizada ou modificações feitas de modo ilegítimo.
A disponibilidade dá-se pela acessibilidade do conteúdo pelos usuários/software que possuem o direito de acesso.
A confiabilidade refere-se a proteção contra a exposição de informação de caráter privativo, levando em consideração de que em certas situações, itens do BD não deve ser expostos sequer para usuários sem a devida permissão. Entidades governamentais e grandes organizações prezam muito pela privacidade de suas informações, por exemplo, se os dados financeiros de um cliente do banco “A” forem expostos, a empresa que administra as informações pode sofrer ações legais e algum tipo de constrangimento.
A política de privacidade vai além das linhas de código de qualquer sistema informatizado, neste caso o DBA tem total autoridade de montar normas de acesso nas empresas para manter a segurança da informação, pois em alguns casos, intervenções internas, vazamentos de dados e danos por corrompimento são causados pelos próprios funcionários que não possuem as credenciais para acesso.
Com esses métodos aplicados de maneira correta o DBA tem controle total de toda movimentação, alteração e exclusão dos dados no BD, sendo que o ID das contas criadas mostra ao administrador quando e quem possivelmente errou ou excluiu algo indevidamente. Essa vistoria é feita por meio de auditoria de Logs os quais geralmente são chamados de trilhas de auditoria.
3. SQL injection , o que é e como funciona
O SQL inejction é uma das ameaças mais corriqueiras ao sistema de banco de dados. Ele ocorre por meio da manipulação do SQL, que é a codificação utilizada para troca de informações entre uma aplicação e um banco de dados. De acordo com Elmasri, em um ataque de SQL, o atacante injeta uma entrada de cadeia de caracteres na aplicação, de uma forma ele possa mudar ou manipular a instrução de SQL, para proveito próprio. Dessa forma o atacante pode fazer recuperação de dados confidenciais de corporações, ou executar comandos em nível de sistema para que ele negue a aplicação.
...