Sie sind auf Seite 1von 36

Requisitos de Segurana no

Ciclo de Vida de Desenvolvimento


Palestrante:
Mauricio da Silva Marinho
Administrador
Especialista em Anlise de Sistemas
Analista de TI no Ncleo de Riscos e Segurana de TI do BRB
Requisitos de Segurana
Software sem requisitos: O Software falha!
Software sem requisitos de segurana: A
organizao falha!
Consequncias do software sem requisitos:
o Baixa qualidade.
o Forte acoplamento.
o Retrabalho.
o Escopo indefinido.
o Custo elevado.
o Problemas de usabilidade.
o Objetivos no atendidos.
o Insatisfao do cliente.
o Vulnervel.


Requisitos de Segurana
Consequncias do software vulnervel.
Momentnea
Indisponibilidade
Comprometimento
Da Continuidade
Caractersticas do
Software Seguro
3 Rs:
o Reliability.
O software funciona como esperado.
o Resiliency.
O software no viola qualquer poltica de segurana e pode
resistir as aes de agentes ameaadores.
o Recoverability.
O software recupera-se diante de uma ameaa
materializada.
Impacto no Projeto
Quase sempre requisitos de segurana no so
bem vistos por implicarem impacto nos trs pilares
no projeto.
Custo
Escopo
Prazo
Pessoas
Fontes de Requisitos de
Segurana no CDS
Internas
o Polticas
o Padres
o Guias e Manuais
o Prticas e Procedimentos
Externas
o Regulaes
o Conformidades
o Requisitos Geogrficos
Requisitos de Segurana e
Risco Residual Aceitvel
Tipos de Requisitos de
Segurana
Confiden-
cialidade
Integridade
Disponi-
bilidade
Autenticao Autorizao
Responsa-
bilidade
Conceitos Chave de Segurana de Software
Requisitos so determinados para cada conceito-chave de segurana.
Organizao, mtodo cientfico e inferncias.
Requisitos de
Confidencialidade
Controles de
Confiden-
cialidade
Escrita
Secreta
Mascara-
mento
Em claro Obscura
Criptografia Hashing
Estegano-
grafia
Marca
dgua
digital
Requisitos de
Confidencialidade
Requisitos de confidencialidade precisam ser definidos ao longo
do ciclo de vida da informao, da origem do dado at sua
persistncia ou descarte, considerando os seguintes estados:

Em trnsito;
Em processamento;
Em storage (persistncia);

Requisitos de confidencialidade podem ser limitados no tempo.
Requisitos de
Confidencialidade
Informaes pessoais de sade
Entradas de senhas
Persistncia de senhas
Proteo de MITM
Proteo de transferncia de arquivos
Salva de logs
Mascaramento
Criptografia
Hashing
TLS
FTPS
Poltica
Requisitos de
Integridade
Requisitos que buscam garantir confiabilidade e
proteo contra modificaes no autorizadas.
Integridade de sistema
o Funciona como esperado (projetado) preciso.
o Modificaes ocorrem apenas no cenrio projetado de autorizao
(forma e responsabilidade).
Integridade de dados
o Os dados so preservados em seu ciclo de vida, permitindo alteraes
apenas no cenrio autorizado.
o No permite possibilidades de inconsistncias.
Exemplo de violao de integridade: SQL Injection.
o O sistema responde a requisies de modificao de dados em
desacordo ao originalmente projetado.
Requisitos de
Integridade
Requisitos de integridade precisam estar
explicitamente definidos nas especificaes.
Controles de segurana para confiabilidade:
o Validao de entrada de dados.
o Checagem de paridade de bits (trnsito).
o Checagem de redundncia cclica (checksum preciso e
completude).
o Hashing (tambm atende a confidencialidade).
Exemplos:
o Todas as entradas querystring precisam ser validadas.
o Todo deploy deve acompanhar um checksum.
o Todos os atores no humanos precisam ser identificados e monitorados
prevenindo o acesso quando no expressamente autorizado.


