Conviso Security Training Ementa dos Treinamentos



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

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

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

Autores/Grupo: TULIO, LUIS, FRANCISCO e JULIANO. Curso: Gestão da Tecnologia da Informação. Professor: ITAIR PEREIRA DA SILVA GESTÃO DE PESSOAS

Programa do Curso de Pós-Graduação Lato Sensu MBA em Engenharia de Software Orientada a Serviços (SOA)

Curso preparatório para a certificação COBIT 4.1 Fundation

Formação Efetiva de Analistas de Processos

Apresentação. Objetivo. Dados Principais. Período 20/06 à 25/07

Oficina de Gestão de Portifólio

Administração de CPD Chief Information Office

Segurança no Desenvolvimento

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

Projeto de Redes de Computadores. Desenvolvimento de Estratégias de Segurança e Gerência

Treinamento BPM e BPMN Apresentação Executiva

Governança Corporativa. A importância da Governança de TI e Segurança da Informação na estratégia empresarial.

Curso COBIT 4.1 Foundation

Boas Práticas de Desenvolvimento Seguro

Curso de. Formação Executiva em Estratégia, Governança e Processos de TI

Apresentação do Treinamento

ADMINISTRAÇÃO DE BANCO DE DADOS MYSQL

Proposta PROGRAMA ITIL V3 EXPERT. Apresentação Executiva. Programa ITIL V3 Expert

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

Principais Responsabilidades:

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

BPM Uma abordagem prática para o sucesso em Gestão de Processos

VULNERABILIDADES WEB v.2.2

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

Proposta. ITIL V Fundamentos. Apresentação Executiva. ITIL V Fundamentos

Proposta. ISO / 2011 Fundamentos. Apresentação Executiva. ISO / Fundamentos

Cumprindo as exigências 6.6 do PCI DSS

Apresentação da disciplina e proposta didática Prof. MSc Hugo Vieira L. Souza

Aspectos de Segurança em Programação com Java

Quem tem medo de XSS? William Costa

PROGRAMA TRANSPORTE AÉREO DE MATERIAIS BIOLÓGICOS

Apresentação. Objetivo. Público alvo. Dados Principais. Tecnologia Abordada Microsoft SQL Server 2012

Governança de TI. ITIL v.2&3. parte 1

Treinamento em PHP com MySQL - Fundamental

PLATAFORMAS EAD SOB MEDIDA

Por que escolher a Formação de Gestor de Cadeia de Custódia do IMAFLORA? Programa de Formação de Gestor de Cadeia de Custódia FSC

Requisitos de controlo de fornecedor externo

Especialização em Gestão de Segurança da Informação

CONSULTORIA E SERVIÇOS DE INFORMÁTICA

Indústria de Cartões de Pagamento (PCI) Padrão de segurança de dados. Resumo de Alterações da Versão 2.0 para a 3.0 do PCI-DSS

Cláudia Araújo Coordenadora Diego Macêdo Programador Marcelo Rodrigues Suporte

Sistema Gerenciador de Clínica Médica Automatizando a Clínica Cardiomed Implantação

Gestão de pessoa. Prof: Itair Pereira da Silva

UNIVERSIDADE POTIGUAR UNP CURSO DE SISTEMAS DE INFORMAÇÃO

Análise de Vulnerabilidades em Aplicações WEB

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

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

PLANO DE GERANCIAMENTO DO RELEASE Release:

Material didático ESR

SISTEMA DE GESTÃO DE PESSOAS SEBRAE/TO UNIDADE: GESTÃO ESTRATÉGICA PROCESSO: TECNOLOGIA DA INFORMAÇÃO

GOVaaS APRESENTAÇÃO DA FORMAÇÃO + EXAME COBIT 5 FOUNDATION

Segurança em aplicações web: pequenas ideias, grandes resultados Prof. Alex Camargo

TRIBUNAL REGIONAL FEDERAL DA 2ª REGIÃO Secretaria de Tecnologia da Informação

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11

Carga Horária :144h (07/04 a 05/09/2014) 1. JUSTIFICATIVA: 2. OBJETIVO(S):

Gerencia de Serviços: Fundamentos em ITIL V3

