Visão Geral
Essa intensa classe de codificação é essencial para desenvolvedores experientes que precisam produzir serviços web seguros baseados em J2EE. Ao longo do curso, os alunos aprendem as melhores práticas para projetar, implementar e implantar serviços da Web seguros usando J2EE. Este curso é curto na teoria e longo na aplicação.
Examinaremos as práticas recomendadas para codificação defensiva de serviços da Web J2EE, incluindo o uso de WS-Security, quando apropriado. Por fim, um conjunto de padrões de segurança J2EE é examinado com um laboratório que aplica um padrão de segurança na defesa contra um ataque complexo real de serviço da Web.
Objetivo
Após a conclusão deste curso, você será capaz de:
- Entenda as fontes potenciais de dados não confiáveis
- Entenda as consequências de não lidar adequadamente com dados não confiáveis, como negação de serviço, scripts entre sites e injeções
- Ser capaz de testar serviços da Web com várias técnicas de ataque para determinar a existência e a eficácia das defesas em camadas
- Prevenir e defender a vulnerabilidade potencial associada a dados não confiáveis
- Compreender as vulnerabilidades associadas à autenticação e autorização no contexto de serviços da web
- Ser capaz de detectar, atacar e implementar defesas para funcionalidade de autenticação e autorização
- Entenda os perigos e os mecanismos por trás dos ataques Cross-Site Scripting (XSS) e de injeção
- Ser capaz de detectar, atacar e implementar defesas contra ataques XSS e Injection
- Entenda os conceitos e a terminologia por trás da codificação defensiva, segura
- Compreender o uso do Threat Risk Modeling como uma ferramenta na identificação de vulnerabilidades de software com base em ameaças realistas contra ativos significativos
- Realize revisões de código estático e testes dinâmicos de aplicativos para descobrir vulnerabilidades em serviços da Web baseados em Java
- Compreender os fundamentos da Criptografia XML e como ela pode ser usada como parte da infraestrutura defensiva para serviços da Web
- Compreender os fundamentos da Assinatura Digital XML e como ela pode ser usada como parte da infraestrutura defensiva para serviços da web
- Entender e defender vulnerabilidades específicas de analisadores XML e XML
Publico Alvo
- Este é um curso de J2EE/Web Services de nível intermediário a avançado, projetado para desenvolvedores que desejam começar a trabalhar no desenvolvimento de serviços da Web bem defendidos.
Pre-Requisitos
- A familiaridade com Java e J2EE é necessária e a experiência de programação do mundo real é altamente recomendada. Idealmente, os alunos devem ter aproximadamente 6 meses a um ano de conhecimento de trabalho Java e J2EE. Além disso, é necessária experiência e/ou conhecimento de trabalho de serviços da Web e processamento de XML no J2EE. Este curso começa imediatamente atacando e defendendo web services implementados em J2EE. Não há familiarização preliminar com J2EE ou Web Services.
Informações Gerais
Carga Horária: 32h
- Se noturno este curso é
ministrado de Segunda-feira à sexta-feira, das 19h às 23h
- Se aos sábados este curso é
ministrado das 9h às 18h
- Se in-company por favor
fazer contato para mais detalhes.
Formato de
entrega:
- 100% on-line ao vivo, via
Microsoft Teams na presença de um instrutor/consultor ativo no mercado.
- Nota: não é curso
gravado.
Lab:
- Laboratório + Exercícios
práticos
Materiais
Português | Inglês
Conteúdo Programatico
Foundation
- Terminology and Players
- Assets, Threats, and Attacks
- OWASP
- Basic Principles
- Reality
- Survey of recent, relevant incidents
- Lab to find the security defects in an existing web service
- Defending XML Processing and Web Services
- Understanding common attacks and how to defend
- Operating in safe mode
- Appropriate protocol layer for WS Security
- Using standards-based security
- XML-aware security infrastructure
- WSDL protection
- Message validation, compliance, and inspection
Top Ten Security Vulnerabilities
- Unvalidated Input
- Description with working web service example
- Defenses
- Identifying trust boundaries Qualifying untrusted data
- Implementing a layered defense that effectively protects quality of service as well as data integrity
- Designing an appropriate response to a recognized attack
- Testing defenses and responses for weaknesses
Broken Access Control
- Description with working web service example
- Defenses
- Defending special privileges such as
- inistrative functions
- Application authorization best practices
Broken Authentication and Session Management
- Description with working web service example
- Defenses
- Multi-layered defenses of authentication services
Cross Site Scripting (XSS) Flaws
- Description with working web service example
- Defenses
- Character encoding complications
- Blacklisting
- Whitelisting
- HTML/XML entity encoding
- Understanding the implications of trust boundary definition
- Implementing a layered defense that effectively protects quality of service as well as XSS vulnerabilities
- Designing an appropriate response to a recognized attack
Buffer Overflows
- Description with working example
- Defenses
- Java’s strong typing
- Java’s memory model
Injection Flaws
- Description with working web service example
- Defenses
- Qualifying untrusted data
- JDBC with Prepared Statements
- Hibernate best practices
- XML best practices
- Implementing a layered defense that effectively protects quality of service as well as injection vulnerabilities
- Designing an appropriate response to a recognized attack
Improper Error Handling, Auditing, and Logging
- Description with working web service example
- Defenses
- Web service exception handling
- Error response best practices
- Error, auditing, and logging content management
- Error, auditing, and logging service management
- Best practices for supporting web service attack forensics
Insecure Storage
- Description with working web service example
- Defenses
- Data leakage
- Risk minimization
- Cryptography Overview
- Working with XML Encryption
Insecure Management of Configuration
- Description with working example
- Defenses
Dynamic Loading
- Description with working web service example
- Defenses
- XML/DTD/Schema/XSLT best practices
WS-Security
- WS-Security
- WS-Security Stack
- J2EE and WS-Security
- Best Practices
- XML Digital Signature
- Architecture
- Working with XML Digital Signature
- Integrating XML Digital Signature into Web Services
- Best Practices
Best Practices and Design Patterns
- Defensive Coding Principles
- Attack Surface Management
- Application States
- Defense in Depth
- Not Trusting the Untrusted
- No Security through Obscurity
- Security Defect Mitigation
- Leverage Experience
- J2EE Web Application Security Design Patterns
- Authentication Enforcer
- Authorization Enforcer
- Intercepting Validator
- Secure Base Action
- Secure Logger
- Secure Pipe
- Secure Service Proxy
- Intercepting Web Agent
Secure Design and Analysis
- Design and Analysis Processes
- Motivation
- Security Development Lifecycle (SDL)
- CLASP applied
- Application of Design and Analysis Processes
- Threat Risk Modeling
- Testing and Review Best Practices
TENHO INTERESSE