1
Introdução à segurança
computacional
 Definição formal de segurança computacional
 Ameaças
 Políticas e mecanismos
 Suposição e confiança
 Garantia
 Questões operacionais
 Questões humanas
(C) 2004-2006 Gustavo Motta
1
Definição de segurança computacional (1)
 Segurança computacional
• “Prevenir que atacantes alcancem seus objetivos através do acesso não
autorizado ou uso não autorizado dos computadores e suas redes”
(Howard, 1997)
– Acesso não autorizado: ocorre quando um indivíduo tenta acessar
informações ou recursos sem a devida autoridade
– Uso não autorizado: ocorre quando um indivíduo com autoridade para
acessar informações ou recursos de um certo modo tenta acessá-las de outras
formas
(C) 2004-2006 Gustavo Motta
2
Definição de segurança computacional (2)
Atacantes
Meios
Acesso
Hackers
Comandos
de usuários
Vulnerabilidade
implementação
Acesso não
autorizado
Espiões
Programas
ou scripts
Vulnerabilidade
projeto
Uso não
autorizado
Terroristas
Agentes
autônomos
Vulnerabilidade
configuração
Agressores
internos
Toolkits
Criminosos
Profissionais
Ferramentas
distribuídas
Vândalos
Grampo de
Dados
Processos
(arquivos
ou dados
em trânsito)
Serviços de
segurança
Resultados
Objetivos
Corrupção da
informação
Desafio,
status
Revelação da
informação
Ganho
político
Roubo de
serviço
Ganho
financeiro
Recusa de
serviço
Causar
perdas
(C) 2004-2006aGustavo
Motta
Taxonomia de ataques
redes
e computadores
3
Definição de segurança computacional (3)
 Segurança computacional
• “A segurança em um sistema de informação (SI) visa protegê-lo contra
ameaças à confidencialidade, à integridade e à disponibilidade das
informações e dos recursos sob sua responsabilidade” (Brinkley & Schell,
1995; Joshi et al., 2001)
(C) 2004-2006 Gustavo Motta
4
Definição de segurança computacional (4)
 Confidencialidade (1)
• É a manutenção do sigilo das informações ou dos recursos
• A violação da confidencialidade ocorre com a revelação não autorizada
da informação ou dos recursos
• A prevenção contra as ameaças à confidencialidade em SI pode ser
alcançada com a aplicação de mecanismos de controle de acesso e com
técnicas de criptografia e de segurança de redes
• A confidencialidade também se aplica a mera existência de um dado, que
pode ser mais importante do que o dado em si
• Todos os mecanismos que impõem confidencialidade requerem serviços
(C) 2004-2006 Gustavo Motta
5
para suportá-los – suposições e confiança
Definição de segurança computacional (5)
 Confidencialidade (2)
• Exemplo: criptografia como mecanismo de controle de acesso
– A criptografia do extrato de uma conta corrente previne alguém de lê-lo.
Caso o correntista precise de ver o extrato, ele precisa ser decifrado. Apenas
o possuidor da chave criptográfica, utilizando o programa de decifração,
pode fazê-lo. Entretanto, se outrem conseguir ler a chave, a
confidencialidade do extrato fica comprometida
– O problema da confidencialidade do extrato se reduz agora à
confidencialidade da chave criptográfica, que deve ser protegida
• Exemplo: proteção da existência de um dado
– Saber que um indivíduo é um cliente VIP de um banco pode ser mais
importante que saber quais/quantos são os recursos que ele possui aplicados
(C) 2004-2006 Gustavo Motta
6
Definição de segurança computacional (6)
 Integridade (1)
• Refere-se a confiabilidade da informação ou dos recursos
• A violação da integridade ocorre pela modificação imprópria ou não
autorizada da informação ou dos recursos
• Integridade de dados
– Confiabilidade do conteúdo dos dados
• Integridade de origem
– Confiabilidade da fonte dos dados – autenticação
 Sustenta-se na acurácia e na credibilidade da fonte e na confiança que as pessoas
depositam na informação
(C) 2004-2006 Gustavo Motta
7
Definição de segurança computacional (7)
 Integridade (2)
• Classes de mecanismos para integridade
– Mecanismos de prevenção
 Objetivam manter a integridade dos dados com o bloqueio de qualquer tentativa não
