rootkits em foco: o que podemos aprender com os vazamentos dos outros? rodrigo rubira branco...

Post on 22-Apr-2015

107 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Rootkits em Foco: O que podemos aprender com os vazamentos dos outros?

Rodrigo Rubira Branco (BSDaemon)https://twitter.com/bsdaemon

Aviso

• O palestrante não está representando nenhuma entidade e o conteúdo é de única e exclusiva responsabilidade do mesmo

• Acessar os documentos vazados pelo Snowden é crime de acordo com a lei americana

• Diversos outros vazamentos aconteceram, por exemplo HBGary Federal, Gamma Software e Apple (não discutiremos o da Apple pois imagino que todos os presentes já tiveram acesso as imagens)

Mea Culpa• Pesquisadores

– Divulgam resultados que muitas vezes não esclarecem que determinadas defesas são úteis em cenários diversos do da pesquisa

• Indústria– Empresas precisam ser competitivas, e muitas vezes o marketing deturpa

informações técnicas das mesmas (ex: caso RSA recente no caso da fraude dos boletos R$ 8.75 bilhões de potenciais prejuízos)

• Usuários– Conheço apenas uma outra área que chama os CLIENTES de USUÁRIOS– Desconhecem o assunto, aceitam ‘fatos’ sem questionamentos– Devido ao desbalanço (Assimetria), impedem a indústria de realmente

competir em qualidade

Agenda

• Números defensivos– Como a defesa esta lidando com os ataques

• Rootkits x Exploits– Uso específico x uso genérico

• Complexidade x Possibilidades• Tempo de Capacitação

– Engenharia reversa de malware x para desenvolvimento de exploits

• E o que os outros possuem?

Mão Invisível

the NSA

Números• A evolução da criação de malware:

1994 - Um vírus por hora2006 - 1 por minuto2012 - 1 por segundo2014 - 3,6 por segundo

• Servidores no Brasil hospedam 50% dos malware na América Latina

• O Malware ChePro (Brasileiro) é a família número 3 do mundo em trojans bancários

• Em média, hackers usam uma falha 0-day (desconhecida) por 310 dias antes de ela tornar-se pública

