Segurança de banco de dados. Segurança  Uso abusivo de privilégio (Caso Edward Snowden)  Alguém explorou uma conta privilegiada e através dela.

Slides:



Advertisements
Apresentações semelhantes
Segurança Renata Viegas.
Advertisements

SQL Saturday #512 Boas Vindas Sulamita Dantas Flávio Farias.
Segurança de Rede Prof. Sales Filho Introdução (Parte 2)
Fundamentos de Sistemas Operacionais Aula 2 Princípios de Programação Prof. Belarmino.
Criptografia: uma Introdução. ● Definição: Criptografia é o estudo de técnicas matemáticas relacionadas a aspectos da segurança da informação tais como:
Segurança em Redes de Computadores VI Semana de Informática Carlos de Castro Goulart Departamento de Informática Universidade Federal de Viçosa
SISTEMA DE CONTROLE DE ACESSO, FREQÜÊNCIA E GESTÃO DE PERMISSÃO PARA AMBIENTE ACADÊMICO LEONARDO DENARDI ORIENTADOR: JACQUES ROBERT HECKMANN.
Lógica de Programação.  Um algoritmo é um conjunto de instruções, dispostas em um sequência lógica, que levam à resolução de um problema.  Um algoritmo.
Teoria de Filas – Aula 3 Aula de Hoje Variáveis aleatórias discretas Bernoulli Binominal Uniform Poisson Geométrica Aula Anterior Independência Condicionamento.
Administração de Sistemas Operacionais 1 -Windows Processos Curso Técnico em Redes de Computadores Prof. Emerson Felipe.
Disciplina: Gerenciamento e Desenvolvimento em Banco de Dados Professora: Chaiene Minella, MSc
Ambiente Virtual de Avaliações Utilizando Certificados Digitais Fernando Gevard – Acadêmico Paulo Fernando da Silva - Orientador.
Linguagem de Programação – Aula 03 Prof. Me. Ronnison Reges Vidal.
Transações George Azevedo da Silva José Antônio da Cunha.
Probabilidade e Estatística Aplicadas à Contabilidade I Prof. Dr. Marcelo Botelho da Costa Moraes 1.
Acessos e Privilégios. Privilégios  O gerenciamento de usuários e seus respectivos privilégios aos objetos do banco de dados, dependendo do número de.
 Redes de relacionamento que permitem que os usuários: - Forneçam informações sobre si; - Acessem informações sobre outros usuários; - Utilizem mecanismos.
Supervisão e Redes Industriais Tutorial E3 Elipse Capítulo 14 ARMAZENAMENTO DE DADOS Felipe Domeni, Gabriel Martin, Leandro Gomes Rafael Benoliel, Tiago.
Gerência de Arquivos.
Análise de Estruturas.
Organização, Sistemas e Métodos
Criptografia assimétrica
Prof. MS Virgílio fries muller
Tema 1: Conceitos fundamentais de banco de dados
Contagem: Princípios multiplicativo e aditivo.
UNIVERSIDADE AGOSTINHO NETO FACULDADE DE CIÊNCIA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO MEMÓRIA/FRAGMENTAÇÃO. Por: Ndalovich Aufico
Introdução ao VisuALG Prof. Andrew Rodrigues
SQLite SQLite é um banco de dados Open Source. Ele suporta recursos de banco de dados relacionais padrão, como sintaxe SQL, transações, etc. SQLite suporta.
Administração de Banco de Dados
Nataniel Vieira Endereçamento IP Nataniel Vieira
Introdução a Linguagem Java
Prof. Wellington Franco Sub-Rotinas:Funções e Procedimentos
3.1 Classes e Objetos Em um programa orientado a objetos normalmente existem vários objetos de um mesmo tipo. Por exemplo, um programa de controle de.
Orientador: Francisco Adell Péricas
Prof. Wellington Franco
O que é um banco de dados? Antes precisamos entender o que são dados.
Representação de um Algoritmo na Forma de Pseudocódigo
Sistemas Operacionais de Redes Windows Active Directory Aula 3
FUNDAMENTO DE PROGRAMAÇÃO
Comunicação em Gestão de Projetos
Access 2010 Microsoft. Access 2010  O Microsoft Access é um Sistema de Gestão de Base de Sados (SGBD) relacional em ambiente gráfico (Windows), que possibilita.
Kroton Educacional Universidade uniderp (Unidade Matriz)
ESTATÍSTICA BÁSICA. Por quê? Em alguma fase de seu trabalho, o pesquisador se vê às voltas com o problema de analisar e entender um conjunto de dados.
Algoritmos e Técnicas CEFET/RN.
Daniel Paulo SQL Server 2016 Módulo II Daniel Paulo
Estruturas de Repetição
BANCO DE DADOS Araújo Lima Out / 2017 Araújo.
BANCO DE DADOS Araújo Lima Outubro / 2017 Araújo.
Algoritmos e Programação I
Aplicativos para Internet Aula 13
Aplicativos para Internet Aula 12
Desenvolvimento em Camadas
Políticas de Segurança em Pequenas e Grandes Empresas
IF987 – Auditoria e Segurança de Sistemas de Informação
AULA 2 ESTATÍSTICA DANIEL PÁDUA.
Estrutura do Sistema Operacional
Exercícios IPsec e LDAP
Curso básico de PHP. 1 Vantagens: Gratuito Multiplataforma Estável Rapidez Comunicação.
PROCEDIMENTO OPERACIONAL PADRÃO
Módulo III Capítulo 2: SQLite
Treinamento SQL Server Tarefas do dia a dia de um DBA
Representação de Algoritmos
Prática - BD Distribuído
Algoritmos.
SISTEMAS DISTRIBUIDOS
GERÊNCIA DE PROJETOS DE SOFTWARE
Daniel Paulo SQL Server 2016 Módulo II Daniel Paulo
CAPÍTULO 10 Segurança.
Segurança Digital ‘2018.
Modelagem de Banco de Dados
Transcrição da apresentação:

Segurança de banco de dados

Segurança

 Uso abusivo de privilégio (Caso Edward Snowden)  Alguém explorou uma conta privilegiada e através dela teve acesso ao BD (Caso Anthem)  Exploração de vulnerabilidades (Caso JPMorgan)

Segurança

 Os bancos de dados são utilizados para armazenar diversos tipos de informações, desde dados sobre uma conta de até dados importantes da Receita Federal.

Segurança  A segurança do banco de dados herda as mesmas dificuldades que a segurança da informação enfrenta, que é garantir a: Integridade, Disponibilidade, Confidencialidade.

Segurança  Os bancos de dados SQL implementam mecanismos que restringem ou permitem acessos aos dados de acordo com papéis ou roles fornecidos pelo administrador.

Segurança  O comando GRANT concede privilégios específicos para um objeto (tabela, visão, sequência, banco de dados, função, linguagem procedural, esquema ou espaço de tabelas) para um ou mais usuários ou grupos de usuários.

Segurança  A preocupação com a criação e manutenção de ambientes seguros se tornou a ocupação principal de administradores de redes, de sistemas operacionais e de bancos de dados.

Segurança  Pesquisas mostram que a maioria dos ataques, roubos de informações e acessos não-autorizados são feitos por pessoas que pertencentes à organização alvo.

Segurança  Por esse motivo, esses profissionais se esforçam tanto para criar e usar artifícios com a finalidade de eliminar os acessos não-autorizados ou diminuir as chances de sucesso das tentativas de invasão (internas ou externas).

Segurança  Os controles de acesso em sistemas de informação devem certificar que todos os acessos diretos ao sistema ocorram exclusivamente de acordo com as modalidades e as regras pré-estabelecidas, e observadas por políticas de proteção.

Segurança  Os mecanismos de segurança referem-se às regras impostas pelo subsistema de segurança do SGBD, que verifica todas as solicitações de acesso, comparando-as com as restrições de segurança armazenadas no catálogo do sistema.

Segurança  Entretanto existem brechas no sistema e ameaças externas que podem resultar em um servidor de banco de dados comprometido ou na possibilidade de destruição ou no roubo de dados confidenciais.

Segurança  As ameaças aos bancos de dados podem resultar na perda ou degradação de alguns ou de todos os objetivos de segurança aceitos, são eles: integridade, disponibilidade, confidencialidade.

Segurança  A integridade do banco de dados se refere ao requisito de que a informação seja protegida contra modificação imprópria.

Segurança  A disponibilidade do banco de dados refere-se a tornar os objetos disponíveis a um usuário ou a um programa ao qual eles têm um direito legítimo.

Segurança  A confidencialidade do banco de dados se refere à proteção dos dados contra a exposição não autorizada

Segurança  O impacto da exposição não autorizada de informações confidenciais pode resultar em perda de confiança pública, constrangimento ou ação legal contra a organização.

Controle de Acesso  É todo controle feito quanto ao acesso ao BD, impondo regras de restrição, através das contas dos usuários.  O Administrador do BD (DBA) é o responsável superior por declarar as regras dentro do SGBD.  Ele é o responsável por conceder ou remover privilégios, criar ou excluir usuários, e atribuição de um nível de segurança aos usuários do sistema, de acordo com a política da empresa.

Controle de Inferência  É um mecanismo de segurança para banco de dados estatísticos que atua protegendo informações estatísticas de um individuo ou de um grupo.  Bancos de dados estatísticos são usados principalmente para produzir estatísticas sobre várias populações.  Por exemplo: IBGE