autorizada de modificá-los ou qualquer tentativa de modificá-los por meios não
autorizados – acesso e uso não autorizados
 Autenticação e controle de acessos adequados, em geral, são eficazes para prevenir
o acesso não autorizado
 O uso não autorizado requer formas de controle distintas, sendo mais difícil de
prevenir
– Mecanismos de detecção
 Buscam reportar que a integridade dos dados não é mais confiável, em parte ou no
todo
 A criptografia pode ser usada para detectar violações de integridade
• A avaliação da integridade é de difícil realização por basear-se em
(C) 2004-2006 Gustavo Motta
8
suposições sobre a fonte dos dados e da sua confiabilidade
Definição de segurança computacional (8)
 Integridade (3)
• Exemplo: corrupção da integridade de origem
– Um jornal pode noticiar uma informação obtida de um vazamento no Palácio
do Planalto, mas atribuí-la a uma fonte errada. A informação é impressa
como recebida (integridade dos dados preservada), mas a fonte é incorreta
(corrupção na integridade de origem )
• Exemplo: distinção entre acesso e uso não autorizados
– Num sistema contábil, o acesso não autorizado ocorre quando alguém quebra
a segurança para tentar modificar o dado de uma conta, por exemplo, para
quitar um débito, sem autoridade para tal
– Agora, quando o contador da empresa tenta apropriar-se de dinheiro
desviando-o para contas no exterior e ocultado respectivas transações, então
ele está abusando de sua autoridade – embora possa, ele não deve fazê-lo
(C) 2004-2006 Gustavo Motta
9
Definição de segurança computacional (9)
 Disponibilidade (1)
• Refere-se a capacidade de usar a informação ou o recurso desejado
• A violação da disponibilidade ocorre com a retenção não autorizada de
informações ou recursos computacionais
– Ataques de recusa de serviço – denial of service attacks
• Usualmente definido em termos de “qualidade de serviço”
– Usuários autorizados esperam receber um nível específico de serviço,
estabelecido em termos de uma métrica
• Mecanismos para prevenção/detecção eficazes são difíceis de implementar e
podem ser manipulados
(C) 2004-2006 Gustavo Motta
10
Definição de segurança computacional (10)
 Disponibilidade (2)
• Exemplo: manipulação de mecanismos de disponibilidade
– Suponha que Ana tenha comprometido o servidor secundário de um banco,
que fornece os saldos das contas correntes. Quando alguém solicita
informações ao servidor, Ana pode fornecer a informação que desejar.
Caixas validam saques contatando o servidor primário. Caso ele não obtenha
resposta, o servidor secundário é solicitado. Um cúmplice de Ana impede que
caixas contactem o servidor primário, de modo que todos eles acessam o
servidor secundário. Ana nunca tem um saque ou cheque recusado,
independente do saldo real em conta
– Note que se o banco tivesse apenas o servidor primário, este esquema não
funcionaria – o caixa não teria como validar o saque
(C) 2004-2006 Gustavo Motta
11
Ameaças (1)
 Ameaça
• Uma ameaça é uma potencial violação de segurança
• As ações que podem acarretar a violação são denominadas de ataques
• Aqueles que executam tais ações são denominados de atacantes
• Os serviços de suporte a mecanismos para confidencialidade, integridade e
disponibilidade visam conter as ameaças à segurança de um sistema
(C) 2004-2006 Gustavo Motta
12
Ameaças (2)
 Classes de ameaças (Stallings, 1999)
Prevenção 
Confidencialidade
Disponibilidade
Autenticação
Integridade
origem
Ameaças 
destino
Fabricação
Interceptação
Modificação
Fluxo
Interrupção
normal
(C) 2004-2006 Gustavo Motta
13
Ameaças (3)
 Classes de ameaças (Shirey, 1994)
• Disclosure: acesso não autorizado à informação
– Snooping (bisbilhotar): ataque passivo – o grampo telefônico é o exemplo clássico
• Deception: aceitação de dados falsos, indução ao erro
– Modificação (alteração), spoofing (masquerading ou logro), repudiação de origem,
repudiação de recebimento
• Disruption: interrupção ou prevenção da operação correta de um sistema
– Modificação
• Usurpação
– Modificação, spoofing, delay, recusa de serviço
(C) 2004-2006 Gustavo Motta
14
Ameaças (4)
 Masquerading × Delegação
