5 - segurança do sistema

59
Administração e Segurança de Redes de Computadores Segurança do Sistema Thiago Leite [email protected] 1 quinta-feira, 17 de maio de 12

Upload: luciana

Post on 31-Jul-2015

32 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 5 - Segurança do Sistema

Administração e Segurança de Redes de Computadores

Segurança do SistemaThiago Leite

[email protected]

1quinta-feira, 17 de maio de 12

Page 2: 5 - Segurança do Sistema

Segurança do Sistema

• Explorando erros de código

• Uso freqüente para a realização de ataques externos

• Aproveitam de erros dos programas

• Sistema Operacional

• programas populares

2quinta-feira, 17 de maio de 12

Page 3: 5 - Segurança do Sistema

Segurança do Sistema

• Explorando erros de código

• Objetivo é subverter o sistema operacional

• Execução na máquina-alvo

• geralmente sem consentimento

3quinta-feira, 17 de maio de 12

Page 4: 5 - Segurança do Sistema

Segurança do Sistema

• Ataque por transbordamento do buffer

• Compiladores não verificam limites de vetores

• Nenhuma verificação é realizada em tempo de execução

4quinta-feira, 17 de maio de 12

Page 5: 5 - Segurança do Sistema

Código Compilável

int  i;char  c[1024];i  =  12000;c[i]  =  0;

5quinta-feira, 17 de maio de 12

Page 6: 5 - Segurança do Sistema

Segurança do Sistema

• Exemplo de ataque de transbordamento do buffer

• Qual tamanho de variável ideal para o nome de um arquivo a ser lido?

6quinta-feira, 17 de maio de 12

Page 7: 5 - Segurança do Sistema

Transbordamento do buffer

7quinta-feira, 17 de maio de 12

Page 8: 5 - Segurança do Sistema

Segurança do Sistema

• E se o nome do arquivo não contiver lixo aleatório?

• E se o programa possuir privilégios SETUID?

• Execução de um interpretador de comandos (bash)

• Transferência de programa ou script pela INternet

8quinta-feira, 17 de maio de 12

Page 9: 5 - Segurança do Sistema

Segurança do Sistema

• SETUID de root

• equivalente ao poder de Administrador em uma ambiente MS Windows

9quinta-feira, 17 de maio de 12

Page 10: 5 - Segurança do Sistema

Segurança do Sistema

• Ataque funciona em qualquer situação em que exista um buffer de tamanho fixo para uma entrada de usuário

• Ex: função “gets” do C é vulnerável

10quinta-feira, 17 de maio de 12

Page 11: 5 - Segurança do Sistema

Segurança do Sistema

• Ataques por injeção de código

• Fazer com que um programa-alvo execute outro código sem perceber

• Comum entre programadores preguiçosos

11quinta-feira, 17 de maio de 12

Page 12: 5 - Segurança do Sistema

Segurança do Sistema

• Ataques por injeção de código

• Exemplo: programa para copiar dois arquivos

12quinta-feira, 17 de maio de 12

Page 13: 5 - Segurança do Sistema

Código vulnerável a injeção de código

#include <stdio.h>#include <string.h>

int main(int argc, char *argv[]){char src[100], dst[100], cmd[205]="cp ";printf("Por favor, digite o nome do arquivo-fonte: ");gets(src);strcat(cmd,src);strcat(cmd," ");printf("Por favor, informe o nome do arquivo destino: ");gets(dst);strcat(cmd,dst);system(cmd);

}

13quinta-feira, 17 de maio de 12

Page 14: 5 - Segurança do Sistema

Uso esperado do programa

14quinta-feira, 17 de maio de 12

Page 15: 5 - Segurança do Sistema

Uso malicioso do programa

15quinta-feira, 17 de maio de 12

Page 16: 5 - Segurança do Sistema

Segurança do Sistema

• E se o programa estiver com SETUID?

• Consequências catastróficas!

16quinta-feira, 17 de maio de 12

Page 17: 5 - Segurança do Sistema

Segurança do Sistema

• Ataques de escalada de privilégio

• Enganar o sistema e obter direitos de acesso maiores do que o permitido

