Os maiores riscos de segurança

27
1 Os Maiores Riscos de Segurança Cibernética Dois riscos impedem o crescimento de todos os outros, mas as organizações falham em mitigá-los O objetivo deste relatório é apesentar dados de ataques coletados pelos sistemas de prevenção de intrusão da TippingPoint, que protegem 6.000 organizações, dados de vulnerabilidades de 9.000.000 de sistemas, compilados pela Qualys e análises adicionais e tutoriais do Internet Storm Center e dos membors da faculdade do SANS. Setembro de 2009 Conteúdo Sumário executivo Visão geral Tendências da exploração de vulnerabilidades Vulnerabilidades em aplicações superam as vulnerabilidades em Sistemas Operacionais Ataques em aplicações Web Windows: Conficker/Downadup Apple: QuickTime e mais outras seis vulnerabilidades Análise de origem e destino para os quatro ataques principais Correções em aplicações são muito mais lentas do que correções em sistemas operacionais Tutorial: Exemplo de uma exploração HTTP no lado do cliente Passo 0: O atacante injeta conteúdo em um site confiável Passo 1: Exploração no lado do cliente Passo 2: Estabelecer um backdoor de shell reverso usando HTTPS Passo 3 e 4: Copiar os hashes e usar um ataque do tipo pass-the-hash Passo 5: Usar o pass-the-hash para comprometer o controlador de domínio Passo 6 e 7: Exfiltração Tendências das vulnerabilidades do tipo zero-day Melhores práticas para a mitigação e controle dos maiores riscos Controles Críticos – Quando aplicados para ameaças em servidores HTTP

description

Segurança da Informação

Transcript of Os maiores riscos de segurança

Page 1: Os maiores riscos de segurança

1

Os Maiores Riscos de Segurança Cibernética Dois riscos impedem o crescimento de todos os outros, mas as organizações falham em mitigá-los

O objetivo deste relatório é apesentar dados de ataques coletados pelos sistemas de prevenção de intrusão da TippingPoint, que protegem 6.000 organizações, dados de vulnerabilidades de 9.000.000 de sistemas, compilados pela Qualys e análises adicionais e tutoriais do Internet Storm Center e dos membors da faculdade do SANS.

Setembro de 2009

Conteúdo Sumário executivo Visão geral Tendências da exploração de vulnerabilidades

Vulnerabilidades em aplicações superam as vulnerabilidades em Sistemas Operacionais Ataques em aplicações Web Windows: Conficker/Downadup Apple: QuickTime e mais outras seis vulnerabilidades

Análise de origem e destino para os quatro ataques principais Correções em aplicações são muito mais lentas do que correções em sistemas operacionais Tutorial: Exemplo de uma exploração HTTP no lado do cliente

Passo 0: O atacante injeta conteúdo em um site confiável Passo 1: Exploração no lado do cliente Passo 2: Estabelecer um backdoor de shell reverso usando HTTPS Passo 3 e 4: Copiar os hashes e usar um ataque do tipo pass-the-hash Passo 5: Usar o pass-the-hash para comprometer o controlador de domínio Passo 6 e 7: Exfiltração

Tendências das vulnerabilidades do tipo zero-day Melhores práticas para a mitigação e controle dos maiores riscos

Controles Críticos – Quando aplicados para ameaças em servidores HTTP

Page 2: Os maiores riscos de segurança

2

Sumário Executivo

Prioridade Um: Software no lado do cliente que permanece sem correções.

Ondas de ataques de e-mails direcionados – freqüentemente chamados de spear phishing – estão explorando vulnerabilidades no lado do cliente em softwares comumente usados, tais como o Adobe PDF Reader, QuickTime, Adobe Flash e o Microsoft Office. Atualmente este é o vetor primário da infecção inicial usado para comprometer computadores que têm acesso a Internet e essas vulnerabilidades são exploradas por atacantes quando os usuários visitam web sites infectados (Ver Prioridade Dois para saber como eles comprometem os web sites).

Pelo fato dos visitantes sentirem-se seguros para baixar documentos de web sites confiáveis, eles são facilmente enganados quando abrem documentos, músicas e vídeos que exploram vulnerabilidades do lado do cliente e algumas dessas explorações nem sequer exigem que o usuário abra o documento. Simplesmente acessar um web site infectado é suficiente para comprometer o software vulnerável.

Os computadores infectados são, então, usados para propagar a infecção e comprometer outros computadores e servidores que tenham suas proteções de acesso não autorizado configurados incorretamente e em muitos casos, o objetivo final do atacante é roubar dados da organização alvo e instalar backdoors através dos quais possam retornar para explorações futuras.

Na média, as principais organizações levam pelo menos o dobro do tempo para corrigir as vulnerabilidades no lado do cliente, quando comparado com o tempo necessário para corrigir as vulnerabilidades nos sistemas operacionais. Em outras palavras, os riscos de maior prioridade estão recebendo menos atenção do que os riscos de menor prioridade.

Prioridade Dois: Web sites vulneráveis acessíveis através da Internet.

Ataques contra aplicações web constituem mais de 60% do total das tentativas observadas na Internet. Estas vulnerabilidades estão sendo amplamente exploradas para converter web sites confiáveis em web sites maliciosos que fornecem conteúdo explorável no lado do cliente e vulnerabilidades em aplicações web, como injeção de código SQL e falhas como o Cross-Site Scripting – tanto em aplicações de código aberto, quanto em aplicações personalizadas – correspondem por mais de 80% das vulnerabilidades que são descobertas.

