Curso de Segurança de Aplicativos Web
Objetivo:
O objetivo do curso é conscientizar e capacitar as pessoas envolvidas no desenvolvimento de soluções com GeneXus sobre a importância da segurança e técnicas de detecção, validação e mitigação de potenciais riscos existentes em aplicações.

Este curso é destinado principalmente a aquelas pessoas que trabalham com GeneXus, desde analistas, desenvolvedores e testadores até gerentes de projetos que desejam se aprofundar nos principais riscos de segurança que existem hoje em dia.
Como referência e guía do curso é utilizada a última publicação do ranking OWASP Top 10, onde são apresentados os riscos mais comuns das aplicações utilizadas hoje.

Dirigido:
Ele é voltado principalmente para aqueles que trabalham com GeneXus, desde analistas, desenvolvedores e testers até para gestores de projeto que desejam se aprofundar nos principais riscos de segurança que existem hoje em dia.

Condições prévias:
É recomendado a experiência mínima de 6 meses de desenvolvimento com GeneXus Web.

Modalidades: Este nível pode ser estudado nas seguintes modalidades:

 Presencial: Você deve assistir para ter 100% do curso em sala de aula com um instrutor GeneXus. A duração total do curso é de 24 horas, dividido em seis ciclos de quatro horas.
 
Requisitos:
Os participantes devem trazer seu próprio equipamento, que permita se conectar sem fio ou com fio, para o ambiente que será ministrado o curso. O acesso será através de desktop remoto.

Exame:
Será realizado um exame presencial, em PC, com perguntas de múltipla escolha e verdadeiro / falso, a fim de verificar se o aluno realmente assimilou efetivamente os conceitos fundamentais vistos no curso. Será aprovado no exame quem obtiver uma percentual igual ou superior a 70%. Caso seja aprovado, receberá o certificado correspondente.


 Online: A duração total do curso é de 24 horas, dividido em seis ciclos de quatro horas.
 
Requisitos: 
Os participantes deverão usar seu próprio computador (laptop ou PC) com conexão à Internet. Para o curso, será fornecido acesso via desktop remoto para um ambiente de trabalho na nuvem. Não é obrigatório possuir disponíveis licenças GeneXus ou de qualquer outro software.

Exame:
No último dia do curso, será realizado um exame com questões de múltipla escolha e verdadeiro/falso, a fim de verificar se o aluno realmente assimilou os conceitos fundamentais vistos no curso. Será aprovado no exame quem obtiver uma percentual igual ou superior a 70%. Se aprovado, o certificado será fornecido (emitido pelo fabricante da ferramenta).

Metodología:
O curso tem uma abordagem teórica, onde é explicado os conceitos básicos, que se devem ser conhecidos para abordar os temas de segurança, e uma parte prática que compreende a maior parte do tempo. 
Para cada um dos pontos do OWASP Top 10 se abordam os seguintes tópicos:
  • Demonstração em um aplicativo de exemplo que permite entender a vulnerabilidade.
  • Explicação teórica do risco que representa.
  • O que GeneXus faz automaticamente para evitar ou mitigar isso.
  • O que deve fazer o desenvolvedor para evitá-lo e que soluções existem.
  • Como detectar se eles precisam tomar algumas medidas.
  • Exercício prático em GeneXus para detectar o problema, explorando, resolvendo e verificando.
Os exercícios práticos são realizados pelos participantes acessando uma máquina virtual que tem um instrutor através de uma LAN que está configurado para a realização do curso.

Instrutor
O instrutor do curso será um dos seguintes profissionais: Alcance:
Como referência e guia do curso será utilizada a última publicação do ranking OWASP Top 10, onde os riscos mais comuns apresentados nas aplicações hoje em dia.
Os principais tópicos do curso são apresentados.

Introdução
Apresentação do instrutor, dos temas a serem abordados no curso e a metodologia de trabalho.

GENEXUS & OWASP TOP 10
Pontos para resolver do OWASP Top 10 são:

1. A1-Injeção
a. SQL
b. XML
c. OS
d. Código fonte
2. A2-Broken Authentication and Session Management
a. Autenticação
b. Gerenciamento de sessão
c. transmissão
3. A3-Cross-Site Scripting (XSS)
a. Validação do formato em textos enriquecidos 
b. Codificação do código escrito pelo desenvolvedor
4. A4 Insecure DirectObjectReferences
a. Chamadas diretas a objetos
b. Geração insegura de arquivos temporários 
5. A5-Security Misconfiguration
a. Alterar chave de criptografia
6. A6-Sensitive Data Exposure
a. Senhas
b. Logs
c. Informações confidenciais
d. Dados sensíveis em arquivos intermediários
e. HTTPS
f. Campos ocultos
g. Headers HTTP
7. A7- MissingFunctionLevel Acess Control
a. Segurança nos eventos
b. Modos nas TRNS
8. A8 Cross-SiteRequestForgery (CSRF)
9. A9-Using ComponentswithKnownVulnerabilities
a. Componentes que usam GeneXus
b. Extensibilidade GeneXus - UserControls
c. Software baseado
10. A10-Redirects e Forwards unvalidated

Ciclo de desenvolvimento seguro
 
1.   Introdução das tarefas que devem ser executadas para conseguir uma abordagem eficaz e eficiente em termos de segurança.

Material:
O material do curso será entregue em formato digital a todos os participantes por e-mail.
O ambiente de trabalho que será utilizado para a parte prática se encontra montado em uma máquina virtual, que é acessado através de desktop remoto, e contém os seguintes elementos:
  • Exemplos de vulnerabilidades em aplicações (WebGoat)
  • GeneXus e uma KB de trabalho
  • Aplicação gerada a partir da KB
  • Ferramentas de suporte (ZAP, Firebug, etc.)
O ambiente de teste não é enviado para os participantes, é usado exclusivamente para realizar o curso.
 

Para mais informações: