Por que o software é vulnerável? A importância dos patches

Por que o software é vulnerável? A importância dos patches

Antes de começar a explanar sobre alguns pontos chave para entender a importância de atualizar o software, como forma de evitar a exploração de vulnerabilidades nos computadores, continuarei respondendo perguntas sobre o assunto. Esses pontos foram abordados pelo Heimdal Security, um site sobre segurança da informação, o qual também me questionou sobre diversos aspectos da

Antes de começar a explanar sobre alguns pontos chave para entender a importância de atualizar o software, como forma de evitar a exploração de vulnerabilidades nos computadores, continuarei respondendo perguntas sobre o assunto. Esses pontos foram abordados pelo Heimdal Security, um site sobre segurança da informação, o qual também me questionou sobre diversos aspectos da

Antes de começar a explanar sobre alguns pontos chave para entender a importância de atualizar o software, como forma de evitar a exploração de vulnerabilidades nos computadores, continuarei respondendo perguntas sobre o assunto. Esses pontos foram abordados pelo Heimdal Security, um site sobre segurança da informação, o qual também me questionou sobre diversos aspectos da instalação de patches.

Uma pergunta que todos os usuários fazem: por que o software é tão vulnerável? E o que o usuário pode fazer?

Na realidade, até certo ponto, às vezes, subestimamos quão vulnerável o software realmente é, ou pelo menos seu impacto no mundo real. Os principais provedores de software, hardware ou serviços tem aprendido a reparar de forma exagerada; ou seja, os pacotes mensais de inumeráveis patches em geral incluem alguns cuja importância é em grande medida teórica e/ou apenas afetará a poucas pessoas.

Por outro lado, os fãs de outros sistemas operativos tendem a subestimar a insegurança de um sistema operacional popular devido a suposta segurança do sistema operativo de sua preferência. Isso se deve em parte ao fanatismo geral e ao efeito de halo (quem está a favor de um sistema operacional, em geral, tende a minimizar suas debilidades em áreas específicas), também é encorajado pelas peculiaridades da interpretação de dados.

Por exemplo, a segurança de um sistema operacional, às vezes, diretamente proporcional a quantidade total anual de patches que requer (sob a suposição de que quanto mais frequente requerem a instalação de patches, mais vulnerável será). No entanto, também se pode sugerir que, como todos os sistemas operacionais complexos precisam patches a medida que se descobrem novos erros e aparecem novos exploits, a instalação frequente de patches na realidade é uma medida de diligência profissional e não de insegurança. De fato, o número de variáveis que intervém na metodologia, a eficácia e o desempenho dos patches faz com que qualquer dos pontos de vista pareçam simples demais.

Na realidade, o impacto preciso das vulnerabilidades que se podem corrigir com um patch é difícil de determinar. É certo que existem casos de alto perfil onde o malware aproveita as vulnerabilidades CVE: Stuxnet é um exemplo particularmente relevante, embora o uso de múltiplas ameaças 0-day sejam pouco frequente, e no geral, se vê como um subproduto do seu objetivo principal que é atacar sistemas específicos de alto valor. Este valor se considera em termos de importância política e militar, ao invés de valor monetário.

No entanto, grande parte (ou talvez a maioria) dos malware não dirigido parece depender principalmente da Engenharia Social, embora os exploits já conhecidos, às vezes, continuam sendo usadas como ameaça secundária, com a esperança de encontrar vítimas cujos sistemas não foram atualizados. No entanto, isso não significa que os usuários devem pensar que o malware digital “não é seu problema”.

Além do risco de danos colaterais aos sistemas que não coincidem com o perfil de destino, os atacantes frequentemente aproximam-se sigilosamente de um objeto de alto valor, utilizando um sistema de destino de menor valor como canal. Todo o malware é dirigido: em última instância, o que varia é o tamanho da população à que se dirige.

Tendo dito tudo isso, o que importa não é o percentual exato de malware e de outros ataques que se aproveitam das vulnerabilidades do software: é o faz de conta com uma grande ferramenta para reduzir a exposição dos próprios sistemas contra ataques por meio do uso das atualizações e dos patches. Por que não aproveitar esta vantagem?

“Qual é a principal dica prática para os usuários em relação aos patches?”

Bom, existem razões para sermos cautelosos com os patches. Às vezes, as grandes empresas vão instalando as atualizações de forma gradual: ou seja, primeiro provam os patches em máquinas que não utilizam para processos críticos do negócio. A razão é que a instalação de um patch pode sair mal para algumas pessoas no mundo real e, de vez em quando, os resultados são catastróficos.