Contratação de Tecnologia da Informação e Comunicação TIC no Governo - Visão Sistêmica. PRELETORES: MADELINE ROCHA FURTADO E ODILON NEVES JÚNIOR

Programa do Curso de Pós-Graduação Lato Sensu MBA em Gestão de Projetos

Planejamento Estratégico de Tecnologia da Informação PETI

Treinamento em Alfresco Open Source Enterprise Content Management ( ECM ) - GED Gestão Eletrônica de Documentos

CAMPO DE APLICAÇÃO Esta Norma Complementar se aplica no âmbito da Administração Pública Federal, direta e indireta.

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

Curso PMO Como ter sucesso na gestão de múltiplos empreendimentos

PDTI UFLA: Plano Diretor de Tecnologia da Informação Segundo Modelo de Referência da SLTI/MPOG

Sequência da Apresentação

MASTER IN PROJECT MANAGEMENT

Channel. Visão Geral e Navegação. Tutorial. Atualizado com a versão 3.9

Proposta. Gerenciando Projetos com Microsoft Project. Apresentação Executiva. Gerenciando Projetos com Ms-Project

EaD como estratégia de capacitação

Organização dos Estados Ibero-americanos. Para a Educação, a Ciência e a Cultura

Curso Fundamentos de Gerenciamento de Serviços de TI baseado no ITIL V3

Programa de Excelência em Atendimento aos Clientes

Apresentamos a divisão Portal Moveleiro Tecnologia, habilitada para o desenvolvimento de projetos alinhados a estratégias de e-business.

Introdução a Computação

Transcrição:

Escritório Central Rua Marechal Hermes 678 CJ 32 CEP 80530-230, Curitiba, PR T (41) 3095.3986 www.conviso.com.br Conviso Security Training Ementa dos Treinamentos

Apresentação Sobre este Documento Este documento apresenta a ementa dos cursos disponibilizados através do Conviso Security Training. Destacamos as seguintes premissas adotadas para a composição do conteúdo apresentado: A disponibilização de exemplos publicados na mídia, assim como referencias em web sites de fabricantes e organizações e demais informações externas apresentadas ao longo deste documento é feita somente para suportar o entendimento do conteúdo, não sendo a intenção violar direitos autorais sobre marcas registradas ou logotipos de empresas que porventura constem das amostras. Ementa dos Cursos para o Conviso Security Training! 1

Conteúdo Estrutura do Conviso Security Training... 3 Sobre o Conviso Security Training... 3 Módulo 101: Conceitos Básicos em Segurança de Aplicações... 4 Descrição Geral... 4 Requisitos Mínimos... 4 Carga Horária... 4 Conteúdo Programático... 4 Módulo 102: Segurança de Aplicações no PCI DSS... 6 Descrição Geral... 6 Requisitos Mínimos... 6 Carga Horária... 6 Conteúdo Programático... 6 Módulo 201: Secure Development Lifecycle... 8 Descrição Geral... 8 Requisitos Mínimos... 8 Carga Horária... 8 Conteúdo Programático... 8 Módulo 202: Modelagem de Ameaças... 10 Descrição Geral... 10 Requisitos Mínimos... 10 Carga Horária... 10 Conteúdo Programático... 10 Módulos 301: C Secure Code... 12 Descrição Geral... 12 Requisitos Mínimos... 12 Carga Horária... 12 Conteúdo Programático... 13 Módulos 30x: Secure Code... 14 Descrição Geral... 14 Requisitos Mínimos... 14 Carga Horária... 14 Conteúdo Programático... 15 Ementa dos Cursos para o Conviso Security Training! 2

