Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de...

48
Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro

Transcript of Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de...

Page 1: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Tema 2: Técnicas de desenvolvimento seguroProfessor Me. Edinei Gonçalves Lemes

Desenvolvimento de Software Seguro

Page 2: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Roteiro 1. Introdução2. Ataques e falhas3. Segurança e

riscos4. Cuidados básicos Área de segurança para

intérprete de Libras.

Técnicas de desenvolvimento seguro

1/12

Page 3: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Área de segurança para intérprete de Libras.

Introdução

2/12

Page 4: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Exposição de conteúdos na internet

•Manter recursos para monitorar os serviços.

Área de segurança para intérprete de Libras.

Introdução

3/12

Page 5: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Informação•Estratégica; •Sem ela não existe mudanças;•Possivelmente nem a empresa existiria.•Buscar técnicas decodificação e configuração com o objetivo de evitar ataques.

Área de segurança para intérprete de Libras.

Introdução

4/12

Page 6: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Área de segurança para intérprete de Libras.

Ataques e falhas

5/12

Page 7: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Os ataques concentra-se

•Burlar regras de segurança; •Inserir códigos maliciosos; •Abrir "portas".

Internet segura

muito distante

Área de segurança para intérprete de Libras.

Ataques e falhas

6/12

Page 8: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Falhas conhecidas

•Configuração de sistemas;•Programação de sistemas; •Engenharia social.

Área de segurança para intérprete de Libras.

Ataques e falhas

7/12

Page 9: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Profissionais na internet

•Desenvolvem novos métodos de ataques;•Testam suas aplicações (aprendizagem ou maldade).

Área de segurança para intérprete de Libras.

Ataques e falhas

8/12

Page 10: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Num contexto de programação

•Analisar a criticidade do negócio; •Saber que Ambiente virtual 100% seguro é impossível.

Área de segurança para intérprete de Libras.

Ataques e falhas

9/12

Page 11: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

•Avaliar: - Recursos e flexibilidade de cada linguagem - Arquitetura de programação; - Sistema operacional.

Área de segurança para intérprete de Libras.

Ataques e falhas

10/12

Page 12: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Desenvolvedor deve conhecer

•Diretivas de segurança da aplicação;•Diretivas de segurança aplicadas ao servidor que hospedará a aplicação.

Área de segurança para intérprete de Libras.

Ataques e falhas

Page 13: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Diretivas de segurança

•Necessárias devem ser liberadas; •Default devem ser evitadas.

Configurações Default

propícias e vulneráveis a ataques.

Área de segurança para intérprete de Libras.

Ataques e falhas

Page 14: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Continuando

Tema 2: Técnicas de desenvolvimento seguro

Page 15: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 16: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Aspectos da segurança

a)Confiabilidade; b)Integridade;c)Disponibilidade;d)Autenticação;e)Não-repúdio.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 17: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Sistemas baseados na Web

• Protocolo HTTP;•Ajuste mais refinado no servidor de aplicação.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 18: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Segurança declarativa

•Aplicativos que fornecem serviço HTTP;•Módulos para configuração do servidor•Refinamentos importantes

Área de segurança para intérprete de Libras.

Segurança e risco

Page 19: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Segurança programática

•Código desenvolvido pelo programador em tempo desenvolvimento.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 20: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Mesmo que o ambiente Web esteja protegido com firewall ou com controles de acesso, um usuário mal intencionado pode através de entrada de dados de formulários das próprias aplicações incluir códigos maliciosos.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 21: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

O planejamento e desenvolvimento com o uso de técnicas de codificação ingênuas e o uso de bibliotecas e componentes de origem duvidosa geram aplicações Web cada vez mais vulneráveis.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 22: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Os 10 riscos mais comuns

1. Injeção de código ("SQL Injection"); 2. Cross-Site Scripting (XSS);3. Falha de Autenticação e

Gerenciamento de Sessão;4. Referência

Insegura Direta a Objetos;

5. Cross Site Request Forgery (CSRF);

Área de segurança para intérprete de Libras.

Segurança e risco

Page 23: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Os 10 riscos mais comuns (cont.)

6. Erros de Configuração de Segurança;7. Armazenamento Criptográfico

Inseguro;8. Falha de Restrição de Acesso à URL; 9. Proteção Insuficiente no Nível de Transporte; 10. Redirecionamento e Encaminhamentos não validados.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 24: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Área de segurança para intérprete de Libras.

Cuidados básicos

Page 25: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

É importante considerar o conjunto sistema operacional, servidor HTTP, servidor de banco de dados e o servidor de aplicação. Uma falha em qualquer elemento pode comprometer toda a estrutura.

Área de segurança para intérprete de Libras.

Cuidados básicos

Page 26: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Cuidados básicos

•Manter o sistema operacional sempre atualizado;•Manter firewall, antivírus e IDS;

Área de segurança para intérprete de Libras.

Cuidados básicos

Page 27: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

•Sempre realizar logout;•Sempre liberar somente os acessos do usuário nos locais de trabalho.

Área de segurança para intérprete de Libras.

Cuidados básicos

Page 28: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Agora é sua Vez

Tema 2: Técnicas de desenvolvimento seguro

Page 29: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

1 – Por que, mesmo com tanta ênfase em segurança nos últimos anos, o caminho para uma Internet segura ainda esta muito distante?