Requisitos de
Disponibilidade
Quase sempre requisitos associados s disciplinas
de continuidade de negcio e recuperao de
desastres.
Vulnerabilidade causado por problemas no design
e construo.
Expe o software a riscos de destruio de
ambientes, perda de dados e interrupo de
servio (DoS).
Devem ser explicitamente definidos na
especificao.
o MTD (Maximum Tolerable Downtime).
o RTO (Recovery Time Objective).
Requisitos de
Disponibilidade
Quase sempre requisitos associados s disciplinas
de continuidade de negcio e recuperao de
desastres.
Vulnerabilidade causada por problemas no design
e construo.
Expe o software a riscos de destruio de
ambientes, perda de dados e interrupo de
servio (DoS).
Devem ser explicitamente definidos na
especificao (BIA, stress, performance test...).
o MTD (Maximum Tolerable Downtime).
o RTO (Recovery Time Objective).
o SLA (explicitar o MTD e o RTO).
Requisitos de
Disponibilidade
BIA (Business Impact Analysis)
o Deve ser utilizado para determinar o impacto do software no negcio.
o Deve ser mensurado quantitativamente (Ex: perda de receita por minuto
de indisponibilidade).
o Deve considerar o custo para restaurar as operaes ao estado original.
o Tambm deve ser determinado qualitativamente (perda de
credibilidade, danos imagem e reputao).
Construes inseguras de cdigo (impacto na
disponibilidade):
o Ponteiros pendentes.
o Gerenciamento inadequado de memria (ciclo de vida dos objetos).
o Loop infinito.
o Requisio excessiva de coletores de lixo, e outras, devem ser
identificadas e refatoradas.
Especificar disponibilidade em casas de nove.

Requisitos de
Autenticao
So aqueles que reunem elementos para assegurar
a legitimidade e validade da identificao
apresentada pela entidade requisitante.
Deve ocorrer sob diferentes fatores (Autenticao
multifator).
o O qu voc sabe.
o O qu voc tem.
o O qu voc .
Processos de autenticao precisam ser revisados
e colocados a prove para que sejam analisados
pela segurana de TI em busca de novos riscos

Requisitos de
Autenticao
Formas mais comuns de autenticao:
o Anonymous
Pblico
o Basic
Envio das credenciais em texto claro ou Base 64.
o Digest
Envia um hash do valor original (digest). Utiliza uma propriedade
nica do hardware como salt para calcular o hash.
o Integrated (NTLM)
NT challange/response. Credenciais enviadas como um digest. Ex:
autenticao standalone + Kerberos V5 (impersonation)
o Client certificates
Autoridade certificadora confivel. Ex: Ecommerce, Egovernment...
o Formulrios
Dados sensveis podem ser mascarados (shoulder surfing), mas as
credenciais precisam ser transmitidas em canal criptografado.
Requisitos de
Autenticao
Formas mais comuns de autenticao (Cont.):
o Token
Geralmente utilizado em conjunto com formulrios. Token enviado
para o usurio que forneceu as credenciais.
o Smart cards
Fator de autenticao propriedade (o qu voc tem). Pode evitar o
furto de credenciais
o Biometria
Fator de autenticao caracterstica (o qu voc ). Caractersticas
podem mudar!
OBS:
o One Time Dynamic Passwords (OTP) requerem fatores de conhecimento
e propriedade, dinamicamente modificando senhas e tokens. Ex: Ao
informar as credenciais o usurio recebe um PIN dinmico, em intervalos
de segundos,em um device RFID.

Requisitos de
Autenticao
Erros de autenticao biomtrica:
o Erro tipo I - Falsa Rejeio (FRR False Rejection Rate).
o Erro Tipo II - Falsa Aceitao (FAR False Acceptence Rate).
FAR FRR
Crossover Error Rate
(CER) Utilizado para
avaliar diferentes
devices e tecnologias.
Baixo CER, maior
preciso.
E
R
R
O
S

PRECISO
Requisitos de
Autenticao
Exemplos de requisitos de
autenticao.
o O software deve se restringir intranet e o usurio no
precisa prover credenciais uma vez que j esteja
autenticado na rede.
o O software precisa suportar single sign on com terceiros.
o Usurios autenticados podem acessar Internet e intranet.
o A poltica de autenticao exige o uso de pelo menos
dois fatores de autenticao.
Requisitos de
Autorizao
Relacionados aos privilgios de uma entidade
autenticada.
Identificar sujeitos e objetos.
Modelos de controle de acesso:
o DAC Discricionrio
transferncia de privilgio, ACLs...
o NDAC No discricionrio
poltica de segurana imposta pelo sistema
o MAC Mandatrio
restrio pela sensibilidade da informao no objeto. Requer rtulos
de sensitividade para todos os objetos.
o RBAC Baseado em Role
o Controle de Acesso Baseado em Recurso
Quando a lista de usurios no conhecida (Ex: SOA).
Requisitos de
Autorizao
Princpio do privilgio mnimo.
Hierarquia de roles.