• Masquerading ocorre quando uma entidade é personificada por outra
• Delegação ocorre quando uma entidade autoriza outrem a realização ações em
seu interesse
– Todas as partes são cientes da delegação, que pode ser verificada junto ao
delegante
• Exemplo: delegação por motivo de férias
– Quando Ana sai de férias no banco, ela delega para José a autoridade (menos a
capacidade de delegar) para que ele atuar em seu interesse. Nesse caso, José não
finge ser Ana, mas pode afirmar que atua no interesse dela, que pode confirmar
isto
– Contrariamente ao masquerading, a delegação não é uma violação de segurança
(C) 2004-2006 Gustavo Motta
15
Políticas e mecanismos (1)
 Política de segurança
• É uma diretriz de alto nível que determina o que permitido e o que é proibido
– Em geral, são expressas em linguagem natural – ambigüidades e incompletudes
– Brinkley & Schell (1995) definem o conceito de “política técnica” como sendo a
interpretação da “política de alto nível” em termos dos relacionamentos formais
entre as entidades ativas (sujeitos), as entidades passivas (objetos) e os modos de
acesso (operações) permitidos
 Matemática – precisa, mas difícil de trabalhar e de entender: descrita em termos de
estados permitidos (seguros) e proibidos (não seguros)
 Linguagens para expressar políticas – alia precisão com facilidade de uso
(C) 2004-2006 Gustavo Motta
16
Políticas e mecanismos (2)
 Mecanismo de segurança
• É um método, ferramenta ou procedimento que pode ser usado para impor
uma política de segurança
– Técnico: aquele no qual os controles de um sistema impõem a política
 Obrigar um usuário a fornecer uma senha para autenticá-lo antes de utilizar um
recurso
– Procedimental: aquele no qual controles externos ao sistema impõem a política
 Sanções contra aqueles que violam a política de segurança
 Composição de políticas
• Caso as políticas conflitem, as discrepâncias podem criar vulnerabilidades de
segurança
(C) 2004-2006 Gustavo Motta
17
Políticas e mecanismos (3)
 Exemplo: distinção entre políticas e mecanismos
• Suponha que o laboratório de computação de uma universidade estabelece
uma política que proíbe qualquer estudante de copiar os arquivos de
trabalhos de outros estudantes. O sistema de computação provê mecanismos
para prevenir que terceiros leiam os arquivos de um usuário qualquer. Ana
falhou em usar tais mecanismos e José conseguiu copiar os arquivos. Uma
brecha na segurança ocorreu e José violou a política de segurança. A falha
de Ana em proteger seus arquivos não autoriza José a copiá-los
• Caso José pudesse apenas ver os arquivos, sem copiá-los, haveria violação
da política?
(C) 2004-2006 Gustavo Motta
18
Políticas e mecanismos (4)
 Objetivos da segurança
• Uma política de segurança especifica as ações “seguras” e aquelas “não
seguras”
– Mecanismos de segurança visam prevenir, detectar ou recuperar-se de ataques
– Prevenção: visa impedir o sucesso dos ataques – ideal
 Envolve a implementação de mecanismos que os usuários não possam ignorar, para os
quais se supõe uma implementação correta e não vulnerável
– Detecção: visa determinar que um ataque está ocorrendo ou que já ocorreu
 Monitora, mas não impede ataques – permite conhecê-los melhor
– Recuperação – complexo porque a natureza de cada ataque é diversa
 Pára o ataque, avalia e repara os danos
 O sistema continua a operar corretamente, mesmo quando o ataque sucede
(C) 2004-2006 Gustavo Motta
19
Políticas e mecanismos (4)
 Exemplo: prevenção
• Caso alguém pretenda violar um servidor a partir da Internet e este não está
conectado à rede, então preveniu-se do ataque
 Exemplo: detecção
• Mecanismo que fornece uma advertência quando um usuário entra mais de
três vezes com uma senha incorreta. O login continua mas o registro fica para
fins de auditoria
 Exemplo: recuperação