Estrutura do Conviso Security Training Sobre o Conviso Security Training Os profissionais responsáveis pela proteção dos Ambientes Informatizados não podem mais ficar restritos à simples administração de uma ferramenta automatizada. Eles precisam ser capacitados nas mesmas técnicas utilizadas para os ataques, aprendendo a defender seus perímetros de forma eficaz. Como a capacitação dos analistas e programadores passou a incluir requisitos de segurança há poucos anos e em um número restrito de universidades, um grande legado de aplicações foi desenvolvido sem que houvesse uma preocupação com a proteção contra ataques. Desenvolvemos o Conviso Security Testing para atender a esta demanda com abordagens diferentes para duas audiências específicas, os desenvolvedores que precisam criar aplicações de forma segura, e os profissionais de Tecnologia da Informação que dão suporte para estas equipes, seja como gestores que definem a forma como as atividades são desenvolvidas ou os técnicos que garantem uma infraestrutura segura. Security Application Processes Formado por dois cursos que podem ser contratados individualmente ou de forma complementar, apresenta conceitos fundamentais de segurança em aplicações através da conscientização na importância desta prática, aplicabilidade na construção e manutenção de processos para suporte e técnicas ofensivas/defensivas em aplicações web. Secure Code Formado por seis cursos que podem ser contratados individualmente ou de forma complementar, ensina e demonstra como as vulnerabilidades em aplicações deve ser evitadas através de um processo para o desenvolvimento seguro. Caracterizados pelo uso intensivo de exercícios práticos para fixação do conteúdo, a abordagem é inteiramente dedicada para equipes diretamente relacionadas à produção de software. SENSEI Todos os cursos podem ser contratados com acesso ao Sistema de Ensino em Segurança da Informação (SENSEI), um modelo de suporte ao estudo que permite aos alunos darem continuidade às práticas ensinadas durante as aulas de forma dinâmica e interativa. Ementa dos Cursos para o Conviso Security Training! 3

Módulo 101: Conceitos Básicos em Segurança de Aplicações Descrição Geral O Módulo 101 - Conceitos Básicos em Segurança de Aplicações foi desenvolvido para fornecer aos alunos uma visão geral do processo de desenvolvimento seguro, abordando conceitos fundamentais, as falhas descritas pelo OWASP Top 10 2010 e as técnicas básicas para reduzir o nível de risco através da proteção da aplicação. Requisitos Mínimos Para garantir um aproveitamento adequado do conteúdo fornecido, este módulo requer que os alunos tenham conhecimento básico de desenvolvimento de aplicações e inglês técnico para leitura de parte do material de apoio fornecido pelo Conviso Labs. Carga Horária Este módulo tem a carga horária de 8 horas, com intervalos de 1 hora para o almoço e 30 minutos para coffee break, sendo 15 minutos na parte da manhã e 15 minutos no período da tarde. Conteúdo Programático 1. Introdução ao Desenvolvimento Seguro: Apresenta e discute os conceitos primordiais de segurança da informação e como eles são aplicados para garantir a manutenção de um nível aceitável de risco. 1.1. Conceitos para a Segurança da Informação 1.2. Visão Geral da Segurança para Aplicações 2. Visão Geral da Segurança para Aplicações: Discute os processos e técnicas que devem ser utilizados para garantir o planejamento, desenvolvimento, implementação e administração de software dentro de um nível de risco aceitável pela organização. 2.1. Justificativas Operacionais e Estratégicas 2.2. As Fases de um Secure Development Lifecycle 2.3. Conceitos iniciais de Código Seguro 3. OWASP: Apresenta o Open Web Application Security Project (OWASP), uma comunidade aberta, dedicada a capacitar as organizações a desenvolver, adquirir e manter, aplicações que podem ser confiáveis. 3.1. O que é o OWASP 3.2. Histórico do OWASP 3.3. Principais Projetos e Iniciativas 4. As Vulnerabilidades do OWASP Top 10 2010: Apresenta, conceitua e discute cada uma das 10 vulnerabilidades mais comuns em Aplicações Web apresentadas no OWASP Top 10 2010. 4.1. A1: Injection 4.2. A2: Cross-Site Scripting (XSS) 4.3. A3: Broken Authentication and Session Management 4.4. A4: Insecure Direct Object References 4.5. A5: Cross-Site Request Forgery (CSRF) 4.6. A6: Security Misconfiguration Ementa dos Cursos para o Conviso Security Training! 4

4.7. A7: Insecure Cryptographic Storage 4.8. A8: Failure to Restrict URL Access 4.9. A9: Insufficient Transport Layer Protection 4.10. A10: Unvalidated Redirects and Forwards 5. Conclusões: Revisão do conteúdo apresentado, relacionando os conceitos descritos ao longo do módulo e como devem ser empregados em conjunto no processo de proteção do software. 5.1. Revisão do Conteúdo 5.2. Conclusões Ementa dos Cursos para o Conviso Security Training! 5