Apesar do enorme número de ataques e não obstante a publicidade generalizada sobre essas vulnerabilidades, muitos proprietários de web sites falham na verificação dos problemas mais comuns e fazem com que seus sites transformem-se em ferramentas involuntárias a serviço dos criminosos para infectarem os visitantes que procurar por uma navegação segura.

Page 3: Os maiores riscos de segurança

3

Sistemas Operacionais continuam a ter menos vulnerabilidades exploráveis remotamente que levam aos grandes worms de Internet.

Além do Conficker/Downadup, nenhum novo grande worm para Sistemas Operacionais foi visto durante o período de criação deste relatório e, ainda assim, o número de ataques contra vulnerabilidades de buffer overflow no Windows triplicou de Maio-Junho até Julho-Agosto, constituindo mais de 90% dos ataques vistos contra esse sistema operacional.

Elevação do número de vulnerabilidades do tipo zero-day

Nos últimos três anos houve um aumento significativo em escala mundial no número de pessoas descobrindo vulnerabilidades do tipo zero-day e isso pode ser medido pela quantidade de equipes independentes que descobriram a mesma vulnerabilidade em diferentes momentos, sendo que algumas vulnerabilidades permaneceram sem correções por até dois anos.

Há uma falta de pesquisadores sobre vulnerabilidades altamente qualificados nos governos e nas empresas de software e enquanto existir essa escassez, os defensores estarão em desvantagem na proteção de seus sistemas contra os ataques do tipo zero-day.

Um grande declínio no número de ataques de inclusão de arquivos PHP parece refletir o uso de um processo de desenvolvimento mais aprimorado pelos desenvolvedores de aplicações, administradores de sistemas e outros profissionais de segurança.

Page 4: Os maiores riscos de segurança

4

Visão Geral

Por todo o mundo desenvolvido, governos, indústrias de defesa e empresas dos setores financeiros, de energia e telecomunicações estão se tornando, cada vez mais, alvos de ondas de ataques cibernéticos gerados por criminosos e estados-nações que procuram vantagens econômicas e militares. Agora o número de ataques é tão grande e sua sofisticação tão elevada que muitas organizações estão tendo problemas para determinar quais novas ameaças e vulnerabilidades representam o maior risco e como os recursos devem se alocados para garantir que o ataque mais provável e danoso seja tratado primeiro.

Este relatório usa dados atuais – que cobrem o período de Março a Agosto de 2009 – de ferramentas e softwares instalados em milhares de organizações que são alvo de atacantes, para fornecer um retrato confiável dos ataques que estão sendo lançados e das vulnerabilidades que eles exploram, sendo que o propósito deste é documentar as ameaças já exitentes e as que estão emergindo e que põem em risco as redes e as informações críticas que são geradas, processadas, transmitidas e armazenadas nas mesmas.

O relatório resume as tendências a respeito das vulnerabilidades e ataques – focando nas ameaças que têm o maior potencial para impactar negativamente sua rede e seus negócios – e identifica os principais elementos que habilitam estas ameaças associandos-os com os controles de segurança que podem mitigar seus riscos.

O público-alvo deste relatório são as grandes organizações que querem garantir que suas defesas estejam atualizadas e otimizadas para responder aos ataques mais atuais e as vulnerabilidades mais prementes. Os dados sobre os ataques vêm das ferramentas de prevenção de intrusão fornecidas pela TippingPoint, que protegem mais de 6.000 empresas e agências governamentais e os dados sobre as vulnerabilidades que permanecem sem correções vêm de ferramentas e softwares fornecidos pela Qualys, que monitora vulnerabilidades e erros de configuração em mais de 9.000.000 de sistemas – verificados mais de 100.000.000 até agora no ano de 2009.

Os padrões nos dados são avaliados pela equipe sênior no Internet Storm Center e pelo corpo docente do SANS Institute, responsável pelos programas do SANS sobre exploração hacker, teste de penetração e forense. Em outras palavras, estas descobertas refletem uma fusão de dados e experiências que nunca haviam sido reunidas antes.

O relatório também inclui descrições e tutoriais ilustrados que mostram como funcionam alguns dos mais danosos ataques da atualidade e uma das mais importantes descobertas dos últimos anos na área de segurança cibernética foi o entendimento, na maioria da vezes afirmado pelos funcionários da Casa Branca, de que “a ofensa deve informar a defesa”.

Somente pessoas que entendem como os ataques são realizados podem ser defensores eficazes e o tutorial mostra um exemplo do que aconteceu em um ataque de grande

Page 5: Os maiores riscos de segurança

5

impacto, sendo que as informações sobre ele foram retiradas do treinamento de Ed Skoudis chamado SANS Hacker Exploits and Incident Handling – incluído para aumentar a compreensão dos defensores sobre as atuais técnicas de ataque.

O relatório foi compilado por Rohit Dhamankar, Mike Dausin, Marc Eisenbarth e James King da TippingPoint com a assistência de Wolfgang Kandek da Qualys, Johannes Ullrich do Internet Storm Center e Ed Skoudis e Rob Lee da faculdade do SANS Institute.

Tendências da Exploração de Vulnerabilidades

Vulnerabilidades em Aplicações Superam as Vulnerabilidades em Sistemas Operacionais

Durante os últimos anos, o número de vulnerabilidades descobertas em aplicações tem sido muito maior do que o número de vulnerabilidades descobertas em sistemas operacionais e como resultado, mais tentativas de exploração são registradas em aplicações.

As aplicações mais “populares” para explorações tendem a mudar ao longo do tempo, uma vez que a lógica para determinar se uma aplicação específica será ou não atacada depende, muitas vezes, de fatores como a incapacidade de corrigi-la e, em função da atual tendência de conversão de web sites confiáveis em servidores maliciosos, navegadores e aplicações no lado do cliente que podem ser invocadas pelos navegadores parecem estar se tornando o alvo dos atacantes.