Privilgio
Mnimo
Privilgio
Mximo
Convidado
Usurio
convidado + privilgios
de usurio
Administrador
Usurio + privilgios
de Administrador
Requisitos de
Responsabilidade
Auxiliam na construo do histrico das aes do
usurio.
Trilhas de auditoria.
Investigaes forenses.
Elementos:
o Quem?
o O qu?
o Onde?
o Quando?
Requisitos de
Responsabilidade
Exemplos
o Toda tentativa frustrada de logon deve ser registrada com timestamp
endereo IP de orgem.
o No update de preos, um snapshot antes e depois deve ser registrado
com os seguintes campos auditveis:
Identidade;
Ao;
Objeto; e
Timestamp.
o Logs de auditoria devem permitir append e nunca overwrite.
o Logs de auditoria devem ser retidos em segurana por 3 anos.
Elicitao de Necessidades de
Proteo (PNE)
Alm de conhecer as fontes de requisitos,
importante conhecer as tcnicas de elicitao.
o Brainstorming
o Questionrios e entrevistas
o Decomposio poltica
o Classificao de dados
o Matriz sujeito-objeto
o Casos de uso

Elicitao de Necessidades de
Proteo (PNE)
Brainstorming
o o mtodo mais rpido.
o Idias so registradas sem crtica.
o So classificadas segundo critrios de relevncia e possibilidade.
o So pontuadas e priorizadas.
o Derivam planos de ao.
Elicitao de Necessidades de
Proteo (PNE)
Questionrios e entrevistas.
o A efetividade deste processo est em como as questes sero
empregadas (pblico-alvo).
o Exemplos:
Que tipo de dado ser transmitido e mantido pelo software?
O dado sensvel ou confidencial?
O software ir manipular informaes privadas ou credenciais?
Quem so os usurios que iro alterar dados? Eles precisam ser
auditados ou monitorados?
Qual o MTD para o software?
Existe necessidade de single sign on?
Que papis ou perfis precisam ser estabelecidos para o CRUD?
Elicitao de Necessidades de
Proteo (PNE)
Decomposio poltica
o As definies polticas da
organizao so fontes de
requisitos.
o Os objetivos e necessidades
encontrados so decompostos
para gerar requisitos de
segurana.
o Necessidades como
gerenciamento de configurao,
segregao de ambientes,
separao de direitos, reviso de
cdigo e outros, j podem existir
na cultura organizacional.
Elicitao de Necessidades de
Proteo (PNE)
Classificao de dados.
o Tipos de dados.
o Propriedade e custdia dos dados.
o Sensibilidade dos dados (rtulos).
o Roles Responsabilidades sobre os dados.
o Ciclo de vida do dado.

Elicitao de Necessidades de
Proteo (PNE)
Rotulagem de dados.
Dado
Pblico?
Protegido
por roles?
Alterao
No Produz
Dano?
Alterao
Produz
Dano?
Sem impacto
Na perda?
Com impacto
Na perda?
Confidencialidade
Integridade Disponibilidade
Pblico
Confidenc.
Baixa
Alta
Suporte
Crtico
Elicitao de Necessidades de
Proteo (PNE)
Matriz Sujeito Objeto
o til para definio de roles.
o Auxilia na reviso de direitos.
o Definir nveis de anlise.
Elicitao de Necessidades de
Proteo (PNE)
Casos de Uso e Desuso.
o Determinam requisitos funcionais e de segurana.
o Modela o comportamento do software diante da inteno do ator.
Cria conta
Autentica
Pesquisa
Autentica
Obtm
identidade
Fora Bruta
Rouba
dados
Cliente Hacker
Matriz de Rastreabilidade
Garante o escopo.
Garante que os requisitos correspondem as
necessidades.
Auxilia no estudo do impacto de mudanas.
Auxilia na definio de casos de teste.
Auxilia nas inferncias de vulnerabilidades por
conceitos-chave de segurana.
Mais sobre
Desenvolvimento Seguro
Subsdios para processos de desenvolvimento
seguro e modelos de maturidade:
o OWASP CLASP
o BSIMM Building Security in Maturity Model

Obrigado!

Das könnte Ihnen auch gefallen