Integrantes: Renato Duarte Leonardo de Jesus Felipe Plattek Ricardo Villas-Bôas Fernandes Marcus Vinícius S. Silva
Agenda Segurança de dados e informação Banco de dados Vulnerabilidades Ataques a banco de dados Criptografia Conclusão
Segurança de Dados e Informação
Desafios das organizações Estabelecer contra medidas para o risco de perda de dados. Adequar-se às exigências da atual dinâmica empresarial; Rapidez nas tomadas de decisão; Racionalização dos processos; Processamento de grandes volumes; Pressão sobre os resultados.
Dados e Informação Problemas identificados em dados não protegidos: Dados armazenados em mídia removível (perdidos / roubados) Política inconsistente de dados; Dados não estruturados; Falha no processo de auditoria interna Exposição legal, regulamentária e ética para a organização; Custo de violações de dados.
Dados e Informação Valores agregados à proteção dos dados e informação: Redução do custo, aumento da capacidade de cumprir as obrigações de auditoria e conformidade; Garantia que os dados estejam disponíveis para as pessoas certas, no momento certo; Garantia que os dados não sejam deliberada- ou inadvertidamente acessados, vazados ou danificados;
Banco de Dados
Banco de Dados  É um conjunto de registros dispostos em uma estrutura regular que possibilita a reorganização dos mesmos permitindo extrair a informação.
Banco de Dados  São utilizados para armazenar diversos tipo de dados, como informações de pessoas, dados bancários, informações confidenciais, etc.
Ferramentas de Segurança Política de Segurança Levantamento de Necessidades de Usuários  O que desejam  O que precisam  Perfis comuns  Níveis de Segurança  Adaptação às Regras da Empresa  Administrador, Dono de Objetos, Usuário Comum  Proteção em nível de Tabela  Gerência da base; Acesso a Objetos (Tabelas, Visões etc.)  Integração com o Sistema Operacional  Views, Stored Procedures, Triggers  Backup & Recovery  Auditoria
Ferramentas de Segurança SQL Server  Modos de Segurança: Standard e Integrated  Logins  Usuários  Administrador, Database Owner, Database Object Owner, Database User  Privilégios de Objeto vs. Sistema  Objetos: Rule, Default, Stored Procedure, Trigger, View  Políticas de Backup  Recuperação  Auditoria  Ferramentas externas
Ferramentas de Segurança Oracle  Integração com o SO  Schemas  Usuários  Administrador, Database Owner, Database Object Owner, Database User  Privilégios de Objeto vs. Sistema  Roles  Objetos: Stored Procedure, Trigger, View, Synonym, Profile  Políticas de Backup  Recuperação  Ferramentas do Oracle Enterprise Manager  Oracle Security Server  Auditoria  Criptografia
Vulnerabilidades
Vulnerabilidades O maior valor de uma empresa são as informações que ela possui. Todos os recursos que expõem dados ou informações podem ser considerados um risco, se forem implementados incorretamente. A preocupação com a segurança dos dados contidos em bancos de dados deve ser alta, independente do tipo de informação que está sendo tratada.
Ameaças e vulnerabilidades poderão ser de menor impacto se estiver bem definido: Processo  (Diretivas de segurança); Plataforma  (Sistema não atualizado); Autenticação  (Senhas pouco seguras); Programação  (Injeção SQL); Acesso aos dados  (Criptografia aplicada de forma inadequada); Vulnerabilidades
Ataques a Banco de Dados
Ataques a Banco de Dados SQL Injection Uma das técnicas de fraude mais conhecida pelos desenvolvedores web. Manipulação de instrução SQL através das variáveis que compõem parâmetros recebidos por scripts server-side.
SQL Injection – Exemplo $Sql = "SELECT * FROM tb_usuario  WHERE usuario = '" + $usuario + “ AND senha = ‘” + $senha + “’;" Ao entrar com: Usuário:  ‘ or ‘1’=‘1 Senha:  ‘ or ‘1’=‘1 Comando que será processado pelo Banco de Dados: SELECT * FROM tb_usuario  WHERE usuario = ‘’ or ‘1’=‘1’ AND senha = ‘’ or ‘1’=‘1’; Ataques a Banco de Dados
SQL Injection – Exemplo $Sql = "SELECT * FROM tb_clientes WHERE cliente = '" + $nome + “’;" Ao entrar com: Cliente:  ‘;  SELECT * FROM SYSOBJECTS; Comando que será processado pelo Banco de Dados: SELECT * FROM tb_clientes WHERE cliente = ‘’;  SELECT * FROM SYSOBJECTS Comando que poderá ser processado pelo Banco de Dados: SELECT * FROM tb_clientes WHERE cliente = ‘’;  DROP TABLE FINANCEIRO Ataques a Banco de Dados
SQL Injection – Solução Utilização de parâmetros Remoção de caracteres especiais Limitação da quantidade de caracteres Configuração correta do usuário de acesso ao BD. Ataques a Banco de Dados
Criptografia
Criptografia Codifica os dados através de algoritmos; A decodificação dos dados é feita através de  chaves (pública e privada) ou senha; Inutiliza os dados sem a chave de decriptrografia ou senha  correspondente; Não resolve problemas de controle de acesso; Aumenta a segurança, limitando perda de dados mesmo se os controles de acesso forem ignorados. Fonte:  http://msdn.microsoft.com/pt-br/library/bb510663.aspx
Tipos de criptografia Criptografia Hash (ou Digest); Chaves Simétricas; Chaves Assimétricas;
Criptografia Hash Permite que, através de uma string de qualquer tamanho, seja calculado um identificador digital de tamanho fixo, chamado de valor  hash ; O valor  hash  geralmente é formado por 16 bytes (no caso do MD-2, MD-4 e MD-5) ou 20 bytes (no caso do SHA-1), mas pode se estender, embora não passe de 512 bytes;
Chaves Simétricas A mesma chave é usada tanto na codificação quanto na decodificação; Algoritmos criptográficos que fazem uso da Chave Simétrica: DES (Data Encryption Standard); IDEA (Internacional Data Encryption Algorithm); RC (Ron’s Code ou Rivest Cipher) ; 3DES; Twofish; Blowfish. Confiram o vídeo exibido na apresentação: http://www.youtube.com/watch?v=U62S8SchxX4
Chaves Assimétricas O sistema funciona da forma que alguém cria uma chave e envia essa chave à quem quiser mandar informações à ela, essa é a chamada chave pública. Com ela é feita a codificação da mensagem; Para decodificação será necessário utilizar uma outra chave que deve ser criada, a chave privada – que é secreta. Na figura, a chave verde representa a chave pública,  enquanto a chave rosa representa a chave privada. Fonte: Wikipedia
Criptografia em Banco de Dados Não deve ser considerada em todos os dados ou conexões.  Como os usuários acessarão os dados? Usuários acessarem dados por uma rede pública. Usuários acessarem dados por uma intranet segura.  Qualquer uso de criptografia deve também incluir uma estratégia de manutenção de senhas, chaves e certificados.
Conclusão Independentemente dos recursos e investimentos aplicados em alta tecnologia, se faz necessária uma adoção comportamental e contínua voltada para a segurança do negócio. Pois, a sobrevivência da empresa não é fundamental apenas quanto ao aspecto da rentabilidade, mas também quanto ao aspecto da manutenção da operacionalidade em níveis que não possam interrompê-la.
“ Nenhuma corrente é mais forte que seu elo mais fraco.”

Seguranca e Criptografia de Dados

  • 1.
    Integrantes: Renato DuarteLeonardo de Jesus Felipe Plattek Ricardo Villas-Bôas Fernandes Marcus Vinícius S. Silva
  • 2.
    Agenda Segurança dedados e informação Banco de dados Vulnerabilidades Ataques a banco de dados Criptografia Conclusão
  • 3.
    Segurança de Dadose Informação
  • 4.
    Desafios das organizaçõesEstabelecer contra medidas para o risco de perda de dados. Adequar-se às exigências da atual dinâmica empresarial; Rapidez nas tomadas de decisão; Racionalização dos processos; Processamento de grandes volumes; Pressão sobre os resultados.
  • 5.
    Dados e InformaçãoProblemas identificados em dados não protegidos: Dados armazenados em mídia removível (perdidos / roubados) Política inconsistente de dados; Dados não estruturados; Falha no processo de auditoria interna Exposição legal, regulamentária e ética para a organização; Custo de violações de dados.
  • 6.
    Dados e InformaçãoValores agregados à proteção dos dados e informação: Redução do custo, aumento da capacidade de cumprir as obrigações de auditoria e conformidade; Garantia que os dados estejam disponíveis para as pessoas certas, no momento certo; Garantia que os dados não sejam deliberada- ou inadvertidamente acessados, vazados ou danificados;
  • 7.
  • 8.
    Banco de Dados É um conjunto de registros dispostos em uma estrutura regular que possibilita a reorganização dos mesmos permitindo extrair a informação.
  • 9.
    Banco de Dados São utilizados para armazenar diversos tipo de dados, como informações de pessoas, dados bancários, informações confidenciais, etc.
  • 10.
    Ferramentas de SegurançaPolítica de Segurança Levantamento de Necessidades de Usuários O que desejam O que precisam Perfis comuns Níveis de Segurança Adaptação às Regras da Empresa Administrador, Dono de Objetos, Usuário Comum Proteção em nível de Tabela Gerência da base; Acesso a Objetos (Tabelas, Visões etc.) Integração com o Sistema Operacional Views, Stored Procedures, Triggers Backup & Recovery Auditoria
  • 11.
    Ferramentas de SegurançaSQL Server Modos de Segurança: Standard e Integrated Logins Usuários Administrador, Database Owner, Database Object Owner, Database User Privilégios de Objeto vs. Sistema Objetos: Rule, Default, Stored Procedure, Trigger, View Políticas de Backup Recuperação Auditoria Ferramentas externas
  • 12.
    Ferramentas de SegurançaOracle Integração com o SO Schemas Usuários Administrador, Database Owner, Database Object Owner, Database User Privilégios de Objeto vs. Sistema Roles Objetos: Stored Procedure, Trigger, View, Synonym, Profile Políticas de Backup Recuperação Ferramentas do Oracle Enterprise Manager Oracle Security Server Auditoria Criptografia
  • 13.
  • 14.
    Vulnerabilidades O maiorvalor de uma empresa são as informações que ela possui. Todos os recursos que expõem dados ou informações podem ser considerados um risco, se forem implementados incorretamente. A preocupação com a segurança dos dados contidos em bancos de dados deve ser alta, independente do tipo de informação que está sendo tratada.
  • 15.
    Ameaças e vulnerabilidadespoderão ser de menor impacto se estiver bem definido: Processo (Diretivas de segurança); Plataforma (Sistema não atualizado); Autenticação (Senhas pouco seguras); Programação (Injeção SQL); Acesso aos dados (Criptografia aplicada de forma inadequada); Vulnerabilidades
  • 16.
  • 17.
    Ataques a Bancode Dados SQL Injection Uma das técnicas de fraude mais conhecida pelos desenvolvedores web. Manipulação de instrução SQL através das variáveis que compõem parâmetros recebidos por scripts server-side.
  • 18.
    SQL Injection –Exemplo $Sql = "SELECT * FROM tb_usuario WHERE usuario = '" + $usuario + “ AND senha = ‘” + $senha + “’;" Ao entrar com: Usuário: ‘ or ‘1’=‘1 Senha: ‘ or ‘1’=‘1 Comando que será processado pelo Banco de Dados: SELECT * FROM tb_usuario WHERE usuario = ‘’ or ‘1’=‘1’ AND senha = ‘’ or ‘1’=‘1’; Ataques a Banco de Dados
  • 19.
    SQL Injection –Exemplo $Sql = "SELECT * FROM tb_clientes WHERE cliente = '" + $nome + “’;" Ao entrar com: Cliente: ‘; SELECT * FROM SYSOBJECTS; Comando que será processado pelo Banco de Dados: SELECT * FROM tb_clientes WHERE cliente = ‘’; SELECT * FROM SYSOBJECTS Comando que poderá ser processado pelo Banco de Dados: SELECT * FROM tb_clientes WHERE cliente = ‘’; DROP TABLE FINANCEIRO Ataques a Banco de Dados
  • 20.
    SQL Injection –Solução Utilização de parâmetros Remoção de caracteres especiais Limitação da quantidade de caracteres Configuração correta do usuário de acesso ao BD. Ataques a Banco de Dados
  • 21.
  • 22.
    Criptografia Codifica osdados através de algoritmos; A decodificação dos dados é feita através de chaves (pública e privada) ou senha; Inutiliza os dados sem a chave de decriptrografia ou senha correspondente; Não resolve problemas de controle de acesso; Aumenta a segurança, limitando perda de dados mesmo se os controles de acesso forem ignorados. Fonte: http://msdn.microsoft.com/pt-br/library/bb510663.aspx
  • 23.
    Tipos de criptografiaCriptografia Hash (ou Digest); Chaves Simétricas; Chaves Assimétricas;
  • 24.
    Criptografia Hash Permite que,através de uma string de qualquer tamanho, seja calculado um identificador digital de tamanho fixo, chamado de valor  hash ; O valor  hash  geralmente é formado por 16 bytes (no caso do MD-2, MD-4 e MD-5) ou 20 bytes (no caso do SHA-1), mas pode se estender, embora não passe de 512 bytes;
  • 25.
    Chaves Simétricas Amesma chave é usada tanto na codificação quanto na decodificação; Algoritmos criptográficos que fazem uso da Chave Simétrica: DES (Data Encryption Standard); IDEA (Internacional Data Encryption Algorithm); RC (Ron’s Code ou Rivest Cipher) ; 3DES; Twofish; Blowfish. Confiram o vídeo exibido na apresentação: http://www.youtube.com/watch?v=U62S8SchxX4
  • 26.
    Chaves Assimétricas Osistema funciona da forma que alguém cria uma chave e envia essa chave à quem quiser mandar informações à ela, essa é a chamada chave pública. Com ela é feita a codificação da mensagem; Para decodificação será necessário utilizar uma outra chave que deve ser criada, a chave privada – que é secreta. Na figura, a chave verde representa a chave pública, enquanto a chave rosa representa a chave privada. Fonte: Wikipedia
  • 27.
    Criptografia em Bancode Dados Não deve ser considerada em todos os dados ou conexões. Como os usuários acessarão os dados? Usuários acessarem dados por uma rede pública. Usuários acessarem dados por uma intranet segura. Qualquer uso de criptografia deve também incluir uma estratégia de manutenção de senhas, chaves e certificados.
  • 28.
    Conclusão Independentemente dosrecursos e investimentos aplicados em alta tecnologia, se faz necessária uma adoção comportamental e contínua voltada para a segurança do negócio. Pois, a sobrevivência da empresa não é fundamental apenas quanto ao aspecto da rentabilidade, mas também quanto ao aspecto da manutenção da operacionalidade em níveis que não possam interrompê-la.
  • 29.
    “ Nenhuma correnteé mais forte que seu elo mais fraco.”

