Você está na página 1de 46

Segurana Sistemas

Operacionais


Ewerton Oliveira
Gabriel Rolim
Introduo

Objetivos de Segurana

Invasores
Categorias comuns
1. Curiosidades casuais de usurios leigos
2. Espionagem por pessoas internas
3. Tentativas determinadas para ganhar dinheiro
4. Espionagem militar ou comercial

Perda Acidental de Dados
Causas comuns
1. Atos de Deus
- incndios, enchentes, guerras
2. Erros de hardware ou software
- defeitos na CPU, discos ruins, erros de programas
3. Erros humanos
- entrada incorreta de dados, montagem errada da fita

Criptografia Bsica

Criptografia por Chave Secreta
Substituio monoalfabtica
cada letra substituda por letra diferente

Dada a chave criptogrfica,
fcil achar a chave de decriptao

Criptografia de chave secreta ou criptografia de chave simtrica

Criptografia por Chave Pblica
Todos os usurios possuem um par de chaves pblica/privada
publica a chave pblica
chave privada no publicada

Chave pblica a chave criptogrfica
Chave privada a chave de decriptao

Funes de Uma Via
Funo tal que dados f e seu parmetro x
fcil calcular y = f(x)
Mas dado y
computacionalmente invivel encontrar x

Assinaturas Digitais

Mecanismos de Proteo
Domnios de Proteo
Domnios de Proteo
Conjunto de pares (objetos, diretos)

Objetos: arquivo, impressora, ...
Diretos: leitura, escrita, execuo, ...
Mecanismos de Proteo

No Unix
O domnio de um processo definido pela combinao do UID e GID
Alternncia de Domnios
Cada processo tem duas partes:
Parte do Usurio
Parte do Ncleo (Chamadas ao Sistema)
SetUID e SetGID
SetUID: Processo em execuo ter mesmos direitos que o dono do arquivo.
SetGID: Processo em execuo ter mesmos direitos que o grupo do dono do arquivo.

Domnios de Proteo

Representao da Matriz de Proteo

Matriz contm muitos espaos vazios
Seu armazenamento seria muito custoso.
Mtodo prtico de representar a Matriz
Por Colunas:
Lista de Controle de Acesso (ACL)
Por Linhas:
Capacidades (Capabilities)

Lista de Controle de Acesso (ACL)
Lista de Controle de Acesso (ACL)

Em sistemas que utilizam grupos:
UID1, GID1 : direitos1; UID2, GID2 : direitos; ...
Utilizao de Caracteres-chave
Generalizao
Exemplo: Ana, * : RW
Especificao
Exemplo: Teresa, * : (none); *, * : RW

Capacidades
Capacidade criptograficamente protegida


Direitos genricos
1. copia capacidade
2. copia objeto
3. remove capacidade
4. destri objeto

ACL X Capabilities
Ambas so equivalentes
Revogao
ACL : Fcil, mas no imediata.
Capabilities: Mais complicada.
Checagem
ACL: Lenta, para muitos grupos.
Capabilities: Mais rpida.

Sistemas Confiveis
TCB (Trusted Computing Base)
Monitor de Referncia: Parte do sistema operacional que
responsvel pela imposio da poltica de segurana

Modelos de Segurana
Modelo Bell-LaPadula (Bell & LaPadula, 1975)
Modelo Biba (Biba, 1977)
Modelo Clark-Wilson (Clark & Wilson, 1987)
Modelo Chinese Wall (Brewer & Nash, 1989)
Controle de Acesso Baseado em Papis (Ferraiolo et al., 2001)

Modelo Bell-LaPadula

Poltica de confidencialidade
Lida com o fluxo da informao
Prevenir a liberao no autorizada da informao
Modelo de segurana multinvel
Classificao no estilo militar
Influncia para muitos outros modelos

Modelo Bell-LaPadula

Propriedade simples
Ler apenas no seu nvel ou no nvel inferior
Propriedade *
Escrever apenas no seu nvel ou no nvel superior

Modelo Biba

Alterao do Modelo Bell-LaPadula
Objetiva a integridade invs da confidencialidade
Modelo de segurana multinvel
Classificao no estilo empresarial
Propriedade simples:
Escrever apenas no seu nvel ou no nvel inferior
Propriedade *:
Ler apenas no seu nvel ou no vvel superior


Canais Subliminares

Apesar de todos esse sistemas tericos serem seguros,
na prtica Lampson (1973) definiu o problema do confinamento:

Canais Subliminares
Um canal subliminar usando impedimento de arquivo
Canais Subliminares
Tcnicas de Esteganografia
Imagem direita contm os textos de 5 peas de Shakespeare
1024 x 768 x 3 bits = 294 912 bytes
Zebras
Hamlet, Macbeth, Julius Caesar
Mercador de Veneza, Rei Lear
Trabalhos Internos
Executados por empregados de uma empresa;

Ataque interno x Ataque externo
Ataque interno:
Conhecimento e acessos especializados

Ataque externo: no possui tais propriedades.

Bombas lgicas
Programador da empresa escreve programa
com potencial para causar danos (bomba lgica)
OK desde que ele/ela alimente o programa diariamente com uma senha
se programador despedido, programa no alimentado com senha, bomba
explode
Alapes
Cdigo inserido no sistema para desviar alguma verificao corriqueira.







(a) Cdigo normal (b) Cdigo com alapo inserido


Logro na autenticao do usurio






(a) Tela de conexo verdadeira
(b) Tela de conexo impostora

Transbordamento de Buffer







(a) Situao na qual programa principal est executando
(b) Depois que procedimento A foi chamado
(c) Transbordo de buffer mostrado em cinza


Malware
Programa designado a infiltrar ou danificar um sistema de
computador sem o consentimento do proprietrio. a juno das
palavras "malicious" e "software".

Como um Malware pode ser usado

SAUDAES DA GENERAL ENCRYPTION!

PARA COMPRAR UMA CHAVE DE DECRIPTAO PARA SEU DISCO
RGIDO, POR FAVOR ENVIE US$ 100 EM NOTAS DE BAIXO VALOR, SEM
MARCAR, PARA A CAIXA POSTAL 2154, CIDADE DO PANAM, PANAM.
OBRIGADO. FOI BOM FAZER NEGCIO COM VOC.
Cavalo de troia
Embutir malware em um programa til;

Funcionamento:
chamada de funo que escreve o malware no disco como um programa
executvel e o inicia.
O malware pode ento realizar qualquer dano para o qual tenha
sido programado, como excluir, modificar ou criptografar arquivos.
Pode ser transformado em um zumbi.
Vrus
Definio:
Vrus um programa capaz de, entre outras coisas, se reproduzir anexando
seu cdigo a outros programas, semelhante forma como os vrus biolgicos
se reproduzem.

Vermes so como vrus, mas se autorreplicam.

Como os vrus funcionam
Vrus escritos em linguagem de montagem

Inseridos em um outro programa
uso de ferramenta chamada conta-gotas (dropper)
vrus latente at que programa executa
ento infecta outros programas
eventualmente dispara sua carga explosiva

Como os vrus funcionam






Tipos de Vrus
Residentes em Memria
Aps ser executado, permanece na memoria
Pode modificar o endereo de Mapa de Bits para ficar oculto
Setor de Inicializao
Copia-se para RAM ao iniciar o sistema, no topo ou entre os vetores de interrupo
Ao formatar pelo fdisk do WIN a 1 trilha do disco ignorada
Dispositivos
Infecta um driver do dispositivo
Macros
Arquivos do Office, possuem macros que podem conter programas inteiros escritos
em VB
Cdigo-fonte
Infecta um cdigo fonte: #include <virus.h> e run_virus( );

Vrus de setor de inicializao







Como os vrus se disseminam
Vrus so colocados onde h chance de serem copiados
Sites de Downloads
Programas copiados de fontes no-confiveis
Infectam programas no disco rgido, pendrivers
Podem se disseminar na rede local
Anexam-se mensagens eletrnicas aparentemente inocentes
Quando executados, usam listas de contatos para replicar

DEFESAS
Defesa em profundidade:
Mltiplas camadas de segurana;
Se uma for violada, ainda existiro outras.


Firewalls
Firewall sem estado
Cabealho de cada pacote inspecionado;
Firewall decide se passa ou no
Com base nessa informao;

Firewall com estado
Controla conexes e o estado em que elas esto

IDS
Inspeciona cabealho e contedo
Antivrus x Antiantivrus







(a) Um programa
(b) Programa infectado
(c) Programa infectado comprimido
(d) Vrus criptografado
(e) Vrus comprimido com o cdigo de compresso criptografado

Antivrus x Antiantivrus







Vrus polimrfico X = A+B+C-4
Cdigo Mvel - Caixa de Areia
(sandboxing)







(a) Memria dividida em caixas de areia de 16MB
(b) Uma maneira de verificar a validade de uma instruo