A maioria dos usuários domésticos não contam com recursos ou a experiência para implementar um processo de gestão de mudanças formal e eficaz, mas pelo menos podem tomar precauções de modo que, inclusive, um desastre que resulte em um prejuízo permanente ou na perda de um sistema (ou inclusive mais de um) não signifique que devem perder o acesso aos dados que se encontravam ali instalados.

Isso não só se alcança fazendo backups periódicos dos dados, como também tendo a certeza de que alguém vai ser capaz de voltar a instalar todos os aplicativos necessários para acessar os dados, em caso de que se use um sistema completamente novo. Depois de tudo, embora a perda de dados catastrófica e permanente como consequência de ter instalado um parche defeituoso não seja comum, as preocupações são as mesmas que devemos ter para nos proteger contra ataques de segurança, que são muito mais comuns, como o ransomware de encriptação de arquivos.

Lembre-se também que, fazer um backup é melhor que nada, fazer mais de um (armazenando preferencialmente em diferentes lugares) é muito melhor que “guardar todos os ovos em uma só cesta”.

O que os usuários devem fazer para manter o software atualizado seja um hábito diário? Você recomendaria algo? Alguma ferramenta em particular?

Não posso recomendar uma ferramenta de atualização em particular: não tenho passado muito tempo avaliando-as recentemente. As principais empresas de software oferecem atualizações automáticas ou pelo menos notificam sobre novas atualizações, pelo que obviamente é uma boa ideia se inscrever em qualquer destes serviços.

Infelizmente, as pequenas organizações nem sempre são capazes de oferecer atualizações automáticas ou inclusive não acreditam que seja necessário avisar aos clientes quando algo possa “sair mal”, em especial se a advertência pode chegar a gerar mau publicidade. Certamente não é comum para uma pequena empresa de software oferecer uma lista periódica de informações sobre atualização ou segurança. É muito mais provável que você receba essa informação caso esteja incluído em uma lista de mailing para a divulgação de informações mais gerais sobre produtos.

Isso pode significar que chegarão para você ofertas e publicidades de novas versões e produtos: apenas você pode decidir se esta situação não te incomoda para estar atualizado sobre as últimas notícias sobre segurança. Também existem outras fontes mais genéricas que oferecem informação sobre vulnerabilidades conhecidas e falhas de produtos.

A base de dados de Vulnerabilidades e Exposições Comuns (CVE) é um dicionário das vulnerabilidades conhecidas. É um bom ponto de partida para o seguimento (apesar que atualmente devem fazer um grande esforço para mantê-la atualizada, considerando a grande quantidade de amostras maliciosas), no entanto, não oferecem uma lista de mailings para enviar notícias.

A Base de dados de vulnerabilidades dos Estados Unidos (NVD) oferece uma série de listas de mailings, mas provavelmente seja mais interessante para os administradores de sistemas ou chefes de segurança. O Instituto SANS oferece @RISK, um boletim de notícias que proporciona informação sobre vetores de ataque, vulnerabilidades e exploits, entre outras coisas, assim como outros boletins de interesse mais geral. SecurityFocus tem sua tradicional lista Bugtrag, de muita reputação, mas também oferece algumas listas mais especializadas que podem ser úteis para quem não deseja dedicar todas suas horas de trabalho a procura de vulnerabilidades e atualizações (como eu).

“Em uma escala corporativa/institucional, o que poderia contribuir para que mais empresas aproveitem as vantagens da instalação de patches como medida de segurança proativa? ”

A administração de patches e atualizações pode consumir significativamente os recursos de uma empresa, embora hoje em dia seja possível subcontratar serviços com esta finalidade. O problema se agrava quando:

  1. A organização utiliza muitos sistemas diferentes, sem padronização de hardware, sistemas operacionais e aplicativos.
  2. Mais ainda quando há um uso intensivo de BYOD (traga seu próprio dispositivo), a menos que o alcance e a funcionalidade dos dispositivos estejam restringidos e supervisionados (ou seja, o empregado pode escolher seu próprio dispositivo a partir de uma série de equipamentos e aplicativos pré-aprovados)
  3. Os empregados não são conscientes de suas responsabilidades em matéria de segurança (incluindo a manutenção e o uso correto dos sistemas e serviços), e não existe política formal e bem divulgada como parte de uma iniciativa de educação.

Tentam minimizar estas dificuldades, provavelmente seja mais fácil aplicar um processo de gestão para a mudança. É útil ter uma equipe de TI (que seja própria da empresa ou subcontratada) que inclua aos membros do pessoal que são conscientes da necessidade de realizar um seguimento dos patches. Deverão contar com recursos para poder tomar as medidas apropriadas quando surja um problema, seja assegurar que o patch se distribua onde é necessário ou resolver (de forma proativa, diante do possível) questões de compatibilidade e outras que possam surgir.

Discussão