Please enable JavaScript.
Coggle requires JavaScript to display documents.
SEGURANÇA NO DESENVOLVIMENTO - Coggle Diagram
SEGURANÇA NO DESENVOLVIMENTO
STRIDE
Spoofing
Falsidade na identificação do usuário
Tampering
adulteração da integridade do sistema
Repudiation
negação da execução do ato pelo usuário
Information Disclosure
divulgação indevida de informação
Denial of service
negação de serviço
Elevation of Privilege
elevação indevido de privilegio do usuário
Práticas de Programação Segura
Cinco propriedades
Disponibilidade
Integridade
Confidencialidade
Responsabilização
Toda ação deve ser acompanhada e registrada com atribuição de responsabilidade
Não-Repúdio
Requisitos de segurança devem ser declarados no inicio da concepção do sofware
princípios OWASP
Aplicar defesa em Profundidade
Falhar com segurança
Evitar Segurança por obscuridade
Detectar intrusões
Não confiar nos serviços
Usar um modelo de segurança positivo
Executar com menos privilégio
Manter a segurança simples
Não confiar na infraestrutura
Estabelecer padrões de segurança
Modelo de Software seguro
Security Development Lifecycle(SDL)
Reduzir o numero de defeitos de codificação e de design relacionado a segurança e reduzir a gravidade de todos os defeitos
Fase
Treinamento de segurança de núcleo
Requisitos
Estabelecer Requisitos de Privacidade e segurança
Criar portas de Qualidades e e barras de defeios
Realizar avaliações de riscos e privacidade
Projeto
Requisitos do projeto considerando as preocupações com a segurança
Redução de superfície de ataque
Modelagem de Ameaça
Implementação
usar ferramentas aprovadas
depreciar funções inseguras
Executar Análise Estática
analisar o código
Verificação
Executar analise dinâmica
usar ferramentas de monitoramento
teste de Fuz
Indução a falha
Revisão de superfície de ataque
Lançamento
Plano de resposta a incidentes
Conduzir Revisão de Segurança final
certificar lançamento e arquivamento
testar antes de lançar
Resposta
Executar plano de resposta a incidentes
Comprehensive, Lightweight, Application Security Process(CLASP)
Conjunto de componente de processo para a construção de software seguros
OWASP ESAOPI
biblioteca de código aberto que facilita a criação de aplicativos com segurança
SAST (Teste de caixa branca)
Vantagens
Escalabilidade
Teste estáticos
útil para vulnerabilidades estaticamente testáveis
saída de teste compreensível ao desenvolvedor
Desvantagens
muitas vulnerabilidades são difícil de ser encontras de forma automática
falto positivo
difícil provar que um indicio de insegurança e realmente vulnerável
Dynamic Application Security Testing(DAST) - TESTE DE CAIXA PRETA
Avalia a resposta sem avaliar o conteúdo interno
Revisão de Código
SAST
Sua principal técnica é a de
revisão de código
é a mais eficaz para identificar falhas de segurança
Teste de Caixa branca
Testa de dentro para fora
Acesso a tudo
Abordagem do dev
Necessita do código-Fonte
Analisa o código fonte sem necessidade de executar a aplicação
Descobre as vulnerabilidades cedo, no processo de desenvolvimento
teste começa assim que o código termina
correções de vulnerabilidade com um custo menor
descobre cedo
Não descobre problemas em tempo de execução
somente código estático, não descobre em tempo de execução
Suporta qualquer tipo de software
Aplicação stand-alone
DAST
Teste Caixa Preta
Não conhece o interno da aplicação
teste de fora para dentro
Abordagem do hacker
Necessita de aplicação em execução
Não precisa do código fonte
desabre as vulnerabilidade no final do processo de desenvolvimento
teste é realizado somente no tempo de execução
Corrigir as vulnerabilidades é mais caro
Pode encontrar os problemas em tempo de execução
teste dinâmicos
Somente aplicações Web online
Vulnerabilidades de Software
OWASP TOP 10
Injeção
o envio de sql inject para tentar acessar dados não autorizados
Quebra de Autenticação
Atacante tentando comprometer a senha, chave e token do usuário e tentado se passar por ele
Exposição de dados Sensíveis
pode sem roubado ou alterados
Entidades Externas XML
Xml mais velhos ou mal configurados pode ser atacados e roubar os dados de portas internas dos serviços, assim conseguindo realizar um ataque de negação de serviço.
Controle de Acesso quebrado
é quando não é bem definido o acesso do usuário, podendo o mesmo acessar informações sigilosas
Configuração incorreta de segurança
configuração incorreta de autenticação ...
Falta função para Controle do nível de Acesso
Deve verificar os direitos de acesso na aplicação web e também no servidor
Cross-Site Scripting
usuários de aplicações web são direcionado para site maliciosos que roubam dados
Desserialização Insegura
Utilizar componentes Vulneráveis conhecidos
Logging e monitoramento insuficientes
Controles e Testes de Segurança de Aplicações Web e
Webservices
Teste de penetração
Testa a segurança do sistema web
Questões
LISTA
1.E, 2.C,
3.B
,
4.C
, 5.C, 6.C, 7.E, 8.D, 9.C, 10.E