Figura 1: Número de Vulnerabilidades em Redes, Sistemas Operacionais e Aplicações

Page 6: Os maiores riscos de segurança

6

Ataques em aplicações Web

Parece haver dois caminhos principais para explorar e comprometer servidores web: ataques de força bruta para a adivinhação de senhas e ataques em aplicações web.

Os servidores Microsoft SQL, de FTP e SSH são alvos populares para os ataques de força bruta para a adivinhação de senhas em função do acesso que é obtido se um conjunto usuário/senha é identificado. Ataques de injeção de código SQL, Cross-site Scripting e inclusão de arquivo PHP continuam a ser as três técnicas mais populares que são usadas para comprometer web sites e ferramentas automatizadas, projetadas para atacar vulnerabilidades em aplicações web específicas, tornam fácil a descoberta e a infecção de milhares de web sites.

Windows: Conficker/Downadup

Ataques aos sistemas operacionais Microsoft Windows foram dominados pelas variantes dos worms Conficker e Downadup, pois nos últimos seis meses mais de 90% dos ataques registrados tinham como alvo a vulnerabilidade de buffer overflow descrita no Boletim de Segurança MS08-067 e, embora em proporção muito menor, o Sasser e o Blaster – worms de 2003 e 2004 – continuaram infectando muitas redes.

Figura 2: Ataques à Vulnerabilidades Críticas da Microsoft (últimos 6 meses)

Page 7: Os maiores riscos de segurança

7

Figura 3: Ataques à Vulnerabilidades Críticas da Microsoft (últimos 6 meses)

Apple: QuickTime e mais seis outras vulnerabilidades

A Apple liberou correções para muitas vulnerabilidades no QuickTime durante o último ano e as vulnerabilidades no QuickTime representam a maioria dos ataques que estão sendo lançados contra os softwares da desse fabricante.

Note que o QuickTime funciona tanto no Mac quanto no Windows e as vulnerabilidades CVE-2009-0007, CVE-2009-0003, CVE-2009-0957 devem ser corrigidas para o QuickTime, independente do tipo de ambiente onde ele esteja instalado.

Figura 4: Ataques à Vulnerabilidades Críticas da Apple (últimos 6 meses)

Análise de Origem e Destino para os Quatro Ataques Principais

Page 8: Os maiores riscos de segurança

8

Nos últimos seis meses nós vimos algumas tendências muito interessantes quando comparamos os países de origem e de destino de vários ataques e a fim de mostrar os resultados, nós categorizamos e apresentamos os dados em relação às categorias que mais prevalecem.

A análise realizada para este relatório identificou estas categorias de ataques como sendo de ameaças de alto risco para a maioria das redes – para não dizer para todas elas – e, dessa forma, este tema deveria estar na memória dos profissionais de segurança.

Estas categorias são ataques HTTP no lado do servidor, inclusão remota de arquivos PHP, ataques de Cross-site Scripting e por último ataques de injeção de código SQL e como você deve imaginar, existem sobreposições entre estas categorias, com os últimos sendo subgrupos das duas primeiras categorias, mas vale ressaltar as tendências observáveis quando se separam estes dados.

Os ataques injeção de código SQL que compõem esta categoria incluem injeção de código usando a instrução SELECT, evasão de injeção de código SQL usando funções de String e injeção de código SQL usando Identidades Booleanas (Boolean Identity). O ataque de inclusão remota de arquivos PHP mais predominante é um que procura por pedidos HTTP que incluem um link para outro web site como parâmetro – que contém uma técnica muito específica de evasão usada para aumentar a confiabilidade dos mesmos. Também, digno de nota, é um ataque muito específico contra a aplicação “Zeroboard PHP”, a única aplicação isolada que executou os maiores ataques.

O último tipo de ataque que faz parte dessas estatísticas é um dos mais populares ataques de túneis de conexão HTTP (HTTP connect tunnel) – que continua a ser uma categoria de grampo no lado do servidor HTTP – e esses túneis são usados para o envio de spams através de servidores mal configurados.

Olhando para a separação por país, pode-se ver que os Estados Unidos são, de longe, o maior alvo de ataques da categoria HTTP no lado do servidor (Figura 5).

Page 9: Os maiores riscos de segurança

9

Figura 5: Ataques HTTP no Lado do Servidor por Destino (últimos seis meses)

Por anos, os alvos de ataques nos Estados Unidos representavam maior valor para os atacantes e, dessa forma, esta estatística não é uma surpresa.

Um crescimento interessante nos ataques HTTP no lado do servidor ocorreu em Julho de 2009 e isto foi inteiramente devido à ataques de injeção de código SQL usando a instrução SELECT.

Ao olharmos para os dados vimos um grande esforço dedicado a uma faixa de endereços IP alocada para os grandes ISPs e neste caso, existia um número de máquinas localizadas em um único “site” compartilhado que pode ter sido comprometido com a mesma vulnerabilidade, uma vez que todas elas estavam no mesmo nível de atualizações de segurança. Além disso, sites de apostas tomaram parte nesses ataques que atingiram seu pico depois de algumas horas no feriado de 4 de Julho – o maior feriado nos Estados Unidos.

Page 10: Os maiores riscos de segurança

10

Figura 6: Ataques HTTP no Lado do Servidor (últimos 6 meses)

Finalmente vamos olhar as fontes destes ataques HTTP no lado do servidor (Figura 7).

