Segurança de
banco de dados
Universidade Federal Rural de PernambucoJosé Carlos Rodolfo Luan
Pauta
Conceituando Banco de dados e Sistema gerenciador de banco de dados;
Por que proteger?
Segurança da informação;
O que é segurança em banco de dados ?
O conceito;
Princípios de segurança; Parte dos SGBD;
Formas de proteção de banco de dados;
Criptografia; SQL Injector; “Boas práticas“; Exemplos de casos.
Banco de Dados
Banco de dados é uma coleção de dados
inter-relacionados, representando informações sobre um domínio específico.
Sistema Gerenciador de
Banco de Dados
SGBD é basicamente um conjunto de softwares que
são responsáveis pelo gerenciamento de uma base de dados.
Por que devemos proteger
nosso banco de dados?
O valor dos dados;
O impacto da perda desses dados; O impacto do vazamento de dados; A importância de sua existência;
Segurança da informação
Padrões internacional de segurança da informação segundo (ISO/IEC 17799:2005): Autenticidade Confidencialidade; Integridade; Disponibilidade; Irretratabilidade.
Segurança da Informação
Implementação de uma Política de Segurança:
Planejar Realizar Verificar Agir
O que é segurança de BD’s ?
Qual a visão de vocês ?Conceito de segurança de
banco de dados
“É fazer com que as informações permaneçam confidenciais, integras e disponíveis para a pessoa certa na hora certa.”
Responsabilidades do SGBD
O que um bom SGBD deve ter para ser considerado seguro ?
Responsabilidades do SGBD
Controle de redundâncias Controle de concorrência
Capacidade de manter os dados íntegros, Aplicar as restrições de integridade.
Controle de Redundância
A redundância é caracterizada pela presença de um elemento de informação duplicado
Controle de Redundâncias
O controle de redundância não permite incluir dois registros com a mesma chave primária e excluir um registro que possua relacionamento com outras tabelas(chave estrangeira)
Controle de Redundâncias
MySQL:
CREATE TABLE Customer (SID integer,
Last_Name varchar(30), First_Name varchar(30), PRIMARY KEY (SID));
Oracle:
CREATE TABLE Customer (SID integer PRIMARY KEY, Last_Name varchar(30), First_Name varchar(30));
SQL Server:
CREATE TABLE Customer (SID integer PRIMARY KEY, Last_Name varchar(30), First_Name varchar(30));
Restrições de Integridade
As restrições de integridade oferecem meios de
assegurar que mudanças feitas no banco de dados por usuários autorizados não resultem em perda de consistência.
Restrições de Integridade
A cláusula check em SQL-92 permite restringir domínios:
create domain hora-salario numeric(5,2) constraint valor-teste check(valor >=4.00)
Formas de Proteção de
Banco de Dados
É a técnica pela qual a informação pode ser
transformada da sua forma original para outra ilegível, de forma que possa ser reconhecida apenas por seu destinatário.
Formas de Proteção de
Banco de Dados
Objetivos da criptografia : Confidencialidade da mensagem; Integridade da mensagem; autenticação do remetente;Sql Injector
É um tipo de ameaça de segurança que se aproveita de falhas em sistemas que interagem com bases de dados via SQL. A injeção de SQL ocorre quando o
atacante consegue inserir uma série de instruções SQL dentro de uma consulta (query) através da
manipulação das entradas de dados de uma aplicação.
Boas Práticas
Engenharia Social Firewall Backup LOG Disaster Recovery RAIDCasos
http://www.pop.com.br/popnews/noticias/tecnologia /431624-Invasao_em_banco_de_dados_coloca_em_risco_2_m ilhoes_de_clientes_da_Honda.html http://idgnow.uol.com.br/seguranca/2011/03/28/site-do-banco-de-dados-mysql-sofre-ataque-hacker/Referências
http://www.inf.ufsc.br/~mario/cap6.pdf http://www.slideshare.net/artinfo/segurana-em-banco-de-dados http://pt.wikipedia.org/wiki/Inje%C3%A7%C3%A3o_de _SQL http://sisnema.com.br/Materias/idmat002096.htm http://www.cooperati.com.br/2012/08/19/banco-de-dados-conceituando-banco-de-dados-e-sgbd/Referências
http://www.devmedia.com.br/seguranca-em-