Na Zabbix, somos defensores do movimento open source, com ênfase na abertura, transparência e cooperação, desde o primeiro dia.
Por conta disso, potenciais clientes e parceiros questionam sobre a segurança do nosso produto – o medo é que o software open source seja, de alguma maneira, menos seguro do que um software proprietário.
Neste artigo, vamos entender como um software open source funciona, explicaremos as dúvidas frequentes em relação à segurança e daremos uma visão geral de como a equipe Zabbix trabalha para garantir que a ferramenta de monitoramento seja o mais segura possível.
Table of Contents
Uma breve introdução ao open source
De maneira geral, um software open source é um tipo de código disponível para edição e modificação de qualquer pessoa.
Também permite que os desenvolvedores compartilhem o trabalho sem restrições de uma licença proprietária. O movimento open source é baseado no desenvolvimento colaborativo e incentiva a criação de software de alta qualidade, aproveitando a criatividade e entusiasmo de uma comunidade global de desenvolvedores.
O próprio Zabbix é uma solução open source coberta pela Licença Pública Geral Affero GNU versão 3 (AGPLv3). O código-fonte do Zabbix está prontamente disponível e pode ser redistribuído ou modificado – qualquer pessoa com uma grande ideia pode criar sua própria versão do Zabbix. Além do Zabbix, muitas soluções de software bem conhecidas e amplamente utilizadas surgiram do movimento open source, incluindo o navegador Firefox da Mozilla, o sistema de gerenciamento de conteúdo WordPress, o VLC Media Player e o sistema operacional Linux.
Software open source e segurança
A segurança de dados é uma questão que une todas as empresas (e, portanto, todos os potenciais parceiros ou clientes). Os desenvolvedores estão constantemente em busca de soluções que sigam as melhores práticas de segurança de dados e aplicativos para reduzir riscos e proporcionar aos usuários a experiência mais segura possível.
Um debate comum entre usuários e desenvolvedores é se o software open source é seguro o suficiente quando comparado às alternativas de código fechado. A boa notícia é que existem grandes esforços em andamento para ajudar a garantir que a comunidade open source seja o mais segura possível.
O Community Health Analytics Open Source Software (CHAOSS) da Linux Foundation é um projeto focado em criar um conjunto padrão de métricas e software para ajudar a definir a saúde da comunidade open source, e sua ferramenta GrimoireLab, em particular, facilita muito a análise e o relatório de métricas de saúde da comunidade de projetos open source.
As opiniões variam sobre o que constitui um ambiente verdadeiramente seguro, mas possivelmente a maior vantagem de segurança do software open source é sua transparência.
Se você vê algo, diga algo
O código open source está disponível para qualquer pessoa revisar, modificar e distribuir. “Espere aí”, você pode estar pensando – “Se alguém pode ver todo o código, eles não poderiam aproveitar uma vulnerabilidade se a encontrarem?” A resposta é que alguém certamente poderia explorar uma vulnerabilidade, mas como todos também podem ver o código, há uma probabilidade muito maior de que outra pessoa também tenha notado a vulnerabilidade em questão e tomado medidas para corrigi-la.
Com o código open source, geralmente é muito mais fácil entrar em contato com os desenvolvedores e relatar problemas diretamente a eles do que com um projeto de código fechado. Isso significa uma resolução mais rápida da maioria dos problemas de segurança. Além disso, como o público muitas vezes é permitido e incentivado a enviar melhorias de código diretamente para os desenvolvedores, qualquer pessoa pode submeter o código para corrigir uma vulnerabilidade como parte do relatório de um problema. Isso leva a uma rigorosa análise de segurança, com muitos olhos no código, identificando e relatando vulnerabilidades.
Pense nisso como o equivalente a um programa de “vigilância de bairro”, no qual grupos organizados de civis se dedicam à prevenção de crimes e vandalismo dentro de um bairro, tornando-o mais seguro para todos.
Nada de “jogo de espera” para atualizações
Com o software padrão de código fechado (ou proprietário), os usuários estão completamente à mercê das empresas por trás do software quando se trata de receber atualizações. As atualizações e correções para aplicativos de código fechado de alto perfil geralmente envolvem um planejamento complexo, e se não houver orçamento ou recursos disponíveis, os usuários podem ficar meses ou até anos sem ver uma nova atualização, independentemente de haver falhas de segurança gritantes ou não.
As soluções open source também são mais ágeis quando se trata de iterar e lançar novas versões. Isso se deve a vários motivos, incluindo o fato de que o software open source tem mais olhos no código-fonte a qualquer momento, além de um interesse impulsionado pela comunidade em tornar o produto o melhor possível.
A vantagem do Zabbix
Na Zabbix, há muito tempo nos beneficiamos das vantagens de segurança inerentes ao open source. Como somos um software open source de nível empresarial, pudemos adotar uma abordagem de “melhor dos dois mundos” que combina a flexibilidade e a vigilância comunitária do open source com o conhecimento que apenas uma equipe dedicada de especialistas internos em segurança e políticas de segurança robustas podem proporcionar.
Se um membro da nossa comunidade notar uma vulnerabilidade de segurança, a melhor maneira de garantir que ela seja corrigida o mais rápido possível é criando um novo problema na seção Zabbix Security Reports (ZBXSEC) do rastreador público de bugs, descrevendo o problema (e uma solução proposta, se possível) em detalhes. Isso nos ajuda a garantir que apenas a equipe de segurança do Zabbix e o repórter tenham acesso ao caso.
Nesse ponto, a equipe de Segurança do Zabbix revisa o problema e avalia seu impacto potencial. A equipe então trabalha no problema para fornecer uma solução, criando novos pacotes e disponibilizando-os para download. Os clientes com acordos de suporte são informados sobre vulnerabilidades de segurança que foram resolvidas e corrigidas, e recebem uma janela de oportunidade para atualizar antes que o problema se torne público. Depois disso, um anúncio público para a comunidade é feito.
Outro risco potencial de segurança envolve dependências complexas de outras bibliotecas open source, onde cada dependência pode introduzir vulnerabilidades se não for gerenciada adequadamente. Um exemplo perfeito disso é o ataque de repojacking de 2023 no GitHub, no qual uma vulnerabilidade crítica em um repositório open source levou à exposição de mais de 4.000 outros repositórios.
Para minimizar a possibilidade desses ataques à cadeia de suprimentos, usamos ferramentas que podem gerar um SBOM (Software Bill of Materials), que é basicamente uma lista de ingredientes que compõem os componentes de software. Isso facilita o acompanhamento de cada ingrediente individual e a tomada de ações apropriadas em caso de sinal vermelho. Além disso, o fato de nossos clientes serem os únicos proprietários dos dados elimina outra fonte potencial de problemas de segurança – ao contrário de outros fornecedores de software, não há risco de um invasor acessar sistemas que executam o Zabbix.
Como uma linha de defesa adicional, trabalhamos com a HackerOne, a principal plataforma mundial para hackers éticos, para manter um programa de recompensas por bugs específico para o Zabbix, que desafia os hackers éticos mais elite do mundo a encontrar os pontos fracos em nosso código e nos informar sobre eles a tempo de corrigi-los. Temos orgulho de como nossa comunidade tem feito sua parte para nos ajudar a tornar o Zabbix o mais seguro possível, e estamos confiantes de que, com alguns ajustes, podemos pagar ainda mais recompensas por bugs no futuro.
Para saber mais sobre a abordagem do Zabbix em relação à segurança open source, visite nosso site ou entre em contato conosco.