Figura 7: Ataques HTTP no Lado do Servidor por fonte (últimos 6 meses)

Na figura acima, vemos que os Estados Unidos é, de longe, a maior fonte de ataques, padrão que vem se mantendo há algum tempo e, em muitos casos, nós acreditamos que isto ocorra em função das máquinas que estão sendo usadas para propósitos ilegais.

Page 11: Os maiores riscos de segurança

11

Os próximos quatro países que originaram ataques HTTP no lado do servidor são Tailândia, Taiwan, China e Coréia e estes países também são citados em outras seções deste relatório, de foma que este gráfico será uma referência útil para comparação com outras categorias de ataque e suas extensões.

Nos últimos seis meses foi vista muita atividade referente aos ataques de injeção de código SQL e alguns padrões típicos surgiram nos Estados Unidos – que é a maior fonte e destino de eventos relacionados com esse tipo de ataque.

Na Internet a injeção de código SQL pode ser dividida em, mais ou menos, duas subcategorias: injeção de código SQL legítima e injeção de código SQL maliciosa, pois muitas aplicações web na Internet ainda utilizam “injeção de código SQL” em sua funcionalidade normal.

Deve-se notar que isto é somente uma diferenciação de intenção pois as aplicações web que utilizam a injeção de código SQL legitimamente são vulneráveis para as ferramentas e técnicas usadas pelos atacantes para realizar as injeção de código SQL maliciosas e os servidores que abrigam estas aplicações podem ter maior taxa de exposição aos perigos desse tipo de ataque – não só porque eles são reconhecidamente vulneráveis, mas também porque eles devem ter a capacidade de distinguir uma injeção legítima de uma maliciosa para identificarem os ataques.

Figura 8: Ataques de Injeção de Código SQL por país de destino (últimos 6 meses)

Olhando para os números separados por mês (Figura 9), nós vemos uma grande concentração de ataques de injeção de código SQL e ela aconteceu em Julho por causa de um anunciante on-line que distribuiu código para muitos afiliados usando essa técnica. A

Page 12: Os maiores riscos de segurança

12

aplicação desse anunciante foi rapidamente tirada do ar, resultando em uma grande queda na quantidade de eventos no mês de Agosto.

Figura 9: Ataques de Injeção de Código SQL (últimos 6 meses)

As fontes de distribuição de muitos desses ataques são muito mais diversas que seus destinos uma vez que após os Estados Unidos, a maior fonte de ataques é a China e, novamente, os Estados Unidos são o destino da esmagadora maioria dos ataques, como se pode ver na Figura 10.

Page 13: Os maiores riscos de segurança

13

Figura 10: Ataques de Injeção de Código SQL por país fonte (últimos seis meses)

Como conclusão, nos não podemos exagerar na importância da proteção de aplicações web baseadas em DMZ contra ataques de injeção de código SQL pois, cada vez mais, o objetivo dos atacantes é a aquisição de dados sensíveis.

Enquanto os meios de comunicação reportam como alvos os números de cartões de crédito e de seguro social nos Estados Unidos – devido ao fato dessa explicação ser de mais fácil entendimento para a população – estas informações não são as únicas que podem ser comprometidas porque, uma vez que os ataques de injeção de código SQL oferecem fácil acesso aos dados, deve-se assumir que qualquer informação valiosa armazenada em um banco de dados acessível através de Internet está sendo tratada como um potencial alvo.

Apesar da popularização dos ataques de inclusão de arquivos PHP, o número total está diminuindo. Com exceção dos originados da Tailândia em Abril, o número de ataques deste tipo no mês de Agosto é menor que a metade da média dos meses de Março a Maio.

Existem muitas maneiras de proteção contra estes ataques. Configuração do Apache, validação e tratamento das entradas de dados (Input Sanitization) e equipamentos de segurança de rede são boas medidas de proteção e, dessa forma, a queda do total de ataques está sendo causada, em parte, devido à ação positiva dos desenvolvedores de aplicações, dos administradores de sistemas, e dos profissionais de segurança.

Entretanto, devido à extrema facilidade que são efetuados e pelo enorme benefício gerado pelo sucesso dos mesmos, ataques como estes ainda irão permanecer populares por algum tempo.

Page 14: Os maiores riscos de segurança

14

Figura 11: Ataques de Inclusão Remota de Arquivos PHP (últimos seis meses)

Vamos olhar para as fontes de ataques de inclusão remota de arquivos PHP, pois a maior concentração de execução dos mesmos aconteceu na Tailândia em Abril, que resultou na colocação do país no primeiro lugar da lista.

Figura 12: Ataques de Inclusão Remota de Arquivos PHP por país de origem (últimos 6 meses)

Page 15: Os maiores riscos de segurança

15

O Cross Site Scripting (XSS) é um dos mais predominantes problemas nas atuais aplicações web porque, infelizmente, os desenvolvedores falham e introduzem erros que podem ser usados para e execução de XSS enquanto criam códigos customizados que conectam muitas das diversas tecnologias web que são tão utilizadas no atual cenário da Web 2.0.

Outro uso muito comum de XSS é feito por muitos sistemas analíticos de anúncio. Um banner, por exemplo, deve ser incorporado em uma página que é preparada para retornar código JavaScript de um servidor HTTP de um anunciante para fins de monitoramento, mas nessas situações o risco é muito pequeno – visto que o site em questão normalmente possui controle total sobre a página e, dessa forma, o pedido do anunciante não é malicioso.

São estes ataques – junto com os ataques que aproveitam falhas no manuseio de dados de formulários – que compõem a maioria dos ataques XSS vistos nos últimos seis meses.

