Buscar

AULA 06

Prévia do material em texto

SEGURANÇA DA INFORMAÇÃO
Software malicioso (malware) 
Prof. Dr. Marcos A. Simplicio Jr. 
Software malicioso (malware)
• Programas capazes de explorar a vulnerabilidades
de sistemas. Incluem:
• Trechos de programas que precisam habitar outros programas
• Ex.: vírus, bombas lógicas e backdoors (“portas dos fundos”)
• Programas independentes, autocontidos
• Ex.: worms (“vermes”), zumbis/bots
• Podem ou não se replicar automaticamente
• Ameaças sofisticadas a sistemas de computador
Malware: terminologia
Não há consenso universal, mas em geral:
• Vírus: se anexa em um programa e cria cópias de si mesmo
quando o programa é executado
• Worm: se propaga automaticamente para outros computadores -
executa como um serviço
• Trojan horse (cavalo de tróia): programa que faz algo útil, mas tem 
código malicioso adicional
• Ex.: versão pirata de um sistema operacional com malware embutido
• Zumbi/bot: máquina infectada usada para lançar ataques contra 
outras máquinas
• Exemplos de ataque: negação de serviço ou spam
Malware: terminologia
Não há consenso universal, mas em geral:
• Backdoor (trapdoor): modificação em código do programa que 
permite acesso não autorizado a alguma funcionalidade
• Bomba lógica: ativa evento malicioso quando certas condições 
são satisfeitas
• Ex.: usuário se loga em site de banco, ou data específica atingida
• Código móvel: programa malicioso que pode ser enviado a 
qualquer máquina
• Ex.: macros do pacote Office, scripts web
Não há consenso universal, mas em geral:
• Adware: software de propaganda, muitas vezes embutido em
um programa útil
• Spammer: programa que envia grande quantidade de 
propaganda indesejada
• Ex.: via e-mail, SMS, …
• Flooder: programa que gera grande quantidade de tráfego
contra um alvo
• Normalmente utilizado em ataques de negação de serviço
• Rootkit: conjunto de ferramentas para ganhar acesso de 
administrador (“root”) em uma máquina
Malware: terminologia
Malware: terminologia
Não há consenso universal, mas em geral:
• Keyloggers: registram toques no teclado
• Comumente usados para roubo de senhas
• Spyware (software espião): coleta informações sobre
computador e as transmite para outro sistema
• Exemplos de dados coletados: toques no teclado, cliques 
do mouse e captura de tela (screenloggers), dados 
trafegados na rede, e dados em arquivos locais
• Ransomware (sequestrador de dados): cifra dados da máquina
• Informa dados de contato/pagamento p/ obter chave de 
decifração
Desenvolvendo malwares
• Inicialmente, a construção e uso de malwares exigia grande
conhecimento técnico
• Atualmente, existem “kits de ataque”, que facilitam a 
construção de tais ameaças
• E têm grande capacidade de personalização!
• Ex.: o Zeus crimeware toolkit
• Vídeo com uma pequena demonstração (áudio em inglês): 
http://www.symantec.com/connect/blogs/zeus-king-underground-crimeware-toolkits
http://www.symantec.com/connect/blogs/zeus-king-underground-crimeware-toolkits
Malwares por dentro: 
considerações técnicas
Exemplo: vírus
Trecho de software que infecta programas
• Modifica programa ou arquivo com suporte a script
• Quando o alvo é executado, o vírus é ativado com os mesmos direitos de 
acesso do alvo
• Componentes
• Mecanismo de infecção: código que cria cópias de si
• Mecanismo de ativação: evento que ativa ação
• Carga útil: ação em si
• Ex.: destrói dados (CIH/1998), ou recruta máquina para rede zumbi (Virut/2006-
2017)
Programa
original
Vírus
Programa
infectado
Exemplo: vírus
Programa
infectado
programa V :{
goto main;
123456; //marcador de infecção
infectar_executável: {
* arquivo := encontrar-arquivo-executável
se(primeira-linha = 123456){goto *}
senão{anexe V a arquivo}
}
causar_dano: {executa_código_malicioso}
ativar: {se(condição){retorna VERDADEIRO}}
main:{
infectar_executável;
se(ativar){causar_dano}
}
}
Disco Execução
Exemplo: vírus
• Os vírus descritos têm algumas vulnerabilidades que 
facilitam detecção:
• Aumenta tamanho do código
• Marcador de infeção e código fixo
• Vírus modernos incluem funções sofisticadas:
• Compressão do código original
• Código mutável e decifração durante execução
Programa
original
Vírus
Programa
infectado
Programa
original
Vírus Vírus
Malware: estratégias modernas
• Características de malwares atuais:
• Multiplatforma: não só Windows, mas também plataformas
como Android, Linux e Mac
• Quanto maior o uso da plataforma mais ela se torna alvo preferencial
• Multi-exploit: exploram múltiplas vulnerabilidades
• Ex.: em sistemas desatualizados (WannaCry/2017), senhas padrão 
são mantidas inalteradas (ex.: Mirai/2017)
• Propagação rápida (worms): carregam endereços de 
máquinas vulneráveis desde o lançamento
• E atualizam-se rapidamente (e.g., via rede P2P)
tempo
# 
in
fe
cç
õ
es
Malware: estratégias modernas
• Características de malwares atuais:
• Polimórficos: códigos diferentes
• Não existe uma “assinatura” única
• Metamórficos: se altera em tempo de execução
• Difíceis de detectar e analisar
• Porta de entrada: permitem outras infecções 
• Ex.: instalação de software para mineração de moedas digitais, negação 
de serviço ou SPAM
• Exploração de dia zero: exploram vulnerabilidades recém-
descobertas, ainda não inclusas em antivírus
• Propagação interrompida apenas após lançamento de patches
Contramedidas
Malware: contramedidas
• Prevenção: solução ideal
• Cuidados do usuário
• Aplicação de atualizações de sistema e de antivírus
• Nem sempre factível: patches vs. estabilidade
• Nem sempre suficiente: exploração de dia zero
• Abordagem mais realista:
• Detecção: da existência e do arquivo infectado
• Identificação: para determinar ação do mesmo
• Remoção: de todos os traços da infecção
• Pode ser preciso substituir completamente arquivo infectado se 
identificação/remoção não for possível
Malware: contramedidas
• Scanner na máquina local: antivírus
1. Baseados em assinatura: busca estruturas, padrões ou trechos de 
código conhecidos
2. Baseados em heurística: buscam fragmentos de códigos comuns
em vírus (ex.: cifração local)
• Podem armazenar em local seguro o hash de programas a se proteger, 
detectando modificações nos mesmos
3. Identificam ações: detectam atividade maliciosa
• Ex.: acesso à rede (worms), acesso aos locais protegidos, tentativa de 
remover arquivos ou alterar configurações
4. Técnicas combinadas: estratégias acima, com scan ativo
Malware: contramedidas
“Decifração Genérica”:
• Código executado em emulador de CPU: ambiente controlado
• Conceito de “Sandbox”
• Código em execução periodicamente verificado por scanner:
• Capaz de detectar vírus ao se decifrar
• Desvantagem: pode reduzir desempenho
• Compromisso entre capacidade de detecção e velocidade de execução
Malware: contramedidas
• Contra rootkits: difícil
• Consegue burlar antivírus: prevenção é essencial
• Ferramentas na rede: Firewalls, IDS, …
• Tema da próxima semana
• Outras ferramentas
• Anti-spywares: ferramentas especializadas em malwares 
que se camuflam 
• Comumente integrados a antivírus modernos
• Proteção de navegação: diversos plugins
• NoScript: bloqueio seletivo de scripts (e.g., flash ou javascript)
• Plugins de antivírus: analisam páginas, prevenindo acesso àquelas 
colodas em “lista negra”
Malware: contramedidas
• Aplicação de correções (patches):
• Necessária para evitar ameaças... 
• ... mas nem sempre fácil de se fazer para sistema em produção
• Abordagem recomendada:
1. Criar cópias de backup de sistema (máquinas virtuais)
2. Aplicar correção sobre uma das cópias de backup
3. Testar sistema corrigido com dados simulados: carga de dados 
equivalente a de sistema em produção
4. Se não houver erros, usar sistema antigo e corrigido em paralelo, 
usando balanceamento de carga
5. Se não houver erros após um período razoável, desativar sistema 
antigo (mantendo backup), substituindo-o pelo corrigido
SEGURANÇA DA INFORMAÇÃO
Softwaremalicioso (malware) 
e phishing
Prof. Dr. Marcos A. Simplicio Jr. 
Phishing
Material complementar
Phishing
Página com aparência normal, utilizada para roubar 
dados ou instalar malware
• Comumente copiam a aparência da página legítima
• Em parte, contam com descuido do usuário, mas técnicas 
cada vez mais avançadas
Exercício: 
• Dos 5 exemplos a seguir, 1 não é phishing. Você consegue 
dizer qual? Que comecem os jogos!
Exemplo: phishing? (1)
Você clicaria em algum desses links?
• http://www.util.com/virus_fatal.exe
• http://www.util.com/%76%69%72%75%73%5F%66%61%74%61%6
C%2E%65%78%65
http://www.util.com/virus_fatal.exe
http://www.util.com/virus_fatal.exe
Exemplo: phishing? (2)
E nesse link enviado no email?
“Detectamos uma atividade suspeita na sua conta: Compra no valor 
de R$2500,00 na Americanas.com. Acesse http://www.bb.com.br se 
não reconhecer essa transação e desejar bloqueá-la.”
http://www.roubosenhas.com.br/bb
Exemplo: phishing? (3)
E quanto ao link abaixo?
“Você foi sorteado para testar o novo iPhone 171. Para 
confirmar, acesse sua conta e informe seu Apple ID: 
https://www.аррӏе.com/”
https://www.аррӏе.com/
Exemplo: phishing? (4)
E se você receber esse SMS do Google?
“Detectamos uma tentativa de acesso a sua conta a 
partir do IP 95.31.18.11 (Moscou/Rússia). Caso não
reconheça esse acesso, bloqueie-o respondendo a 
esta mensagem com o código de 6 dígitos que lhe será
enviado em instantes. Equipe Gmail.”
Exemplo: phishing? (5)
João convidou você para editar o 
seguinte documento:
Open in Docs
Secure https://accounts.google.com/signin 
Hi, Marcos
marcossjr@gmail.com
Parece ter algo errado no seguinte cenário?
Exemplo: phishing? (1)
Você clicaria em algum desses links?
• http://www.util.com/virus_fatal.exe
• http://www.util.com/%76%69%72%75%73%5F%66%61%74%61%6
C%2E%65%78%65
➔ O segundo link é idêntico ao primeiro, apenas usa 
codificação hexadecimal para enganar usuário...
http://www.util.com/virus_fatal.exe
http://www.util.com/virus_fatal.exe
Exemplo: phishing? (2)
E nesse link enviado no email?
“Detectamos uma atividade suspeita na sua conta: Compra no valor de 
R$2500,00 na Americanas.com. Acesse http://www.bb.com.br se não
reconhecer essa transação e desejar bloqueá-la.”
➔Texto no HTML não corresponde necessariamente ao destino correto
➔Melhor confirmar na barra de destino, normalmente na parte inferior 
do navegador
http://www.roubosenhas.com.br/bb
http://www.roubosenhas.com.br/bb
Exemplo: phishing? (3)
E quanto ao link abaixo?
“Você foi sorteado para testar o novo iPhone 171. Para confirmar, 
acesse sua conta e informe seu Apple ID: https://www.аррӏе.com/”
https://www.аррӏе.com/
➔Suporte a Unicode (desde ~1998) pode enganar mesmo olhos
treinados
• (2017) Vários navegadores passaram a mostrar endereço na
forma de Punycode (ex.: cirílico). 
• Outros ainda exigem configuração extra. Ex. (Firefox): 
about.config➔network.IDN_show_punycode=true
https://www.xn--80ak6aa92e.com/
Em Unicode: 
Em Punycode: 
https://www.аррӏе.com/
Exemplo: phishing? (4)
E se você receber esse SMS do Google?
“Detectamos uma tentativa de acesso a sua conta a partir
do IP 95.31.18.11 (Moscou/Rússia). Caso não reconheça
esse acesso, bloqueie-o respondendo a esta mensagem
com o código de 6 dígitos que lhe será enviado em
instantes. Equipe Gmail.”
(2017) Scam explorando o mecanismo de recuperação de 
senhas do Gmail 
• Código enviado é o que permite a atacante definir uma 
nova senha para sua conta.
Exemplo: phishing? (5)
João convidou você para editar o 
seguinte documento:
Open in Docs
Desconfiado? Um pouco 
mais de detalhes…
Secure https://accounts.google.com/signin 
Hi, Marcos
marcossjr@gmail.com
Parece ter algo errado no seguinte cenário?
Secure https://accounts.google.com/signin/oauth/oauthc
Hi, Marcos
marcossjr@gmail.com
É a página do Google. O 
certificado é válido
São suas informações 
cadastradas no Google
Não parece ser o Google Docs…
Exemplo: phishing? (5)
Parece ter algo errado no seguinte cenário?
Parece ter algo errado no seguinte cenário?
Sim, tem. É um caso de phishing explorando o processo de 
autenticação via Oauth do Google
• (2017): mais de 1 milhão de usuários afetados
• Acesso ao e-mail do usuário e outras informações pedidas
• O “Google Docs” é um aplicativo criado pelo atacante, não o 
serviço do Google
Exemplo: phishing? (5)
Phishing
• Todos os 5 casos são exemplos de phishing. Sim, eu menti…
• Moral da história sobre phishing: sempre desconfie
Phishing: contramedidas
Não confie em links que foram recebidos. Digite você mesmo o 
endereço completo.
• Obs.: em computadores não compartilhados, histórico de 
navegação/favoritos podem ser boas opções
• Buscadores (e.g., Google) e antivírus (e.g., Avast) costumam alertar
quando páginas não são confiáveis
• Antes de clicar em links no navegador: 
• Confirme o destino do link na barra de endereços inferior
• Desconfie de endereços compostos por hexadecimais
• Cuidado com suporte a unicode, em especial no Firefox
• Dica: about.config➔ network.IDN_show_punycode=true
SEGURANÇA DA INFORMAÇÃO
Software malicioso (malware) 
Prof. Dr. Marcos A. Simplicio Jr.

Continue navegando

Outros materiais