– Fonte: Kaspersky 2014 (#KLSAS)

• Vida média: 348 dias, Mais curta: 99 dias, Mais longa: 1080 dias (3 anos)– Fonte: Justine Aitel, 0day IPO: http://www.immunityinc.com/downloads/0day_IPO.pdf

• Infecções de Malware acontecem 5.5 vezes a mais em máquinas sem Antivírus– Fonte: Microsoft Security Intelligence Report Volume 14

O que aprendemos?

Conhecimento lhe indica que tomates são frutas. Sabedoria lhe indica que você não deve

colocá-los na salada de frutas!

Rootkits x Exploits

• Exploit lhe dá o acesso inicial, através de como o nome indica, a exploração de uma vulnerabilidade:– Ex: Web browser acessando uma página– Ex2: Microsoft Word abrindo um documento– Ex3: Sistema operacional ‘montando’ dispositivo– Ex4: Driver de rede de um firewall

Licença Poética e Terminologia

• Rootkits (são chamados por diversos nomes diferentes dependendo das funções) são os aplicativos instalados pelo atacante para performar atividades maliciosas

• A relação entre exploit e rootkit:• Exploit em geral permite execução arbitrária de código;• O código executado em geral é um dropper (pequeno programa

que visa baixar outros programas no computador);• O programa baixado é instalado -> Este em geral é um rootkit,

que permitirá o controle da máquina

Pequenos detalhes bloqueiam muitos malware (mas nem todos)

Fonte: F-Secure Pitou Spambot

AV Fail?

• Sugiro verem palestras como Sophail (Travis Ormandy) e as de Joxean Koret

• Proteção têm de lidar com a enorme complexidade dos sistemas:

• “Oh! This other AV doesn't let me do CreateRemoteThread but allows me to do OpenProcess(PROCESS_ALL_ACCESS) and WriteProcessMemory. WTF????”

» Joxean Koret

Como aprender?

Idéias são a prova de bala. As cabeças humanas que as têm, não!

Foco da Palestra

• Ataques realmente avançados, realizados/idealizados/apontados de serem de nações

• Discussão de possibilidades de prevenção e formas de desenvolvimento das capacidades

HBGary

• Aparentemente diversas empresas obscuras envolvidas

• Preto Inc

• Mercado de venda de vulnerabilidades• Algo em torno de USD 100.000,00 por vulnerabilidade

• Mercado de Malware• Desenvolvimento de software

HBGary

• Diversas universidades e professores participando de pesquisas (ex: Berkeley)

• Apesar dos milhões recebidos para desenvolvimento de exploit e malware não tinham criptografia nos emails internos

• Apesar dos milhões recebidos testavam MANUALMENTE o funcionamento dos malware para colocar nas propostas (ex: Malware A não é detectado pelo Antivírus X versão Z)

Mercado de Vulnerabilidades

• ZDI oferece USD 50.000,00 por uma vulnerabilidade que afete o iPhone– Empresas Chinesas de software pagaram USD

1.000.000,00 para o time de desenvolvimento do jailbreak Evasion

– Fonte: A internet (só pode ser verdade)

• Microsoft, Google e diversas outras empresas pagam bug bounty

– A NSA também!

Qual o motivo?

• Desenvolvimento de exploits que funcionem contra plataformas modernas é extremamente complicado

• O conhecimento leva 10+ anos para ser gerado• Deve ser mantido atualizado (ex: Todos aqui viram as

melhorias que o IE11 inseriu nos patches de Junho contra Use-After-Free?)• Os exploits muitas vezes morrem sem serem utilizados

(e quando se precisa, nem sempre estão disponíveis)

Rootkits no entanto...

• Desenvolver rootkits é basicamente desenvolver software

• Algumas técnicas podem ser necessárias, mas são relativamente conhecidas/documentadas;• Conhecimento amplamente disponível e facilmente

desenvolvido (programação);• Formas genéricas de modificação de código são

possíveis, evitando-se a detecção (vide análise dos números iniciais – acharam realmente que não tinha nada a ver não é mesmo?)

E engenharia reversa?

• A China por exemplo, ensina nas universidades

• Engenharia reversa têm extremo valor no real entendimento das coisas (apesar de muitos discutirem software aberto sem jamais terem lido o código que estão discutindo);• Conhecimento possível de ser ensinado;• Deve ficar claro: Engenharia Reversa !=

Desenvolvimento de exploits;

Descoberta e Desenvolvimento de Exploits

• Antes de se escrever um exploit, necessita-se de uma vulnerabilidade• Descoberta de vulnerabilidades por si só é uma área a ser desenvolvida

(fuzzers, análise de código, engenharia reversa são capacidades possíveis de serem ensinadas) – algumas empresas/entidades dividem o processo de descobrir falhas e escrever exploits

• Pode-se escrever exploits para vulnerabilidades conhecidas, através da análise dos patches (bindiff) lançados ou do código (se disponível)– Existe certo valor em operações mais simples ou em massa

• É possível SIM evitar-se a dualidade entre possuir exploits e implementar defesa:– Binary patches para vulnerabilidades que se possui– Update de sistemas de detecção próprios para detectar-se as

explorações de vulnerabilidades que se possui o exploit

Pesquisas Acadêmicas na Área

E o que os outros possuem?

• Rapidamente mencionado a HBGary (diversos dos projetos poderiam não ser reais, jamais terem sido utilizados);

• Houveram outros vazamentos interessantes:– Gamma Software– NSA

• Outros vazamentos são menos importantes (não foram comprometimentos das entidades), mas também deram informações:– Hacking Team

Hacking Team

• Empresa Italiana• Vende/Compra Exploits• Vende Malware

• Acho que já vi eles na LAAD

• Tiveram o Malware versão Mac Analisado• Diversos erros de programação• Facilmente detectável por diferentes formas• Apenas demonstra o já dito: Fazer rootkits ==

desenvolvimento de software

Gamma Software

• Os vazamentos demonstraram que ela vendeu para governos sem autorização Alemã (o que indica bem como os controles de exportação impostos a exploit pelos EUA irão funcionar);

• Os preços foram apresentados: ~USD 500.000,00 pela suíte. Suportam:

• Mobile• Windows• Macs

Mercado Móvel

• Altamente vulnerável– Em um evento menos respeitável fotos de algumas

modelos seriam aqui expostas para demonstrar;– Premissas de usabilidade são contra a segurança

(ex: a senha de criptografia é a mesma de desbloqueio, fazendo com que se uma senha forte for escolhida, o usuário não conseguirá mais utilizar o telefone dirigindo);

– Exploits em geral não são necessários para atacar pessoas em massa

Minha Teoria

• Já está tudo comprometido

• Diversos códigos maliciosos encontrados, simplesmente não fazem NADA! Apenas ficam dormentes (muitos o estão por anos)

• Controle tudo que for possível, pois quando se precisar da informação, ter de realizar o ataque é muito mais complexo do que se os acessos já estiverem garantidos

Ponto importante

• Um ataque específico (alvo específico) é muito mais complicado do que um ataque geral (onde diversos alvos diferentes são visados)

• Ataques gerais também podem utilizar 0days (adquiridos, desenvolvidos em casa, etc)

NSA - godmodes

• Deitybounce– Suporta servidores Dell PowerEdge 1850/2850/1950/2950

RAID server com BIOS versão A02, A05, A06, 1.1.0, 1.2.0, ou 1.3.7 (não laptops/estações)

– Usa um software chamado Arkstream para instalar o mesmo. Arkstream é executado na máquina alvo via exploits (infecção via rede ou USB)

– Usa SMM [1] para ganhar execução periódica– Suporta sistemas multiprocessados com RAID e Microsoft

Windows 2000, XP, e 2003 Server– Source:

http://resources.infosecinstitute.com/nsa-bios-backdoor-god-mode-malware-deitybounce/

– [1] Phrack Article: “Using SMM for other purposes”

Deithbounce

• Substitui o firmware da controladora RAID, que é executada pela BIOS na inicialização

• Prevenção:- Assinatura do firmware- Intel Boot Guard- Intel TXT - Intel STM (SMI Transfer Monitor)

Bulldozer

• Implante de hardware para prover acesso wireless (possivelmente em redes com air-gap) – Geraldo estamos olhando para você no momento!– Suporta qualquer PC com Windows e PCI– O implante de hardware é instalado interditando-se o

equipamento em seu supply chain– GINSU é o nome dado ao código rodado por este cartão

PCI. Ele é usado para persistir o malware em si, chamado Kongur

» Source: http://resources.infosecinstitute.com/nsa-bios-backdoor-aka-god-mode-malware-part-2-bulldozer/

Prevenção

• Use as meias vivarinas!!

• Gaiola de Faraday – Geraldo, todos olhamos para você novamente ;)

