O que é uma vulnerabilidade Zero-day

Vulnerabilidade Zero-day

Uma Vulnerabilidade Zero-day é uma vulnerabilidade em um software ou sistema de computador que ainda não foi revelada ou ainda não foi corrigida, geralmente desconhecida do fabricante do software afetado por ela. Desta forma, pode ser usada para causar danos a programas do computador, redes, informações dos usuários e serem usadas para propagar vírus, worms e outros tipos de malwares, em um processo que chamamos de Exploit Zero-day.

Consideram-se as vulnerabilidades zero-day como sendo de alta periculosidade, e exploits são geralmente realizados (ataques zero-day / zero day exploits) antes da falha se tornar pública (ou até no mesmo dia), antes de uma solução ter sido criada pelo desenvolvedor do software afetado.

Formas de exploração

As vulnerabilidades zero-day podem ser exploradas de várias formas. É muito comum, por exemplo, um usuário visitar um web site falso, que contém código malicioso para explorar vulnerabilidades nos próprios navegadores. Também é comum o envio de e-mails com anexos maliciosos que permitem explorar vulnerabilidades do sistema do usuário ao serem abertos. Basicamente o que um atacante deseja é explorar a vulnerabilidade para infiltrar no sistema da vítima malware ou spyware, ou ainda obter acesso não-autorizado às informações do usuário ou seus arquivos. Essa exploração da vulnerabilidade é chamada de Ataque Zero-day.

Ciclo de vida de uma vulnerabilidades zero-day

Podemos considerar que uma vulnerabilidade zero day tem uma espécie de ciclo de vida como segue:

  1. Uma empresa desenvolve e comercializa um software. Porém, esse software possui uma falha de segurança desconhecida da empresa, pois não foi detectada na fase de testes.
  2. Um hacker ou figura similar descobre essa vulnerabilidade e começa a explorá-la, antes que o desenvolvedor tenha a oportunidade de corrigi-la. Às vezes MUITO antes.
  3. Algum tempo depois a falha se torna pública, ou a empresa desenvolvedora do software descobre a falha e cria um patch de correção para eliminar a vulnerabilidade.

O intervalo de tempo entre a exploração da falha por um atacante e a sua correção pode variar entre algumas horas até alguns meses – sim, algumas vulnerabilidades passam meses em aberto sem que ninguém saiba sobre ela – a não ser, possivelmente, criminosos digitais.

Correção das vulnerabilidades

Para que o fabricante / desenvolvedor do software vulnerável possa corrigir a falha, após identificá-la, é necessário liberar um patch de correção para download público. Desta forma, patches de segurança são lançados regularmente para que seja possível corrigir erros e vulnerabilidades que afetem os softwares, incluindo as vulnerabilidades zero-day. Por isso é importante sempre manter seu sistema atualizado, assim como os softwares instalados em sua máquina. Isso inclui os navegadores web, aplicativos em geral e o próprio sistema operacional.

Não é simples a proteção preventiva contra ataques zero-day. Já que a premissa básica desse tipo de vulnerabilidade é justamente o fato de elas não serem conhecidas, é difícil se proteger contra elas. Mesmo redes e sistemas considerados seguros estão na verdade sob risco com relação a esse tipo de vulnerabilidade, já que a segurança se aplica geralmente aos fatores de risco que são conhecidos.

Exemplos de Exploits Zero-day recentes:

Podemos citar alguns exemplos de ataques zero-day que ocorreram muito recentemente (em 2014 e 2015), como:

  • Adobe Flash Zero-day – O grupo hacker APT3 enviou inúmeros e-mails de phishing com links para servidores web comprometidos.
  • Operação Boneca Russa – Vulnerabilidades da Microsoft e da Adobe largamente exploradas pelo grupo hacker russo APT28
  • Exploit do IE 9 – IE 11 – Uma vulnerabilidade que afetava usuários do navegador Internet Explorer, permitindo acesso arbitrário à memória do computador
  • Vulnerabilidade do Kernel do Windows – Essa vulnerabilidade que permitia um exploit no Kernel do Windows, especificamente no subsistema de processamento de fontes True Type (TTF), permitindo utilizar um documento do Office para incorporar e enviar TTFs maliciosos
  • Vulnerabilidade no OS X da Apple que permite que os atacantes consigam abrir ou criar arquivos arbitrários de propriedade do usuário root em qualquer parte do sistema

Proteção contra exploits zero-day

Não existe um procedimento oficial para proteção contra exploits zero-day, pois é completamente imprevisível a descoberta de tais vulnerabilidades. Mas algumas precauções podem ser tomadas, como por exemplo:

  1. Manter os softwares sempre atualizados: Isso garante que seu sistema não terá vulnerabilidades que já foram corrigidas ainda em condições de serem exploradas.
  2. Usar um bom antivírus: Não impede que ocorra um ataque zero-day, porém pode impedir a instalação ou execução de programas maliciosos no computador.
  3. Ativar o firewall do sistema: Também não impede que ocorra um ataque, mas pode bloquear acesso a determinadas aplicações ou portas de comunicação, minimizando os danos causados pelo exploit.
  4. Não usar softwares que tenham uma má reputação em termos de histórico de vulnerabilidades. Podemos citar como exemplos o Adobe Flash Player e o Oracle Java. Nem sempre é possível seguir esta recomendação, mas se for possível, não os tenha em sua máquina.
  5. Não entre em sites suspeitos nem instale softwares de procedência duvidosa em seu computador.
Sobre Fábio dos Reis (1273 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

2 Comentários em O que é uma vulnerabilidade Zero-day

  1. Goldemberg // 09/02/2018 em 13:20 // Responder

    Muito bom tópico professor!!

Escreva um comentário

Seu e-mail não será divulgado


*