CNASI 2015 - Desenvolvimento Seguro
-
Upload
carlos-eduardo-motta-de-castro -
Category
Documents
-
view
264 -
download
0
Transcript of CNASI 2015 - Desenvolvimento Seguro
Parceiro
Desenvolvimento
Seguro
2
Carlos Eduardo Motta de Castro
Atuação em desenvolvimento, gestão de produtos, gestão de projetos e de fábrica de software, implantação de sistemas e serviços nas áreas de saúde, logística, construção civil, insumos agrícolas, alimentos e papel e celulose.
Palestrante do CNASI e do congresso de Saúde da RNP, tendo ministrado a palestra “Estratégias de Saúde – O Desafio da Segurança da Informação” e “Serviços Confiáveis”.
Colaborador da revista eForensic Magazine tendo escrito os artigos “USB Forensic Cares” e “Windows FootPrints”
Contatos: [email protected]
Facebook.com/ForenseDigital
3
Agenda
Introdução à Segurança da Informação.
Certificação CISSP.
Curso de Introdução à Certificação CISSP
(CIC2).
Desenvolvimento Seguro.
Software Development Security
Security Architecture and Design
Security Operations
Introdução
à
Segurança da
Informação
4
Representação da
Segurança da Informação
Política de segurança
P
e
s
s
o
a
s
P
r
o
c
e
s
s
o
s
T
e
c
n
o
l
o
g
i
a
Confidencialidade
Integridade Disponibilidade
Ilustração: arquivo pessoal de Ricardo Leiva.
5
PrevenirAlterações
não Autorizadas
Garantir Acesso Mediante
Autorização
DisponívelPara Pessoas Autorizadas
Desafios dos
Profissionais de Segurança
Segurança da informação na realidade é uma
complexa composição de variados campos de
estudo, incluindo:
Sociologia Criminologia
Psicologia Criptologia
Antropologia Etiologia (Causa e Origem)
Virologia Tecnologia
Referencia: Information Security Management Handbook, 6th Ed. Vol. 2, Harold F. Tipton and
Micki Krause, 2008, Auerbach Publication, Preface.6
Certificação
CISSPCertified Information Systems Security Professional
7
Visão da Certificação CISSP
Perspectiva holística (o Todo e suas Partes) da
Segurança da Informação.
Conceitual;
Padronização dos termos utilizados na área;
Visão gerencial.
Desafio: como reter grandes quantidades de informação.
8
Novos domínios CISSP
Domínio
Security & Risk Management
Asset Security
Security Engineering
Communications & Network Security
Identity & Access Management
Security Assessment & Testing
Security Operations
Security in the Sw Development Lifecycle
Obter aproveitamento de no mínimo 70% no exame
CISSP de 250 questões e 6 horas de duração;
Experiência de 5 anos em pelo menos 2 domínios do
CBK;
Aprovação do endorserment assinado por um CISSP.
Manter:
Mínimo de 40 CPEs por ano (Continuing ProfessionalEducation Credits);
Mínimo de 120 CPEs no ciclo de 3 anos;
Pagamento da manutenção anual, AMF, US$85.
Requisitos para obter e manter a
certificação CISSP
CIC2Curso de Introdução a Certificação CISSP
11
Público alvo do CIC2
Objetivo FrequênciaParticipação no simulado
Conhecimento mín. 80% Opcional
Certificação mín. 80% Recomendado
Obs.: é requisito frequência mínima de 80% para
solicitar certificado de participação.
12
Estrutura do curso
Jul/15 Jun/16
CIC2 2015/2016
Apresentações (Teoria)
Resolução de questões (Prática)Jul/15 Jun/16
CAC2 2015/2016
Formato encontros de Apresentações
Um curso completo por ano;
Duração de apróx. 10 meses para cada curso;
Encontros quinzenais, aproximadamente dois
Sábados por mês;
Total de 10 encontros por semestre;
Um domínio por encontro;
Duração de 4 horas para cada encontro, das 9:00h
às 13:00h.
Formato encontros de Resolução de
Questões
Duração de 4h por encontro, das 9:00h às 13:00h
Pré-requisito: ter participado do CIC2, parcial ou
integralmente.
O que o CIC2 oferece Total de até 160 horas de aula;
Calendário facilita estudo e assimilação;
Interatividade e Participação;
Orientação;
Resposta a dúvidas;
Técnicas de resposta a questões;
Simulado com 250 questões;
Preparo psicológico e de resistência física.
Nosso Objetivo: Conhecimento.Passar no exame CISSP é consequência.
Livro utilizado
Official (ISC)2
Guide to the CISSP CBK,
4th Edition.
Interessado em participar:
de imediato:
E-mail para: [email protected]
a partir do próximo semestre:
https://www.facebook.com/IssaBrasil
Próximos passos
Parceiro
Desenvolvimento
Seguro
Software Development SecuritySoftware Development Life Cycle
20
• Iniciar Pensando Seguro (Preventivo)
• Ambiente Será Controlado?
• Confiabilidade da Fronteira de Controle
• Razões para Vulnerabilidades
• Enfoque em Segurança é mais Recente
• Perfil de Segurança X Desenvolvedor
• Pressão do Mercado (Prazos e Concorrência)
• Funcionalidade Maior que a Segurança
Enfoque
21
Fronteira de Controle
Hospital (Rede Interna)
WEB
Troca de Informações Médicas Intermunicipais
Paciente (Acesso Doméstico)
Troca de Informações Médicas entre Organizações
ClínicaHospital
Laboratório
HTTPHL7
SOAP
Diversidade de Formas de Acessoaos Dados do Paciente
Médico (Acesso Consultório)
22
• Aplicações Integradas
• Protocolos, Dispositivos, Ambientes
• Múltiplas Camadas (A + A + D)
• Responsabilidade dos SOs, BDs, Aplicações
• Correções Através de Patchs (vulnerabilidades)
• Ciclo de Desenvolvimento (vida)
• Iniciação Desenvolvimento Implementação
Manutenção Substituição (aposentadoria)
Ambientes e Segurança
23
Ciclo x SegurançaCICLO
• Missão e objetivos
• Investimento
• Mercado• Custo• Aquisições
• Instalar• Aceitar• Documentar
• Performance
• Operação• Manutenção
• Trocar• Transferir• Encerrar
Iniciar Desenvolver Implementar Manter Substituir
SEGURANÇA
• Categorizar segurança
• Avaliação preliminar de riscos (probabilidade X impacto)
• Avaliação de riscos
• Análise de funcionalidades X segurança
• Análise de requisitos
• Ferramentas• Desenvolver
controles de segurança
• Inspeção e aceite
• Integração• Certificação
de segurança• Acreditação
de segurança
• Gestão de configuração e controle (patchs)
• Monitoramento contínuo
• Preservar informações
• Sanitização das mídias
• Substituição de software e hardware
24
• Procedimentos Formais
• Separação de Responsabilidades
• Desenvolvimento, Testes e Produção
• Revisão dos Critérios de Aceitação
• Desempenho, Avaliação Operacional, Adequação aos
Requisitos de Segurança, Interferência no Ambiente
• Detecção de Códigos Maliciosos
• Controle de Acessos (Dispositivos Móveis-BYOD)
• Controle das Mídias e Descarte
ISO 27002 – Práticas de Gestão
25
• Monitoramento (Separado da Produção)
• Proteção para Envio de Informações
• Privacidade (Dados de Terceiros)
• Auditoria (Log de Procedimentos Operacionais)
• Resposta a Incidentes (Lições Aprendidas)
• Requisitos de Segurança
• Código Fonte (Proteção e Terceirização)
ISO 27002
26
Modelos de Desenvolvimento
• Modelos não são baseados em segurança
• Build and Fix (Sem Modelos, Planos ou Controle)
• Water Fall (Sequencial, Difícil Introduzir Mudanças)
• V Model (Sequencial, Testes entre Fases, Antecipa Falhas)
• Prototipação (Antecipação, Experimentação) e RAD
[Analisa] [Constrói, Demonstra, Refina] [Testa] [Implementa]
• Incremental (Multi WF, Entregas Parciais, Metas)
• Espiral (Ênfase na Análise de Riscos, Incremental)
27
Motivações
28
Motivações
29
MotivaçõesExcede por precaução
Falta interação
Falta entendimento da necessidade
Custo Excedido
Prazo Excedido
30
Modelos Ágeis• Valores (Manifesto Ágil)
Indivíduos e interações mais que processos e ferramentas
Software em funcionamento mais que documentação abrangente
Colaboração com o cliente mais que negociação de changes
Responder a mudanças mais que seguir um plano (“Antes da batalha, o
plano é tudo. Assim que começa o tiroteio, planos são inúteis”, “Os planos não são
nada, o que conta é a planificação” Dwight Eisenhower – Comandante da
Invasão da Normandia - Dia D)
• Flexível, Fácil Incorporação de Requisitos
• Pequenos incrementos de software funcional
• Pode usar aspectos de outros modelos
31
Modelos Ágeis
32
CMMI (Capability Maturity)
• Formalização dos Processos (Guidelines)
• Procedimentos, Princípios e Práticas
• Método para procedimentos repetitivos
• Níveis
Inicial – Processo Caótico, Qualidade Imprevisível
Reproduzido – Estrutura de Gestão Formal, QA
Definido – Procedimentos Definidos, Possível Melhoria Contínua
Gerenciado – Processos Formais, Métricas
Otimizado – Foco na Melhoria Contínua do Processo
33
Mudanças e Configuração
• Controle de Mudanças (Gerenciar alterações)
• Requisitar, Aprovar, Desenvolver, Comunicar
• Gestão de Configurações
• Incorporar Mudanças no Desenvolvimento
• Repositório Central
• Gerenciar Alterações Concorrentes
• Registro de Versões
• RollBack, Merge e Branchs
34
Linguagens e Características
• Máquina, Assembly e Alto Nível (terceira)
• Alto Nível (4ª linguagem natural, 5ª restrições e problemas)
• Assemblers, Compiladores e Interpretadores
• Orientação a Objetos
• Classes (Métodos e Atributos) e Objetos
• Herança, Polimorfismo, Sobrescrita
• Abstração (Saber Usar mas Não como Funciona)
• Modularidade, Reuso, Encapsulamento
35
Linguagens e Características
• Coesão e Acoplamento
• Coesão Funcionalidades e Similares Geram
Pouca Dependência de Outros Componentes
• Acoplamento Independência de Outros
Objetos e Especialização
• Interfaces Simplificadas
• Reutilização
• Objetivo Alta Coesão e Baixo Acoplamento
36
Application Security
• Ameaças WEB
• Coleta de Informações
• Ferramentas Administrativas
• Autenticação e Controle de Acesso
• Validação da Entrada de Dados e Parâmetros
• Controle de Sessão (IDs Válidos e Expiração)
• Banco de Dados (Roles)
• Mensagens de Erro Prolixas
37
Application Security
• Ameaças WEB
• Favorecido pela possibilidade de anonimato e
despreparo geral
• Nas organizações 54% dos ataques que
comprometem a organização levam meses até
serem descobertos.
• Atacantes não estão restritos a um grupo de
especialistas
38
Application Security
RED OCTUBER: “Kaspersky's research uncovered
that Red October, at the time of its discovery, had been
active for at least five years, operating virtuallyundetected. Cyberespionage attacks are not new, but
they have become significantly more sophisticated. ”
Fonte: “site TechTarget”
> Atuando a pelo menos 5 anos sem ser detectado.
39
Application Security
• Bancos de Dados
• Roles (Perfis de Restrição)
• Cell Suppression, Partitioning, Noise (Fake)
• Agregação e Inferência
• Visões (Disponibiliza de forma restrita)
• Integridade Transacional (Commit e Rollback)
• Data WareHousing (Combina Diferentes Bancos)
• Data Mining (Extrai, Transforma e Modela)
40
Malicious Software (malwares)
• Porque o Crescimento? Zero day?
• Virus (Infecta mas Não se Reproduz sem o Hospedeiro)
• Worms (Capaz de se Reproduzir)
• RootKit (Ferramentas, Inteligentes e Difíceis de Remover)
• SpyWare e AdWare (Dados Pessoais)
• BotNets (Rede de Infectados)
• CrimeKits
• Defesas (Anti*, Avaliação Comportamento Suspeito)
41
Erros Mais PerigososRank Score Name
[1] 93.8Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
[2] 83.3Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
[3] 79.0Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
[4] 77.7Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
[5] 76.9 Missing Authentication for Critical Function
[6] 76.8 Missing Authorization[7] 75.0 Use of Hard-coded Credentials[8] 75.0 Missing Encryption of Sensitive Data
[9] 74.0 Unrestricted Upload of File with Dangerous Type
[10] 73.8 Reliance on Untrusted Inputs in a Security Decision
http://cwe.mitre.org/top25/#Listing SAMS –(2011)
42
MitigaçãoID Descrição
M1 Establish and maintain control over all of your inputs.
M2 Establish and maintain control over all of your outputs.
M3 Lock down your environment.
M4Assume that external components can be subverted, and your code can be read by anyone.
M5Use industry-accepted security features instead of inventing your own.
GP1(general) Use libraries and frameworks that make it easier to avoid introducing weaknesses.
GP2(general) Integrate security into the entire software development lifecycle.
GP3(general) Use a broad mix of methods to comprehensively find and prevent weaknesses.
GP4 (general) Allow locked-down clients to interact with your software.
http://cwe.mitre.org/top25/#Listing SAMS –(2011)
43
Mitigação
http://cwe.mitre.org/top25/#Listing SAMS –(2011)
• Unit Test de Segurança
• Avaliar Código Fonte
• Mapear Ameaças e Definir as Fronteiras de
Ataque
• Realizar Testes de Penetração
• Simular Ataques Planejados
• Validar Segurança Contra Mau Uso
• Validar Exposição de Informações
Parceiro
Desenvolvimento
SeguroSecurity Architecture and Design
Cloud Computing
45
• Política de Segurança e Modelo (Requisitos e
Ações para HW, Redes, Sistemas Operacionais, Aplicações)
• Complexidade x Segurança (Inversamente)
• Herança frágil dos SOs (Nascer Seguro)
• Criptografia, Algoritmos, Metodologia
• Segurança de Computadores
• Disponibilidade (Acesso)
• Integridade (Dados Confiáveis)
• Confidencialidade (Privacidade)
Áreas e Níveis de Segurança
46
• Arquitetura (Metas a Alcançar) e Visões
• Segurança é um Novo StakeHolder
• Algumas Peças (Vulnerabilidades)
• CPU - User Mode x Privileged Mode
• Que Instrução Executar?
• LIFO (Última a Entrar, Primeiro a Sair)
• Stack Pointer (Pilha do Processo, Ponto de Execução)
• Return Pointer (Onde Retornar as Informações)
• Program Counter (Próxima a Executar)
Características dos Sistemas
47
• Processos (CPU + Memória + Recursos)
• Mult-Tasking (CPU), Time Slice, Mult-Programming (RAM)
• Process Table, Prioridades e Interrupções (NonMaskable)
• Injeção de Instruções
• Isolamento, Encapsulamento (APIs) e Data Hiding
• Forking X Thread (Contexto Próprio ou do Pai)
• Scheduler (Deve Evitar Bloqueio por Processos)
• DeadLock (Poder Cancelar Processos)
Características dos Sistemas
48
• Compartilhamento de Memória (Serviços)
• Base Register e Limit Register (Define Limites da Thread)
• Memory Manager (Endereços Lógicos Físicos)
• Address Space Layout Randomization
(Troca Constante do Endereço de um Processo)
• Data Execution Prevention (Reduz Áreas de Ataque)
• Memory Leaks (Partes Não Liberadas, DoS Esgota RAM)
• Garbage Collectors e SWAP (consulta a dados
deencriptados)
Características dos Sistemas
49
• CPU Rings
• 0-Kernel, 1-Sistema Operacional, 2-Drivers e Utilitários e
3-Aplicações
• Internos Externos
• Sistemas Monolíticos (Todo em Kernel Mode)
• Sistemas Layered (Camadas, HW Abstraction Layer)
• MicroKernel (S.O. Kernel e Restante User Mode)
• Máquinas Virtuais (HyperVisor Hospedeiro)
Características dos Sistemas
50
Arquitetura de Segurança
• Modelos
• Bell LaPadulla (Discretionary)
• Prevenir Acesso a Informações Secretas
• Need To Know Nível 1 Ñ Lê 2 e 2 Ñ Escreve no 1
• Top Secret, Secret e Confidencial
• BIBA (Kenneth J.)
• Prevenir que Informação do Nível 1 Seja Enviada ao 2
• Nível 2 Ñ Lê 1 e 2 Ñ Invoca Serviço do Nível 1
• Integridade, Garantir Fontes, Restringir
51
Arquitetura de Segurança
• Modelos
• Clarck-Wilson (Discretionary)
• Formaliza a Noção de Integridade da
Informação
• Separation of Duties (Deveres) Prevenir
que Pessoas Autorizadas Façam Operações
Impróprias
• Garantir Integridade Evitando que Erros ou
Ações Maliciosas Aconteçam.
52
Avaliação de Software
• Certificação e Acreditação (Adequar-se)
• Orange Book (Depto Defesa EUA)
• Foca nas Autorizações de Acesso
• A-Verified (Top-Secret), B-Mandatory (Bell-LaPadula,
classificação), C-Discretionary (Acessos e Identificação
Individuais ou Grupo) e D-Minimal. (ex: B2 melhor que B1)
• Red Book (Trusted Network Interpretation)
• Foca na Segurança da Rede que Suporta as Aplicações
• ITSEC e TCSEC (Funcionalidades e Confiabilidade)
53
Avaliação de Software
• COMMON CRITERIA - ISO 15408 (Avaliação de
Produtos por Perfis de Avaliação de Segurança)
• EAL (Evaluation Assurance Level) Pontuação de 1 a 7
(Formally Verified Design and Tested)
• Elementos Descritivos (O Que Será Avaliado?)
• Rationale (Ambiente Esperado, Premissas, Guia da Política
de Segurança)
• Funcionais (Fronteira de Proteção, Ameaças e
Comprometimentos)
• Desenvolvimento (Requisitos da Construção)
• Avaliação (Tipo e Intensidade da Avaliação)
54
Cloud Computing
• Estrutura Virtual e de Menor Custo
• Alta Escalabilidade
• Modelo de Serviços
• IaaS – Infrastructure (Gestão Completa)
• PaaS – Platform (Gestão da Aplicação)
• SaaS – Software (Gestão dos Dados)
• Alternativa para Replicação e Backups
• Valores Conforme Utilização
55
Cloud – Preocupações do Cliente
• Modelo de segurança adequado ao cliente?
• Os ambientes estão segmentados (D, H e P)?
• Existe um processo de recuperação de
desastres?
• Autenticação forte? Integrado ao cliente?
• Passou por Validação de vulnerabilidades?
• Dados estão protegidos? Separados?
• Capacidade e disponibilidade para auditoria?
56
Cloud Computing
Cliente (Rede Interna)
WEB
HTTPSSOAP
Características de Solução Cloud Datacenter Principal
Aplicação
Dados- journal- backup
HTTPSServiçosInternos
Datacenter Secundário
Espelho
Parceiro
Desenvolvimento
SeguroSecurity Operations
Maintaining Operations Resilience andBackup Techniques
58
• Planejamento das Regras e Acessos
• Separação de Deveres
• Rotação de Funções
• Least Privilege e Need to Know
• Férias Obrigatórias
• Hierarquia sem Confrontos de Interesses
• Prestação de Contas
Controles Administrativos
59
• Clipping Level (trigger ao atingir limite de controle)
• Desvio de Padrões de Comportamento
• Atividades e Uso
• Problemas Recorrentes Recentes
• Gestão de Ativos (O que temos?)
• Inventário e Atualização
• Configuração (Como estão?)
Controles Administrativos
60
• Gestão de Configurações
• Controle de Mudanças
• Auditoria
• Crescimento, Evolução e Versões
• Controle de Mídias
• Auditoria, Histórico e Sanitização
• Controle de Acesso
• Integridade Física
Controles Administrativos
61
• Reiniciação Controlada
• Sequência de Boot não Editável
• Shutdown Forçado Desabilitado
• Escrita nos Logs não Evitada
• Hardening
• Acesso Remoto e Administração
• Vazamento de Dados (eMail, BYOD, Logs)
Controles Sistêmicos
62
• Links WAN ou ISDN (Dados e Voz até 128kbits)
• RAID (performance e tolerância)
• 0 – Striping (escrita distribuída)
• 1 – Espelhamento
• 3 – Striping com um disco de paridade
• 5 – Striping com setores por todos os
discos e paridade em todos os discos
• SAN (Storage Area Network)
Redundâncias
63
RedundânciasAtravés das Informações de
Paridade é Possível se Recuperar as Informações
que Forem Perdidas
XOR
PA B
0 0 0
0 1 1
1 0 1
1 1 0
64
• Cluster (Disponibilidade e Escalabilidade)
• Grid (Processamento Distribuído - NASA)
• Backups
• Completo, Incremental e Cumulativo
• HSM (Hierarchical Storage Mgmt)
• Discos e Unidades de Fita
• Ação Automatizada em Vários Estágios
Redundâncias
65
• Alternativa para Reestabelecimento de
Desastres
• Reduz Custos Operacionais
• Escalabilidade
• Reduz Custos de Arquisição de HW
• Fronteira Externa de Segurança
Cloud Computing
66
• Conhecer as Principais Formas de Ataque
• Testes de Vulnerabilidade e Reação
• Pessoal, Físico e Sistêmico
• Testes de Invasão (PenTest)
• Descobrir Enumerar Mapear
Explorar Reportar
• Conhecimento: Zero, Parcial, Completo
• Blind, Double-Blind e Targeted
Proteção e Prevenção
67
Dúvidas e
Comentários