Figura 13: Ataques XSS por origem (últimos seis meses)

Ataques originados dos Estados Unidos estão diminuindo mês a mês e na Coréia foi reduzido em 50% nos últimos 30 dias. Estas duas quedas, contudo, foram suplantados por um súbito aumento de 20 % nos últimos 30 dias de ataques vindos da Austrália e as outras três maiores origens, respectivamente, são Hong Kong, China e Taiwan, que permaneceram estáveis nos últimos três meses para esta categoria de ataque.

Correções em Aplicações São Muito Mais Lentas do que as Correções em Sistemas Operacionais

Page 16: Os maiores riscos de segurança

16

Os scanners da Qualys coletam dados anônimos de vulnerabilidades detectadas, com o objetivo de captar a dinâmicas das mudanças no campo da avaliação de vulnerabilidades e esses dados relatam mudanças como a diminuição de vulnerabilidades no lado do servidor e o correspondente aumento no lado do cliente, tanto em componentes do sistema operacional quanto em aplicações.

Uma lista das 30 principais vulnerabilidades é usado freqüentemente para verificar se as maiores mudanças ocorrem nas vulnerabilidades mais comuns e abaixo está a relação para o primeiro semestre de 2009 – editado para remover dados irrelevantes como as vulnerabilidades do tipo zero-day.

Descrição

1. Vulnerabilidade de execução remota de código nos conversores de texto do Office e do WordPad (MS09-010)

2. Múltiplas vulnerabilidades no Java da Sun (244988 e outras) 3. Múltiplas vulnerabilidades do inicializador do Java Web da Sun quem podem

permitir a elevação de privilégios (238905) 4. O ambiente da máquina virtual do Java pode permitir a elevação de privilégios

(238967) 5. Buffer Overflow no Adobe Acrobat e no Adobe Reader (APSA09-01) 6. Vulnerabilidade de execução remota de código no Microsoft SMB (MS09-001) 7. Vulnerabilidade de Buffer Overflow em imagens GIF no ambiente Sun Java 8. Vulnerabilidade de execução remota de código no Microsoft Excel (MS09-009) 9. Atualização do Adobe Flash Player para solucionar vulnerabilidades de segurança

(APSB09-01) 10. vulnerabilidades no JRE e JDK do Java da Sun (254569) 11. Serviço do Microsoft Windows Server pode permitir a execução remota de código

(MS08-067) 12. Microsoft Office PowerPoint pode permitir a execução remota de código (MS09-

017) 13. Vulnerabilidade de execução remota de código no serviço principal do Microsoft

XML (MS08-069) 14. Vulnerabilidade de execução remota de código nos arquivos estendidos do

Microsoft Visual Basic (MS08-070) 15. Múltiplas vulnerabilidades de execução remota de código no Microsoft Excel

(MS08-074) 16. Vulnerabilidades no Microsoft DirectShow podem permitir a execução remota de

código (MS09-028) 17. Múltiplas vulnerabilidades de execução remota de código no Microsoft Word

(MS08-072) 18. Múltiplas vulnerabilidades no Adobe Flash Player (APSB07-20) 19. Múltiplas vulnerabilidades de segurança no Adobe Flash Player (APSB08-20) 20. Vulnerabilidade de execução remota de código na CAPICOM.DLL de terceiros 21. Vulnerabilidade de execução remota de código nos componentes do Microsoft

Windows Media (MS08-076)

Page 17: Os maiores riscos de segurança

17

22. Múltiplas vulnerabilidades no Adobe Flash Player (APSB07-12) 23. Vulnerabilidade de execução remota de código no Microsoft Office (MS08-055) 24. Vulnerabilidade de corrupção de memória nos métodos JavaScript do Adobe

Reader (APSA09-02 e APSB09-06) 25. Microsoft PowerPoint pode permitir a execução remota de código (MS08-051) 26. Vulnerabilidade de processamento de fontes no JRE pode permitir elevação de

privilégios (238666) 27. Microsoft Office pode permitir a execução remota de código (MS08-016) 28. Vulnerabilidade de Buffer Overflow na função "util.printf()" do Adobe

Acrobat/Reader (APSB08-19) 29. Múltiplas vulnerabilidades no Adobe Acrobat e no Adobe Reader (APSB08-15) 30. Vulnerabilidade do pacote de segurança do Windows Schannel pode permitir

spoofing (MS09-007)

Tabela 1: 30 principais vulnerabilidades da Qualys no primeiro semestre de 2009

Algumas das vulnerabilidades listadas na tabela foram solucionadas rapidamente pelos administradores e as vulnerabilidades nos sistemas operacionais, por exemplo, mostram uma queda significativa até os primeiros 15 dias do seu ciclo de vida.

Figura 14: Vulnerabilidades em Sistema Operacionais Microsoft

Mas ao menos metade das vulnerabilidades na lista como, por exemplo, vulnerabilidades primárias encontradas em aplicações, recebem menos atenção e são corrigidas em um prazo muito maior e. Pelo fato de algumas destas aplicações – como o Microsoft Office e o Adobe Reader – serem amplamente usadas, elas acabam expondo os diversos sistemas onde são executadas às ameaças.

Os gráficos abaixo mostram o número de vulnerabilidades detectadas para o Microsoft Office e para o Adobe Reader, com os dados já normalizados para o número máximo de vulnerabilidades detectadas no intervalo exibido e pode-se perceber que durante os finais de semana ocorrem quedas periódicas nas taxas de detecção, pois nesses períodos as verificações são focadas nos servidores e não nas estações de trabalho e as taxas de detecção de vulnerabilidades para as estações, consequentemente, diminuem.