17quinta-feira, 17 de maio de 12

Page 18: 5 - Segurança do Sistema

Segurança do Sistema• Ataques de escalada de privilégio

• Exemplo: antigo ataque ao daemon cron

• Cron possui diretórios com scripts que executa em horas determinadas

• Criar script que utilize o diretório do cron como diretório de trabalho

• Força despejo de memória pelo sistema no diretório protegido

• Cron executa as cópias como root

18quinta-feira, 17 de maio de 12

Page 19: 5 - Segurança do Sistema

Segurança do Sistema

• Malware

• Programas maliciosos

• Antigamente, no ano 2000, criado por adolescentes curiosos e carentes

19quinta-feira, 17 de maio de 12

Page 20: 5 - Segurança do Sistema

Segurança do Sistema

• Malware

• Atualmente são desenvolvidos sob encomenda por entidades criminosas

• Em geral possuem a capacidade de se propagar o mais rápido possível

20quinta-feira, 17 de maio de 12

Page 21: 5 - Segurança do Sistema

Segurança do Sistema

• Malware

• Um computador infectado pode ser remotamente acessado pela porta dos fundos (backdoor)

• Computador comandado é chamado zumbi

• Vários zumbis compõem uma botnet (robot network)

21quinta-feira, 17 de maio de 12

Page 22: 5 - Segurança do Sistema

Segurança do Sistema

• Usos de malwares

• Envio comercial de spam

• envio distribuído de e-mails

• Chantagem aos usuários

• resgate por arquivos criptografados sem o consentimento

22quinta-feira, 17 de maio de 12

Page 23: 5 - Segurança do Sistema

Segurança do Sistema

• Usos de malwares

• Keylogger

• registro de informações digitadas da máquina-alvo

• Roubo de identidade

• Keylogger e outros dados obtidos pelo malware

23quinta-feira, 17 de maio de 12

Page 24: 5 - Segurança do Sistema

Segurança do Sistema

• Por que um malware se espalha tão rapidamente?

• “Assim como no mundo biológico, a diversidade é uma boa defesa.”

• Windows prioriza a facilidade de uso ao invés da segurança

24quinta-feira, 17 de maio de 12

Page 25: 5 - Segurança do Sistema

Segurança do Sistema

• Acha segurança importante acima de tudo?

• Configure o celular para solicitar o PIN antes de realizar toda chamada

• difícil, né?

25quinta-feira, 17 de maio de 12

Page 26: 5 - Segurança do Sistema

Segurança do Sistema

• Principais tipos de malwares

• Cavalos de Tróia (Trojans)

• Vírus

• Spywares

• Vermes (Worms)

• Rootkits

26quinta-feira, 17 de maio de 12

Page 27: 5 - Segurança do Sistema

Segurança do Sistema

• Cavalos de Tróia (Trojans)

• Programa que ao entrar no computador, tentar liberar uma porta para um possível invasor.

27quinta-feira, 17 de maio de 12

Page 28: 5 - Segurança do Sistema

Segurança do Sistema

• Vírus

• Programa capaz de se reproduzir utilizando outro programa como hospedeiro, causando danos.

28quinta-feira, 17 de maio de 12

Page 29: 5 - Segurança do Sistema

Segurança do Sistema

• Objetivos do vírus

• Espalhar-se rapidamente

• Dificultar a sua detecção

• Dificultar a sua remoção

• Causar danos

29quinta-feira, 17 de maio de 12

Page 30: 5 - Segurança do Sistema

Segurança do Sistema

• Tipos de Vírus

• Companheiro

• Não infecta um programa, mas executa antes do programa ser executado

• Programas Executáveis

• Sobrescreve arquivos executáveis do sistema

• Fácil de detecção

30quinta-feira, 17 de maio de 12

Page 31: 5 - Segurança do Sistema

Segurança do Sistema• Tipos de Vírus

• Parasita

• Anexa-se a um programa existente não interferindo em sua execução

• Cavidade

• Se infiltra nos espaços restantes dos segmentos

• No Windows segmentos são x512 bytes, sendo o restante dos segmentos preenchido com 0’s pelo linker.

31quinta-feira, 17 de maio de 12