Controle de Inferência  O banco de dados pode conter informações confidenciais sobre indivíduos.  Os usuários têm permissão apenas para recuperar informações estatísticas sobre populações e não para recuperar dados individuais, como, por exemplo, a renda de uma pessoa específica.

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.

Controle de Fluxo  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.

Criptografia de dados  É 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.

Criptografia de dados  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 disfarçada mensagem para que, mesmo com o desvio da transmissão, a mensagem não seja revelada.

Criptografia de dados  Os dados originais (não criptografados) são chamados de texto comum.  O texto comum é criptografado quando é submetido a um algoritmo de criptografia, cujas as entradas são o texto comum e uma chave de criptografia.  A saída desse algoritmo (a forma criptografada de um texto comum) é chamada texto cifrado.

Criptografia de dados  O texto cifrado, que deve ser ininteligível para qualquer pessoa que não possua a chave de criptografia, é o que fica armazenado no banco de dados ou é transmitido pela linha de comunicações. Exemplo: Considere que o texto comum seja a string: AS KINGFISHERS CATCH FIRE

Criptografia de dados  Vamos supor que os únicos caracteres de dados com que temos de lidar são letras maiúsculas e espaços vazios.  Seja a chave de criptografia a string: ELIOT

Criptografia de dados  Seja o algoritmo de criptografia dado a seguir: 1) Divida o texto comum em blocos de comprimento igual ao da chave de criptografia: AS+KI NGFIS HERS+ CATCH +FIRE * os espaços em branco agora são mostrados explicitamente como “+”

Criptografia de dados 2) Substitua cada caractere do texto comum por um inteiro entre 00 e 26, usando branco = 00, A = 01,..., Z = 26: ) Repita a etapa 2 para a chave de criptografia (ELIOT)

Criptografia de dados 4) Para cada bloco de texto comum, substitua cada caractere pela soma de módulo 27 de sua codificação inteira com a codificação inteira do caractere correspondente da chave de criptografia:

Criptografia de dados 5) Substitua cada codificação inteira no resultado da etapa 4 pelo caractere equivalente: FDIZB SSOXL MQ+GT HMBRA ERRFY

Criptografia de dados O procedimento para descriptografia é direto, dada a chave (ELIOT) EXERCÍCIO Descriptografe o texto cifrado mostrado anteriormente (FDIZB SSOXL MQ+GT HMBRA ERRFY)

Login  O que é Login? É um objeto que dá acesso a instância do SQL Server, ou seja, o Login é único e exclusivo da instância. Logins podem ser criados através do SSMS (SQL Server Management Studio) ou Transact-SQL. Existem dois tipos de Logins: Windows e SQL Server.

Usuário  O que Usuário? É um objeto que dá acesso ao banco de dados. Usuários também são criados através do SSMS (SQL Server Management Studio) ou Transact-SQL.

Login e Usuário Obs: o Login e o Usuário podem ou não serem vinculados, isso vai depender de qual forma você quer trabalhar, ou seja um usuário sempre vai ter vinculo com um Login por isso um Usuário é uma vinculação entre um Login e um banco de dados. Um ponto importante e que não deve esquecer que, quando se trabalha com Logins e Usuário deve-se realmente ter a atenção com relação a segurança, principalmente com relação aos dados e a instância.

Permissões Definindo permissões de comando ao usuários do banco de dados: -Definindo permisões de comando a um usuário grant create table, create view to usuário -Visualizando as permissões de um usuário sp_helprotect null,usuário -Visualizando todas as permissões sp_helprotect -Definindo permissões a todos os comandos para um usuário grant all to usuário

Permissões Definindo permissões de comando ao usuários do banco de dados: -Visualizando logins do servidor sp_helplogins -Visualizando cargos fixos do servidor sp_helpsrvrole -Visualizando os cargos dos logins sp_helpsrvrolemember -Visualizando quais os logins que possuem um determinado cargo sp_helpsrvrolemember "dbcreator“

Permissões Definindo permissões de comando ao usuários do banco de dados: -Visualizando quais comandos podem ser executados pelos usuários que possuem um determinado cargo sp_srvrolepermission dbcreator -Definindo um cargo do servidor a um login sp_addsrvrolemember "usuario","db_datawriter“ -Visualizando os usuários do banco de dados sp_helpuser

Permissões Definindo permissões de comando ao usuários do banco de dados: -Negando a execução de um comando para um usuário deny create table to usuário

Permissões Definindo permissões de objeto: -Visualizando as permissões em uma tabela sp_helprotect "carros","usuario“ -Permitindo ao usuário a execução do comando select grant select on carros to usuario grant select,insert on carros to usuario1 -Permitindo ao usuário a execução do comando insert grant insert on carros to usuário

Permissões Definindo permissões de objeto: -Atribuindo permissões de select ou update em apenas algumas colunas da tabela grant select (placa) on carros to usuário -Negando permissões de um comando a um grupo deny select on alunos to admusr