• Sinceramente? Análise comparativa de dados dos hardwares em diferentes pontos (matando a interceptação da cadeia):– Que tal um projeto público de compartilhamento de

informações de hardware? Sugestão para o pessoal do Cert.br.

BIOS / UEFI

• Apesar de diversas vulnerabilidades anunciadas, ainda complexo e pouco monitorado por ferramentas de mercado:

• http://www.tenable.com/blog/detecting-hidden-backdoors-in-your-bios-with-nessus

• Checa apenas pelo Computrace (software que visa encontrar seu computador em caso de roubo, mas que demonstrado pelo pesquisador argentino Anibal Sacco possui diversas vulnerabilidades)

• Não existe uma base única de assinaturas para os diferentes fabricantes (muitos apenas oferecem download de updates em um site HTTP sem sequer proverem os hashes para serem verificados)

Proteger?

• Existem ferramentas (Open-source) para validação de diferentes quesitos de segurança da plataforma, mas ninguém (?) as utiliza– Chipsec: https://github.com/chipsec/chipsec

– OpenAttestation: https://github.com/OpenAttestation/

Tudo depende do ponto de vista

Invadir para Investigar (IPI) - FBI• Courte do distrito de Nebraska, US autoriza infecção em massa de websites

com o objetivo de investigar casos de pornografia infantil (leia-se: invadir máquinas de suspeitos)

• As infecções acontecem em sites na FreeHosting em 2013, o caso ‘vazou’ em 2014

• Código hospedado nos sites é basicamente um exploitkit (insere um iframe na página, detecta navegador e sistema operacional)

• O iframe redireciona o suspeito (ou qualquer outra pessoa que por qualquer motivo cair neste website) para um domínio .onion (Tor) onde uma vulnerabilidade 0day na época era explorada (CVE-2013-1690) no Firefox

• O código envia dados do equipamento: IP, Mac Address e instala um cookie que permite identificar a navegação em outros sites

• Fonte: http://www.kernelmode.info/forum/viewtopic.php?f=16&t=3432

América Latina

• Como demonstrado pelos números do ínicio desta apresentação é muito ativa a comunidade de atacantes da América Latina e diversas forças parecem estar iniciando operações cibernéticas ofensivas (ou alguém esta tentando nos fazer acreditar que sim):– Se tentarem lhe fazer crer que os mesmos não são

avançados, lembrem-se que o ATAQUE SERÁ TÃO AVANÇADO QUANTO SUAS DEFESAS

• O potencial da mesma é enorme, e diversos grupos de hackers (no verdadeiro sentido da palavra) existem

América Latina

• NuKE's Randomic Life Generator• Author: Azrael• Date: Jun 1994• Features: NuKE's Randomic Life Generator is an Argentinian

virus creation tool released by a NuKE member who calls himself Azrael. Unlike Phalcon/Skism Mass-Produced Code Generator command line format it uses a user friendly interface similar to Virus Creation Lab and BW. More than 100 viruses produced with NRLG are known and most of them are detected by today's anti-virus products

» Source: http://vxheavens.com/vx.php?id=tn01

Outras Perguntas

• Seriam esses rootkits instalados, seguros contra ataques de terceiros?

• Quanto tempo demora para um ataque destes ser re-utilizado por grupos menos nobres?– Exploits utilizados no Stuxnet rapidamente

passaram a ser utilizados por atacantes (e ainda o são até hoje)

#ficaadica

“Always code as if the guy who ends up maintaining your code will be a violent

psychopath who knows where you live.” - Martin Golding

Conclusões

• Esta palestra ‘pulou’ de tópico em tópico, tentando discutir alguns dos problemas existentes na defesa cibernética

• Procurou-se abordar as capacidades conhecidas devido a vazamentos para se definir a complexidade do ambiente e propor-se linhas de ação

Perguntas?

Rodrigo Rubira Branco (BSDaemon)https://twitter.com/bsdaemon

top related