Page 18: Os maiores riscos de segurança

18

Figura 15: Ciclos de Correção de Vulnerabilidades do Microsoft PowerPoint e do Adobe

Há muito tempo os atacantes já perceberam a possibilidade de exploração dessas vulnerabilidades e migraram para diferentes tipos de ataques a fim de tirar vantagem das mesmas, usando técnicas de engenharia social para tentar fazer com que os usuários finais abram documentos recebidos por e-mail, ou através da infecção de web sites com links para documentos que contém os ataques.

Estes documentos infectados não são colocados apenas em web sites populares e que tem um grande número de visitantes, mas cada vez mais os atacantes têm usado os milhares de web sites especializados que têm audiências pequenas, porém fieis. Através da identificação e exploração de vulnerabilidades em sistemas de gerenciamento de conteúdo (CMS) usados por esses web sites os atacantes podem automatizar o processo de infecção e alcançar milhares de sites em questão de horas.

Os ataques usando vulnerabilidades em arquivos PDF tiveram um grande aumento em 2008 e 2009, a medida que foi ficando claro para os atacantes o quão fácil é usar esse método de obtenção de controle sobre uma máquina e constatou-se que o Adobe Flash tem problemas similares com a aplicação de suas atualizações, pois existem quatro vulnerabilidades na nossa lista das 30 principais que existem desde 2007.

Figura 16: Vulnerabilidades no Flash

Page 19: Os maiores riscos de segurança

19

O Adobe Flash apresenta desafios adicionais, pois ele não tem um mecanismo de atualização automática e necessita de uma correção do Internet Explorer em uma etapa adicional – quando comparado aos outros navegadores e para usuários que têm mais de um navegador instalado é muito fácil esquecer-se de corrigir completamente as vulnerabilidades do Flash e continuar vulnerável.

Uma outra família de softwares que está na lista das 30 principais vulnerabilidades é o Java, que é amplamente usado para executar Java applets em navegadores e, também, é cada vez mais usado em aplicações não web.

Uma das causas da presença do Java na lista é o fato dele ter um ciclo de correções muito lento e uma outra causa é o aumento do número total de vulnerabilidades que faz com que as novas que surjam e neutralizam o efeito das correções que são lançadas.

Além disso, o Java tem um problema adicional porque, até recentemente, as novas versões não removiam as versões antigas, mas apenas configuravam o ambiente para executar a nova versão. Dessa forma, ataques podiam ser projetados para tirar vantagem dos caminhos já conhecidos e continuar a usar versões antigas e vulneráveis do software.

Figura 17: Vulnerabilidades no Java da Sun

Tutorial: Exemplo de Uma exploração HTTP no Lado do Cliente

Esta seção mostra um exemplo de ataque conduzido contra uma organização e que resultou na perda de dados críticos para a mesma.

Neste ataque, a empresa de Widgets Acme foi vítima de uma grande violação feita por atacantes que foram capazes de comprometer toda a infra-estrutura da rede interna, usando dois dos mais comuns – porém poderosos – ataques da atualidade: Exploração de software no lado do cliente e ataques do tipo pass-the-hash contra computadores com o Windows.

Page 20: Os maiores riscos de segurança

20

Passo 0: O atacante injeta conteúdo em um web site confiável

No passo 0, o atacante inicia o ataque colocando conteúdo em um web site confiável – como uma rede social, um blog, um serviço de compartilhamento de fotos, ou vídeo, ou em qualquer outro servidor web que hospede conteúdo público. O conteúdo do atacante inclui código para exploração de software no lado do cliente que não tenha sido corrigido.

Passo 1: Exploração no lado do cliente

No passo 1, um usuário na rede corporativa da empresa de Widgets Acme navega pela Internet em um computador com o Windows que está executando um software não atualizado – como um reprodutor de mídia (Real Player, Windows Media Player, iTunes, por exemplo), um programa de visualização de documentos (Acrobat Reader, por exemplo), ou um dos aplicativos do pacote Office (Microsoft Word, Excel, Powerpoint, por exemplo).

Ao receber o conteúdo do atacante que foi colocado no web site, o navegador da vítima inicia o programa vulnerável, passando para ele o código malicioso do atacante e este código permite a instalação ou a execução de programas no computador do usuário, através dos privilégios do mesmo. Porém, pelo fato da vítima não tem credenciais de administrador do sistema, o ataque é parcialmente mitigado, mas ainda assim, o atacante pode executar programas com os privilégios limitados que conseguiu obter.

Page 21: Os maiores riscos de segurança

21

Passo 2: Estabelecer um backdoor de shell reverso usando HTTPS

No passo 2, o código de exploração do atacante instala um backdoor de shell reverso no computador da vítima, que garante o acesso ao shell do computador através de uma comunicação HTTPS e, em função do uso desse protocolo, o trafego do backdoor parece ser um trafego web regular para o firewall da empresa.

Passos 3 e 4: Copiar os hashes e usar um ataque do tipo pass-the-hash

No passo 3, o atacante usa o shell obtido para carregar um programa que faça a escalação de privilégios no o computador da vítima, programa este que permite ao atacante mudar de uma conta com poucos privilégios para uma que tenha controle total sobre a máquina.

Apesar dos fabricantes freqüentemente lançarem correções para impedir os ataques de escalação de privilégios muitas organizações não fazem a instalação das mesmas de forma eficaz, porque elas tendem a focar exclusivamente nas correções de falhas que permitem a exploração de forma remota.

Uma vez que a escalação tenha sido efeita, o atacante copia os hashes de todas as contas da máquina – incluindo o da conta do administrador do sistema.