Módulo 102: Segurança de Aplicações no PCI DSS Descrição Geral Partindo do Requerimento 6 estabelecido pelo PCI DSS v.2.0, este curso aborda as principais questões de segurança em aplicações, estudando instrumentos de análise proativa e como estes devem ser utilizados, como a causa chave das vulnerabilidades pode ser identificada e utilizada em ações corretivas e quais ferramentas e documentos de suporte devem ser utilizados para garantir o atendimento ao que é requerido pelo padrão. Requisitos Mínimos Para garantir um aproveitamento adequado do conteúdo fornecido, este módulo requer que os alunos tenham conhecimentos básicos de desenvolvimento de software e conhecimento básico de inglês técnico para leitura de parte do material de apoio fornecido pelo Conviso Labs. Carga Horária Este módulo tem a carga horária de 8 horas, com intervalos de 1 hora para o almoço e 30 minutos para coffee break, sendo 15 minutos na parte da manhã e 15 minutos no período da tarde. Conteúdo Programático 1. Introdução do Desenvolvimento Seguro: Apresenta os conceitos fundamentais da segurança da informação e como estes devem ser aplicados no desenvolvimento de aplicações. 1.1. Conceitos para a Segurança da Informação 1.2. Visão Geral da Segurança para Aplicações 2. Requerimentos estabelecidos pelo PCI Council: Apresenta um breve histórico do PCI e apresenta como os requerimentos relacionados a segurança de aplicações devem ser cumpridos, abrangendo todos os pontos estabelecidos no Requisito 6 na interpretação e entendimento dos conceitos e aplicação nas operações diárias. 2.1. A Segurança de Software no PCI DSS 2.2. O Requisito 6.1: Administração de Patches de Segurança 2.3. O Requisito 6.2: Ranking de risco 2.4. O Requisito 6.3: Regras básicas para desenvolvimento seguro 2.5. Requisito 6.4: Controle de alterações em software 2.6. Requisito 6.5: Além do OWASP Top 10 2010 2.7. Requisito 6.6: WAF x SDL 3. O Processo de Segurança em Desenvolvimento: Introduz o Secure Development Lifecycle (SDL) apresentando uma visão geral das fases componentes, as principais metodologias utilizadas no mercado e uma base para as estratégias de uso empregadas pelas organizações. 3.1. Fase de Planejamento 3.2. Fase de Design 3.3. Fase de Implementação 3.4. Fase de Administração Ementa dos Cursos para o Conviso Security Training! 6

4. O OWASP Top 10: Apresenta, conceitua e discute cada uma das 10 vulnerabilidades mais comuns em Aplicações Web apresentadas no OWASP Top 10 2010. 4.1. A1 - Injeção 4.2. A2 - Cross Site Scripting (XSS) 4.3. A3 Broken Authentication and Session Management 4.4. A4 Insecure Direct Object Reference 4.5. A5 Cross Site Request Forgery (CSRF) 4.6. A6 Security Misconfiguration 4.7. A7 Insecure Cryptographic Storage 4.8. A8 Failure to Restrict URL Access 4.9. A9 Insufficient Transport Layer Protection 4.10. A10 Unvalidated Redirects and Forwards 5. Processo de Gestão de Vulnerabilidades: Apresenta os conceitos envolvidos e como devem ser empregados pelas organizações para estabelecer e administrar um processo de Gestão de Vulnerabilidades para Software. 5.1. Processo de Resposta a Incidentes de Segurança 5.2. O Papel da Gestão de Vulnerabilidades 6. Conclusões: Revisão do conteúdo apresentado, relacionando os conceitos descritos ao longo do módulo e como devem ser empregados em conjunto no processo de proteção do software dentro do que é esperado pelos requisitos estabelecidos no PCI DSS. 6.1. Sobre a Segurança de Aplicações 6.2. Aplicabilidade no PCI DSS 6.3. O OWASP Top 10 2010 Ementa dos Cursos para o Conviso Security Training! 7