Page 32: 5 - Segurança do Sistema

Segurança do Sistema• Tipos de Vírus

• Residentes em Memória

• Após ser executado, permanece na memória

• Pode modificar o endereço de Mapa de Bits para ficar oculto

• Setor de Boot

• Copia-se para RAM ao iniciar o sistema, no topo ou entre os vetores de interrupção

• Persistente à formatações

• Sistemas de formatação padrão não apagam a primeira trilha do disco

32quinta-feira, 17 de maio de 12

Page 33: 5 - Segurança do Sistema

Segurança do Sistema• Tipos de Vírus

• Dispositivos

• Infecta um driver do dispositivo

• Macros

• Arquivos de de suítes des escritório possuem macros que podem conter programas inteiros

• Código-fonte

• Infecta um código fonte incluindo funções e bibliotecas maliciosas

• Ex: #include <virus.h> e run_virus( );

33quinta-feira, 17 de maio de 12

Page 34: 5 - Segurança do Sistema

Segurança do Sistema

• Disseminação de um Vírus

• Vírus colocados onde há chance de serem copiados

• Programas copiados de fontes não-confiáveis

• Anexam-se à mensagens eletrônicas aparentemente inocentes

34quinta-feira, 17 de maio de 12

Page 35: 5 - Segurança do Sistema

Segurança do Sistema• As convenções de denominação de vírus do Norton

AntiVirus (Symantec) é Prefixo.Nome.Sufixo:

• Prefixo: plataforma operacional (MS Word, DOS, MS Windows)

• Nome: alcunha da família do Vírus

• Sufixo (opcional): variantes da mesma família

• Exemplo: WM.Cap.A

• vírus de macro para MS Word

• variante da família Cap.

35quinta-feira, 17 de maio de 12

Page 36: 5 - Segurança do Sistema

Segurança do Sistema• Sistemas anti-vírus

• Verificadores de Vírus

• Coletam amostras do vírus para estudo e assim conseguir entende-lo

• Armazenam dados sobre os vírus num banco de dados

• Caso seja um vírus polimórfico, tentam achar o motor de mutação

• Verificação de Integridade

• Calcula a Soma de verificação (checksum) para cada arquivo

• Quando executado, recalculará e detectará os arquivos infectados

36quinta-feira, 17 de maio de 12

Page 37: 5 - Segurança do Sistema

Segurança do Sistema• Sistemas anti-vírus

• Verificação de Comportamento

• Anti-vírus, residente em memória capturando as chamadas ao sistema e monitorando as atividades.

• Prevenção

• Opte por sistemas com alto grau de segurança, use apenas software originais, use um antivirus potente e faça backup

• Recuperação

• Quando infectado, reinicie o sistema por uma midia protegida contra escrita (CD-ROM), execute um antivírus, salve os arquivos não infectados e formate o HD

37quinta-feira, 17 de maio de 12

Page 38: 5 - Segurança do Sistema

Segurança do Sistema

• Vermes (Worms)

• Programas que se auto-replicam com o intuito de se disseminar sem causar graves danos aos sistemas.

38quinta-feira, 17 de maio de 12

Page 39: 5 - Segurança do Sistema

Segurança do Sistema

• Spyware

• Programa que recolhe informações sobre o usuário e transmite-as à uma entidade externa, sem o conhecimento e consentimento do usuário.

39quinta-feira, 17 de maio de 12

Page 40: 5 - Segurança do Sistema

Segurança do Sistema

• Modos de disseminação

• Os mesmos adotados por Vírus

• Distribuídos facilmente

• Fontes não-confiáveis

• Anexar-se a mensagens aparentemente inocentes

40quinta-feira, 17 de maio de 12

Page 41: 5 - Segurança do Sistema

Segurança do Sistema

• Possíveis ações de um Spyware

• Modificar a página inicial do browser

• Modificar a lista de favoritos do browser

• Adicionar novas barras no browser

• Modificar motor de busca padrão

• Gerar contínuas propagandas e pop-ups

41quinta-feira, 17 de maio de 12

Page 42: 5 - Segurança do Sistema

Segurança do Sistema

• Rootkits

