Segurança no Desenvolvimento



Documentos relacionados
Aula 11 Integrando Segurança ao Processo de Desenvolvimento de Software. Prof. Leonardo Lemes Fagundes

Conviso Security Training Ementa dos Treinamentos

OWASP: Introdução OWASP. The OWASP Foundation

Segurança de Sistemas

Segurança no Plone. Fabiano Weimar dos Santos [Xiru]

Quem tem medo de XSS? William Costa

Análise de Vulnerabilidades em Aplicações WEB

Desenvolvimento e disponibilização de Conteúdos para a Internet

(In)Segurança em Aplicações Web. Marcelo Mendes Marinho Thiago Canozzo Lahr

efagundes com GOVERNANÇA DE TIC Eduardo Mayer Fagundes Aula 3/4

Weber Ress

UML - Unified Modeling Language

Nomes: Questão 1 Vulnerabilidade: SQL Injection (Injeção de SQL):

Tipos de teste de software

Papel dos CSIRTs no Cenário Atual de Segurança

Modelo de processo para desenvolvimento de aplicações seguras OWASP. The OWASP Foundation

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS

segurança em aplicações web

VULNERABILIDADES WEB v.2.2

Integração Contínua com Rational Team Concert, Jenkins e SonarQube

Gerência de Projetos de Software Modelos de gerência. CMM: Capability Maturity Model ITIL: Information Technology Infrastructure Library MPS BR

PMBOK e Cobit - Uma Experiência na Reformulação de Sistemas em Angola Marcelo Etcheverry Torres,PMP,Cobit)

25/11/2011. Heróis da Segurança OWASP. A necessidade de Aplicações Seguras OWASP TOP 10. Modelagem de Riscos. Aplicações Seguras: mitos e verdades

Daniel Caçador

VISUAL STUDIO TEAM SYSTEM IMPLANTAÇÃO DA SUITE DE FERRAMENTAS

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini prof.andre.luis.belini@gmail.com /

Especificações da oferta Gerenciamento de dispositivos distribuídos: Gerenciamento de ativos

CONCORRÊNCIA AA Nº 05/2009 BNDES ANEXO X PROJETO BÁSICO: DESCRIÇÃO DOS PROCESSOS DE TI

Garantia da Qualidade de Software

10 maiores riscos em aplicações Web

Fundamentos em Teste de Software. Vinicius V. Pessoni

Universidade Paulista

OpenACS e as Comunidades Virtuais

FANESE Faculdade de Administração e Negócios de Sergipe

Qualidade de Software. Anderson Belgamo

ENGENHARIA DE SOFTWARE I

Verificação e Validação

SLA - Service Level Agreement (Acordo de Nível de Serviço) Gerenciamento de Estoque

Curso ITIL Foundation. Introdução a ITIL. ITIL Introduction. Instrutor: Fernando Palma fernando.palma@gmail.com

ISO/IEC Exemplificada

SIMULADO: Simulado 3 - ITIL Foundation v3-40 Perguntas em Português

Banco do Brasil S.A. Consulta ao Mercado - RFP - Request for Proposa Aquisição de Ferramenta de Gestão de Limites Dúvida de Fornecedor

CobiT 5. Como avaliar a maturidade dos processos de acordo com o novo modelo? Conhecimento em Tecnologia da Informação

Apresentação do Treinamento

A PRESIDENTE DO TRIBUNAL REGIONAL DO TRABALHO DA 11ª. REGIÃO, no uso de suas atribuições legais e regimentais,

ABNT NBR ISO/IEC 27002:2005

Implantação de um Processo de Medições de Software

GESTÃO DE SERVIÇOS DE TI: OTIMIZAÇÃO DE RECURSOS E PROCESSOS. Realização:

Wesley Vaz, MSc., CISA

FACULDADES INTEGRADAS PROMOVE DE BRASÍLIA PROJETO DE INICIAÇÃO CIENTÍFICA

LEVANTAMENTO DE REQUISITOS. Lílian Simão Oliveira

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Segurança + Conformidade. Dentro do Prazo e Orçamento Previsto Sob Demanda


Feature-Driven Development

Fonte: - Illustration by Gaich Muramatsu

Gerência de Requisitos: MPS.BR, BABOK e Agile possuem algo em comum? Uma experiência no Governo com software Open Source

Aula 01 Introdução ao Gerenciamento de Redes

Atividade da gerência da qualidade

No final do curso, os alunos devem ser capazes de:

Declaração de trabalho do projeto. Caso de negócio. Fatores ambientais da empresa. Estratégia de gerenciamento das partes interessadas.

LEIA ISTO PRIMEIRO. IBM Tivoli Configuration Manager, Versão 4.2.1

ISO/IEC 12207: Gerência de Configuração

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com