Módulo 201: Secure Development Lifecycle Descrição Geral O Módulo 201 estabelece a capacitação na criação de um Security Development Lifecycle (SDL), possibilitando que o aprendizado seja utilizado para incluir os aspectos necessários de segurança nos processos de desenvolvimento e/ou manutenção das aplicações corporativas. Usando metodologias de mercado, normas internacionais e ferramentas disponíveis na Internet, os alunos serão capacitados nas técnicas de desenvolvimento seguro, análise de riscos e implementação do SDL, possibilitando que o aprendizado seja utilizado para incluir os aspectos necessários de segurança nos processos de desenvolvimento e/ou manutenção de software. Requisitos Mínimos Para garantir um aproveitamento adequado do conteúdo fornecido, este módulo requer que os alunos tenham conhecimento de desenvolvimento de software e conhecimento básico de inglês técnico para leitura de parte do material de apoio fornecido pelo Conviso Labs. Carga Horária Este módulo tem a carga horária de 16 horas, com intervalos de 1 hora para o almoço e 30 minutos para coffee break, sendo 15 minutos na parte da manhã e 15 minutos no período da tarde, em cada um dos dois dias de duração do treinamento. Conteúdo Programático 1. Introdução ao Desenvolvimento Seguro: Apresenta e discute os conceitos primordiais de segurança da informação e como eles são aplicados para garantir a manutenção de um nível aceitável de risco. 1.1. Conceitos para a Segurança da Informação 1.2. Visão Geral da Segurança para Aplicações 2. Por que segurança em desenvolvimento?: Serão discutidos os motivadores e como é esperado o retorno sobre o investimento em segurança em desenvolvimento de software. 2.1. Justificativas Operacionais e Estratégicas 2.2. Cases de Implementação 2.3. Visão Geral de Regulamentações que demandam segurança em desenvolvimento 3. O processo de segurança em desenvolvimento: Apresenta o Secure Development Lifecycle (SDL) apresentando uma visão geral das fases componentes, as principais metodologias utilizadas no mercado e uma base para as estratégias de uso empregadas pelas organizações. 3.1. Visão Geral do SDL 3.2. A Fase de Planejamento 3.3. A Fase de Design 3.4. A Fase de Implementação 3.5. A Fase de Administração Ementa dos Cursos para o Conviso Security Training! 8

4. Papéis e Responsabilidades: Papéis e responsabilidades que devem ser endereçadas para o incremento e adequação da segurança em aplicações. 4.1. Revisores 4.2. Especialistas 4.3. Auditores 4.4. Facilitadores 5. Introdução a Modelagem de Ameaças: Abordagem para análise de riscos em aplicações, tratando desde o desenvolvimento da análise a técnicas para identificar e quantificar os riscos envolvidos. 5.1. O Processo de Modelagem de Ameaças 6. Métricas de Acompanhamento: Quais métricas devem ser desenvolvidas para medir o processo de segurança em desenvolvimento e como a administração referente pode ser utilizada pelos responsáveis para suportar um processo de maturidade crescente. 6.1. Métricas para o estabelecimento do processo 6.2. Métricas para o acompanhamento do processo 7. Gestão de Vulnerabilidades e Resposta à Incidentes de Segurança: Apresenta os conceitos envolvidos e como devem ser empregados pelas organizações para estabelecer e administrar um processo de Gestão de Vulnerabilidades para Software. 7.1. O Processo de Resposta a Incidentes de Segurança 7.2. O Papel da Gestão de Vulnerabilidades 8. Conclusões: Revisão do conteúdo apresentado, relacionando os conceitos descritos ao longo do módulo e como devem ser empregados em conjunto no processo de proteção do software e conclusão do módulo com discussões sobre conceitos incrementais e fontes de estudo referenciadas para continuidade do aprendizado. Ementa dos Cursos para o Conviso Security Training! 9