• Caso um atacante delete um arquivo, o mecanismo de recuperação pode
restaurá-lo da lixeira ou(C)
do2004-2006
backupGustavo Motta
20
Suposição e confiança (1)
 Permeiam todos os aspectos de segurança
• A segurança baseia-se em suposições específicas para o tipo de segurança
requerido e para o ambiente no qual será empregada
 Políticas
• Consistem num conjunto de axiomas que os formuladores das políticas
acreditam ser exeqüíveis
– Suposições
 A política particiona o conjunto de estados do sistema em estados “seguros” e em
estados “inseguros” – determina o que é um sistema seguro
 Captura corretamente os requisitos de segurança
(C) 2004-2006 Gustavo Motta
21
Suposição e confiança (2)
 Exemplo: back door e confiança
• Precisa-se de uma chave para abrir a fechadura de uma porta. Assume-se que
a fechadura é segura contra arrombamentos. Essa suposição é tratada como
um axioma e é feita porque, em geral, as pessoas só conseguem abrir a porta
com uma chave. Um bom arrombador, entretanto, pode abrir a porta sem uma
chave. Logo, num ambiente com um arrombador habilidoso e não confiável,
tal suposição é errada e a conseqüência é inválida.
• Uma exceção bem definida para as regras oferece a porta dos fundos (back
door) pela qual o mecanismo de segurança pode ser contornado
– A confiança reside na crença de que o back door não será usado, exceto como
especificado na política
(C) 2004-2006 Gustavo Motta
22
Suposição e confiança (3)
 Mecanismos
• Suposições
– Os mecanismos de segurança previnem o sistema de entrar em estados “inseguros”
– a política de segurança pode ser imposta pelos mecanismos
– Os mecanismos de segurança funcionam corretamente
 Hardware, infra-estrutura, redes, etc
 Caso alguma suposição não se verifique, o sistema não será seguro
(C) 2004-2006 Gustavo Motta
23
Suposição e confiança (4)
 Tipos de Mecanismos
seguro
preciso
Conjunto de estados
alcançáveis – R

abrangente
Conjunto de estados
seguros – Q
Um mecanismo de segurança é seguro se R  Q; ele é preciso se R = Q; e ele é
abrangente se existirem estados
tal que rGustavo
 R e rMotta
Q
(C)r2004-2006
24
Suposição e confiança (5)
 Confiar no funcionamento correto dos mecanismos requer várias
suposições
• Cada mecanismo foi projetado para implementar uma ou mais partes da
política de segurança
• A união dos mecanismos implementa todos os aspectos da política de
segurança
• Os mecanismos estão implementados corretamente
• Os mecanismos estão instalados e administrados corretamente
(C) 2004-2006 Gustavo Motta
25
Garantia (1)
 A confiança não pode ser quantificada precisamente
• A especificação, o projeto e a implementação de um sistema provêem a base para
determinar “o quanto” se pode confiar nele
– A garantia é a confiança de que uma entidade satisfaz seus requisitos de
segurança, baseada em evidências específicas fornecidas pela aplicação de
técnicas de garantia
 O quanto se pode confiar que o que sistema realmente faz é aquilo que se supõe que
ele faz
 Demonstração de que sistema em funcionamento não violará as especificações –
argumentos e provas
 Processo de software estabelecido – qualidade de produto
» Embora as técnicas de garantia não assegurem a correção ou a segurança, elas provêem
uma base firme avaliar em que se pode confiar a fim de acreditar que um sistema é
(C) 2004-2006 Gustavo Motta
26
seguro
Garantia (2)
Políticas
Definição de requisitos que explicitamente estabelece as
expectativas de segurança dos mecanismos
Garantia
Prover uma justificativa de que o mecanismo atende a política
através de evidência de garantia e aprovações baseadas em
evidência
Mecanismos
Entidades executáveis que são projetadas e implementadas para
atender os requisitos da política
Relacionamentos entre garantia, políticas e mecanismos
(C) 2004-2006 Gustavo Motta
27
Questões operacionais (1)
 A preocupação com a segurança não termina com a
conclusão de um sistema
• Um sistema “seguro” pode ser violado pela operação imprópria
• A questão é como avaliar o efeito das questões operacionais na
segurança
(C) 2004-2006 Gustavo Motta
28
Questões operacionais (2)
 Análise de custo-benefício