GARANTIA DA QUALIDADE DE SOFTWARE

Abordagens. Ao redor do computador. Ao redor do computador. Auditoria de Sistemas de Informação. Everson Santos Araujo

Gerenciamento de Incidentes: o Papel do CSIRT no Aumento da Segurança das Corporações

ITIL V3 (aula 2) AGENDA: GERENCIAMENTO DE INCIDENTE GERENCIAMENTO DE PROBLEMA

Boas Práticas de Desenvolvimento Seguro

A Disciplina Gerência de Projetos

PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17

ITIL - Por que surgiu? Dependências de TI; A qualidade, quantidade e disponibilidade de infra-estrutura de TI afetam diretamente;

Modernização e Evolução do Acervo de Software. Gustavo Robichez de Carvalho guga@les.inf.puc-rio.br

MODELOS DE MELHORES GOVERNANÇA DE T.I. PRÁTICAS DA. Prof. Angelo Augusto Frozza, M.Sc.

Metodologia de Desenvolvimento de Sistemas

Transcrição:

Segurança no Desenvolvimento Palestrante: Daniel Araújo Melo Grupo de Resposta a Ataques da Intranet 00/00/0000

Agenda Apresentação do Grupo de Resposta a Ataques Melhores Práticas ISO 15408 OWASP BSIMM

Grupo de Resposta a Ataques CSIRT Framework Computer Incident Response Team www.cert.org, www.cert.br Serviços Oferecidos Detecção e Prevenção de Intrusão Análise de Vulnerabilidades Análise Forense Computacional Treinamentos Consultoria

Csirts no Brasil

Vulnerabilidades A melhor forma de quebrar a segurança de um sistema é evitá-la... Fonte www.securecoding.cert.org

Vulnerabilidades Reportadas 9000 Vulnerabilidades Reportadas ao Cert/CC 8000 7000 6000 5000 4000 3000 2000 1000 0 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 Q1-Q3, 2008

Contexto da Segurança Técnicas de Avaliação Avaliação produzem Proprietários requerem Garantia Confiança que dá Evidencia a existência Contramedidas minimizam Risco a Ativos

Avaliação da Segurança Pode melhorar produtos de TI de duas formas: Identifica erros ou vulnerabilidades que podem ser corrigidas pela(o) Desenvolvedor(a), reduzindo a probabilidade de futuras falhas de segurança; A Preparação para uma avaliação faz com que a(o) Desenvolvedor(a) tome mais cuidado com a estrutura e desenvolvimento do Sistema.

Segurança em Desenvolvimento Segurança no Ambiente de Desenvolvimento; Manter fontes em segurança, evitar roubo de código ou indisponibilidade da equipe de desenvolvimento. Segurança do Sistema; Seguir especificação de segurança, evitar falhas(vulnerabilidades) que comprometam a segurança. Buffer Overflows, Backdoors, etc. Garantia de Segurança do Sistema. Garantir ao Cliente a segurança do Sistema.

Ambiente de Desenvolvimento Seguro Algumas Características de um Ambiente Seguro: Espaço físico restrito, com controle de acesso físico e proteção lógica dos servidores; Separação entre ambiente de desenvolvimento, teste e construção (build); Gerência de configuração dos fontes; Processos de desenvolvimento bem estabelecidos e controlados, gerando evidências dos controles.

Exposição do Ambiente Scrapkut worm Orkut Contaminou 400.000 usuários Js-Exploit Messenger Se replica através do Messenger Samy (also known as JS.Spacehero) Myspace 1.000.000 de infecções em 20 horas

Segurança do Sistema Normas e práticas de boa programação: Funções intrinsecamente seguras; Verificar códigos de erro retornado por função ou método; Atentar para tamanho de buffers e arrays do sistema; Documentar o código;

Top 10 Secure Coding Practices 1. Validate input. 2. Heed compiler warnings. 3. Architect and design for security policies. 4. Keep it simple. 5. Default deny. 6. Adhere to the principle of least privilege. 7. Sanitize data sent to other systems. 8. Practice defense in depth. 9. Use effective quality assurance techniques. 10. Adopt a secure coding standard. Bonus: Define security requirements, threat modeling Fonte: www.securecoding.cert.org

Garantia de Segurança do Sistema Especificar a segurança de forma clara e objetiva; Construir conforme especificação; Testar para verificar se atende a especificação original

Common Criteria for Information Technology Security Evaluation Homolagada como ISO/IEC 15.408 também chamada de Common Criteria ou CC. Objetivo: Fornecer conjunto de critérios fixos que permitem especificar a segurança de uma aplicação de forma não ambígua a partir de características do ambiente da aplicação, e definir formas de garantir a segurança da aplicação para o cliente final. Evolução do TSEC Trusted Computer Security Evaluation Criteria - Orange Book