Módulo 202: Modelagem de Ameaças Descrição Geral O Módulo 202 estabelece a capacitação na condução de um processo de análise de riscos de um projeto de desenvolvimento de software baseado em Modelagem de Ameaças. Requisitos Mínimos Para garantir um aproveitamento adequado do conteúdo fornecido, este módulo requer que os alunos tenham conhecimento de desenvolvimento de software, segurança em desenvolvimento de software e conhecimento básico de inglês técnico para leitura de parte do material de apoio fornecido pelo Conviso Labs. Carga Horária Este módulo tem a carga horária de 16 horas, com intervalos de 1 hora para o almoço e 30 minutos para coffee break, sendo 15 minutos na parte da manhã e 15 minutos no período da tarde, em cada um dos dois dias de duração do treinamento. Conteúdo Programático 1. Introdução a Modelagem de Ameaças: Abordagem para análise de riscos em aplicações, tratando desde o desenvolvimento da análise a técnicas para identificar e quantificar os riscos envolvidos. 1.1. O Processo de Modelagem de Ameaças 2. Princípios da Elaboração de Modelos de Ameaças: Serão discutidos e definições usadas em modelagem de ameaças. 2.1. Recurso 2.2. Ameaça 2.3. Vulnerabilidade 2.4. Ataque 2.5. Controle 3. Identificar os Riscos: Apresenta o passo 1 do processo de modelagem de ameaças. 3.1. Que recursos devo proteger 4. Criar uma Arquitetura: Apresenta o passo 2 do processo de modelagem de ameaças. 4.1. Identificar o que a aplicação faz 4.2. Criar um diagrama de arquitetura 4.3. Identificar as tecnologias 5. Decompor a Aplicação: Apresenta o passo 3 do processo de modelagem de ameaças. 5.1. Identificar limites de confiança 5.2. Identificar o fluxo de dados 5.3. Identificar os pontos de entrada 5.4. Identificar código privilegiado 5.5. Documentar o perfil de segurança Ementa dos Cursos para o Conviso Security Training! 10

6. Identificar as Ameaças: Apresenta o passo 4 do processo de modelagem de ameaças. 6.1. STRIDE 6.2. Identificar ameaças de rede 6.3. Identificar ameaças de hosts 6.4. Identificar ameaças de aplicação 7. Documentar as Ameaças: Apresenta o passo 5 do processo de modelagem de ameaças. 7.1. Documentar as ameaças 8. Estimar as Ameaças: Apresenta o passo 6 do processo de modelagem de ameaças. 8.1. DREAD 8.2. Estimar as ameaças 9. Conclusões: Revisão do conteúdo apresentado, relacionando os conceitos descritos ao longo do módulo e como devem ser empregados em conjunto no processo de proteção do software e conclusão do módulo com discussões sobre conceitos incrementais e fontes de estudo referenciadas para continuidade do aprendizado. Ementa dos Cursos para o Conviso Security Training! 11

Módulos 301: C Secure Code Descrição Geral Este treinamento possui como característica comum apresentar uma estrutura com as principais vulnerabilidades, formas de exploração e técnicas de defesa para a linguagem C. Partindo de um modelo de treinamento onde existe interação contínua com a turma através da exposição de conteúdo somada a exercícios interativos e desafios para aplicação do conhecimento adquirido na sala de aula, estes treinamentos foram desenvolvidos para técnicos especializados em desenvolvimento de software, exigindo conhecimento na linguagem de programação referente. Requisitos Mínimos Para garantir um aproveitamento adequado do conteúdo fornecido, este módulo requer que os alunos tenham conhecimento na linguagem referente e conhecimento básico de inglês técnico para leitura de parte do material de apoio fornecido pelo Conviso Labs. Carga Horária Cada módulo componente do Secure Code tem a carga horária de 8 horas, com intervalos de 1 hora para o almoço e 30 minutos para coffee break, sendo 15 minutos na parte da manhã e 15 minutos no período da tarde. Ementa dos Cursos para o Conviso Security Training! 12

Conteúdo Programático 1. Introdução: Uma breve introdução sobre aspectos de segurança no desenvolvimento de software. 1.1. A importância da segurança por configuração e codificação segura 2. As Vulnerabilidades segundo o Commom Weakness Enumeration 2.1. Falhas de Lógica 2.2. Erros Númericos 2.3. Conversão de Signed para Unsigned 2.4. Uncontrolled Format String 2.5. Information Exposure 2.6. Buffer Overflows 2.7. Race Condition (TOCTOU) 2.8. Covert Timing Channel 2.9. Cryptographic Problems 3. Melhores Práticas 3.1. Principle of Least Privilege 3.2. Access Permissions 4. Ferramentas 4.1. Valgrind 4.2. RATS 4.3. Flaw-Finders 4.4. Compiler Flags 5. Conclusões: Revisão do conteúdo apresentado, relacionando os conceitos descritos ao longo do módulo e como devem ser empregados em conjunto no processo de proteção do software, com o fechamento do módulo através de discussões sobre conceitos incrementais e fontes de estudo referenciadas para continuidade do aprendizado. Ementa dos Cursos para o Conviso Security Training! 13