No passo 4, ao invés de quebrar a senha da conta do administrador da máquina, o atacante usa um programa do tipo pass-the-hash para autenticar-se em outro computador

Page 22: Os maiores riscos de segurança

22

com o Windows na rede interna da empresa – neste caso, um sistema totalmente corrigido e onde a mesma vítima tem privilégios administrativos completos.

Usando o NTLMv1 ou o NTLMv2, computadores com o Windows autenticam acessos na rede através do protocolo SMB (Server Message Block) baseando-se nos hashes do usuário e não na senha propriamente dita, permitindo ao atacante – com privilégios de administrador local – a obtenção de acesso ao sistema de arquivos ou a execução de programas em um sistema totalmente corrigido, que permite a copia dos hashes das senhas de todas as contas locais do computador.

Passo 5: Usar o pass-the-hash para comprometer o controlador de domínio

No passo 5, o atacante usa um hash de senha de uma conta local do computador para acessar o controlador de domínio e, novamente, usa um ataque do tipo pass-the-hash para obter acesso ao shell desse controlador.

Em função da senha da conta do administrador local ser idêntica a senha da conta do administrador do domínio, o hash das duas é idêntico e dessa forma, o atacante pode acessar o controlador de domínio com privilégios completos de administração – obtendo o controle completo sobre todas as contas e máquinas do domínio.

Passo 6 e 7: Exfiltração

No passo 6, com privilégios totais de administração do domínio, o atacante compromete o servidor que armazena os segredos da empresa e no passo 7 ele contrabandeia essas informações sensíveis – que consistem em mais de 200 Megabytes de dados – enviando-as para a Internet através do HTTPS que encripta a informação e minimizar a chance de detecção.

Tendências das Vulnerabilidades do Tipo Zero-Day

Page 23: Os maiores riscos de segurança

23

Uma vulnerabilidade do tipo zero-day ocorre quando uma falha em um software é descoberta e o código para explorar essa vulnerabilidade é divulgado antes de uma correção.

Uma vez que uma forma de explorar a vulnerabilidade tenha sido liberada, os usuários do software afetado continuarão expostos ao perigo até que uma correção seja disponibilizada, ou até que alguma ação de proteção seja tomada pelos mesmos.

As “Vulnerabilidades de Formato de Arquivo” continuam a ser as primeiras escolhas dos atacantes para comandar ataques do tipo zero-day e ataques segmentados e muitos deles continuam a ter com alvo o Adobe PDF, o Flash Player e os aplicativos do Microsoft Office (PowerPoint, Excel e Word).

Atualmente existem disponíveis diversos frameworks que tornam fácil a tarefa de encontrar essas falhas e as vulnerabilidades são, freqüentemente, encontradas em add-ons criados por terceiros – potencializando o risco para os usuários e tornando o processo de correção muito mais complexo.

As mais notáveis vulnerabilidades do tipo zero-day durante os últimos 6 meses foram:

• Vulnerabilidade de execução remota de código no Adobe Acrobat, Reader, e no Flash Player (CVE-2009-1862)

• Vulnerabilidade de execução de código no Controle ActiveX Microsoft Office Web Components (CVE-2009-1136)

• Vulnerabilidade de execução remota de código no cabeçalho de dados da biblioteca de templates ativos da Microsoft (CVE-2008-0015)

• Vulnerabilidade de execução remota de código no Microsoft DirectX DirectShow QuickTime (CVE-2009-1537)

• Vulnerabilidade de execução remota de código no Adobe Reader (CVE-2009-1493)

• Vulnerabilidade de execução remota de código no Microsoft PowerPoint (CVE-2009-0556)

A facilidade de encontrar vulnerabilidades do tipo zero-day é um resultado direto de um aumento global no número de pessoas que vêm adquirindo conhecimento de como descobrir vulnerabilidades dessa categoria e isto é evidenciado pelo fato do TippingPoint DVLabs freqüentemente receber a mesma vulnerabilidade de diversas fontes.

Como exemplo, pode-se citar a vulnerabilidade descrita no boletim de Segurança MS08-031 (Microsoft Internet Explorer DOM Object Heap Overflow Vulnerability) que foi descoberta de forma independente por três pesquisadores. O primeiro pesquisador submeteu uma vulnerabilidade crítica no Internet Explorer 6 e 7 que poderia ser explorada remotamente em 22 de Outubro de 2007. Um segundo pesquisador independente submeteu a mesma vulnerabilidade no dia 23 de Abril de 2008 e um terceiro pesquisador também submeteu essa mesma vulnerabilidade no dia 19 de Maio de

Page 24: Os maiores riscos de segurança

24

2008, sendo que as três submissões encontraram a vulnerabilidade através de abordagens diferentes de busca e auditoria.

A implicação das múltiplas descobertas é bastante preocupante, uma vez que a principal forma de mitigação dessas vulnerabilidades é a aplicação de patches e essa estratégia é inválida nesses casos – existindo ainda o risco crescente dos criminosos cibernéticos que podem descobri-las e explorá-las para obterem lucro.

Adicione a isso o fato de que os fabricantes de softwares não diminuiram o tempo médio que levam para corrigir as vulnerabilidades das quais tomam conhecimento e que a TippingPoint está ciente de um número de falhas que foram submetidas para os fabricantes há dois anos e ainda não têm correções.

No endereço HTTP://www.zerodayinitiative.com/advisories/upcoming/ é possível encontrar uma lista mantida pela TippingPoint e que contém as vulnerabilidades do tipo zero-day que ainda não foram divulgadas publicamente.