• Ferramenta utilizada por um invasor para ocultar rastros

42quinta-feira, 17 de maio de 12

Page 43: 5 - Segurança do Sistema

Segurança do Sistema

• Tipos de Rootkits

• Rootkits de firmware

• Rootkits de hypervisor

• Rootkits de kernel

• Rootkits de biblioteca

• Rootkits de aplicação

43quinta-feira, 17 de maio de 12

Page 44: 5 - Segurança do Sistema

Tipos de Rootkits44quinta-feira, 17 de maio de 12

Page 45: 5 - Segurança do Sistema

Segurança do Sistema

• Rootkit Sony

• Distribuído em 2005 em CDs de áudio

• Tentativa de deter a pirataria de CDs

• Afetava sistemas MS Windows

• Uso do “autorun.inf”

• Instalação mesmo sem o consentimento do usuário

• Filtragem das chamadas de sistema de leitura do driver de CD-ROM

45quinta-feira, 17 de maio de 12

Page 46: 5 - Segurança do Sistema

Segurança do Sistema• Rootkit Sony

• Filtragem das chamadas de sistema de leitura do driver de CD-ROM

• Má resposta pública da Sony

• “A maioria das pessoas, imagino, sequer sabe o que é um rootkit, então por que deveriam se preocupar?”

• Violação de direitos autorais por uso de códigos de outros projetos

• Por fim, ainda monitorava os hábitos dos usuários e os enviam para a Sony

46quinta-feira, 17 de maio de 12

Page 47: 5 - Segurança do Sistema

Revisão• objetivos da

exploração de erros de código

• transbordamento de buffer

• injeção de código

• SETUID

• escalada de privilégios

• usos de malware

• keylogger

• backdoor

• zumbi

• botnet

• roubo de identidade

• tipos de malware

• cavalo de tróia

• vírus

• tipos de vírus

• spyware

• verme

• rootkit

• anti-vírus

47quinta-feira, 17 de maio de 12

Page 48: 5 - Segurança do Sistema

Procuradora Geral do Distrito Federal

Um software malicioso explora uma vulnerabilidade ou falha de configuração de um sistema, podendo se propagar automaticamente por meio de uma rede de computadores, sem a necessidade de ser explicitamente executado por um usuário de computador. Este software é denominado:

a) Verme (worm).

b) Cavalo de tróia.

c) Hoax.

d) Rookit.

e) Phishing

48quinta-feira, 17 de maio de 12

Page 49: 5 - Segurança do Sistema

Companhia Hidro Elétrica do São Francisco

Das alternativas abaixo, que tipo de ataque NÃO está em consonância com sua definição?

a) Por footprinting, entende-se a tarefa de coletar informações sobre um sistema alvo. Esta coleta é feita por vias tradicionais e públicas com uso do finger, leitura de páginas do site para obter dados interessantes e etc.

b) O sniffers é um utilitário que verifica vulnerabilidades. Pode ser um scanner de sistema quando checa vulnerabilidade na máquina local.

c) Por spoofing entende-se a tarefa de fazer uma máquina passar por outra, forjando por exemplo, pacotes IPs.

d) Código malicioso é um software criado com finalidades mal intencionadas. Nesta categoria, incluem-se os códigos não autorizados que efetuam ações desconhecidas e não desejadas pelo usuário.

e) Exploits são programas criados para explorar falhas, advindas principalmente de bugs, nos daemons de serviços.

49quinta-feira, 17 de maio de 12

Page 50: 5 - Segurança do Sistema

Tribunal Regional do Trabalho - AL

No contexto de ataques externos ao sistema, ele consiste, tecnicamente, de um bootstrap que é compilado e executado no sistema sob ataque e, uma vez em execução, abre as portas para a invasão efetiva do programa principal; a partir desse novo hospedeiro o malware passa a procurar novas máquinas e, assim, disseminar o bootstrap. Trata-se do malware do tipo:

a) worm.

b) vírus.

c) trojan horse.

d) spyware.

e) adware.

50quinta-feira, 17 de maio de 12

Page 51: 5 - Segurança do Sistema

Tribunal de Contas de Goiás