Módulos 30x: Secure Code Descrição Geral O Secure Code são treinamentos específicos para cada linguagem, os seguintes treinamentos estão disponíveis: Módulo 301 C Módulo 302 Cold Fusion Módulo 303 Java Módulo 304 PHP Módulo 305.Net Módulo 306 Ruby on Rails Estes treinamentos possuem como característica comum apresentar uma estrutura com as principais vulnerabilidades, formas de exploração e técnicas de defesa para as principais linguagens utilizadas no mercado. Partindo de um modelo de treinamento onde existe interação contínua com a turma através da exposição de conteúdo somada a exercícios interativos e desafios para aplicação do conhecimento adquirido na sala de aula, estes treinamentos foram desenvolvidos para técnicos especializados em desenvolvimento de software, exigindo conhecimento na linguagem de programação referente. Requisitos Mínimos Para garantir um aproveitamento adequado do conteúdo fornecido, este módulo requer que os alunos tenham conhecimento na linguagem referente e conhecimento básico de inglês técnico para leitura de parte do material de apoio fornecido pelo Conviso Labs. Carga Horária Cada módulo componente do Secure Code tem a carga horária de 8 horas, com intervalos de 1 hora para o almoço e 30 minutos para coffee break, sendo 15 minutos na parte da manhã e 15 minutos no período da tarde. Ementa dos Cursos para o Conviso Security Training! 14

Conteúdo Programático 1. Introdução: Uma breve introdução sobre aspectos de segurança no desenvolvimento de software. 1.1. A importância da segurança por configuração e codificação segura 2. O que é o OWASP: Apresenta o Open Web Application Security Project (OWASP), uma comunidade aberta, dedicada a capacitar as organizações a desenvolver, adquirir e manter, aplicações que podem ser confiáveis. 2.1. Histórico do OWASP 2.2. Principais Projetos e Iniciativas 3. As Vulnerabilidades do OWASP Top 10 2010: Apresenta, conceitua e discute cada uma das 10 vulnerabilidades mais comuns em Aplicações Web apresentadas no OWASP Top 10 2010. 3.1. A1: Injection 3.2. A2: Cross-Site Scripting (XSS) 3.3. A3: Broken Authentication and Session Management 3.4. A4: Insecure Direct Object References 3.5. A5: Cross-Site Request Forgery (CSRF) 3.6. A6: Security Misconfiguration 3.7. A7: Insecure Cryptographic Storage 3.8. A8: Failure to Restrict URL Access 3.9. A9: Insufficient Transport Layer Protection 3.10. A10: Unvalidated Redirects and Forwards 4. Segurança por Configuração: Cuidados com a configuração do ambiente que suporta a aplicação, considerando servidores de aplicação e máquina virtual. 4.1. Configuração do Ambiente 4.2. Segurança na Integração entre soluções 4.3. Firewall de Aplicação e Virtual Patching 5. Segurança por Código: Técnicas para tratar vulnerabilidades e cuidados que devem ser tomados ao se desenvolver software. 5.1. Práticas Gerais de Código Seguro 5.2. Validação de Entradas e Codificação de Saída 5.3. Autenticação e Gerenciamento de Senhas 5.4. Autorização e Gerenciamento de Acesso 5.5. Gerenciamento de Sessão 5.6. Transmissão e Armazenamento de Informações Sensíveis 5.7. Interação com Banco de Dados 5.8. Tratamento adequado de erros 5.9. Logging 6. Suporte na Revisão e Desenvolvimento: Ferramentas que podem ser utilizados para auxiliar o programador a desenvolver códigos com mais qualidade e segurança. 6.1. Ferramentas de Suporte a Análise 6.2. Continuous Delivery 7. Conclusões: Revisão do conteúdo apresentado, relacionando os conceitos descritos ao longo do módulo e como devem ser empregados em conjunto no processo de proteção do software, com o fechamento do módulo através de discussões sobre conceitos incrementais e fontes de estudo referenciadas para continuidade do aprendizado. Ementa dos Cursos para o Conviso Security Training! 15