Isto faz com que a exploração de vulnerabilidades do tipo zero-day em aplicações no lado do cliente seja uma das ameaças mais significativas para a sua rede e requer que você coloque em prática controles e medidas adicionais de segurança da informação para complementar suas atividades de avaliação e remediação de vulnerabilidades.

Melhores Práticas na Mitigação e no Controle dos Principais Riscos

Algumas semanas atrás, o Center for Strategic and International Studies publicou uma versão atualizada dos Vinte Controles Críticos para Efetiva Segurança Cibernética que pode ser encontrada no endereço HTTP://csis.org/files/publication/Twenty_Critical_Controls_for_Effective_Cyber_Defense_CAG.pdf

Esses controles refletem o consenso de muitos dos maiores atacantes e defensores das nações nas quais controles específicos devem ser implementados para mitigar ameaças cibernéticas conhecidas.

Um dos usos mais importantes deste relatório é no ato de ajudar as organizações a implantarem os Vinte Controles Críticos de Segurança para terem a certeza de que nenhum dos novos ataques críticos que tenha sido encontrado force mudanças substanciais nos controles que foram implementados e, ao mesmo tempo, ajudar as pessoas que estão implementando os Vinte Controles Críticos de Segurança a focar sua atenção nos elementos de controle que precisam ser concluídos de forma mais imediata.

Os elementos chave desses ataques e controles associados são: • Aplicações de usuários têm vulnerabilidades que podem ser exploradas

remotamente. o O controle 2 (Inventário de Software), o controle 3 (Configurações

Seguras), e o controle 10 (Avaliação e Correção de Vulnerabilidades)

Page 25: Os maiores riscos de segurança

25

podem garantir que o software vulnerável seja contabilizado, identificado para um plano defensivo e seja corrigido em tempo hábil. O controle 5 (Defesas de Fronteira) pode prover alguma capacidade de prevenção/detecção quando os ataques são lançados.

• Existe um número crescente de vulnerabilidades do tipo zero-day nestes tipos de aplicações.

o O controle 12 (Defesas contra Malware) é o mais eficaz para mitigação de muitos desses ataques porque pode garantir que malwares que entrem na rede sejam efetivamente contidos. Os controles 2, 3 e 10 têm impactos mínimos sobre vulnerabilidades do tipo zero-day e o controle 5 pode fornecer alguma capacidade de prevenção/detecção contra elas, bem como para as vulnerabilidades conhecidas.

• A exploração bem sucedida concede ao atacante os mesmos privilégios de um usuário e/ou equipamento na rede.

o O controle 5 (Defesas de Fronteira) pode garantir que ameaças em sistemas comprometidos (portáteis ou não) possam ser contidas. Os controles 8 (Controle de Uso de Privilégios Administrativos) e 9 (Acesso Controlado) têm por objetivo limitar o acesso do atacante às instalações da empresa, depois dele ter explorado com sucesso um aplicação de usuário.

• O atacante está mascarado como um usuário legítimo, mas executa ações que não são típicas daquele usuário.

o O Controle 6 (Auditoria de Logs) e o 11 (Controle e Monitoramento de Contas) podem ajudar a identificar comportamentos potencialmente maliciosos ou suspeitos e o Controle 18 (Capacidade de Resposta a Incidentes) pode auxiliar na detecção e recuperação após um incidente.

Controles Críticos – Aplicado à Ameaças aos Servidores HTTP

Como discutido anteriormente, vulnerabilidades em aplicações web e ameaças no lado do servidor HTTP representam uma grave ameaça não só para os servidores que você controla, mas também para os servidores que os seus usuários acessam para realizarem atividades do dia-a-dia.

As tendências indicam que os ataques de injeção de código SQL estão aumentando rapidamente e esses ataques são executados somente se um aplicativo é escrito de tal forma que permita a exploração dos mesmos – de forma que uma vulnerabilidade não é uma questão de configuração ou controle de acesso.

Os principais elementos desses ataques e os controles os associados são:

• Aplicações web têm vulnerabilidades que podem ser facilmente descobertas e exploradas remotamente conforme seguem:

o O controle 7 (Segurança em Aplicações) talvez seja o mais crítico sobre esses tipos de ataques. Os desenvolvedores de aplicações devem garantir que todas as informações recebidas de fontes externas sejam verificadas e que os sistemas utilizem somente o necessário para as

Page 26: Os maiores riscos de segurança

26

operações com os sistemas de banco de dados. O Controle 5 (Defesas de Fronteira) pode garantir que existam camadas de proteção apropriadas para evitar ou detectar ataques destinados aos seus servidores web. O Controle 2 (Inventário de Software), o controle 3 (Configurações de Segurança), e o controle 10 (Avaliação e Remediação de Vulnerabilidades) podem garantir que os aplicativos vulneráveis sejam contabilizados, identificados para um plano defensivo e sejam corrigidos em tempo hábil.

• A exploração bem sucedida concede ao invasor a capacidade de colocar código malicioso no servidor e tentar comprometer todos os clientes que o visitarem.

o O controle 6 (Auditoria de Logs) pode ajudar a identificar quando alguém comprometeu o seu servidor web e o controle 18 (Capacidade de Resposta a Incidentes) pode ajudar a mitigar o impacto e ajudar na recuperação contra os ataques a aplicações vulneráveis.

Page 27: Os maiores riscos de segurança

27

Tradutores

Alexandre Silveira Pupo

Anderson De Salve

André Felipe de Oliveira Fernandes

Germano Packer

Guilherme Marinheiro Chaves

Sandra Regina Borges de Salve

Thomaz Fischer Levy

Revisores

Jacomo Piccolini

Pedro Bueno