A sabedoria convencional diz que as empresas devem equilibrar o custo da segurança com o desempenho e a experiência do utilizador. Esta ideia implica que a segurança é um imposto sobre cada interação digital. E para conseguir uma resposta e tempos de carga ideais, a segurança deve ser minimizada. Ou melhor ainda, otimizado. Mas há um caso quando adicionar segurança à sua pilha de aplicações aumenta o desempenho? Descobrimos que a resposta é sim. Neste blog, vamos explorar como chegámos a esta conclusão e as causas relacionadas com a segurança da degradação do desempenho das aplicações, como a borda pode aliviá-las e como um cliente percebeu um ganho de desempenho de 9%.
Tráfego malicioso e a sua app web
A plataforma Edgecast, agora Edgio, processa milhares de milhões de pedidos diariamente. O nosso mecanismo de inteligência contra ameaças utiliza esta enorme fonte de dados para analisar padrões de segurança e atualizar as assinaturas que potenciam o nosso firewall de aplicações web (WAF), mitigação de bots e outros serviços de segurança. Em média, encontramos mais de 16 000 pedidos maliciosos que investigam um site típico. Estas sondas são automatizadas, pesquisando e sondando aplicações web desprotegidas e vulnerabilidades 24/7. Essas solicitações podem diminuir os serviços, especialmente se o aplicativo já estiver sob uma carga pesada de usuários legítimos.
Remover o tráfego malicioso antes de entrar no seu aplicativo é uma prática recomendada para melhorar o desempenho. Se você estiver usando um WAF, já está fazendo isso. Mas a relação com a sua origem é importante. A execução do WAF na borda da CDN garante que o tráfego malicioso seja descartado e não voltará para a origem.
Acelerando requests maliciosas
Uma CDN utiliza o armazenamento em cache para reduzir a carga na origem. Mas os CDNs modernos também otimizam as solicitações de conteúdo dinâmico entre a borda da CDN e os servidores de origem. Isto aplica-se tanto ao tráfego malicioso como ao tráfego legítimo. A maioria das ameaças de aplicativos da Web tem como alvo funções dinâmicas no aplicativo da Web, como serviços de login, consultas de banco de dados e APIs. A menos que sejam filtradas e removidas, a CDN irá tratá-las como legítimas, trabalhando para acelerar o bem e o mal juntos. Supondo que você tenha uma mente voltada para o desempenho e esteja usando uma CDN para melhorar a experiência do usuário e controlar os custos, suas pilhas de aplicativos podem, involuntariamente, otimizar todas as solicitações, incluindo as maliciosas, que podem degradar os recursos do Origin ou até mesmo tirá-las off-line.
WAF e latência
Um WAF foi concebido para resolver o desafio acima referido. O WAFS pode ser implementado em qualquer ponto ao longo da arquitetura da aplicação. A sua posição terá sempre um impactos no desempenho geral da sua aplicação – para o bem ou para o mal. Quer o WAF esteja a ser executado no próprio servidor, no centro de dados como um dispositivo separado, através de um serviço de terceiros, ou integrado na estrutura de borda ou CDN, o WAF é outra camada que inspeciona todas as solicitações de HTTP. A latência e o tempo de ida e volta são fatores, especialmente quando múltiplas soluções de terceiros são encadeadas. Isto está a tornar-se mais comum à medida que as organizações implementam o WAF, a atenuação de bots e os serviços de proteção DDoS.
Mover o WAF para a borda através de um provedor de CDN pode obter ganhos imediatos de desempenho porque foi projetado para se integrar à lógica de borda, aproveitando o processamento em linha para reduzir saltos.
Arquitetura WAF
Ao nível da arquitetura, o WAF é como qualquer outro componente da sua pilha de aplicações. O desempenho da arquitetura é afetado pelo design do WAF, que inclui a potência bruta, como CPU, RAM, SSD e os componentes de software, como o sistema operacional WAF e o conjunto de regras. Novas ameaças são descobertas diariamente. Com o tempo, essas novas assinaturas podem criar um tempo de execução WAF inchado com mais lógica para processar.
Se otimizar o desempenho é o seu objetivo, é essencial compreender a abordagem do seu fornecedor de serviços de WAF. Edgio não adiciona novas assinaturas ao nosso WAF. Otimizamos-os para tirar partido da nossa arquitetura de sistema e configurá-los para trabalharem em conjunto de forma eficiente, razão pela qual superamos os principais softwares de segurança de fontes em testes de desempenho. Para mais detalhes, veja o nosso artigo técnico “Melhorando o Desempenho dos Aplicativos com Regras de Segurança Mais Faster”.
Estudo de caso
Um potencial cliente estava a rever a nossa plataforma para melhorar o desempenho do seu website. Durante a prova de conceito, a nossa rede mostrou ganhos de desempenho. Mas curiosamente, um ganho adicional de 27% de desempenho resultou quando o WAF foi ativado.
Depois de mais análises, descobrimos que o WAF estava a bloquear ataques sustentados da camada 7. Como o ataque não era volumétrico, não resultou em uma falha catastrófica. E como o cliente não estava usando um WAF, eles não tinham conhecimento do ataque e da sua duração.