Metodologia de Desenvolvimento Nenhuma metodologia específica Análise de Correspondência e Testes de integração Requisitos de Segurança Requisitos Funcionais Design de Alto Nível n Fontes Implementação Refinamentos de Design e mplementação

ISO 15.408 Define 4 níveis de garantia de segurança (EAL Evaluation Assurance Level) EAL 1 Testado funcionalmente Garante que o sistema funciona de acordo com o especificado em sua documentação, e que esta descreve as proteções necessárias contra ameaças identificadas. Aplicável quando alguma confiança no funcionamento é necessária, porém as ameaças à segurança não são vistas como sérias. A avaliação é feita na versão entregue ao Cliente, com base na documentação, sem o auxílio do desenvolvedor.

ISO 15.408 Continuação: EAL 2 Testado Estruturalmente Garante que foram utilizadas as práticas comerciais padrão no desenvolvimento; Requer uma análise de vulnerabilidades do sistema, testes independentes e validação dos testes e estrutura utilizados pelo desenvolvedor, que também será avaliado. Aplicável nos casos em que desenvolvedores e usuários requerem um nível entre baixo e moderado, de garantia de segurança. Ex.: sistemas legados ou nos quais o desenvolvedor possui acesso limitado.

ISO 15.408 Continuação: EAL 3 Metodicamente testado e verificado Garante que a segurança foi aplicada no estágio de projeto do sistema, sem alteração substancial nas práticas de desenvolvimento; Requer investigação completa do sistema e do seu desenvolvimento, sem a necessidade de reengenharia. Aplicável nos casos em que desenvolvedores e usuários requerem nível moderado de garantia de segurança.

ISO 15.408 Continuação: EAL 4 Metodicamente projetado, testado e verificado Garante o máximo em segurança baseada em boas práticas de desenvolvimento, sem a utilização de especialista. Analisa as funções de segurança do Sistema utilizando: especificações funcional e de interfaces; estruturas de alto nível(high-level design) e baixo nível(lowlevel design); subconjunto da implementação; modelo informal da política de segurança do sistema.

OWASP Open Web Application Security Project Comunidade aberta Dedicada a habilitar organizações à desenvolver, adquirir e manter aplicações que possam ser confiáveis. Ferramentas e Documentos organizados nas seguinte categorias Proteção Detecção proteção contra falhas de implementação e design de segurança Detecção de falhas de implementação e design de segurança Ciclo de vida Adicionam segurança ao ciclo de vida de desenvolvimento de software.

OWASP Comunidade Mundial 23

OWASP Ferramentas Proteção Detecção OWASP AntiSamy Java Project OWASP AntiSamy.NET Project OWASP Enterprise Security API (ESAPI) Project OWASP Live CD Project OWASP WebScarab Project Ciclo de vida OWASP WebGoat Project

OWASP Documentos Proteção Detecção OWASP Development Guide OWASP Ruby on Rails Security Guide V2 OWASP Code Review Guide OWASP Testing Guide OWASP Top Ten Project Ciclo de vida OWASP AppSec FAQ Project OWASP Legal Project OWASP Source Code Review for OWASP-Projects

Owasp top 10 A1 - Cross Site Scripting (XSS) A2 - Injection Flaws A3 - Malicious File Execution A4 - Insecure Direct Object Reference A5 - Cross Site Request Forgery (CSRF) A6 - Information Leakage and Improper Error Handling A7 - Broken Authentication and Session Management A8 - Insecure Cryptographic Storage A9 - Insecure Communications A10 - Failure to Restrict URL Access

Modelagem de Ameaças com Owasp Owasp indica: Microsoft threat modelling Outras abordagens: Trike AS/NZS 4360:2004 Risk Management Common Vulnerability Scoring System OCTAVE Fonte: http://www.owasp.org/index.php/threat_risk_modeling

The Building Security In Maturity Model BSIMM - http://www.bsi-mm.com Modelo de maturidade para segurança no desenvolvimento SSF Security Software Framework Práticas adotadas por nove das mais bem sucedidas iniciativas em segurança do desenvolvimento: Adobe, EMC, Google, Microsoft, QUALCOMM, Wells Fargo,The Depository Trust and Clearing Corporation (DTCC) Apresenta 2 papéis (roles) para implementação Liderança executiva Accountability e enpowerment SSG Software Security Group Pessoal com experiência em codificação e arquiteturas. 1 membro para cada 100 desenvolvedores.

The Building Security In Maturity Model SSF 12 práticas em 4 domínios

FIM Photo credits: 365/25 originally uploaded by teachingsagittarian http://www.flickr.com/photos/teachingsagittarian/3225013302/

Contato daniel.melo@serpro.gov.br TIGRA Grupo de Resposta a Ataques da Intranet