Considere a hipótese de recebimento de uma mensagem não solicitada de um site popular que induza o recebedor a acessar uma página fraudulenta projetada para o furto dos dados pessoais e financeiros dele. Trata-se de:

a) spam.

b) phishing/scam.

c) adware.

d) keylogger.

e) bluetooth.

51quinta-feira, 17 de maio de 12

Page 52: 5 - Segurança do Sistema

Tribunal de Contas de Goiás

Considere o recebimento de um e-mail que informa o usuário a respeito de uma suposta contaminação do computador dele por um vírus, sugerindo a instalação de uma ferramenta disponível em um site da Internet para eliminar a infecção. Entretanto, a real função dessa ferramenta é permitir que alguém tenha acesso ao computador do usuário e a todos os dados lá armazenados. Este método de ataque trata-se de:

a) Social Engineering.

b) Sniffer.

c) Service Set Identifier.

d) Exploit.

e) Denial of Service.

52quinta-feira, 17 de maio de 12

Page 53: 5 - Segurança do Sistema

Tribunal de Justiça - ES

(CESPE) Um spyware consiste em uma falha de segurança intencional, gravada no computador ou no sistema operacional, a fim de permitir a um cracker obter acesso ilegal e controle da máquina.

a) Certo

b) Errado

53quinta-feira, 17 de maio de 12

Page 54: 5 - Segurança do Sistema

BRB

(CESPE) Um vírus mutante de computador é capaz de assumir múltiplas formas com o intuito de burlar o software de antivírus.

a) Certo

b) Errado

54quinta-feira, 17 de maio de 12

Page 55: 5 - Segurança do Sistema

Receita FederalEm relação a vírus de computador é correto afirmar que, entre as categorias de malware, o Cavalo de Tróia é um programa que:

a) usa um código desenvolvido com a expressa intenção de se replicar. Um Cavalo de Tróia tenta se alastrar de computador para computador incorporando-se a um programa hospedeiro. Ele pode danificar o hardware, o software ou os dados. Quando o hospedeiro é executado, o código do Cavalo de Tróia também é executado, infectando outros hospedeiros e, às vezes, entregando uma carga adicional.

55quinta-feira, 17 de maio de 12

Page 56: 5 - Segurança do Sistema

Receita Federal(continuação)

b) parece útil ou inofensivo, mas que contém códigos ocultos desenvolvidos para explorar ou danificar o sistema no qual é executado. Os cavalos de tróia geralmente chegam aos usuários através de mensagens de e-mail que disfarçam a finalidade e a função do programa. Um Cavalo de Tróia faz isso entregando uma carga ou executando uma tarefa mal-intencionada quando é executado.

56quinta-feira, 17 de maio de 12

Page 57: 5 - Segurança do Sistema

Receita Federal(continuação)

c) usa um código mal-intencionado auto-propagável que pode se distribuir automaticamente de um computador para outro através das conexões de rede. Um Cavalo de Tróia pode desempenhar ações nocivas, como consumir recursos da rede ou do sistema local, possivelmente causando um ataque de negação de serviço.

57quinta-feira, 17 de maio de 12

Page 58: 5 - Segurança do Sistema

Receita Federal(continuação)

d) pode ser executado e pode se alastrar sem a intervenção do usuário, enquanto alguns variantes desta categoria de malware exigem que os usuários executem diretamente o código do Cavalo de Tróia para que eles se alastrem. Os Cavalos de Tróia também podem entregar uma carga além de se replicarem.

58quinta-feira, 17 de maio de 12

Page 59: 5 - Segurança do Sistema

Receita Federal(continuação)

e) não pode ser considerado um vírus ou um verme de computador porque tem a característica especial de se propagar. Entretanto, um Cavalo de Tróia pode ser usado para copiar um vírus ou um verme em um sistema-alvo como parte da carga do ataque, um processo conhecido como descarga. A intenção típica de um Cavalo de Tróia é interromper o trabalho do usuário ou as operações normais do sistema. Por exemplo, o Cavalo de Tróia pode fornecer uma porta dos fundos no sistema para que um hacker roube dados ou altere as definições da configuração.

59quinta-feira, 17 de maio de 12