• Pesa o custo de proteger dados e recursos contra os custos associados com a
violação da segurança
– É mais barato prevenir ou recuperar?
• Considerações
– Sobreposição de efeitos de mecanismos
 Exemplo: criptografia
– Os aspectos não técnicos dos mecanismos
 Eles podem ser empregados efetivamente
– Facilidade de uso, aceitação ...
 O efeito desejado com o mecanismo pode não ser o obtido
(C) 2004-2006 Gustavo Motta
29
Questões operacionais (3)
 Análise de risco
• O que acontece se dados e recursos forem comprometidos?
– Ajuda a determinar o que se deve proteger e com qual nível de proteção
 Requer uma análise das ameaças potenciais contra um bem e as chances delas
ocorrerem
 O nível de proteção é em função da probabilidade do ataque ocorrer e dos seus
efeitos
» Proteger-se contra um ataque de baixa probabilidade é menos importante que se proteger
de um ataque de alta probabilidade
Isso nem sempre é verdade!
(C) 2004-2006 Gustavo Motta
30
Questões operacionais (4)
 Leis e clientes
• Leis restringem a disponibilidade e uso de tecnologias e afetam
procedimentos de controle
– Leis específicas para informações clínicas de paciente determinam políticas e
controles a serem adotados
• Normas, procedimentos, resoluções no âmbito das organizações
• A sociedade distingue práticas legais das aceitáveis
– Medidas de segurança ilegais ou inaceitáveis podem cair no descrédito ou dar a
falsa sensação de segurança
(C) 2004-2006 Gustavo Motta
31
Questões humanas (1)
 Problemas organizacionais
• Poder e responsabilidade
– Aqueles responsáveis pela segurança têm o poder para impô-la?
• Benefícios financeiros
– Os investimentos em segurança não trazem rendimentos, mas apenas previnem
a perda de rendimentos provenientes de outras fontes
– Perdas decorrentes de falhas de segurança são um grande incentivo para
realização dos investimentos
(C) 2004-2006 Gustavo Motta
32
Questões humanas (2)
 Problemas com pessoal
• Maior fonte de problemas com segurança
– Pessoal interno
 Acesso autorizado, mas uso não autorizado (80-90% dos problemas de segurança)
 Treinamento inadequado – e. g., problemas de configuração
– Pessoal externo
 Acesso não autorizado
• Engenharia social
(C) 2004-2006 Gustavo Motta
33
Resumo (1)
Ameaças
Polícias
Especificação
Projeto
Implementação
Operação
(C) 2004-2006 Gustavo Motta
34
Resumo (2)

Objetivos e requisitos

 Autenticação
Regras
e procedimentos
•Criptografia
•Assinatura
Eletrônica
•CABP ...
Auditoria
 Inclui legislação
 Controle de acesso


Definição
de domínios
 Confidencialidade

 Não de
repudiação
Definição
autoridades

•X.509
•LDAP
•NIST CABP ...


Integridade

Disponibilidade
Planejamento de implantação
Acompanhamento
(C) 2004-2006 Gustavo Motta
35
Referências

BRINKLEY, D. L.; SCHELL, R. R. Concepts and terminology for computer security.
In: ABRAMS, M. D.; JAJODIA, S.; PODELL, H. J. (Ed.). Information security: an
integrated collection of essays. Los Alamitos, CA: IEEE Computer Society Press, jan.
1995. p. 40-97.

HOWARD, J. D. An analysis of security incidents on the internet: 1989-1995. 1997.
Tese de Doutorado – Carnegie Mellon University, Pittsburgh, Pennsylvania, EUA.

JOSHI, J. B. D.; AREF, W. G.; GHAFOOR, A.; SPAFFORD, E. H. Security models for
web-based applications. Communications of the ACM, v. 44, n. 2, p. 38-44, fev. 2001.

SHIREY, R. Security Architecture for Internet Protocols: A Guide for Protocol
Designs and Standards, Internet Draft: draft-irtf-psrg-secarch-sect1-00.txt (Nov. 1994).

STALLINGS, W. Cryptography and network security: principles and practice. 2. ed.
Prentice Hall, 1999. 569 p.
(C) 2004-2006 Gustavo Motta
36
Download

Introdução à segurança computacional