Escolar Documentos
Profissional Documentos
Cultura Documentos
O ciclo de vida típico do desenvolvimento de software (SDL) contém uma série de práticas. Independentemente da
metodologia, seja ágil ou waterfall, sempre vemos as seguintes quatro "fases":
Requisitos
Design
Implementação
Testes de verificação
OBS.: Essa generalização foi utilizada como guia para organização do treinamento e também para sua melhor
compreensão.
WATERFALL MODEL
Assim como a água flui em apenas uma direção em uma cachoeira, uma vez que uma fase no modelo waterfall é
completada, não se pode voltar àquela fase.
O modelo waterfall em cinco fases genéricas:
1. Iniciação, aquisição
2. Desenvolvimento
3. implementação
4. Avaliação, operações
5. Manutenção e Desativação
Do ponto de vista da segurança, é importante garantir que os requisitos de segurança façam parte da fase de
requisitos. A incorporação de quaisquer requisitos de segurança perdidos em um momento posterior resultará
em custos adicionais e atrasos no projeto.
AGILE
Algumas das principais razões pelas quais existe uma prevalência de software inseguro podem ser atribuídas ao
seguinte:
2. Gestão de senhas
3. Gestão de certificados
5. Bloqueio de recursos
1. Identificar ativos
2. Criar umaVisão Geral da Arquitetura
3. Decompor o aplicativo
4. Identificar ameaças
5. Documentar as ameaças
6. Avalie as ameaças
MODELAGEM DE AMEÇAS
PARTE 4
- IMPLEMENTANDO CÓDIGO SEGURO
IMPLEMENTANDO CÓDIGO SEGURO
Os hackers bem-sucedidos hoje são identificados como indivíduos que têm uma
compreensão completa da programação. Portanto, é imperativo que os
desenvolvedores de software que escrevem código também devem ter uma
compreensão completa de como seu código pode ser explorado, para que possam
efetivamente proteger seus softwares e dados.
Ao escrever código, é importante saber quais construções você deve usar e quais
você deve evitar. Especialmente quando se trabalha com uma equipe, pode
economizar muito tempo se todo mundo na equipe escolher construções de
programação seguras. Geralmente, isso é especificado em um padrão de codificação
seguro. Felizmente, você não precisa escrever esse padrão de codificação a partir do
zero, já que muitos já estão disponíveis para as linguagens de programação mais
comuns.
THE TEN MOST CRITICAL
WEB APPLICATION SECURITY RISKS
A1:2017 - Injection
A2:2017 - Broken Authentication
A3:2017 - Sensitive Data Exposure
A4:2017 - XML External Entities (XXE)
A5:2017 - Broken Access Control
A6:2017 - Security Misconfiguration
A7:2017 - Cross-Site Scripting (XSS)
A8:2017 - Insecure Deserialization
A9:2017 - Using Components with KnownVulnerabilities
A10:2017 - Insufficient Logging & Monitoring
THE TEN MOST CRITICAL
MOBILE APPLICATION SECURITY RISKS
Comportamento estranho
Validações de segurança ausentes
Verificações de segurança já instaladas
Complexidade
Diferenças entre 2 funções / métodos / classes.
Comparação e condições (se / se não)
Expressões regulares / correspondência de padrões de caracteres
Você provavelmente vai acabar vendo função / classe / método que você não conhece. Para resolver este problema, você precisa
Google
Teste seu comportamento
TESTES DE SEGURANÇA PARA SOFTWARE
REFERÊNCIAS TÉCNICAS UTILIZADAS E RECOMENDADAS
URL: https://www.owasp.org
FIM!