Área de segurança para intérprete de Libras.

Exercício 01

Page 30: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Porque ainda são possíveis muitas formas de ataques, que se concentram em burlar regras de segurança de redes e de sistemas computacionais ou inserindo códigosmaliciosos para danificar os sistemas computacionais objetivando abrir "portas".

Área de segurança para intérprete de Libras.

Resposta exercício 01

Page 31: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

2 – Abaixo, marque V ou F nas sentenças que falam sobre o que o profissional deve considerar num contexto de programação

(V) Analisar a criticidade do negócio.

Exercício 02

Área de segurança para intérprete de Libras.

(F) Saber que Ambiente virtual 100% seguro é possível.

Page 32: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

(V) Avaliar recursos e flexibilidade de cada linguagem de programação(V) Avaliar a arquitetura de programação(F) Não considerar a plataforma do sistema operacional

Exercício 02

Área de segurança para intérprete de Libras.

Page 33: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

3 – Marque a alternativa incorreta sobre o que o desenvolvedor deve saber num ambiente de programação.(a) Quais diretivas de segurança oferecidas..

Exercício 03

Área de segurança para intérprete de Libras.

(b) Quais diretivas de segurança aplicadas no sistema operacional do servidor que hospedará a aplicação.

Page 34: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

(c) Que somente as diretivas de segurança necessárias para o funcionamento correto da aplicação devem ser liberadas.

Exercício 03

Área de segurança para intérprete de Libras.

(d) Que as configurações por padrão conhecidas como (default) devem ser sempre usadas por motivo de sua segurança.

Page 35: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

4 - Sobre os cinco aspectos da segurança a serem considerados na interoperabilidade entre os sistemas, marque a alternativa incorreta(a) Confiabilidade. (b) Integridade.(c) Disponibilidade.(d) Autenticação.(e) Repúdio.

Exercício 04

Área de segurança para intérprete de Libras.

Page 36: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

5 – Sobre os 10 riscos mais comuns, marque V ou F abaixo.

(V) Injeção de código ("SQL Injection"). (V) Cross-Site Scripting (XSS).

Exercício 05

Área de segurança para intérprete de Libras.

(V) Falha de autenticação e Gerenciamento de Sessão.

(F) Referência Segura Direta a Objetos;

Page 37: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

(V) Cross Site Request Forgery (CSRF).(F) Configuração de Segurança corretos.(F) Armazenamento Criptográfico seguro.(V) Falha de Restrição de Acesso à URL.

Exercício 05

Área de segurança para intérprete de Libras.

(F) Proteção Suficiente no Nível de transporte.

(V) Redirecionamento e Encaminhamentos não validados.

Page 38: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

6 - Sobre os cuidados básicos para um bom funcionamento do sistema, marque a incorreta:

(a) Manter o sistema operacional sempre atualizado, independente da plataforma.(b) Manter firewall, antivírus e IDS (Intrusion Detecting System), funcionando e atualizados.

Área de segurança para intérprete de Libras.

Exercício 06

Page 39: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

(c) Não deixar a conta de administrador no console, ou seja, sempre realizar logout após a utilização com qualquer conta de usuário.

(d) Liberar os acessos para todos usuários fora dos locais de trabalho para aumentar a produtividade organizacional.

Área de segurança para intérprete de Libras.

Page 40: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Finalizando

Tema 2: Técnicas de desenvolvimento seguro

Page 41: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Os ataques concentra-se•Burlar regras de segurança; •Inserir códigos maliciosos; •Abrir "portas".

Internet segura

muito distante

Área de segurança para intérprete de Libras.

Ataques e falhas

Page 42: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Entender•Profissionais na internet;•Num contexto de programação;•Desenvolvedor deve conhecer.

Área de segurança para intérprete de Libras.

Ataques e falhas

Page 43: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Diretivas de segurança

•Necessárias devem ser liberadas; •Default devem ser evitadas.

Configurações Default

propícias e vulneráveis a ataques.

Área de segurança para intérprete de Libras.

Ataques e falhas

Page 44: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Aspectos da segurança

a)Confiabilidade; b)Integridade;c)Disponibilidade;d)Autenticação;e)Não-repudio.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 45: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Entender•Sistemas baseados na Web;•Segurança declarativa;•Segurança programática.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 46: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Os 10 riscos mais comuns

1. Injeção de código ("SQL Injection"); 2. Cross-Site Scripting (XSS);3. Falha de Autenticação e

Gerenciamento de Sessão;4. Referência

Insegura Direta a Objetos;

5. Cross Site Request Forgery (CSRF);

Área de segurança para intérprete de Libras.

Segurança e risco

Page 47: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Os 10 riscos mais comuns (cont.)

6. Erros de Configuração de Segurança;7. Armazenamento Criptográfico

Inseguro;8. Falha de Restrição de Acesso à URL; 9. Proteção Insuficiente no Nível de Transporte; 10. Redirecionamento e Encaminhamentos não validados.

Área de segurança para intérprete de Libras.

Segurança e risco

Page 48: Tema 2: Técnicas de desenvolvimento seguro Professor Me. Edinei Gonçalves Lemes Desenvolvimento de Software Seguro.

Cuidados básicos

•Manter o sistema operacional sempre atualizado;•Manter firewall, antivírus e IDS;

Área de segurança para intérprete de Libras.

Cuidados básicos