Notas do Editor

  • #26 Chaves Simétricas      É o tipo mais simples de criptografia, já que tanto o emissor quanto o receptor da mensagem possuem a mesma chave, ou seja, a mesma chave é usada tanto na codificação quanto na decodificação.      Para ser realizada, basta que o emissor, antes de enviar a mensagem criptografada, envie a chave privada que será utilizada para descriptografá-la. Retirado do site da USP Existem diversos algoritmos criptográficos que fazem uso da Chave Simétrica, tais como:   - DES (Data Encryption Standard)       Criado pela IBM em 1977, usa criptografia de 56 bits, o que corresponde a cerca de 72 quadrilhões de chaves diferentes. Apesar de ser um valor bastante alto, foi quebrado por em 1997 por força bruta (tentativa e erro), em um desafio feito na Internet.   - IDEA (Internacional Data Encryption Algorithm)       Criado em 1991 por Massey e Xuejia Lai, utiliza chaves de 128 bits com uma estrutura semelhante ao anteriormente citado DES, porém, possui uma implementação mais simples.   - RC (Ron’s Code ou Rivest Cipher)       Desenvolvido por Ron Rivest, é largamente utilizado em e- mails. Possui diversas versões (RC2, RC4, RC5 e RC6), com chaves que vão de 8 à 1024 bits       Podemos citar ainda o 3DES, o Twofish e o Blowfish, entre outros.       Porém, a Chave Simétrica apresenta alguns problemas graves, tais como a necessidade da troca constante dessas chaves e a impossibilidade de serem usados com fins de autentificação (já que a transmissão da chave privada de um para o outro pode não ser segura e acabar caindo em outras mãos), apesar de seus algoritmos serem mais rápidos do que os algoritmos assimétricos.
  • #27 Chaves Assimétricas      Diferentemente do método de Chave Simétrica, esse tipo utiliza 2 chaves, uma pública e uma privada. O sistema funciona da forma que alguém cria uma chave e envia essa chave à quem quiser mandar informações à ela, essa é a chamada chave pública. Com ela é feita a codificação da mensagem. Para decodificação será necessário utilizar uma outra chave que deve ser criada, a chave privada – que é secreta. Retirado da Wikipedia Retirado da Wikipedia Na figura, a chave verde representa a chave pública, enquanto a chave rosa reprenta a chave privada.            Esse esquema de chaves pública e privada atuando em conjunto funciona muito bem, principalmente quando queremos garantir a confiabilidade nos dados, já que somente o proprietário da chave privada será capaz de descriptografar a mensagem e vice-versa (nem mesmo o dono da chave pode descriptar a mensagem que ele encriptou, a não ser que ele possua a outra chave), ou seja, mesma que ela caia em “mãos erradas”, essa pessoa não será capaz de lê-la.      Existem diversos algoritmos criptograficos que fazem uso da Chave Simétrica, tais como:       - RSA (Rivest, Chamir e Adleman)       Criado em 1977 por Ron Rivest, Adi Shamir e Len Adleman, é um dos algoritmos de chave assimétrica mais utilizados. Seu funcionamento consiste na multiplicação de 2 números primos muito grandes para a geração de um terceiro número. Para quebrar essa cripografia, seria necessário a fatoração desse número para encontrar os 2 números primos que o geraram, porém, para isso é necessário um poder muito alto de processamento, o que acaba inviabilizando a tarefa. A chave privada são os dois números primos e a pública é o terceiro número.        - ElGamal       Desenvolvido por Taher ElGamal, faz uso de um algoritmo conhecido como “logaritmo discreto” para se tornar seguro. É frequente seu uso em assinaturas digitais.      Podemos citar ainda o DSS (Digital Signature Standard), entre outros.       Assim como a Chave Simétrica, a Assimétrica também tem seus problemas. A utilização de algoritmos reversos para desencriptação de mensagens acaba por elevar o tempo computacional dos algoritmos de criptografia assimétrica, tornando inviável o seu uso em uma comunicação intensa.
  • #28 Importante Embora a criptografia seja uma ferramenta valiosa para ajudar a garantir a segurança, não deve ser considerada em todos os dados ou conexões. Quando você estiver decidindo se a criptografia deve ser implementada, considere como os usuários acessarão os dados. Se os usuários acessarem dados por uma rede pública, a criptografia de dados poderá ser necessária para aumentar a segurança. No entanto, se todos os acessos envolverem uma configuração de intranet segura, a criptografia poderá não ser necessária. Qualquer uso de criptografia deve também incluir uma estratégia de manutenção de senhas, chaves e certificados.