O mundo todo está refletindo sobre a falha na atualização do software da Crowdstrike que ocorreu na sexta-feira, 19, resultando em um grave problema de segurança e impactando operações no mundo todo. Vamos falar um pouco sobre este problema e entender o que está acontecendo no mercado de segurança da informação e onde podem surgir novas oportunidades de negócios.
O que aconteceu exatamente?
A falha foi atribuída a um erro no driver csagent.sys, resultando em um código de parada PAGE_FAULT_IN_NONPAGED_AREA, que levou os sistemas Windows afetados a entrarem em um ciclo de reinicialização contínuo. Esse erro causou a temida Tela Azul da Morte (BSOD) e tornou muitos dispositivos inutilizáveis. Hospitais, bancos, serviços de emergência, companhias aéreas e sistemas de transporte foram significativamente impactados, ressaltando o quão críticas são as infraestruturas digitais em nossa sociedade moderna. Empresas e usuários finais também enfrentaram interrupções significativas em suas operações diárias, o que pode ter causado grandes prejuízos financeiros e operacionais.
Em resposta ao incidente, a CrowdStrike agiu rapidamente para mitigar os danos. A empresa reverteu a atualização problemática, forneceu uma correção para o driver csagent.sys e emitiu instruções temporárias para que os administradores de sistemas desativassem o serviço do software até que uma solução definitiva fosse implementada. No entanto, este evento sublinha a necessidade de procedimentos de teste mais rigorosos e de estratégias de mitigação de risco mais robustas para atualizações de software. Além disso, ele abre espaço para discussões sobre a importância de ter um plano de contingência bem definido para lidar com falhas em sistemas de segurança críticos.
O que podemos aprender com isso?
A capacidade de se recuperar rapidamente de tais incidentes pode se tornar um diferencial competitivo essencial para empresas no mercado de segurança da informação. A recente falha na atualização do software trouxe à tona um problema significativo para muitas organizações: gestão e atualização de aplicações, especialmente de terceiros.
Essa situação pode criar novas oportunidades de negócios para fornecedores que oferecem soluções de mitigação e recuperação eficazes, bem como para consultorias que ajudam as organizações a fortalecerem suas posturas de segurança e a gerenciar melhor as atualizações e patches. Em um cenário onde a confiança na segurança de software é fundamental, a capacidade de oferecer soluções resilientes e de rápido retorno pode ser um diferencial competitivo valioso.
Vamos avaliar algumas das possíveis oportunidades de negócios que podem surgir com este evento:
a) Troca de Plataforma de Segurança
É natural que muitas organizações ponderem sobre a possibilidade de trocar de plataforma de segurança cibernética. No entanto, vale lembrar que problemas similares já ocorreram no passado, como o incidente em 2010 com a McAfee (1), que afetou sistemas Windows XP. Em ambos os casos, a troca de plataforma não é necessariamente a melhor solução, pois todos os sistemas estão sujeitos a falhas. Em vez disso, uma abordagem mais eficaz pode envolver a implementação de estratégias abrangentes de gestão de risco e resiliência.
b) Troca de plataforma de Infraestrutura
Algumas organizações podem considerar a migração de uma infraestrutura baseada em Windows para uma baseada em soluções Open Source, como servidores Linux. Essa transição traz uma série de vantagens, incluindo maior controle sobre o ambiente de TI, custos reduzidos com licenciamento, e uma comunidade ativa que constantemente melhora a segurança e a funcionalidade das soluções. Além disso, o Linux é conhecido por sua estabilidade e robustez, sendo amplamente utilizado em ambientes críticos de missão, como servidores web e supercomputadores.
No entanto, a migração para uma infraestrutura Linux também apresenta desafios significativos. Um dos principais desafios é a curva de aprendizado para as equipes de TI, que podem estar mais familiarizadas com o ecossistema Windows. A adaptação a novos sistemas operacionais, ferramentas e comandos pode exigir treinamento adicional e um período de transição prolongado. Além disso, a compatibilidade de software pode ser uma preocupação, pois algumas aplicações críticas podem não ter versões equivalentes para Linux ou podem exigir soluções alternativas complexas.
c) Troca de arquitetura de aplicações internas
Outras organizações podem considerar a troca da arquitetura de aplicações, migrando de ambientes virtualizados tradicionais baseados em servidores Windows para aplicações nativas em nuvem em ambientes Kubernetes. Kubernetes, como um sistema de orquestração de contêineres, oferece várias vantagens em termos de resiliência e gerenciamento de aplicações. Uma das principais vantagens do Kubernetes é sua capacidade de distribuir cargas de trabalho em clusters, garantindo que a falha de um único nó não cause a interrupção do serviço. Essa arquitetura de clusters pode proporcionar uma maior resiliência a problemas como os enfrentados com as falhas como estas.
O modelo de Kubernetes é projetado para ser altamente disponível e escalável. Em um ambiente Kubernetes, as aplicações são divididas em contêineres que são executados em múltiplos nós dentro de um cluster. Se um nó falha, o Kubernetes automaticamente redistribui os contêineres para outros nós saudáveis, minimizando o impacto da falha e garantindo a continuidade do serviço. Além disso, as capacidades de auto-recuperação do Kubernetes permitem que ele reinicie contêineres falhados e substitua automaticamente nós com problemas, aumentando ainda mais a resiliência da infraestrutura.
No entanto, migrar para um ambiente Kubernetes também apresenta desafios. A complexidade de gerenciar e operar clusters Kubernetes pode ser significativa, exigindo uma curva de aprendizado para as equipes de TI. Além disso, a segurança e a configuração adequada de um cluster Kubernetes são cruciais, pois a má configuração pode levar a vulnerabilidades e falhas de segurança. A integração de aplicações existentes em um ambiente de contêineres pode exigir refatoração e ajustes significativos, demandando tempo e recursos.
A adoção de uma arquitetura de aplicações nativas em nuvem com Kubernetes pode oferecer uma resiliência superior a problemas de software devido ao seu modelo de clusters e capacidades de auto-recuperação. No entanto, é essencial abordar os desafios de forma estratégica, investindo em treinamento, planejamento de migração e implementação de práticas robustas de segurança e gerenciamento. Com uma abordagem cuidadosa, Kubernetes pode fornecer uma plataforma resiliente e escalável que atende às necessidades das organizações modernas, permitindo uma melhor resposta a falhas e maior continuidade dos negócios.
d) Desenvolvimento Seguro
Diante de falhas significativas mencionadas neste artigo, muitas empresas se questionam como é possível que tais incidentes ocorram. A resposta frequentemente reside na importância crítica dos processos de teste de segurança e do desenvolvimento seguro de aplicações. Testes de Segurança de Aplicações Dinâmicos (DAST) e Testes de Segurança de Aplicações Estáticos (SAST) são fundamentais para identificar e mitigar vulnerabilidades ao longo do ciclo de desenvolvimento de software. O DAST testa a aplicação em tempo real, simulando ataques externos para identificar vulnerabilidades que podem ser exploradas por invasores. Já o SAST analisa o código fonte da aplicação, detectando falhas e vulnerabilidades que podem ser corrigidas antes mesmo da execução do código.
A implementação de processos rigorosos de DAST e SAST ajuda a garantir que as atualizações e os novos lançamentos de software sejam mais seguros e robustos. Esses testes permitem identificar problemas de segurança antes que o software seja implantado em ambientes de produção, reduzindo significativamente o risco de falhas catastróficas como a que vimos.. Além disso, práticas de desenvolvimento seguro, como a adoção de princípios de Secure Software Development Lifecycle (SDLC), promovem a criação de código mais seguro desde o início. Isso inclui a incorporação de revisões de segurança em todas as etapas do desenvolvimento, desde o design até a implementação e a manutenção.
A combinação de DAST e SAST com um ciclo de desenvolvimento seguro ajuda a construir uma base sólida para a segurança das aplicações. Esses processos permitem não apenas a identificação e correção de vulnerabilidades conhecidas, mas também a detecção de novos tipos de ameaças que podem emergir. Além disso, a automação desses testes pode acelerar o ciclo de desenvolvimento e garantir uma cobertura de segurança mais abrangente. A integração contínua e a entrega contínua (CI/CD) de práticas de segurança garantem que a segurança esteja embutida no fluxo de trabalho de desenvolvimento, tornando a segurança uma parte integral e não opcional do processo.
Em última análise, a prevenção de falhas deste tipo depende de um compromisso contínuo com a segurança em todas as etapas do ciclo de vida do software. Investir em testes rigorosos de segurança e em práticas de desenvolvimento seguro não apenas protege os clientes contra interrupções e vulnerabilidades, mas também fortalece a confiança e a reputação da empresa no mercado. Com uma abordagem proativa e abrangente, é possível minimizar os riscos e garantir que as aplicações ofereçam não apenas funcionalidade, mas também a segurança necessária para proteger dados e operações críticas.
Uma abordagem proativa inclui a adoção de práticas rigorosas de teste e validação antes da implantação de atualizações em sistemas críticos. Além disso, a diversificação das ferramentas e soluções de segurança pode reduzir a dependência de um único fornecedor, mitigando os riscos de falhas sistêmicas. Implementar um plano de recuperação de desastres robusto, que inclua backups regulares e a capacidade de reverter rapidamente para estados estáveis anteriores, pode minimizar o impacto de falhas inesperadas. O treinamento contínuo de equipes de TI e segurança para lidar com emergências e a criação de protocolos claros de comunicação durante incidentes também são cruciais para a manutenção da continuidade dos negócios.
Conclusão
Num momento como este, é crucial que você, como parceiro de seus clientes, seja capaz de oferecer diversas alternativas e abordagens que façam sentido para as necessidades específicas de cada um.
Independentemente do caminho escolhido – seja a migração para uma infraestrutura Linux, a adoção de aplicações nativas em nuvem com Kubernetes, ou a implementação de rigorosos processos de testes de segurança – a Acorp está pronta para ajudar. Nossa expertise e soluções abrangem todos esses cenários, garantindo que seus clientes estejam sempre protegidos e preparados para enfrentar qualquer desafio.
Entre em contato com o nosso time e descubra como podemos apoiar suas estratégias de segurança e inovação tecnológica com os seus clientes.
Nota: 1) A falha da McAfee em 2010 serve como um exemplo notório de como atualizações de software podem causar grandes interrupções. Em abril daquele ano, uma atualização do software de antivírus McAfee para o Windows XP causou uma série de problemas graves. O arquivo de definição de vírus atualizado erroneamente identificou um arquivo crítico do sistema operacional Windows, svchost.exe, como um vírus e o colocou em quarentena. Como resultado, os sistemas afetados começaram a apresentar a Tela Azul da Morte (BSOD) e entraram em ciclos de reinicialização contínuos, tornando os computadores inutilizáveis.